十垃喊、深入理解Pod對(duì)象: 調(diào)度

一、創(chuàng)建一個(gè)Pod的工作流程

二袜炕、Pod中影響調(diào)度的主要屬性

三本谜、資源限制對(duì)Pod調(diào)度的影響

四、nodeSelector &?nodeAffinity

五偎窘、Taint(污點(diǎn)) &?Tolerations(污點(diǎn)容忍)

六乌助、nodeName


一、創(chuàng)建一個(gè)Pod的工作流程

? ? ? kubernetes基于list-watch機(jī)制的控制器架構(gòu)陌知,實(shí)現(xiàn)組建間交互的解耦他托。其他組件監(jiān)控自己負(fù)責(zé)的資源,當(dāng)這些資源發(fā)生變化時(shí)仆葡,kube-apiserver會(huì)通知這些組件赏参,這個(gè)過程類似于發(fā)布與訂閱。

創(chuàng)建流程:

1沿盅、kubectl?run/apply創(chuàng)建一個(gè)pod把篓,向apiserver發(fā)起請(qǐng)求

2、apiserver會(huì)將請(qǐng)求的配置寫到etcd

3腰涧、etcd響應(yīng)處理結(jié)果給apiserver韧掩,apiserver響應(yīng)處理結(jié)果給kubectl

4、scheduler收到需要?jiǎng)?chuàng)建pod的請(qǐng)求窖铡,根據(jù)自己調(diào)度算法選擇一個(gè)合適的節(jié)點(diǎn)分配疗锐,并將結(jié)果反饋給apiserver

5、kubelet收到需要?jiǎng)?chuàng)建這個(gè)節(jié)點(diǎn)的pod费彼,在調(diào)度容器引擎創(chuàng)建容器滑臊,容器引擎將結(jié)果反饋給kubelet,kubelet匯總pod狀態(tài)反饋給apiserver


工作流程圖:少了controller-manager和kube-proxy組件箍铲,創(chuàng)建pod是不需要這兩個(gè)組件的简珠。

controller-manager是創(chuàng)建工作負(fù)載控制器才會(huì)用到

kube-proxy創(chuàng)建service才使用的

二、Pod中影響調(diào)度的主要屬性

三、資源限制對(duì)Pod調(diào)度的影響

容器資源限制:

1聋庵、resources.limits.cpu

2膘融、resources.limits.memory

容器使用的最小資源需求,作為容器調(diào)度事資源分配的依據(jù):

1祭玉、resources.requests.cpu

2氧映、resources.requests.memory

cpu單位:可以寫m也可以寫浮點(diǎn)數(shù)。如:0.5=500m脱货,1=1000m


k8s會(huì)根據(jù)request的值去查找有足夠資源的node來調(diào)度pod

資源配額注:

1岛都、request必須小于limits。

2振峻、requests配置建議低于limits的20%-30%

3臼疫、m是cpu的一個(gè)計(jì)量單位,稱為毫核扣孟,如節(jié)點(diǎn)2C4G烫堤,2C=2*1000m。

4凤价、如果設(shè)置cpu的值是浮點(diǎn)數(shù)鸽斟,會(huì)自動(dòng)轉(zhuǎn)m單位

5、如果沒有節(jié)點(diǎn)滿足requests配置要求利诺,pod不會(huì)被創(chuàng)建

問題:

1富蓄、如果request配置超出節(jié)點(diǎn)配置會(huì)怎么樣?

pod無法分配慢逾,pendding狀態(tài)

2立倍、如果只是limits超出節(jié)點(diǎn)配置會(huì)怎么樣?

pod正常分配侣滩,可以超賣

3帐萎、如果limits設(shè)置太大(超出節(jié)點(diǎn)配置)會(huì)怎樣?

pod正常分配胜卤,可以超賣疆导,但是如果超出節(jié)點(diǎn)配置比較多,出現(xiàn)節(jié)點(diǎn)資源打滿的幾率就比較大

4葛躏、怎么查看節(jié)點(diǎn)資源分配情況澈段?

# kubectl describe node? ? <所有node>

#?kubectl get nodes? ? ? ? <獲取所有node>

#?# kubectl describe node hs-develop-560? ? <獲取指定node資源分布>

四、node Selector & nodeAffinity

1舰攒、nodeSelector:?

用于將pod調(diào)度到匹配label的Node上败富,如果沒有匹配的標(biāo)簽會(huì)調(diào)度失敗。

作用:

a摩窃、約束Pod到特定的節(jié)點(diǎn)運(yùn)行

b兽叮、完全匹配節(jié)點(diǎn)標(biāo)簽

應(yīng)用場景:

a芬骄、專用節(jié)點(diǎn):根據(jù)業(yè)務(wù)線將Node分組管理

b、配備特殊硬件:部分Node配有ssd硬盤鹦聪、GPU

示例:

第一步账阻、給節(jié)點(diǎn)添加標(biāo)簽

格式:# kubectl? label nodes? <node-name>? <label-key>=<label-value>

例如:# kubectl label nodes k8s-node1 disktype=ssd

驗(yàn)證:# kubectl get nodes --show-labels

第二步、添加nodeSelector字段到Pod配置中

最后驗(yàn)證:

# kubectl get pods -o wide

2泽本、nodeAffinity:

節(jié)點(diǎn)親和性淘太,與nodeSelector作用一樣,但相比更靈活规丽,滿足更多條件蒲牧。如:

