Etapes de montages de cluster kubernetes

 Scénario: 

Nous avons 3 machines Ubuntu 20.04 dans les mêmes réseaux

- Ces machines sont notés A,B et C 

-  Le serveur web Nginx servira de pods

A: node master

B et C:  node workers

Pour installer Kubernetes sur les machines A, B et C et configurer A en tant que maître et B et C en tant que workers, vous pouvez suivre les étapes ci-dessous :

1. Installer Docker sur toutes les machines :

Sur Ubuntu, vous pouvez utiliser les commandes suivantes pour installer Docker :

sudo apt update

sudo apt install -y docker.io

Assurez-vous également que le service Docker est démarré et activé au démarrage :

sudo systemctl start docker

sudo systemctl enable docker

2. Installer Kubernetes :

Sur toutes les machines, installez Kubernetes en utilisant kubeadm, kubelet et kubectl :

   sudo apt update

   sudo apt install -y apt-transport-https curl

   curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -

   echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list

   sudo apt update

   sudo apt install -y kubelet kubeadm kubectl

   sudo apt-mark hold kubelet kubeadm kubectl

3. Configurer la machine A comme maître :

   Sur la machine A, initialisez le cluster Kubernetes en tant que maître en utilisant la commande `kubeadm init`. Assurez-vous d'ajuster l'adresse IP du maître en fonction de l'interface réseau appropriée :

sudo kubeadm init --apiserver-advertise-address=192.168.0.101 --pod-network-cidr=192.168.0.0/16

   Suivez les instructions à l'écran pour configurer `kubectl` et déployer un réseau de pod. 

Habituellement, cela implique d'exécuter des commandes comme :

mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown $(id -u):$(id -g) $HOME/.kube/config

4. Configurer les machines B et C comme workers:

   Une fois que la machine A est configurée en tant que maître, vous obtiendrez une commande

 `kubeadm join` à exécuter sur les workers pour les joindre au cluster. Copiez-collez cette commande sur les machines B et C :

   sudo kubeadm join 192.168.0.101:6443 --token <token> --discovery-token-ca-cert-hash sha256:<hash>

   Assurez-vous de remplacer `<token>` et `<hash>` par les valeurs spécifiques générées lors de l'initialisation du maître.

5. Déployer un réseau de pod :

   Pour que les pods puissent communiquer entre eux sur différents nœuds, vous devez déployer un réseau de pod. Un choix courant est Calico :

   kubectl apply -f https://docs.projectcalico.org/v3.20/manifests/calico.yaml

   Attendez que les pods du réseau soient déployés et prêts.

6. Déployer un pod Nginx:

   Maintenant que votre cluster Kubernetes est opérationnel, vous pouvez déployer un pod Nginx en utilisant la commande suivante :

   kubectl create deployment nginx --image=nginx

   Cela créera un déploiement appelé "nginx" qui déploie un pod contenant l'image Nginx.

7. Vérifier le déploiement :

   Vous pouvez vérifier que le déploiement est réussi en vérifiant l'état des pods :

   kubectl get pods

   Assurez-vous que les pods sont en état "Running" et prêts à recevoir du trafic.

Ces étapes devraient vous permettre de configurer un cluster Kubernetes avec une machine maître (A) et deux machines workers (B et C), et de déployer un pod Nginx sur ce cluster. Assurez-vous de bien comprendre chaque étape avant de commencer et de sauvegarder vos données importantes avant de commencer l'installation.

Commentaires

Articles les plus consultés