K8S命令的梳理

K8S命令的梳理

kubectl是一個(gè)基礎(chǔ)的K8S集群管理命令本砰,可以實(shí)現(xiàn)對(duì)K8S資源的查詢碴裙,創(chuàng)建,刪除点额,更新舔株,回退等各種各樣的操作。由于其復(fù)雜的功能體系还棱,命令靈活度又高载慈,因此需要進(jìn)行常見的一些命令和使用場景的梳理。

1 K8S命令的組成

K8S基礎(chǔ)命令由三段式組成:

kubectl 動(dòng)作 資源 [選項(xiàng)]

2 K8S命令的基礎(chǔ)動(dòng)作

常見的K8S命令有8個(gè)動(dòng)作珍手。分別是:

  • get:展示一個(gè)或者多個(gè)資源
  • create:通過資源配置文件名或者鍵盤輸入創(chuàng)建資源
  • expose:選擇一個(gè)RC办铡,Service,Deployment或者Pod琳要,并且暴露為新的K8s服務(wù)
  • run:在集群上運(yùn)行指定鏡像
  • set:在對(duì)象上設(shè)置指定屬性
  • explain:資源的文檔
  • edit:編輯服務(wù)器上的資源
  • delete:通過資源創(chuàng)建的文件名寡具,鍵盤輸入,資源名焙蹭,或者選擇器標(biāo)簽等刪除資源

此外晒杈,kubectl還提供了一些高級(jí)的用法。在日常開發(fā)中除非特定的場景孔厉,否則一般不會(huì)用到。這些命令包括:

  • 部署類的命令
    • rollout:管理deployment的部署
    • rolling-update:實(shí)現(xiàn)滾動(dòng)升級(jí)帖努,并最終輸出RC
    • scale:為Deployment, ReplicaSet, RC或者Job設(shè)置新的大小
    • autoscale:自動(dòng)伸縮Deployment, ReplicaSet, ReplicationController
  • 集群管理類的命令
    • certificate:修改認(rèn)證資源
    • cluster-info:顯示集群信息
    • top:顯示(CPU/Memory/Storage)資源的使用
    • cordon:標(biāo)記節(jié)點(diǎn)為unschedulable
    • uncordon:標(biāo)記節(jié)點(diǎn)為schedulable
    • drain:Drain node in preparation for maintenance
    • taint:Update the taints on one or more nodes
  • 故障定位和排除類的命令
    • describe:顯示指定資源或者資源組的詳情
    • logs:打印某個(gè)pod中容器的日志
    • attach:附加在一個(gè)運(yùn)行的容器上執(zhí)行撰豺,使用該命令注意不要關(guān)閉容器并退出
    • exec:在一個(gè)容器中執(zhí)行命令,不影響現(xiàn)在運(yùn)行的容器中的功能
    • port-forward:轉(zhuǎn)發(fā)一個(gè)或者多個(gè)端口到pod中
    • proxy:運(yùn)行porxy以實(shí)現(xiàn)到Kubernetes API server的功能轉(zhuǎn)發(fā)
    • cp:與容器之間進(jìn)行文件拷貝
  • 其他更高級(jí)的命令
    • apply:Apply a configuration to a resource by filename or stdin
    • patch:Update field(s) of a resource using strategic merge patch
    • replace:Replace a resource by filename or stdin
    • convert:Convert config files between different API versions
  • 設(shè)置命令
    • label:Update the labels on a resource
    • annotate:Update the annotations on a resource
    • completion:Output shell completion code for the given shell (bash or zsh)
  • 其他的系統(tǒng)級(jí)命令
    • api-versions:以group/version的形式打印服務(wù)器上支持的API版本
    • config:修改kubeconfig文件
    • help:幫助命令
    • version:打印客戶端和服務(wù)器的版本號(hào)

2.1 基礎(chǔ)動(dòng)作 get 的命令

get 是kubectl中最基礎(chǔ)的命令拼余,也是使用最多的命令污桦。
該命令的使用格式如下:

get 資源 [選項(xiàng)]

因此,使用改命令需要首先分清楚匙监,paas上到底有多少中資源類型凡橱。那么,paas上面有多少中資源呢亭姥?

2.1.1 get命令中的資源類型

請(qǐng)見下表(需要區(qū)分的是稼钩,kubectl工具中認(rèn)為的資源,并不等同于k8s上面可以創(chuàng)建出的與pod相關(guān)的資源類型)

序號(hào) 資源 資源縮寫
1 cloud cld
2 clusters 只有在聯(lián)邦apiservers下才合法
3 componentstatuses cs
4 configmaps cm
5 daemonsets ds
6 deployments deploy
7 endpoints ep
8 events ev
9 horizontalpodautoscalers hpa
10 ingresses ing
11 jobs -
12 limitranges limits
13 namespaces ns
14 networks net
15 networkmappings nm
16 networkpolicies -
17 nodes no
18 persistentvolumeclaims pvc
19 persistentvolumes pv
20 physicalnetworks pn
21 processlifecycles plc
22 pods po
23 podsecuritypolicies psp
24 podtemplates -
25 replicasets rs
26 replicationcontrollers rc
27 resourcequotas quota
28 secrets -
29 serviceaccounts sa
30 services svc
31 statefulsets -
32 storageclasses -
33 thirdpartyresources -
34 clusterversions -

