kubectl作為客戶端CLI工具,可以讓用戶通過命令行對Kubernetes集群進行操作。
kubectl命令行的語法如下:
kubectl [command] [TYPE] [NAME] [flags]
(1)command:子命令,用於操作Kubernetes集群資源對象的命 令,例如create、delete、describe、get、apply等。
(2)TYPE:資源對象的類型,區分大小寫,能以單數、復數或者 簡寫形式表示。例如以下3種TYPE是等價的。
(3)NAME:資源對象的名稱,區分大小寫。如果不指定名稱, 系統則將返回屬於TYPE的全部對象的列表,例如$ kubectl get pods將返 回所有Pod的列表。
(4)flags:kubectl子命令的可選參數,例如使用“-s”指定API Server的URL地址而不用默認值。
在一個命令行中也可以同時對多個資源對象進行操作,以多個 TYPE和NAME的組合表示,示例如下。
kubectl子命令詳解
kubectl的子命令非常豐富,涵蓋了對Kubernetes集群的主要操作, 包括資源對象的創建、刪除、查看、修改、配置、運行等。
一些常用的kubectl操作作為示例進行說明
創建資源對象:
1.創建資源對象 根據YAML配置文件一次性創建Service和RC:
kubectl create -f my-service.yaml -f my-rc.yaml
kubectl create -f pod.yaml
kubectl apply -f pod.yaml
查看資源對象:
2、查看pod列表
3、查看RC和Service列表:
描述資源對象:
4、顯示Node的詳細信息:
kubectl describe node 192.168.0.212
kubectl describe nodes <node-name>
5、顯示Pod的詳細信息:
6、顯示由RC管理的Pod的信息:
kubectl describe pods <rc-name>
刪除資源對象:
7、基於pod.yaml定義的名稱刪除Pod:
kubectl delete -f pod.yaml
8、刪除所有包含某個Label的Pod和Service:
11、指定Pod中的某個容器執行date命令:
12、通過bash獲得Pod中某個容器的TTY,相當於登錄容器:
查看容器的日志
13、查看容器輸出到stdout的日志:
14、跟蹤查看容器的日志,相當於tail -f命令的結果:
kubectl logs -f <pod-name> -c <container-name>