步驟 1 參照創建無狀態負載(Deployment)或創建有狀態負載(StatefulSet),在“高級設置”的“調度策略”下,單擊“工作負載間的親和性 > 與工作負載的反親和性”下的“添加”。
步驟 2 勾選不希望部署到相同節點的工作負載,單擊“確定”。
當前創建的工作負載會和已勾選的工作負載部署在不同節點上。
本節以nginx為例,說明kubectl命令創建工作負載的方法。
前提條件
請參見通過kubectl操作CCE集群配置kubectl命令,使彈性云主機連接集群。
操作步驟
參見通過kubectl命令行創建無狀態工作負載或通過kubectl命令行創建有狀態工作負載,工作負載間反親和性的yaml示例如下:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx
spec:
replicas: 1
selector:
matchLabels:
app: nginx
strategy:
type: RollingUpdate
template:
metadata:
labels:
app: nginx
spec:
containers:
- image: nginx
imagePullPolicy: Always
name: nginx
imagePullSecrets:
- name: default-secret
affinity:
podAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: app #工作負載中lable的key
operator: NotIn
values:
- test #工作負載中對應lable的value
步驟 1 登錄CCE控制臺,在左側導航欄中選擇“工作負載 > 無狀態負載 Deployment”或“工作負載 > 有狀態負載 StatefulSet”。
步驟 2 單擊工作負載名稱進入詳情頁,單擊“調度策略 > 簡易調度策略 > 添加反親和對象”。
步驟 3 對象類型選擇“工作負載”,勾選希望部署到不同節點上的工作負載,設置完成后當前的工作負載會和已勾選的工作負載部署在不同節點上。
說明:該方法可新增、編輯和刪除調度策略。