1、匹配有更多的邏輯組合赌莺,不只是字符串的完全相等冰抢,支持的操作符:In,Notln艘狭,Exists挎扰,DoesNotExist,Gt缓升,Lt

2鼓鲁、電鍍分為軟策略和硬策略蕴轨,而不是硬性要求

a港谊、硬<required>:?必須滿足

b、軟<preferred>:?嘗試滿足橙弱,但不保證

查看標(biāo)簽為gpu的node

# kubectl? get? node? -l? gpu=yes

硬性配置:

軟性配置:

注:weight:1-100歧寺,值越大,權(quán)重越大棘脐,pod調(diào)度到符合標(biāo)簽的節(jié)點(diǎn)概率越高

五斜筐、Taint(污點(diǎn)) &?Tolerations(污點(diǎn)容忍)

Taints:避免Pod調(diào)度到特定Node上

Tolerations:允許Pod調(diào)度到持有Taints的Node上

應(yīng)用場景:

1、專用節(jié)點(diǎn):根據(jù)業(yè)務(wù)線將Node分組管理蛀缝,希望在默認(rèn)情況下不調(diào)度該節(jié)點(diǎn)顷链,只有配置了污點(diǎn)容忍才允許分配。

2屈梁、配備特殊硬件:部分Node配有ssd硬盤嗤练、GPU,希望在more情況下不調(diào)度該節(jié)點(diǎn),只有配置了污點(diǎn)容忍才允許分配

3在讶、基于Taint的驅(qū)逐

第一步:給節(jié)點(diǎn)添加污點(diǎn)

格式:# kubectl taint? node? [node]? key=value:[effect]

例如:# kubectl taint node k8s-node1 gpu=yes:NoSchedule

驗(yàn)證: # kubectl describe node k8s-node1 | grep Taint

其中[effect]可取值:

1煞抬、NoSchedule:一定不能被調(diào)度

2、PreferNoChedule:盡量不要調(diào)度构哺,非必須配置容忍

3革答、NoExecute:不僅不會(huì)調(diào)度,還會(huì)驅(qū)逐Node上已有的pod

第二步、添加污點(diǎn)容忍(tolrations)字段到pod配置中

去掉污點(diǎn):

# kubectl taint node [node] key:[effect] -

小結(jié):

# nodeSelector:節(jié)點(diǎn)做好分組残拐,希望pod根據(jù)配置調(diào)度到部分節(jié)點(diǎn)

#?Taints:節(jié)點(diǎn)做特殊用途途茫,不希望正常pod分配過來

容忍所有污點(diǎn):

調(diào)度失敗原因分析:# kubectl describe pod xxx

1、pod配置的requests.cpu沒有滿足

2蹦骑、pod配置的nodeSelector沒有節(jié)點(diǎn)滿足

3慈省、節(jié)點(diǎn)都有污點(diǎn),pod沒有配置污點(diǎn)容忍

六眠菇、nodeName

指定節(jié)點(diǎn)名稱边败,用于將pod調(diào)度到指定的Node上,不經(jīng)過調(diào)度器捎废。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末笑窜,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子登疗,更是在濱河造成了極大的恐慌排截,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,376評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件辐益,死亡現(xiàn)場離奇詭異断傲,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)智政,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門认罩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人续捂,你說我怎么就攤上這事垦垂。” “怎么了牙瓢?”我有些...
    開封第一講書人閱讀 156,966評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵劫拗,是天一觀的道長。 經(jīng)常有香客問我矾克,道長页慷,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,432評(píng)論 1 283
  • 正文 為了忘掉前任胁附,我火速辦了婚禮酒繁,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘汉嗽。我一直安慰自己欲逃,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,519評(píng)論 6 385
  • 文/花漫 我一把揭開白布饼暑。 她就那樣靜靜地躺著稳析,像睡著了一般洗做。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上彰居,一...
    開封第一講書人閱讀 49,792評(píng)論 1 290
  • 那天诚纸,我揣著相機(jī)與錄音,去河邊找鬼陈惰。 笑死畦徘,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的抬闯。 我是一名探鬼主播井辆,決...
    沈念sama閱讀 38,933評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼溶握!你這毒婦竟也來了杯缺?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,701評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤睡榆,失蹤者是張志新(化名)和其女友劉穎萍肆,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體胀屿,經(jīng)...
    沈念sama閱讀 44,143評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡塘揣,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,488評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了宿崭。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片亲铡。...
    茶點(diǎn)故事閱讀 38,626評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖劳曹,靈堂內(nèi)的尸體忽然破棺而出奴愉,到底是詐尸還是另有隱情琅摩,我是刑警寧澤铁孵,帶...
    沈念sama閱讀 34,292評(píng)論 4 329
  • 正文 年R本政府宣布,位于F島的核電站房资,受9級(jí)特大地震影響蜕劝,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜轰异,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,896評(píng)論 3 313
  • 文/蒙蒙 一岖沛、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧搭独,春花似錦婴削、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽嗤朴。三九已至,卻和暖如春虫溜,著一層夾襖步出監(jiān)牢的瞬間雹姊,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國打工衡楞, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留吱雏,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,324評(píng)論 2 360
  • 正文 我出身青樓瘾境,卻偏偏與公主長得像歧杏,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子迷守,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,494評(píng)論 2 348

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