摘要:指定若干機(jī)器進(jìn)行部署將節(jié)點(diǎn)機(jī)器按照它們的進(jìn)行歸類。使用選擇器類似于上文的,在創(chuàng)建資源的文件中使用字段,如即可將指定到或上部署運(yùn)行。
好久沒(méi)有更新了,今天在接到一個(gè)部署任務(wù)時(shí),要求在集群中某幾個(gè)機(jī)器上部署,查了一下github,有這方面的相關(guān)文檔,翻譯過(guò)來(lái)記錄一下,有興趣的同學(xué)也可以直接去github看官方文檔
單節(jié)點(diǎn)部署單節(jié)點(diǎn)部署使用nodeName字段進(jìn)行配置。在啟動(dòng)的json/yaml文件中,pod的spec結(jié)構(gòu)下增加字段:"nodeName":"{nodename}"。
我們可以在master上通過(guò)指令: kubectl get nodes看到集群中的slaver節(jié)點(diǎn)的nodeName和他們的標(biāo)簽,狀態(tài):
在創(chuàng)建pod或rc時(shí),加入nodeName即可以指定將pod部署在指定的節(jié)點(diǎn)上,上圖為例,json文件如:
{ "apiVersion": "v1", "kind": "ReplicationController", "metadata": { "labels": { "name": "benchcpu" }, "name": "benchcpu-controller" }, "spec": { "replicas": 3, "selector": { "name": "benchcpu" }, "template": { "metadata": { "labels": { "name": "benchcpu" } }, "spec": { "containers": [ { "image": "registry.hub.huangyang.com.cn/sysbench:0.5shell", "name": "sysbench", "command":[ "./todo.sh", "--num-threads=1 --forced-shutdown=1 --max-time=60 --test=cpu --cpu-max-prime=10000000 run ", "0" ] } ], "nodeName": "10.126.72.31" } } } }
那么這個(gè)名為bench的replication controller 就會(huì)將所有的pod都部署在10.126.72.31上。
指定若干機(jī)器進(jìn)行部署將slaver節(jié)點(diǎn)機(jī)器按照它們的labels進(jìn)行歸類。使用"nodeSelector"進(jìn)行選擇。
管理node的標(biāo)簽
使用kubectl label nodes {nodename} {key=value} 進(jìn)行標(biāo)簽的添加。如:
kubectl label nodes 10.126.72.31 points=test
會(huì)給10.126.72.31這個(gè)節(jié)點(diǎn)添加一個(gè)標(biāo)簽:points=test
我們給31.32兩臺(tái)機(jī)器同時(shí)加上這個(gè)標(biāo)簽。
使用nodeSelector選擇器
類似于上文的nodeName,在創(chuàng)建資源的json/yaml文件中使用nodeSelector字段,如:
{ "apiVersion": "v1", "kind": "ReplicationController", "metadata": { "labels": { "name": "benchcpu" }, "name": "benchcpu-controller" }, "spec": { "replicas": 3, "selector": { "name": "benchcpu" }, "template": { "metadata": { "labels": { "name": "benchcpu" } }, "spec": { "containers": [ { "image": "registry.hub.huangyang.com.cn/sysbench:0.5shell", "name": "sysbench", "command":[ "./todo.sh", "--num-threads=1 --forced-shutdown=1 --max-time=60 --test=cpu --cpu-max-prime=10000000 run ", "0" ] } ], "nodeSelector":{ "points":"test" } } } } }
即可將pod指定到31或32上部署運(yùn)行。
需要注意不論是nodeName,nodeSelector,還是下文提到的 node affinity,針對(duì)他們的過(guò)濾條件,即使目前沒(méi)有滿足過(guò)濾條件的node,master也會(huì)指派至少一個(gè)node去部署pod,因?yàn)檫x擇器的意思是選擇“可以被分配到的節(jié)點(diǎn)”,而不是指定“不可被分配到的節(jié)點(diǎn)”。
1.2中的新特性:node affinity1.2即將出現(xiàn)功能更強(qiáng)大的選擇器,但是目前已知,可以實(shí)現(xiàn)如: label:"points":"test"and"test2" 的多項(xiàng)選擇(也就是選擇label中"points"的value為"test" 或 "test2", 并且不止是"and",而是與或非的聯(lián)合判斷式),node affinity最終將會(huì)取代 node Selector。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/33026.html
摘要:與已運(yùn)行相關(guān)的過(guò)濾規(guī)則負(fù)責(zé)檢查待調(diào)度與上已有之間的親和性關(guān)系。并且每個(gè)打分函數(shù)都可以配置對(duì)應(yīng)的權(quán)重值,下面介紹調(diào)度器策略配置時(shí),也會(huì)涉及權(quán)重值的配置。默認(rèn)權(quán)重值是,如果覺(jué)得某個(gè)打分函數(shù)特別重要,便可以加大該權(quán)重值。 一、概述 Kubernetes 是 Google 開(kāi)源的容器集群管理系統(tǒng)(谷歌內(nèi)部:Borg),而今天要介紹的 kube-scheduler 是 k8s 系統(tǒng)的核心組件之一...
摘要:升級(jí)注意事項(xiàng)使用推薦使用,但仍然支持和。如果內(nèi)核不支持,會(huì)包含一個(gè)無(wú)法使用的警告。在使用創(chuàng)建對(duì)象時(shí),如果不指定,使用讀取該字段會(huì)顯示中指定的默認(rèn)值。如果要,推薦使用中的命令。分配相關(guān)的問(wèn)題。 之前,我們介紹了kubernetes 1.2.0的新特性,還不清楚的童鞋查看這里。 本文討論的是使用 kubernetes 1.2.0 的注意事項(xiàng),包括對(duì)周邊組件的要求(比如docker的兼容性)...
摘要:換句話說(shuō),親和性選擇節(jié)點(diǎn)僅在調(diào)度時(shí)起作用。先創(chuàng)建集群反親和性打散各個(gè)副本再部署服務(wù),需要打散并且與服務(wù)共存,配置如下注意需要進(jìn)行大量處理,所以會(huì)明顯減慢大型集群的調(diào)度時(shí)間,不建議在大于幾百個(gè)節(jié)點(diǎn)的集群中使用該功能。 一、概述 前一篇文章 Kubernetes 調(diào)度器淺析,大致講述了調(diào)度器的工作原理及相關(guān)調(diào)度策略。這一章會(huì)繼續(xù)深入調(diào)度器,介紹下親和性調(diào)度。 Kubernetes 支持限制...
摘要:指定若干機(jī)器進(jìn)行部署將節(jié)點(diǎn)機(jī)器按照它們的進(jìn)行歸類。使用選擇器類似于上文的,在創(chuàng)建資源的文件中使用字段,如即可將指定到或上部署運(yùn)行。 好久沒(méi)有更新了,今天在接到一個(gè)部署任務(wù)時(shí),要求在集群中某幾個(gè)機(jī)器上部署,查了一下github,有這方面的相關(guān)文檔,翻譯過(guò)來(lái)記錄一下,有興趣的同學(xué)也可以直接去github看官方文檔 單節(jié)點(diǎn)部署 單節(jié)點(diǎn)部署使用nodeName字段進(jìn)行配置。在啟動(dòng)的json/y...
摘要:隨著發(fā)布,現(xiàn)在能支持個(gè)節(jié)點(diǎn)的集群即千萬(wàn)請(qǐng)求秒,附帶對(duì)大多數(shù)操作尾部這段延遲降低。的千萬(wàn)并發(fā)令人乍舌三個(gè)月后,將會(huì)再次帶來(lái)倍的提升。 隨著Kubernetes1.2v發(fā)布,K8S現(xiàn)在能支持1000個(gè)節(jié)點(diǎn)的集群(即1千萬(wàn)請(qǐng)求/秒),附帶對(duì)大多數(shù)API操作(99%尾部這段)延遲降低80%。這意味著在最近的6個(gè)月內(nèi),K8S支持的容量增加了10倍同時(shí)還保證用戶使用感受——99%pod啟動(dòng)時(shí)間少于...
閱讀 645·2021-08-17 10:15
閱讀 1742·2021-07-30 14:57
閱讀 1980·2019-08-30 15:55
閱讀 2823·2019-08-30 15:55
閱讀 2712·2019-08-30 15:44
閱讀 676·2019-08-30 14:13
閱讀 2389·2019-08-30 13:55
閱讀 2595·2019-08-26 13:56