Preparation and Deployment of Fault-Tolerant Cluster Based on Kubernetes

Clusters are used to distribute traffic, support databases, store files and business applications in the network. Deployment of a fault-tolerant cluster based on Kubernetes ensures horizontal scaling of all system components.

Advantages of this approach:

Deployment Architecture Schema

Main stages of fault-tolerant cluster architecture deployment schema:

  1. Prepare environment for Foresight Mobile Platform.

  1. Prepare to start Foresight Mobile Platform.

  2. Start Foresight Mobile Platform.

To ensure cluster work, use the ports given in the List of Ports Used for Cluster Work section.

Generalized scheme of fault-tolerant cluster architecture deployment:

The scheme displays work of Kubernetes system services on main cluster nodes and also interaction of main nodes with work nodes and incoming requests via special services with load balancing support.

Scheme of providing control cluster part fault-tolerance:

NOTE. Each main node in the cluster contains the following processes and components:
     •   kube-apiserver. Single control point for cluster. The kubectl command interacts directly via API.
     •   kube-controller-manager. Process of cluster status control via controllers.
     •   kube-scheduler. Process of task planning on all available cluster nodes.
     •   etcd. Database based on the key-value pairs that stores information about statuses of all cluster components.

Technical Specifications

Six virtual or physical nodes are required to create a minimum fault-tolerant cluster configuration. Each node should have at least two network interfaces.

Three nodes are main ones and are used exclusively for cluster control, cluster integrity control, planning and commissioning application containers in cluster units. Main nodes must meet the following system requirements:

Three nodes are work ones and execute main functions (these nodes use application units). Work nodes must meet the following system requirements:

Configurable software environment: Docker, Kubernetes and Ceph (if required).

The /var/lib/docker directory must be connected to a separate hard drive or LVM.

See also:

Installing and Setting Up Foresight Mobile Platform | Preparing Environment for Foresight Mobile Platform