
kubectl est l’outil en
ligne de commande indispensable pour gérer un cluster Kubernetes. Il permet
d’effectuer des opérations sur les ressources Kubernetes comme les pods,
services, déploiements et bien plus encore.
Pour vous aider à maîtriser ces commandes, voici un PDF cheat sheet à télécharger :
👉 Téléchargez le PDF kubectl-cheat-sheet
Qu’est-ce que kubectl ?
Section intitulée « Qu’est-ce que kubectl ? »kubectl est l’outil CLI permettant d’interagir avec Kubernetes. Il permet de
gérer les ressources, d’inspecter les objets, de déployer des applications et
d’effectuer des tâches d’administration sur un cluster.
Fonctionnalités clés
Section intitulée « Fonctionnalités clés »- Gestion multi-contextes : manipulation de plusieurs clusters Kubernetes
- Gestion des ressources : création, lecture, mise à jour et suppression des ressources Kubernetes
- Gestion des nœuds : inspection et maintenance des nœuds du cluster
- Debug et monitoring : inspection de l’état du cluster et des applications
- Automatisation : exécution de scripts pour la gestion des clusters
Installation et configuration
Section intitulée « Installation et configuration »Installation avec un package manager
Section intitulée « Installation avec un package manager »Linux (Snap)
Section intitulée « Linux (Snap) »snap install kubectl --classicmacOS (Homebrew)
Section intitulée « macOS (Homebrew) »brew install kubectlWindows (Chocolatey)
Section intitulée « Windows (Chocolatey) »choco install kubernetes-cliVérifier l’installation
Section intitulée « Vérifier l’installation »kubectl version --clientCommandes générales
Section intitulée « Commandes générales »Vérifier la version de kubectl
Section intitulée « Vérifier la version de kubectl »kubectl version --shortObtenir de l’aide
Section intitulée « Obtenir de l’aide »kubectl helpkubectl <command> --helpGestion des contextes Kubernetes
Section intitulée « Gestion des contextes Kubernetes »Lister les contextes disponibles
Section intitulée « Lister les contextes disponibles »kubectl config get-contextsChanger de contexte
Section intitulée « Changer de contexte »kubectl config use-context <context-name>Définir un contexte par défaut
Section intitulée « Définir un contexte par défaut »kubectl config set-context <context-name>Exploration et inspection des ressources
Section intitulée « Exploration et inspection des ressources »Lister les ressources disponibles
Section intitulée « Lister les ressources disponibles »kubectl api-resourcesLister les versions d’API disponibles
Section intitulée « Lister les versions d’API disponibles »kubectl api-versionsObtenir des détails sur une ressource
Section intitulée « Obtenir des détails sur une ressource »kubectl describe pod <pod-name>Afficher les logs d’un pod
Section intitulée « Afficher les logs d’un pod »kubectl logs <pod-name>Suivre les logs en temps réel
Section intitulée « Suivre les logs en temps réel »kubectl logs -f <pod-name>Lister les événements du cluster
Section intitulée « Lister les événements du cluster »kubectl get eventsManipulation des pods et conteneurs
Section intitulée « Manipulation des pods et conteneurs »Exécuter une commande dans un pod
Section intitulée « Exécuter une commande dans un pod »kubectl exec -it <pod-name> -- /bin/shAttacher un terminal à un conteneur en cours d’exécution
Section intitulée « Attacher un terminal à un conteneur en cours d’exécution »kubectl attach <pod-name> -c <container-name>Copier un fichier vers ou depuis un pod
Section intitulée « Copier un fichier vers ou depuis un pod »kubectl cp <source> <destination>Gestion des déploiements
Section intitulée « Gestion des déploiements »Lister les déploiements
Section intitulée « Lister les déploiements »kubectl get deploymentsCréer un déploiement
Section intitulée « Créer un déploiement »kubectl create deployment <deployment-name> --image=<image-name>Mettre à jour un déploiement
Section intitulée « Mettre à jour un déploiement »kubectl set image deployment/<deployment-name> <container-name>=<new-image>Annuler un déploiement
Section intitulée « Annuler un déploiement »kubectl rollout undo deployment <deployment-name>Vérifier le statut d’un déploiement
Section intitulée « Vérifier le statut d’un déploiement »kubectl rollout status deployment <deployment-name>Gestion des services et réseaux
Section intitulée « Gestion des services et réseaux »Lister les services
Section intitulée « Lister les services »kubectl get servicesObtenir l’adresse IP d’un service
Section intitulée « Obtenir l’adresse IP d’un service »kubectl get service <service-name> -o wideExposer un déploiement comme un service
Section intitulée « Exposer un déploiement comme un service »kubectl expose deployment <deployment-name> --port=80 --target-port=8080Faire du port-forwarding vers un pod
Section intitulée « Faire du port-forwarding vers un pod »kubectl port-forward <pod-name> 8080:80Utiliser un proxy vers l’API Kubernetes
Section intitulée « Utiliser un proxy vers l’API Kubernetes »kubectl proxyModification des ressources
Section intitulée « Modification des ressources »Mettre à jour un champ d’une ressource
Section intitulée « Mettre à jour un champ d’une ressource »kubectl patch <resource-type> <resource-name> --patch '{"spec": {"replicas": 3}}'Annoter une ressource
Section intitulée « Annoter une ressource »kubectl annotate pod <pod-name> description="Mon application"Ajouter un label à une ressource
Section intitulée « Ajouter un label à une ressource »kubectl label pod <pod-name> environment=productionGestion des nœuds
Section intitulée « Gestion des nœuds »Marquer un nœud comme non éligible aux nouveaux pods
Section intitulée « Marquer un nœud comme non éligible aux nouveaux pods »kubectl cordon <node-name>Remettre un nœud en état normal
Section intitulée « Remettre un nœud en état normal »kubectl uncordon <node-name>Vider un nœud avant maintenance
Section intitulée « Vider un nœud avant maintenance »kubectl drain <node-name> --ignore-daemonsets --delete-local-dataAppliquer un taint sur un nœud
Section intitulée « Appliquer un taint sur un nœud »kubectl taint nodes <node-name> key=value:NoScheduleAutomatisation et extensions
Section intitulée « Automatisation et extensions »Exécuter un diff entre un fichier et la configuration du cluster
Section intitulée « Exécuter un diff entre un fichier et la configuration du cluster »kubectl diff -f <fichier.yaml>Attendre une condition spécifique sur une ressource
Section intitulée « Attendre une condition spécifique sur une ressource »kubectl wait --for=condition=Ready pod/<pod-name>Gérer des plugins avec kubectl
Section intitulée « Gérer des plugins avec kubectl »kubectl plugin listDécouvrez le guide complet
Section intitulée « Découvrez le guide complet »Retrouvez tous les détails sur kubectl grâce à ma documentation
complète