Kubernetes est un système open source utilisé pour automatiser le déploiement, la mise à l'échelle et la gestion des applications conteneurisées. On l'appelle aussi K8s qui est une courte abréviation qui consiste à remplacer les huit lettres restantes "ubernete" par 8.
Installer Kubernetes sur Ubuntu
Dans ce tutoriel, nous allons vous montrer comment installer Kubernetes et configurez-le sur le système Ubuntu. Pour ce tutoriel, vous aurez besoin de deux nœuds Ubuntu (machines) avec les configurations minimales suivantes :
- Nœud 1 :sera un nœud maître (processeur de 2 cœurs, 2 Go de RAM).
- Nœud 2 :sera un nœud esclave (processeur de 1 cœur, 1 Go de RAM).
Avant de commencer le processus d'installation, vous devrez vous assurer que votre machine est mise à jour. Vous pouvez utiliser les commandes suivantes :
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
Définissez le nom d'hôte de vos nœuds
Étape 1. Sur votre nœud maître, utilisez la commande suivante :
sudo hostnamectl set-hostname kubernetes-master
Étape 2. Sur votre nœud esclave, utilisez la commande suivante :
sudo hostnamectl set-hostname kubernetes-slave
Il est fortement recommandé que les deux nœuds disposent d'une heure et d'une date précises pour obtenir des certificats TLS valides.
Installation Docker
Effectuez les étapes suivantes sur le maître ainsi que sur l'esclave.
Étape 1. Installez Docker à l'aide de la commande suivante.
sudo apt install docker.io
Étape 2. Vérifiez votre installation que vous pouvez utiliser :
docker --version
Étape 3. Par défaut, le service docker n'est pas activé. Ainsi, une fois l'installation terminée avec succès, exécutez la commande suivante sur les deux nœuds pour activer le service docker.
sudo systemctl enable docker
Installation de Kubernetes
Effectuez les étapes suivantes sur le maître ainsi que sur l'esclave.
Étape 1. Installez le package curl à l'aide de la commande suivante.
sudo apt install curl
Étape 2. Ajoutez la clé de signature Kubernetes.
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add
Étape 3. Ajoutez le référentiel Kubernetes.
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
Notez qu'au moment de la rédaction de ce tutoriel, seul le référentiel Xenial Kubernetes est disponible, ce sera donc celui que nous utiliserons pour notre installation.
Étape 4. Vérifiez votre installation, utilisez la commande :
kubeadm version
Étape 5. Avant d'installer Kubernetes, assurez-vous que votre système n'utilise pas la mémoire d'échange car Kubernetes refusera de fonctionner si votre Ubuntu utilise la mémoire d'échange.
Désactivez la mémoire d'échange :
sudo swapoff -a
Étape 6. Installez Kubernetes.
sudo apt install kubeadm
Initialisation du serveur maître Kubernetes
Étape 1. Sur votre nœud maître, utilisez la commande suivante pour initialiser le nœud maître Kubernetes.
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Prenez une copie de la dernière ligne «Kubeadm Rejoint 10.0.2.15:6443 –Dvbbbv.51hy5e2hgaxr1b4h –Discovery-Token-CA-CERT-HASH SHA256:01DB7C5913E363C099DC7A711550B8399C41F7cc92bda6b5ff0633 il rejoint le cluster.
Étape 2. De plus, conformément à la sortie précédente, il est recommandé d'utiliser les commandes suivantes pour commencer à utiliser le cluster Kubernetes.
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Déploiement du réseau de pods
Pour activer la communication entre les nœuds du cluster, nous devons déployer un réseau de pods.
Étape 1. Sur le nœud maître, utilisez la commande suivante pour déployer un réseau de pods.
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Étape 2. Sur le nœud maître, assurez-vous que tout est opérationnel.
kubectl get pods --all-namespaces
Rejoindre le cluster Kubernetes
Pour l'instant, tout devrait être prêt pour que les nœuds maître et esclave rejoignent le cluster Kubernetes.
Étape 1. Sur le nœud esclave et pour permettre au nœud esclave de rejoindre le cluster, utilisez la commande copiée précédemment à partir de la sortie de l'étape d'initialisation de Kubernetes, qui devrait ressembler à ceci :
sudo kubeadm join 10.0.2.15:6443 --token edvbbv.51hy5e2hgaxr1b4h --discovery-token-ca-cert-hash sha256:01db7c5913e363c099dc7a711550b8399c41f7cc92bda6b5ff06d6b8382code3
Étape 2. Sur le nœud maître, vérifiez si le nœud esclave a rejoint le cluster :
kubectl get nodes
Félicitations, vous venez de créer le cluster Kubernetes et tout devrait être prêt pour passer à autre chose et déployer tout service dont vous avez besoin (comme un conteneur Apache ou un serveur Nginx) pour commencer à utiliser votre cluster.
J'espère que vous avez apprécié ce tutoriel et si vous avez rencontré des difficultés lors de l'installation, laissez un commentaire, et nous serons heureux de vous aider.