Découvrez notre tutoriel complet pour installer Helm sur Kubernetes. Suivez les étapes simples pour configurer Helm, le gestionnaire de packages pour Kubernetes, et commencez à déployer et gérer vos applications efficacement
Cet article explique les étapes pour installer Helm et déployer des charts Helm afin de gérer et de déployer des applications sur un cluster Kubernetes.
Pré-requis
Voici ce que vous devez avoir avant de commencer la configuration de Helm :
• Un cluster Kubernetes en fonctionnement. Vous pouvez installer Kubernetes facilement avec Docker Desktop :
• L’endpoint API du cluster Kubernetes doit être accessible depuis la machine où vous exécutez Helm.
kubectl cluster-info
Option 1: Installer Helm via le script d'installation
- Étape 1 : Télécharger le dernier script d'installation de Helm :
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
- Étape 2 : Ajouter les permissions d'exécution sur le script téléchargé :
chmod +x get_helm.sh
- Étape 3 : Exécuter le script d'installation. Le script va automatiquement déterminer le bon emplacement pour le binaire sur votre système :
./get_helm.sh
- Étape 4 : Valider l'installation de Helm en exécutant la commande suivante :
helm
Option 2 : Installer Helm 3 à partir du binaire
Cette méthode est recommandée pour les projets où vous pouvez avoir une version spécifique de Helm installée dans tous les environnements.
Par exemple, si vous utilisez un outil de CI/CD (GitHub Actions, Gitlab CI, Jenkins..) pour les déploiements Helm, assurez-vous que l’agent sur lequel la commande Helm s’exécute possède kubectl
configuré avec les permissions administratives.
- Étape 1 : Rendez-vous sur la page des releases de Helm sur GitHub et copiez le lien pour Linux amd64 correspondant à la version requise
- Étape 2 : Téléchargez le binaire en utilisant wget.
wget -O helm.tar.gz https://get.helm.sh/helm-v3.15.4-linux-amd64.tar.gz
- Étape 3 : Décompressez le fichier téléchargé.
tar -zxvf helm.tar.gz
- Étape 4 : Déplacez l’exécutable Helm dans le répertoire bin
sudo mv linux-amd64/helm /usr/local/bin/helm
- Étape 5 : Vérifiez en exécutant la commande helm.
helm
Option 3 : Installer Helm via son gestionnaire de paquets
- Pour Mac, vous pouvez utiliser le gestionnaire de paquet brew :
brew install helm
- Pour Debian/Ubuntu :
curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null
sudo apt-get install apt-transport-https --yes
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list
sudo apt-get update
sudo apt-get install helm
- Pour Windows, vous pouvez utiliser scoop ou chocolatey :
# For Scoop
scoop install helm
#For Chocolatey
choco install kubernetes-helm
Mettre à jour Helm
- Pour Mac :
brew update
brew upgrade helm
- Pour Linux :
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
- Pour Windows :
choco upgrade kubernetes-helm
Pour vérifier que Helm a bien été mis à jour :
helm version
Ajout du repository Helm stable
Le dépôt Helm contient les charts Helm stables développés et maintenus par la communauté.
Ajoutez le dépôt stable public de Helm pour installer les charts stables :
helm repo add stable https://charts.helm.sh/stable
Vous pouvez rechercher les charts disponibles en utilisant la commande de recherche. Par exemple, si vous souhaitez configurer NGINX sur Kubernetes, vous pouvez rechercher le chart NGINX en utilisant la commande suivante :
helm search repo nginx
Installer et Valider un Helm Chart
- Étape 1 : Ajouter le repository helm pour
nginx-ingress
:
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
- Étape 2 : Mettez à jour le repository du chart
helm repo update
- Étape 3 : Installez un chart stable NGINX et testons la configuration. Le contrôleur Ingress sera déployé dans le namespace par défaut.
helm install ingress-controller ingress-nginx/ingress-nginx
ingress-controller
est le nom donné à la release déployée à partir du chart. Vous pouvez changer le nom - Étape 4 : Maintenant, vérifiez l’état du déploiement Helm de l’Ingress en utilisant la commande suivante . Elle devrait afficher l’état du déploiement.
$ helm list
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
ingress-controller default 1 2024-08-20 08:36:41.018272 +0200 CEST deployed ingress-nginx-4.11.2 1.11.2
- Étape 5 : Alternativement, vous pouvez utiliser la commande kubectl pour vérifier le déploiement de l’Ingress dans le namespace par défaut.
kubectl get deployments
- Étape 6 : Maintenant, pour supprimer le déploiement après validation, il vous suffit de désinstaller le déploiement en utilisant son nom de release
helm uninstall ingress-controller
Conclusion
Dans cet article, nous avons vu comment installer Helm, ajouter un dépôt de charts, et valider un déploiement Helm.
Lorsque vous utilisez Helm pour des cas d’utilisation de projet, il est recommandé de créer vos propres charts Helm avec des images de conteneur approuvées par l’équipe de sécurité.
Si vous utilisez des charts Helm communautaires dans des environnements de projet, assurez-vous de remplacer les images Docker communautaires par des images personnalisées.
Ensuite, consultez le guide complet sur Helm. Il couvre le développement de charts Helm et les meilleures pratiques à l’aide de guides étape par étape :