Ce guide fait partie d’une série dédiée à
kubectl, l’outil en ligne
de commande pour interagir avec
Kubernetes. Dans ce guide, nous
explorons deux commandes essentielles : kubectl create et kubectl apply.
Pourquoi utiliser kubectl create et kubectl apply ?
Section intitulée « Pourquoi utiliser kubectl create et kubectl apply ? »Ces commandes permettent de gérer les ressources Kubernetes :
kubectl create: crée une ressource Kubernetes depuis zéro.kubectl apply: applique des modifications déclaratives à une ressource existante.
Elles sont particulièrement utiles pour déployer et gérer les objets Kubernetes de manière efficace.
kubectl create : Créer des ressources Kubernetes
Section intitulée « kubectl create : Créer des ressources Kubernetes »La commande kubectl create permet de créer une nouvelle ressource
directement depuis la ligne de commande ou un fichier manifeste YAML.
Syntaxe de base
Section intitulée « Syntaxe de base »kubectl create -f <fichier.yaml>Cas d’usage
Section intitulée « Cas d’usage »-
Créer une ressource depuis un fichier :
Fenêtre de terminal kubectl create -f pod.yaml -
Créer un déploiement en ligne de commande :
Fenêtre de terminal kubectl create deployment nginx --image=nginx -
Créer un service :
Fenêtre de terminal kubectl create service clusterip my-service --tcp=80:80 -
Créer une configmap :
Fenêtre de terminal kubectl create configmap my-config --from-literal=key1=value1
Erreurs courantes et solutions
Section intitulée « Erreurs courantes et solutions »error: resource already exists: La ressource existe déjà. Utilisezkubectl applypour mettre à jour une ressource existante.error: invalid resource type: Vérifiez que le type de ressource est correct et bien orthographié.
kubectl apply : Appliquer des modifications déclaratives
Section intitulée « kubectl apply : Appliquer des modifications déclaratives »La commande kubectl apply permet d’appliquer des modifications à des
ressources existantes en utilisant une approche déclarative.
Syntaxe de base
Section intitulée « Syntaxe de base »kubectl apply -f <fichier.yaml>Cas d’usage
Section intitulée « Cas d’usage »-
Créer ou mettre à jour une ressource :
Fenêtre de terminal kubectl apply -f deployment.yaml -
Utiliser
kubectl applyaveckustomize:Fenêtre de terminal kubectl apply -k ./kustomization -
Mettre à jour une configmap :
Fenêtre de terminal kubectl apply -f configmap.yaml -
Déployer plusieurs ressources en même temps :
Fenêtre de terminal kubectl apply -f services.yaml -f deployments.yaml
Différences entre kubectl create et kubectl apply
Section intitulée « Différences entre kubectl create et kubectl apply »| Fonctionnalité | kubectl create | kubectl apply |
|---|---|---|
| Créer une ressource | ✅ | ✅ |
| Mettre à jour une ressource | ❌ | ✅ |
| Approche | Impérative | Déclarative |
| Utilisation dans CI/CD | ❌ | ✅ |
Bonnes pratiques avec kubectl create et kubectl apply
Section intitulée « Bonnes pratiques avec kubectl create et kubectl apply »- Utilisez
kubectl createuniquement pour créer de nouvelles ressources. - Pour les modifications, préférez
kubectl apply. - Toujours exécuter
kubectl applysur des fichiers versionnés pour assurer la traçabilité. - Privilégier
kubectl applydans les pipelines CI/CD pour éviter d’écraser des configurations existantes.
Conclusion
Section intitulée « Conclusion »kubectl create et kubectl apply sont des commandes essentielles pour gérer
les ressources Kubernetes.
kubectl createpermet de créer rapidement des objets Kubernetes.kubectl applypermet d’appliquer des mises à jour de manière déclarative et contrôlée.
En maîtrisant ces outils, vous optimisez la gestion et la maintenance de vos applications Kubernetes.
Notes importantes
Section intitulée « Notes importantes »Ce guide fait partie d’une série complète dédiée à l’utilisation de kubectl,
l’outil en ligne de commande incontournable pour administrer un cluster
Kubernetes. Chaque commande de kubectl est abordée en détail dans des guides
spécifiques, organisés par thématique pour faciliter l’apprentissage et la
référence rapide.
Pour naviguer efficacement entre les différents chapitres, vous trouverez un tableau récapitulatif listant les commandes et leurs guides associés. N’hésitez pas à explorer ces ressources pour approfondir vos connaissances et optimiser votre gestion des clusters Kubernetes.
| Commandes | Documentation |
|---|---|
kubectl api-resources, kubectl explain | Exploration de l’API |
kubectl create, kubectl apply | Création et mise à jour des ressources |
kubectl edit, kubectl patch, kubectl replace | Modification des ressources |
kubectl get, kubectl describe, kubectl logs, kubectl top | Récupération d’informations sur les ressources |
kubectl exec, kubectl attach, kubectl debug, kubectl cp | Gestion et Debug des Pods |
kubectl delete, kubectl annotate, kubectl label | Suppression et annotation |
kubectl expose, kubectl port-forward, kubectl proxy | Exposition et accès aux applications |
kubectl scale, kubectl autoscale, kubectl rollout, kubectl set | Mise à l’échelle et gestion des déploiements |
kubectl wait, kubectl diff | Attente et validation des ressources |