GNU/Linux >> Tutoriels Linux >  >> Cent OS

Liste des commandes kubectl avec exemples (+kubectl Cheat Sheet)

Présentation

Kubectl est un ensemble de commandes permettant de contrôler les clusters Kubernetes. Chaque commande Kubernetes a un point de terminaison d'API, et l'objectif principal de kubectl est d'effectuer des requêtes HTTP à l'API.

Bien qu'il soit possible d'émettre des requêtes HTTP vous-même (par exemple, en utilisant curl), kubectl est conçu pour rendre ce processus plus simple et plus simple.

Ce didacticiel couvrira toutes les opérations kubectl courantes et fournira des exemples pour vous familiariser avec la syntaxe.

Liste des commandes kubectl

Utilisez le kubectl commandes répertoriées ci-dessous comme référence rapide lorsque vous travaillez avec Kubernetes.

Liste des ressources

Pour répertorier un ou plusieurs pods, contrôleurs de réplication, services ou ensembles de démons, utilisez le kubectl get commande.

Générez une liste en texte brut de tous les espaces de noms :

kubectl get namespaces

Afficher une liste en texte brut de tous les pods :

kubectl get pods

Générez une liste détaillée en texte brut de tous les pods, contenant des informations telles que le nom du nœud :

kubectl get pods -o wide

Afficher une liste de tous les pods exécutés sur un serveur de nœud particulier :

kubectl get pods --field-selector=spec.nodeName=[server-name]

Répertorier un contrôleur de réplication spécifique en texte brut :

kubectl get replicationcontroller [replication-controller-name]

Générez une liste en texte brut de tous les contrôleurs et services de réplication :

kubectl get replicationcontroller,services

Afficher une liste en texte brut de tous les ensembles de démons :

kubectl get daemonset

Créer une ressource

Créez une ressource telle qu'un service, un déploiement, une tâche ou un espace de noms à l'aide de kubectl create commande.

Par exemple, pour créer un nouvel espace de noms, tapez :

kubectl create namespace [namespace-name]

Créez une ressource à partir d'un fichier JSON ou YAML :

kubectl create -f [filename]

Appliquer et mettre à jour une ressource

Pour appliquer ou mettre à jour une ressource, utilisez le kubectl apply commande. La source de cette opération peut être soit un fichier, soit l'entrée standard (stdin ).

Créez un nouveau service avec la définition contenue dans un fichier [service-name].yaml :

kubectl apply -f [service-name].yaml

Créez un nouveau contrôleur de réplication avec la définition contenue dans un fichier [controller-name].yaml :

kubectl apply -f [controller-name].yaml

Créez les objets définis dans n'importe quel fichier .yaml, .yml ou .json dans un répertoire :

kubectl apply -f [directory-name]

Vous pouvez mettre à jour une ressource en la configurant dans un éditeur de texte, à l'aide de kubectl edit commande. Cette commande est une combinaison de kubectl get et kubectl apply .

Par exemple, pour modifier un service, saisissez :

kubectl edit svc/[service-name]

Cette commande ouvre le fichier dans votre éditeur par défaut. Pour utiliser un autre éditeur, spécifiez-le devant la commande :

KUBE_EDITOR=”[editor-name]” kubectl edit svc/[service-name]

Affichage de l'état des ressources

Pour afficher l'état d'un nombre quelconque de ressources en détail, utilisez le kubectl describe commande. Par défaut, la sortie répertorie également les ressources non initialisées.

Afficher les détails d'un nœud particulier :

kubectl describe nodes [node-name]

Afficher les détails d'un pod particulier :

kubectl describe pods [pod-name]

Afficher les détails d'un pod dont le nom et le type sont répertoriés dans pod.json :

kubectl describe -f pod.json

Consultez les détails de tous les pods gérés par un contrôleur de réplication spécifique :

kubectl describe pods [replication-controller-name]

Afficher les détails de tous les pods :

kubectl describe pods

Supprimer des ressources

Pour supprimer des ressources d'un fichier ou d'un stdin, utilisez le kubectl delete commande.

Supprimez un pod en utilisant le nom et le type indiqués dans pod.yaml :

kubectl delete -f pod.yaml

Supprimez tous les pods et services avec une étiquette spécifique :

kubectl delete pods,services -l [label-key]=[label-value]

Supprimer tous les pods (y compris les pods non initialisés) :

kubectl delete pods --all

Exécuter une commande

Utilisez kubectl exec pour émettre des commandes dans un conteneur ou pour ouvrir un shell dans un conteneur.

Recevoir la sortie d'une commande exécutée sur le premier conteneur d'un pod :

kubectl exec [pod-name] -- [command]

Obtenez le résultat d'une commande exécutée sur un conteneur spécifique dans un pod :

kubectl exec [pod-name] -c [container-name] -- [command]

Exécutez /bin/bash d'un pod spécifique. La sortie reçue provient du premier conteneur :

kubectl exec -ti [pod-name] -- /bin/bash

Modification des fichiers kubeconfig

kubectl config vous permet d'afficher et de modifier les fichiers kubeconfig. Cette commande est généralement suivie d'une autre sous-commande.

Afficher le contexte courant :

kubectl config current-context

Définissez une entrée de cluster dans kubeconfig :

kubectl config set-cluster [cluster-name] --server=[server-name]

Annuler la définition d'une entrée dans kubeconfig :

kubectl config unset [property-name]

Impression des journaux de conteneurs

Pour imprimer les journaux des conteneurs dans un pod, utilisez les kubectl logs commande.

Journaux d'impression :

kubectl logs [pod-name]

Pour diffuser des journaux à partir d'un pod, utilisez :

kubectl logs -f [pod-name]

Noms abrégés pour les types de ressources

Certains des kubectl Les commandes listées ci-dessus peuvent sembler gênantes en raison de leur longueur. Pour cette raison, les noms des types de ressources kubectl courants ont également des versions plus courtes.

Considérez la commande mentionnée ci-dessus :

kubectl create namespace [namespace-name]

Vous pouvez également exécuter cette commande en tant que :

kubectl create ns [namespace-name]

Voici la liste complète des noms abrégés kubectl :

Nom abrégé Nom long
csr certificatesigningrequests
cs componentstatuses
cm configmaps
ds daemonsets
deploy deployments
ep endpoints
ev events
hpa horizontalpodautoscalers
ing ingresses
limits limitranges
ns namespaces
no nodes
pvc persistentvolumeclaims
pv persistentvolumes
po pods
pdb poddisruptionbudgets
psp podsecuritypolicies
rs replicasets
rc replicationcontrollers
quota resourcequotas
sa serviceaccounts
svc services

Aide-mémoire kubectl

Vous pouvez trouver toutes les commandes répertoriées dans cet article dans la fiche de référence d'une page ci-dessous. Téléchargez le PDF de la commande kubectl et enregistrez-le pour une utilisation future.

TÉLÉCHARGER la feuille de triche


Cent OS
  1. Aide-mémoire pour les commandes Linux courantes

  2. Aide-mémoire des commandes IPtables

  3. Aide-mémoire des commandes Linux

  4. Commandes vi de base (aide-mémoire)

  5. Exemples de commandes de connexion iSCSI (aide-mémoire)

Commandes Nmap avec exemples

Commandes RPM sous Linux avec exemples

Commande SS sous Linux avec des exemples utiles

La commande "kubectl get" expliquée avec des exemples

Commandes nano de base (aide-mémoire)

Commandes vim de base (aide-mémoire)