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
Enregistrer un commentaire