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. Kubernetes is the platform for automatic management of containerized applications, deployment and scaling automation.

IMPORTANT. A fault-tolerant cluster based on Kubernetes is compatible with Foresight Mobile Platform 23.12 or later.

Before deploying a fault-tolerant cluster based on Kubernetes see the system requirements.

Deployment Architecture Schema

Main stages of schema of deployment of fault-tolerant cluster based on Kubernetes:

  1. Preliminary setup of Kubernetes cluster.

  2. Initializing Kubernetes cluster.

  3. Setting up Kubernetes external network.

  4. Setting up persistent volume storage sections.

NOTE. If at least 350 GB is allocated on each work node in the root section, skip this step.

  1. Installing and setting up the Longhorn storage.

  2. Installing additional components for the Kubernetes cluster.

  3. Installing Docker image local storage.

  4. Loading mobile platform images to local storage.

  5. Installing Foresight Mobile Platform in the cluster.

If issues arise during deployment of a fault-tolerant cluster based on Kubernetes, see the Solving Possible Issues on Use of Kubernetes section.

Generalized scheme of fault-tolerant cluster architecture deployment:

The scheme displays the work of main cluster nodes and their interaction with work nodes and incoming requests via special services with load balancer 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.

System Requirements

If Foresight Mobile Platform 23.12 is used, it requires Kubernetes 1.25, 1.26, 1.27 or 1.28.

Operating system:

Number of CPU: 4.

The table contains minimum recommended system requirements for mobile platform work depending on node role:

Node role Number of nodes RAM volume HDD
Main node Virtual environment: 1
Bare Metal: 3
8 GB 40-60 GB
Work node Virtual environment: 4
Bare Metal: 4
16 GB 250-500 GB

One requires a separate computer for loading mobile platform images to Docker image local storage.

See also:

Installing and Setting Up Foresight Mobile Platform