Prepare for High Availability
This document describes recommended options for configuring High availability (HA).
Get Installation Packages
Please contact API7 experts to get proper installation packages for you.
Prepare the Host Machines
To deploy an API7 Enterprise high availability architecture, a minimum of 4 host machines is required (2 for control plane high availability, and 2 for data plane high availability).
Please note that while database high availability is an important aspect to consider, it is not covered in our documentation. It is advisable to separately address this crucial aspect to ensure the resilience and fault tolerance of your data storage system. For details about how to configure high availability for PostgreSQL, see PostgreSQL documentation.
Prometheus is indeed an optional component, and it is utilized only when you wish to leverage the embedded monitoring feature of API7 Enterprise. For details about how to configure high availability for Prometheus, see Prometheus documentation.
In practical scenarios, the high availability architecture may vary depending on specific cases. Please contact API7 experts, who will be delighted to customize a solution tailored to your needs.
Minimum Hardware Requirements
Host | Processor | CPU | RAM | Free Disk Space | Deployed Components |
---|---|---|---|---|---|
CP Host1 | x86_64 | 2 Cores | 4G | 80 GB | API7 Dashboard, DP Manager |
CP Host2 | x86_64 | 2 Cores | 4G | 80 GB | API7 Dashboard DP Manager |
DP Host3 | x86_64 | 2 Cores | 4G | 80 GB | API7 Gateway |
DP Host4 | x86_64 | 2 Cores | 4G | 80 GB | API7 Gateway |
Minimum Software Requirements
For each host, the following requirements must be met:
- Operating system: It is recommended to use Linux CentOS 7.6 or higher versions. It is known that Linux CentOS 7.2 or previous versions are incompatible.
- Docker: It is recommended to use 3.10.0-927 or higher versions. It is know that 3.10.0-327 or previous versions are incompatible.
Security
As you should expose nodes for each components, you should configure SELinux and firewall on these hosts.
Components | Ports | Description |
---|---|---|
API7 Gateway | 9080 | Listen for user HTTP requests |
API7 Gateway | 9443 | Listen for user HTTPs requests |
API7 Dashboard | 7080 | User Interface for Administrators |
DP Manager | 7900 | Manage nodes on the data plane, including applying configurations, performing heartbeat checks, and reporting metrics to Prometheus |
Prometheus | 9090 | Collect and show API7 metrics |
PostgreSQL | 5432 | Store configuration data, can be replace to other relational database such as MySQL |