Déployer un cluster local avec minikube

L’objectif de ce tutoriel est de déployer un cluster Kubernetes de développement local en utilisant minikube et kubectl.
Installation de minikube
Si vous n’avez pas la commande minikube, vous devez d’abord l’installer. Je travaille sur macOS, donc je lance la commande :
brew install minikube
Vous pouvez vérifier si le binaire est bien installé avec cette commande :
minikube version
minikube version: v1.30.1
commit: 08896fd1dc362c097c925146c4a0d0dac715ace0
Installation de kubectl
La deuxième étape consiste à installer le binaire kubectl pour interagir avec votre cluster. J’utilise brew, donc je lance :
brew install kubectl
Si vous n’avez pas macOS, veuillez consulter ce lien.
Je vérifie ma version de kubectl pour être sûr :
kubectl version --client -oyaml
clientVersion:
buildDate: "2023-06-14T09:47:38Z"
compiler: gc
gitCommit: 25b4e43193bcda6c7328a6d147b1fb73a33f1598
gitTreeState: clean
gitVersion: v1.27.3
goVersion: go1.20.5
major: "1"
minor: "27"
platform: darwin/arm64
kustomizeVersion: v5.0.1
Démarrage du cluster

Maintenant nous pouvons démarrer le cluster :
minikube start
😄 minikube v1.30.1 sur Darwin 13.4.1 (arm64)
▪ KUBECONFIG=/tmp/config-1689600714
✨ Utilisation du pilote docker basé sur le profil existant
👍 Démarrage du noeud de plan de contrôle minikube dans le cluster minikube
🚜 Extraction de l'image de base...
🏃 Mise à jour du container docker en marche "minikube" ...
🐳 Préparation de Kubernetes v1.26.3 sur Docker 23.0.2...
🔎 Vérification des composants Kubernetes...
▪ Utilisation de l'image docker.io/kubernetesui/dashboard:v2.7.0
▪ Utilisation de l'image gcr.io/k8s-minikube/storage-provisioner:v5
▪ Utilisation de l'image docker.io/kubernetesui/metrics-scraper:v1.0.8
💡 Certaines fonctionnalités du tableau de bord nécessitent le module metrics-server. Pour activer toutes les fonctionnalités, veuillez exécuter :
minikube addons enable metrics-server
🌟 Modules activés: storage-provisioner, default-storageclass, dashboard
🏄 Terminé ! kubectl est maintenant configuré pour utiliser "minikube" cluster et espace de noms "default" par défaut.
Votre configuration kubectl est générée et prête à utiliser.
kubectl config current-context
minikube
Vous êtes connecté à un cluster nommé minikube.
Vérification du cluster
Vous pouvez utiliser kubectl pour vérifier les nœuds :
kubectl get nodes
NAME STATUS ROLES AGE VERSION
minikube Ready control-plane 4d22h v1.26.3
Félicitations ! Vous avez maintenant un cluster Kubernetes et vous êtes prêt à travailler dessus.
Gestion de plusieurs clusters avec les profils
Parfois, vous devez travailler sur plusieurs clusters en même temps, par exemple pour tester la connectivité. Avec minikube, vous pouvez le faire facilement avec les profils.
Créer le premier cluster nommé cluster1
minikube start -p cluster1
Créer le deuxième cluster nommé cluster2
minikube start -p cluster2
Lister tous les clusters existants
minikube profile list
Basculer le contexte vers cluster1
minikube profile cluster1
minikube update-context