初識(shí)Kubernetes(K8s):kubectl命令使用詳

一、kubectl用法概述

kubectl命令行語(yǔ)法如下:

創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿(mǎn)足客戶(hù)于互聯(lián)網(wǎng)時(shí)代的江城網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

kubectl [command] [type] [name] [flags]
參數(shù)說(shuō)明:
command:子命令,用于管理和操作Kubernetes集群資源對(duì)象的命令。例如:create、delete、describe、get、apply等。
type:資源對(duì)象的類(lèi)型,區(qū)分大小寫(xiě),能以單數(shù)形式、復(fù)數(shù)形式或者簡(jiǎn)寫(xiě)形式表示。
kubectl get pod pod1  # 單數(shù)形式
kubectl get pods pod1   # 復(fù)數(shù)形式
kubectl get po pod1   #簡(jiǎn)寫(xiě)形式
name:資源對(duì)象的名稱(chēng),區(qū)分大小寫(xiě),如果不指定名稱(chēng),則系統(tǒng)返回屬于type的全部對(duì)象的列表。
flags:kubectl子命令的可選參數(shù),例如使用“-s”指定apiserver的URL地址而不用默認(rèn)值。

表1:kubectl可操作的資源對(duì)象類(lèi)型

資源對(duì)象的名稱(chēng)縮寫(xiě)
clusters
componentstatuses cs
configmaps cm
daemonsets ds
deployments deploy
endpoints ep
events ev
horizontalpodautoscalers hpa
ingresses ing
Jobs
limitranges limits
nodes no
namespaces ns
networkpolicies
statefulsets
persistentvolumeclaims pvc
persistentvolumes pv
pods po
podsecuritypolicies psp
podtemplates
replicasets rs
replicationcontrollers rc
cronjob
secrets
serviceaccounts
service svc
storageclasses sc
thirdpartyresources

二、kubectl子命令

kuberctl的子命令非常豐富,包括資源對(duì)象的創(chuàng)建、刪除、查看、修改、配置、運(yùn)行等。
表2:kubectl子命令語(yǔ)法
初識(shí)Kubernetes(K8s):kubectl命令使用詳
初識(shí)Kubernetes(K8s):kubectl命令使用詳
初識(shí)Kubernetes(K8s):kubectl命令使用詳

三、kubectl參數(shù)

表3:kubectl命令行的公共啟動(dòng)參數(shù)
初識(shí)Kubernetes(K8s):kubectl命令使用詳
每個(gè)子命令(如create、delete、get等)還有特定的flags參數(shù),可以通過(guò)kubectl [command] --help命令進(jìn)行查看。

四、kubectl輸出格式

kubectl命令可以用多種格式對(duì)結(jié)果進(jìn)行顯示,輸出的格式通過(guò)-o參數(shù)指定:

kubectl [command] [TYPE] [NAME] -o=<output_format>

表4:kubectl命令的輸出格式
初識(shí)Kubernetes(K8s):kubectl命令使用詳
常用的輸出格式示例如下:
(1)顯示Pod的更多信息

kubectl get pod <pod-name> -o wide

(2)以yaml格式顯示Pod的詳細(xì)信息

kubectl get pod <pod-name> -o yaml

(3)以自定義列名顯示Pod的信息

kubectl get pod <pod-name> -o=custom-columns=NAME:.metadata.name,RSRC:.metadata.resourceVersion

(4)基于文件的自定義列名輸出

kubectl get pods <pod-name> -o=custom-columns-file=template.txt
template.txt文件的內(nèi)容為:
NAME              RSRC
metadata.name      metadata.resourceVersion
輸出結(jié)果為:
NAME        RSRC
Pod-name     52305

另外,還可以將輸出結(jié)果按某個(gè)字段排序,通過(guò)--sort-by參數(shù)以jsonpath表達(dá)式進(jìn)行指定:

kubectl [command] [TYPE] [NAME] --sort-by=<jsonpath_exp>

例如,按照名字進(jìn)行排序

kubectl get pods --sort-by=.metadata.name

五、kubectl操作示例

1、根據(jù)yaml配置文件一次性創(chuàng)建service和rc

kubectl create -f my-service.yaml -f my-rc.yaml

2、根據(jù)<directory>目錄下所有.yaml、.yml、.json文件的定義進(jìn)行創(chuàng)建操作

kubectl create -f <directory>

3、查看所有Pod列表

kubectl get pods

4、查看rc和service列表

kubectl get rc,service

5、顯示Node的詳細(xì)信息

kubectl describe nodes <node-name>

6、顯示Pod的詳細(xì)信息

kubectl describe pods/<pod-name>

7、顯示由RC管理的Pod信息

kubectl describe pods <rc-name>

8、刪除基于pod.yaml文件定義的Pod

kubectl delete -f pod.yaml

9、刪除所有包含某個(gè)label的Pod和Service

kubectl delete pods,services -l name=<label-name>

10、刪除所有Pod

kubectl delete pods --all

11、在Pod的容器里執(zhí)行date命令,默認(rèn)使用Pod中的第1個(gè)容器執(zhí)行

kubectl exec <pod-name> date

12、指定Pod中某個(gè)容器執(zhí)行date命令

kubectl exec <pod-name> -c <container-name> date

13、以bash方式登陸到Pod中的某個(gè)容器里

kubectl exec -it <pod-name> -c <container-name> /bin/bash

14、查看容器輸出到stdout的日志

kubectl logs <pod-name>

15、跟蹤查看容器的日志,相當(dāng)于tail -f命令的結(jié)果

kubectl logs -f <pod-name> -c <container-name>

新聞名稱(chēng):初識(shí)Kubernetes(K8s):kubectl命令使用詳
網(wǎng)站URL:http://bm7419.com/article44/pcdhee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、商城網(wǎng)站、品牌網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)定制開(kāi)發(fā)、關(guān)鍵詞優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)