Preliminary Setup of Deckhouse Cluster

To deploy a fault-tolerant cluster based on Deckhouse, consider the example of preliminary setup using the *.dk1.internal cluster and computers with corresponding IP addresses:

IMPORTANT. To avoid the split-brain error, the number of main nodes should be uneven.

For preliminary setup of the cluster in Ubuntu OS:

  1. Set names according to domain on each cluster node:

# hostnamesctl set-hostname <main node/work node>

For example:

# hostnamesctl set-hostname deckhouse-master1.dk1.internal

  1. Set up password-free access to the first main node by means of SSH key on the computer used for cluster initialization:

    1. Generate the SSH key:

# ssh-keygen

    1. Copy the generated SSH key to the main node:

ssh-copy-id <user name>@<IP address master1>

In the <user name> substitution specify the account used for access setup.

For example:

ssh-copy-id fmp@192.168.200.00

    1. Check password-free access and make sure that the password is not requested:

ssh fmp@<IP address master1>

After executing the operations the preliminary setup of the cluster is finished.

Next, install the Helm package manager on each main node and install Deckhouse according to the Deckhouse documentation.

Installing the Helm Package Manager

To install the Helm package manager on each main node:

curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh

NOTE. Use the Helm package manager 3.5 or later.

See also:

Preparation and Deployment of Fault-Tolerant Cluster Based on Deckhouse | Setting Up Persistent Volume Storage Sections