[英]Executing a kubernetes pod with the use of pod name
我正在編寫一個 shell 腳本來執行一個 pod,其語法為:
winpty kubectl --kubeconfig="C:\kubeconfig" -n namespace exec -it podname bash
這工作正常,但由於 podname 不穩定並且每次部署都會發生變化,所以有什么替代方案嗎?
謝謝。
您可以使用以下命令:
kubectl -n <namespace> exec -it deploy/<deployment-name> -- bash
您可以正常使用$ kubectl exec
命令,但定義更改 pod 名稱的值。
假設您有部署和標記的 pod:app=example,只需執行:
$ kubectl exec -it $(kubectl get pods -l app=example -o custom-columns=:metadata.name) -- bash
編輯:
您還可以執行:
POD_NAME = $(kubectl get pods -l app=example -o custom-columns=":metadata.name")
或者
POD_NAME = $(kubectl get pods -l app=example -o jsonpath = "{. Items [0] .metadata.name}")
最后
$ winpty kubectl exec -ti $POD_NAME --bash
確保您在正確的命名空間中執行命令 - 您還可以添加-n
標志並定義它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.