Documents de Référence

Kubernetes v1.17 documentation non maintenue. Vous consultez une version statique. Pour une documentation à jour, veuillez consulter: dernière version.

Edit This Page

Conventions d'utilisation de kubectl

Conventions d’utilisation recommandées pour kubectl.

Utiliser kubectl dans des scripts réutilisables

Pour une sortie stable dans un script :

  • Demandez un des formats de sortie orienté machine, comme -o name, -o json, -o yaml, -o go-template ou -o jsonpath.
  • Spécifiez complètement la version. Par exemple, jobs.v1.batch/monjob. Cela va assurer que kubectl n’utilise pas sa version par défaut, qui risque d’évoluer avec le temps.
  • Ne vous basez pas sur un contexte, des préférences ou tout autre état implicite.

Bonnes pratiques

kubectl run

Pour que kubectl run satisfasse l’infrastructure as code :

  • Taggez les images avec un tag spécifique à une version et n’utilisez pas ce tag pour une nouvelle version. Par exemple, utilisez :v1234, v1.2.3, r03062016-1-4, plutôt que :latest (Pour plus d’informations, voir Bonnes pratiques pour la configuration).
  • Capturez les paramètres dans un script enregistré, ou tout au moins utilisez --record pour annoter les objets créés avec la ligne de commande correspondante pour une image peu paramétrée.
  • Capturez le script pour une image fortement paramétrée.
  • Passez à des fichiers de configuration enregistrés dans un système de contrôle de source pour des fonctionnalités désirées mais non exprimables avec des flags de kubectl run.

Générateurs

Ressource groupe api commande kubectl
Pod v1
Replication controller (déprécié) v1
Deployment (déprécié) extensions/v1beta1
Deployment (déprécié) apps/v1beta1
Job (déprécié) batch/v1
CronJob (déprécié) batch/v1beta1
CronJob (déprécié) batch/v2alpha1

Si vous n’indiquez pas de flag de générateur, d’autres flags vous demandent d’utiliser un générateur spécifique. La table suivante liste les flags qui vous forcent à préciser un générateur spécifique, selon la version du cluster :

Ressource générée Cluster v1.4 et suivants Cluster v1.3 Cluster v1.2 Cluster v1.1 et précédents
Pod --restart=Never --restart=Never --restart=OnFailure OU --restart=Never
Replication Controller --restart=Always
Deployment --restart=Always --restart=Always --restart=Always N/A
Job --restart=OnFailure --restart=OnFailure --restart=OnFailure OU --restart=Never N/A
Cron Job --schedule=<cron> N/A N/A N/A
Note: Ces flags utilisent un générateur par défaut uniquement lorsque vous n’avez utilisé aucun flag. Ceci vous permet de coller à un comportement spécifique avec le générateur, même si le générateur par défaut est changé par la suite.

Pour vérifier la ressource qui a été finalement créée, utilisez le flag --dry-run, qui fournit l’objet qui sera soumis au cluster.

kubectl apply

  • Vous pouvez utiliser kubectl apply pour créer ou mettre à jour des ressources. Pour plus d’informations sur l’utilisation de kubectl apply pour la mise à jour de ressources, voir le livre Kubectl.

Feedback