IBM Cloud Infrastructure Center high availability architecture
Earlier versions of the IBM® Cloud Infrastructure Center followed the All-in-One deployment model, which involves installing packages and setting up services corresponding to stateless (OpenStack based services like nova, cinder, and so on.) and stateful services (MariaDB, RabbitMQ, and so on) on a single system. While All-in-One deployment model keeps IBM Cloud Infrastructure Center deployment simple, the model denies IBM Cloud Infrastructure Center the scale and high availability that it might achieve with a multi-node model.
As you move to larger data centers that consist of hundreds of compute hosts, you need an IBM Cloud Infrastructure Center deployment that can cater to your demands of scale and availability.
The multi-node architecture of the IBM Cloud Infrastructure Center caters primarily to the following needs:
Prevent single point of failure - Provide highly available management node, so that failure of one node does not impact virtualization and cloud management of the data center that uses the IBM Cloud Infrastructure Center.
Scalability - Distribute workloads across multiple nodes to support more scale numbers with the same deployment.
IBM Cloud Infrastructure Center supports three-node architecture. The multi-node deployment consists of certain aspects to provide a HA solution as explained in the subsequent sections here.
Multiple nodes – Single deployment
A multi-node cluster deployment consists of multiple nodes of controller. Each node has all IBM Cloud Infrastructure Center stateless and stateful services running as it is and optionally, services that are related to monitoring tools if the user chooses to deploy them. All nodes of IBM Cloud Infrastructure Center services that make this deployment are treated as a single deployment rather than as separate IBM Cloud Infrastructure Center entities. All these nodes are tied together to provide a highly available solution that is treated as a single unit, even though the internal solution is distributed into three nodes.
This deployment provides a solution for most of the services run in Active-Active mode that is monitored by Pacemaker or Corosync. A few services that are listed beneath run in an Active-Passive mode that is again monitored by Pacemaker.
Cinder health, Nova health, Neutron health
This solution avoids a single point of failure.
Virtual IP address for accessing multi-node cluster deployment
Even though the different IBM Cloud Infrastructure Center services run across three different nodes, in the HA configuration, the user remains oblivious to this. The IBM Cloud Infrastructure Center multi-node cluster is accessible only through a virtual IP address (VIP) that internally routes the request to one of the three IBM Cloud Infrastructure Center management nodes with the help of a load-balancer (HAProxy). That also means that managed nodes like the compute nodes access IBM Cloud Infrastructure Center through VIP and not through the individual node IP.
Operation manager for managing multi-node cluster deployment
The IBM Cloud Infrastructure Center introduces the Operation Manager (also known as OpsMgr) to enable the administrator to perform day one or day two operations against the mutli-node cluster environment. Operation Manager is an ansible implementation, that has a collection of utilities and services that are designed to facilitate administrative operation to manage the mutli-node cluster deployment environment.