APIm Hybrid Deployment Guide¶
Introduction
This documentation page relates to the installation of the client (On-Prem / Private Cloud) part of the API Management platform in a Hybrid architecture (SaaS + On-prem / Private cloud).
Hybrid Architecture¶
SaaS Components¶
Component | Description |
---|---|
Administration Console (for API producers) |
This web UI gives easy access to some key APIM API services. API Publishers can use it to publish APIs. Administrators can also configure global platform settings and specific portal settings. |
Dev / API Portal (for API consumers) |
This web UI gives easy access to some key APIM API services. API Consumers can use it to search for, view, try out and subscribe to a published API. They can also use it to manage their applications. |
Management API | This RESTful API exposes services to manage and configure the APIM Console and APIM Portal web UIs. All exposed services are restricted by authentication and authorization rules. For more information, see the API Reference section. |
SaaS API Gateways | APIM Gateway is the core component of the APIM platform. You can think of it like a smart proxy. Unlike a traditional HTTP proxy, APIM Gateway has the capability to apply policies (i.e., rules) to both HTTP requests and responses according to your needs. With these policies, you can enhance request and response processing by adding transformations, security, and many other exciting features. |
Bridge Gateways | A bridge API Gateway exposes extra HTTP services for bridging HTTP calls to the underlying repository (which can be any of our supported repositories: MongoDB, JDBC and so on) |
Config Database | All the API Management platform management data, such as API definitions, users, applications and plans. |
S3 Bucket + Analytics Database | Analytics and logs data |
[Optional] Cockpit |
Cockpit is a centralized, multi-environments / organizations tool for managing all your Gravitee API Management and Access Management installations in a single place. |
[Optional] API Designer |
Drag-and-Drop graphical (MindMap based) API designer to quickly and intuitively design your APIs (Swagger / OAS) and even deploy mocked APIs for quick testing. |
[Optional] Alert Engine |
Alert Engine (AE) provides APIM and AM users with efficient and flexible API platform monitoring, including advanced alerting configuration and notifications sent through their preferred channels, such as email, Slack and using Webhooks. AE does not require any external components or a database as it does not store anything. It receives events and sends notifications under the conditions which have been pre-configured upstream with triggers. |
On-prem / Private cloud components¶
Component | Description |
---|---|
Gravitee.io APIm Gaetway | APIM Gateway is the core component of the APIM platform, smartly proxing trafic applying policies. |
Logstash | Collect and send local Gateways logs and metrics to the Gravitee.io APIM SaaS Control Plane. |
Redis | Database use locally for rate limits synchronized counters (RateLimit, Quota, Spike Arrest) and optionnaly as an external cache for the Cache policy. |
Self-Hosted (Hybrid) gateway¶
Installation¶
Online documentation and assets
Steps :
- Add the Gravitee.io Helm charts repository.
- Install using the
values.yaml
file.
Here is the fullvalues.yaml
example, please customize it following the Configuration sections.
Online documentation
Local file structure
.
├── config
│ ├── gateway
│ │ └── gravitee.yml # (1)
│ └── logstash
│ └── logstash.conf # (2)
├── docker-compose.yml
├── logs
│ └── apim-gateway-dev
└── plugins # (3)
├── gravitee-apim-repository-hazelcast-3.18.3.zip
└── gravitee-apim-repository-redis-3.18.3.zip
- If you prefer to override the default
gravitee.yml
configuration file, instead of using the environement variables in thedocker-compose.yml
file. - Logstash configuration file.
- Additional plugins location.
Download plugins
Download plugins
Online documentation
Configuration¶
There is at least 3 connections to configure :
- The connection to the SaaS Management plane with the Bridge Gateway.
- The connection to push Analytics and Logs with file or tcp reporter pushing data for logstash to send them to the SaaS storage.
- The connection the local rate limits database.
- [Optional] The connection to the SaaS Alert Engine.
Management¶
Into the values.yaml
configuration file :
Into the gravitee.yml
configuration file :
Online documentation
Analytics and Logs¶
Files¶
Into the values.yaml
configuration file :
values.yaml | |
---|---|
Direct (TCP)¶
Warning
Choosing the direct connection may result in a loss of data. If the connection between the gateway and logstash is broken the newly generated analytics and logs data will be lost.
Into the values.yaml
configuration file :
values.yaml | |
---|---|
Online documentation
Rate limits¶
values.yaml | |
---|---|
Online documentation
Alert Engine¶
Into the values.yaml
configuration file :
values.yaml | |
---|---|
Cockpit¶
Follow cockpit instructions
Please follow directly the instruction you have on cockpit.
https://cockpit.gravitee.io/accounts/YOUR-ACCOUNT-HRID/installations/how-to
Full example¶
Into the values.yaml
configuration file :
gravitee.yml | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
|
Redis¶
Installation¶
Configuration¶
Easy peasy
No specific configuration is needed.
Logstash¶
Installation¶
docker-compose.yml | |
---|---|
Configuration¶
Online documentation