Comment installer Kubernetes sur toutes les distributions Linux
Kubernetes est un logiciel d’orchestration de conteneurs qui nous permet de déployer, de gérer et de mettre à l’échelle des applications conteneurisées sur n’importe quel nombre de systèmes de nœuds. Il s’agit d’une technologie puissante et open source qui rend l’exécution d’applications à grande échelle beaucoup plus efficace et remplace la manière traditionnelle d’exécuter des applications directement sur le système d’exploitation ou dans une machine virtuelle. Un cluster Kubernetes introduit également l’auto-réparation, l’équilibrage de charge et un moyen de gérer des centaines ou des milliers d’applications conteneurisées à partir d’une seule invite de commande.
Dans ce tutoriel, nous allons apprendre à installer Kubernetes sur toutes les principales distributions Linux. Ce n’est pas aussi simple que l’installation de la plupart des applications, car les dépôts officiels ne contiennent généralement pas tous les logiciels nécessaires. Il est également essentiel d’installer Docker (ou une autre couche de conteneurisation), de désactiver l’échange et de configurer d’autres paramètres. Nous vous guiderons à travers tout ci-dessous.
Dans ce tutoriel, vous allez apprendre :
- Comment installer Kubernetes (kubeadm) sur toutes les principales distributions Linux
- Comment installer Docker et kubectl
- Comment désactiver l’espace d’échange
- Comment démarrer et activer les services Docker et kubelet
Types d’installation de Kubernetes
Il n’est pas si simple de donner des instructions simples sur l’installation de Kubernetes sur un système Linux, car il existe de nombreuses façons différentes de l’exécuter. Il existe au moins quatre technologies différentes que nous pouvons utiliser pour commencer à utiliser Kubernetes :
- Kubeadm
- Minikube
- Gentil
- K3
Chacun a son propre créneau, ses avantages et ses inconvénients. Celui sur lequel nous allons nous concentrer dans ce tutoriel est Kubeadm, car il s’agit d’une implémentation de Kubernetes prête pour la production. Il n’est pas très adapté aux débutants absolus, donc si vous avez du mal à le faire fonctionner, vous pouvez vous rabattre sur une technologie plus simple comme Minikube.
L’autre option qui s’offre à nous est de choisir une technologie de conteneurisation. Kubernetes en aura besoin pour fonctionner. Nous pouvons choisir parmi les environnements d’exécution des conteneurs tels que :
- Docker
- conteneurd
- CRI-O
Docker est de loin le choix le plus populaire en matière d’exécution de conteneur pour Kubernetes, c’est donc celui sur lequel nous nous concentrerons dans ce tutoriel.
Nous installerons également des technologies distinctes comme kubectl séparément.
Installer Kubernetes (kubeadm) sur Linux
Choisissez votre distribution Linux dans les sections ci-dessous, puis suivez les instructions correspondantes.
Debian et Ubuntu
Cette section concerne les distributions Linux telles que Debian Linux, Ubuntu Linux et l’une de leurs nombreuses distributions dérivées.
Tout d’abord, désactivez l’échange :
sudo swapoff -aVous devrez également modifier
/etc/fstabet commenter la ligne d’échange pour la désactiver lors des futurs redémarrages.Commencez par installer les packages prérequis suivants :
sudo apt update sudo apt install docker.io apt-transport-https ca-certificates curlAjoutez votre utilisateur actuel au groupe Docker :
sudo usermod -a -G docker $USERUne fois l’installation de Docker terminée, utilisez les commandes suivantes pour démarrer le service et vous assurer qu’il démarre automatiquement après chaque redémarrage :
sudo systemctl start docker sudo systemctl enable dockerTéléchargez la clé de signature suivante :
sudo curl -fsSLo /etc/apt/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpgAjoutez le référentiel de logiciels Kubernetes à votre système :
echo "deb [signed-by=/etc/apt/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.listEnsuite, installez les outils kubelet, kubeadm et kubectl :
sudo apt update sudo apt install kubelet kubeadm kubectlEn option, nous pouvons marquer les packages Kubernetes pour qu’ils ne soient pas mis à jour par
aptjusqu’à ce que nous essayions de les mettre à jour manuellement. Cela garantit que votre cluster n’est jamais interrompu par des mises à jour et qu’une nouvelle version n’interrompt pas votre configuration actuelle.sudo apt-mark hold kubelet kubeadm kubectl
Fedora, Red Hat, CentOS, AlmaLinux, Rocky Linux
Cette section concerne Red Hat Enterprise Linux, Fedora Linux et toutes leurs distributions dérivées.
Tout d’abord, désactivez l’échange :
sudo swapoff -aVous devrez également modifier
/etc/fstabet commenter la ligne d’échange pour la désactiver lors des futurs redémarrages.Commencez par installer le paquet
dnf-plugins-core, au cas où il ne serait pas déjà sur votre système. Cela vous permettra de gérer vos dépôts dnf et d’y ajouter le dépôt officiel Docker.sudo dnf -y install dnf-plugins-coreEnsuite, ajoutez le référentiel Docker à votre système à l’aide de la commande suivante.
sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repoAvant de commencer l’installation de Docker, nous devons supprimer les paquets
podmanetbuildahde notre système, car ils entrent en conflit avec Docker et l’empêcheront d’être installé.sudo dnf remove podman buildahNous pouvons maintenant installer les trois packages Docker dont nous aurons besoin en exécutant la commande suivante.
sudo dnf install docker-ce docker-ce-cli containerd.ioAjoutez votre utilisateur actuel au groupe Docker :
sudo usermod -a -G docker $USERUne fois l’installation terminée, démarrez le service Docker, puis activez-le pour qu’il s’exécute automatiquement chaque fois que le système est redémarré :
sudo systemctl start docker.service sudo systemctl start containerd.service sudo systemctl enable docker.service sudo systemctl enable containerd.serviceAjoutez le référentiel Kubernetes à votre système :
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch enabled=1 gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg exclude=kubelet kubeadm kubectl EOFDésactivez SELinux en le mettant en mode permissif :
sudo setenforce 0 sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/configInstallez les paquets kubelet, kubeadm et kubectl :
sudo dnf install -y kubelet kubeadm kubectl --disableexcludes=kubernetesDemandez à systemd de démarrer kubelet et de le faire démarrer automatiquement lors des futurs démarrages du système :
sudo systemctl enable kubelet sudo systemctl start kubelet
Arch Linux et Manjaro
Cette section concerne les distributions Linux telles que Arch Linux, Manjaro Linux et leurs dérivés.
Tout d’abord, désactivez l’échange :
sudo swapoff -aVous devrez également modifier
/etc/fstabet commenter la ligne d’échange pour la désactiver lors des futurs redémarrages.Commencez par installer Docker (et youpi pour télécharger Kubernetes depuis l’AUR) :
sudo pacman -Syu sudo pacman -S docker yay devtools base-develAjoutez votre utilisateur actuel au groupe Docker :
sudo usermod -a -G docker $USERUne fois l’installation terminée, démarrez le service Docker, puis activez-le pour qu’il s’exécute chaque fois que le système est redémarré :
sudo systemctl start docker.service sudo systemctl enable docker.serviceMaintenant, nous pouvons utiliser
yaypour télécharger kubeadm, kubelet et kubectl depuis l’AUR :yay -S kubeadm-bin kubelet-bin kubectl-binEnfin, démarrez le service kubelet pour que Kubernetes soit prêt à l’emploi :
sudo systemctl start kubelet sudo systemctl enable kubelet
Méthode d’accrochage
Il est également possible d’utiliser le gestionnaire de packages Snap pour installer tous les packages Kubernetes nécessaires.
Installez Docker, kubeadm, kubectl et kubelet avec Snap :
sudo snap install docker sudo snap install kubeadm kubectl kubelet --classicAjoutez votre utilisateur actuel au groupe Docker :
sudo usermod -a -G docker $USEREt commencez les services nécessaires :
sudo systemctl start docker sudo systemctl enable docker sudo systemctl start kubelet sudo systemctl enable kubelet
Réflexions finales
Dans ce tutoriel, nous avons vu comment installer Kubernetes sur toutes les principales distributions Linux, y compris une méthode universelle via le gestionnaire de paquets Snap. Ces instructions sont suffisantes pour vous aider à démarrer avec les bases, qui incluent l’installation de kubeadm et Docker. Une fois que vous avez mis ces services en place, vous pouvez continuer en joignant des nœuds, en déployant des applications et en développant votre cluster Kubernetes.
