您好,登錄后才能下訂單哦!
這篇文章給大家介紹Kubernetes中Pod如何調度到指定Node,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
問題描述
??Kubernetes有著自己特定的調度算法與策略,有Master中的Scheduler組件來實現,根據Node資源使用情況自動調度Pod的創建,通常可以滿足我們大部分的需求。但是有時我們希望可以將某些Pod調度到特定硬件節點上,這里采用目前最為簡單的nodeName和nodeSelector來實現Pod調度。
??假設以下場景:有三個Node,分別為107、108、109,創建Deployments來部署Tomcat應用,指定在107節點上創建Pod。
解決方案
?nodeName
??Pod.spec.nodeName將Pod直接調度到指定的Node節點上,會跳過Scheduler的調度策略,該匹配規則是強制匹配。
Tomcatl.yaml文件
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: myweb
spec:
replicas: 2
template:
metadata:
labels:
app: myweb
spec:
nodeSelector: 107 #直接通過節點名稱調度到指定節點
containers:
- name: myweb
image: harbor/tomcat:8.5-jre8
ports:
- containerPort: 80
?nodeSelector
??Pod.spec.nodeSelector通過kubernetes的label-selector機制選擇節點,由調度器調度策略匹配label,而后調度Pod到目標節點,該匹配規則屬于強制約束。
設置 Node Lable
kubectl label nodes 107 type=backEndNode1
1
Tomcatl.yaml文件
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: myweb
spec:
replicas: 2
template:
metadata:
labels:
app: myweb
spec:
nodeSelector:
type: backEndNode1
containers:
- name: myweb
image: harbor/tomcat:8.5-jre8
ports:
- containerPort: 80
創建Deployment
kubectl create -f Tomcat.yaml
關于Kubernetes中Pod如何調度到指定Node就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。