High Availability Best Practices
General Requirements for All Components
- Localhost: dd a localhost for 127.0.0.1 and the IP address for the component(s) – hapgrs1 and hapgrs2
Cannot contain any special characters, including underscore, hyphen, or space for the database servers as it causes the authentication to fail.
Changing the hostname after you install and configure the VMs may cause unknown issues.
- he hostname cannot be on the same line as the localhost – add the hostname on a separate line in the /etc/hosts file.
- The Host Identifier and Host Identifier List cannot contain capital letters for both CCM and CCO configurations.
Load Balancer Requirements
As a best practice, we recommend that you configure one load balancer for each component in HA mode to provide true HA support:
- CCM VMs
- CCO VMs
- AMQP VMs
When configuring the load balancer for each component as follows:
- Use TCP protocol for listeners – for example, you can configure a generic load balancer application to use TCP and ensure that the certificate exchange procedure is transparent.
Use SSL certificates for communication between the CCM, CCO, and AMQP load balancers.
- Enable the session stickiness policy. Refer to your load balancer documentation for additional details
- Use the IP address of the load balancer when configuring the CCO IP field from the CCM UI.
CCM Database HA
The CloudCenter platform does not support the database being installed on the same host as the CCM.
To configure the CCM Database HA, you must install the following servers:
MGMTPOSTGRES_MASTER: A server that modifies data and carries the load.
MGMTPOSTGRES_SLAVE: A server that responds to or replicates changes made in the master server.
Virtual IP (VIP): The PostgreSQL instances launched in the cloud must be capable of handling network routing for your enterprise through the VIP configured by your cloud administrator.
Cisco does not support the CCM and database instances being installed on the same server. If you decide to install both on the same server, be sure to update the db_host=localhost attribute in the ccm-response.xml file.
Place the two database servers on the same cloud or datacenter as the twoservers. This ensures:
A master-slave HA setup allows the secondary sever to seamlessly takes over, if the primary server fails at any point.
When a failed server comes back online, data is synchronized from the new master server automatically. The server that was offline becomes the slave server. When the old master server is back online, it rejoins the cluster and becomes the new slave server automatically.
Ensure that you accurately route the Virtual IP configuration to the appropriateinstance.
The CloudCenter CCM and database servers work together to provide the following HA solution:
- Synchronous transaction – Not considered committed until all servers have completed the transaction.
- Failover – Ensures that a failover does not lose any data. If one of the CCM servers goes offline, the other server takes over as the primary server and continues to handle all required activities.
- Consistent – Results returned to both servers as the database and configuration changes on the servers are kept in sync.
CloudCenter does not support cross-region configuration for CCM HA.
To configure CCM HA, you must install the following servers:
- Two CCM servers:
- One Load balancer: The two CCM servers run concurrently behind a load balancer.
CCM HA installation is tested and verified for AWS, OpenStack, and VMware clouds.
- Custom certificates, if used, must only be generated from the PRIMARY CCM and copied to ALL other components (for example, other CCMs, all CCOs, AMQPs, Monitors, and so forth).
Each server is active and all servers in the cluster perform orchestration tasks in parallel. If one of the servers in the cluster goes offline, the other active servers continue to handle orchestration tasks. When the offline server comes back online, data is synchronized from the active servers automatically.
CloudCenter does not support cross-region configuration for CCO HA.
To configure CCO HA, you must install the following servers:
- Three VMs to support a 3-node MongoDB cluster:
- CCO_PRIMARY (run the CCO configuration wizard on the CCO_PRIMARY.)
One Load balancer: The THREE CCO servers run concurrently behind a load balancer.
When configuring the CCO in HA mode for the first time, you must point the load balancer to each CCO and register each of the three CCOs with the CCM. See the Register the CCO with the CCM section for procedural details.
For HA environments the minimum memory requirement is 8GB for CCO servers. See Hardware Requirements for additional context.
CloudCenter does not support cross-region configuration for AMQP HA.
Prerequisites before you begin the AMQP HA configuration:
Configure the CCO server to read the AMQP LB's IP address – after setting up a load balancer on top of a RabbitMQ cluster.
In addition to the hostname requirements in the /etc/hosts file mentioned in the General Requirements section above – You must add the hostnames for both the primary and secondary AMQP instances in the /etc/hosts file that already exists in both AMQP servers.
Add the hostname file in the /etc folder and then restart the server – this step is mandatory to install AMQP in HA mode – You must add the hostnames for both the primary and secondary AMQP instances in the /etc/hostname file that already exists in both AMQP servers.
To configure AMQP HA, you must install the following servers:
- Two AMQP servers:
- One Load balancer: The two AMQP servers run concurrently behind a load balancer.
- No labels