Documents de Référence

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 :

Bonnes pratiques

kubectl run

Pour que kubectl run satisfasse l’infrastructure as code :

Générateurs

Vous pouvez créer les ressources suivantes en utilisant kubectl run avec le flag --generator :

Resourcecommande kubectl
Podkubectl run --generator=run-pod/v1
Replication controllerkubectl run --generator=run/v1
Deploymentkubectl run --generator=extensions/v1beta1
-pour un endpoint (défaut)kubectl run --generator=deployment/v1beta1
Deploymentkubectl run --generator=apps/v1beta1
-pour un endpoint (recommandé)kubectl run --generator=deployment/apps.v1beta1
Jobkubectl run --generator=job/v1
CronJobkubectl run --generator=batch/v1beta1
-pour un endpoint (défaut)kubectl run --generator=cronjob/v1beta1
CronJobkubectl run --generator=batch/v2alpha1
-pour un endpoint (déprécié)kubectl run --generator=cronjob/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éeCluster v1.4 et suivantsCluster v1.3Cluster v1.2Cluster v1.1 et précédents
Pod--restart=Never--restart=Never--generator=run-pod/v1--restart=OnFailure OU --restart=Never
Replication Controller--generator=run/v1--generator=run/v1--generator=run/v1--restart=Always
Deployment--restart=Always--restart=Always--restart=AlwaysN/A
Job--restart=OnFailure--restart=OnFailure--restart=OnFailure OU --restart=NeverN/A
Cron Job--schedule=<cron>N/AN/AN/A
Note: Ces flags utilisent un générateur par défaut uniquement lorsque vous n’avez utilisé aucun flag. Cela veut dire que lorsque vous combinez --generator avec d’autres flags, le générateur que vous avez spécifié plus tard ne change pas. Par exemple, dans cluster v1.4, si vous spécifiez d’abord --restart=Always, un Deployment est créé ; si vous spécifiez ensuite --restart=Always et --generator=run/v1, alors un Replication Controller sera créé. 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.

Les flags définissent le générateur dans l’ordre suivant : d’abord le flag --schedule, puis le flag --restart, et finalement le flag --generator.

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

Feedback