kubernetes liste Toutes les gousses en cours d'exécution nom

je cherche de l'option de la liste de tous les gousses nom

comment se passer de awk (ou de cut). Maintenant j'utilise cette commande

kubectl get --no-headers=true pods -o name | awk -F "/" '{print }'
10
demandé sur Ali SAID OMAR 2016-03-04 16:57:31

5 réponses

Vous pouvez utiliser l'option Go templating intégrée dans kubectl pour formater la sortie pour juste afficher les noms pour chaque pod:

kubectl get pods -o go-template --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}'
19
répondu Robert Bailey 2016-03-04 18:35:13

Vous pouvez utiliser custom-columns dans l'option output pour obtenir le nom et l'option --no-headers

kubectl get --no-headers=true pods -l app=external-dns -o custom-columns=:metadata.name
11
répondu ADavid 2017-11-17 05:26:26

Vous pouvez utiliser -o=nom pour afficher uniquement les noms des gousses. Par exemple, pour la liste de proxy gousses vous pouvez utiliser:

kubectl get pods -o=name --all-namespaces | grep kube-proxy

Le résultat est:

pod/kube-proxy-95rlj
pod/kube-proxy-bm77b
pod/kube-proxy-clc25
4
répondu Amadey 2018-05-21 09:38:48

jsonpath alternative

kubectl get po -o jsonpath="{range .items[*]}{@.metadata.name}{end}" -l app=nginx-ingress,component=controller

voir aussi: plus d'exemples d'options de sortie kubectl

3
répondu Vincent De Smet 2018-04-04 11:02:04

obtenir les noms des gousses en utilisant -o=name saisir triche pour plus d'.

kubectl get pods -o=name

Exemple de sortie:

pod/kube-xyz-53kg5
pod/kube-xyz-jh7d2
pod/kube-xyz-subt9

Pour supprimer de fuite pod/ vous pouvez utiliser standard bash sed commande

kubectl get pods -o=name | sed "s/^.\{4\}//"

Exemple de sortie:

kube-xyz-53kg5
kube-pqr-jh7d2
kube-abc-s2bt9

pour obtenir podname avec une chaîne particulière, linux standard grep commande

kubectl get pods -o=name | grep kube-pqr | sed "s/^.\{4\}//"

Exemple sortie:

kube-pqr-jh7d2

avec ce nom, vous pouvez faire des choses, comme ajouter alias pour obtenir shell à lancer conteneur:

alias bashkubepqr='kubectl exec -it $(kubectl get pods -o=name | grep kube-pqr | sed "s/^.\{4\}//") bash'

1
répondu krozaine 2018-09-22 19:12:15