2.1.2 幾個(gè)常用的get命令組合

使用get 命令需要注意的一點(diǎn)是:該命令會(huì)隱藏一些資源信息达罗,如運(yùn)行情況等坝撑。要顯示這些信息静秆,可以通過在命令最后加上--show-all 標(biāo)記進(jìn)行實(shí)現(xiàn)。

get 的幾個(gè)常用命令組合:

  1. 顯示所有的pod信息巡李,格式如linux下的ps命令(精簡)
kubectl get pods
  1. 全面顯示pod 信息抚笔,增加 -o wide選項(xiàng)
kubectl get pods -o wide
  1. 查看單個(gè)指定RC名稱的信息
kubectl get replicationcontroller web
  1. 使用json格式展示指定的pod信息
kubectl get -o json pod web-pod-13je7
  1. 把yaml形式的pod信息展示位json格式
kubectl get -f pod.yaml -o json
  1. 查看指定pod信息中的某一段
kubectl get -o template pod/web-pod-13je7 --template={{.status.phase}}
  1. 同時(shí)輸出所有的RC和service資源實(shí)例列表
kubectl get rc,services
  1. 通過資源類型和名字獲取具體的實(shí)例信息
kubectl get rc/web service/frontend pods/web-pod-13je7

2.1.3 get中的重要選項(xiàng)

  1. 跨命名空間查詢對(duì)象
--all-namespaces=false
  1. 指定配置文件名
    使用-f或者--filename=[]

  2. 指定輸出格式
    使用-o或者--output=''指定輸出格式,輸出格式必須為下表中的一個(gè)

  1. 顯示所有的輸出信息
    -a選項(xiàng)可以輸出所有的信息狱从。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末膨蛮,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子矫夯,更是在濱河造成了極大的恐慌鸽疾,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,826評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件训貌,死亡現(xiàn)場離奇詭異制肮,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)递沪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門豺鼻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人款慨,你說我怎么就攤上這事儒飒。” “怎么了檩奠?”我有些...
    開封第一講書人閱讀 164,234評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵桩了,是天一觀的道長。 經(jīng)常有香客問我埠戳,道長井誉,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,562評(píng)論 1 293
  • 正文 為了忘掉前任整胃,我火速辦了婚禮颗圣,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘屁使。我一直安慰自己在岂,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,611評(píng)論 6 392
  • 文/花漫 我一把揭開白布蛮寂。 她就那樣靜靜地躺著蔽午,像睡著了一般。 火紅的嫁衣襯著肌膚如雪共郭。 梳的紋絲不亂的頭發(fā)上祠丝,一...
    開封第一講書人閱讀 51,482評(píng)論 1 302
  • 那天疾呻,我揣著相機(jī)與錄音,去河邊找鬼写半。 笑死岸蜗,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的叠蝇。 我是一名探鬼主播璃岳,決...
    沈念sama閱讀 40,271評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼悔捶!你這毒婦竟也來了铃慷?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,166評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤蜕该,失蹤者是張志新(化名)和其女友劉穎犁柜,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體堂淡,經(jīng)...
    沈念sama閱讀 45,608評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡馋缅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,814評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了绢淀。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片萤悴。...
    茶點(diǎn)故事閱讀 39,926評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖皆的,靈堂內(nèi)的尸體忽然破棺而出覆履,到底是詐尸還是另有隱情,我是刑警寧澤费薄,帶...
    沈念sama閱讀 35,644評(píng)論 5 346
  • 正文 年R本政府宣布硝全,位于F島的核電站,受9級(jí)特大地震影響楞抡,放射性物質(zhì)發(fā)生泄漏柳沙。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,249評(píng)論 3 329
  • 文/蒙蒙 一拌倍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧噪径,春花似錦柱恤、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至车摄,卻和暖如春寺谤,著一層夾襖步出監(jiān)牢的瞬間仑鸥,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評(píng)論 1 269
  • 我被黑心中介騙來泰國打工变屁, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留眼俊,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,063評(píng)論 3 370
  • 正文 我出身青樓粟关,卻偏偏與公主長得像疮胖,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子闷板,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,871評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 再次了解kubernetes的基本概念和術(shù)語 1澎灸、kubernetes整體概要 在Kubernetes中,Serv...
    道無虛閱讀 5,138評(píng)論 2 9
  • 1遮晚、基礎(chǔ)架構(gòu) 1.1 Master Master節(jié)點(diǎn)上面主要由四個(gè)模塊組成:APIServer性昭、scheduler...
    阿斯蒂芬2閱讀 10,878評(píng)論 0 44
  • 1.Pod Pod是k8s的最基本的操作單元,包含一個(gè)或多個(gè)緊密相關(guān)的容器县遣,類似于豌豆莢的概念糜颠。一個(gè)Pod可以被一...
    jony456123閱讀 7,417評(píng)論 0 5
  • 一、 K8s 是什么艺玲? Kubernetes(k8s)是自動(dòng)化容器操作的開源平臺(tái)括蝠,這些操作包括部署,調(diào)度和節(jié)點(diǎn)集群...
    loveroot閱讀 6,644評(píng)論 1 21
  • 時(shí)隔大半年饭聚,我又回來了忌警,這回帶來的是最近非常火的容器編排工具——kubernetes 先附上docker 官網(wǎng)和k...
    我的橙子很甜閱讀 13,202評(píng)論 2 79