前提条件
- 已创建ECK集群,集群状态为运行中。
- 已创建无状态工作负载Deployment或创建有状态工作负载StatefulSet。
操作步骤
- 设置节点标签。
a. 登录边缘容器集群控制台。
b. 在控制台左侧导航栏中,单击集群管理 。
c. 在集群列表页面,选择所需的集群并单击详情,在控制台左侧导航栏中选择节点管理>节点 。
d. 进入节点列表页面,单击左上角的标签与污点管理 。
e. 勾选目标节点,单击左上角添加标签,在弹出的添加对话框中,输入标签的名称和值,然后单击确认。
- 调度应用到指定节点。
a. 登录边缘容器集群控制台。
b. 在控制台左侧导航栏中,单击集群管理 。
c. 在集群列表页面,选择所需的集群并单击详情,在控制台左侧导航栏中选择工作负载>无状态 。
d. 进入无状态负载页面,单击列表右侧操作>Yaml编辑,为应用设置nodeSelector。本文以名称为nginx-deployment-basic的无状态工作负载为例进行说明。
说明名称:标签名称由字母、数字、短划线(-)、下划线(_)、小数点(.)组成,且必须以字母或者数字开头和结尾。本文示例为deployment。
值:标签值可以为空字符串或由字母、数字、短划线(-)、下划线(_)、小数点(.)组成,且必须以字母或者数字开头和结尾。本文示例为nginx。
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment-basic
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
nodeSelector:
deployment: nginx # #添加节点的标签,以保证您的应用只可以运行在目标节点上。请使用实际值。
containers:
- name: nginx
image: nginx:1.7.9
ports:
- containerPort: 80
resources:
limits:
cpu: "500m"
e. 单击更新,会提示部署状态信息。
结果验证
单击 工作负载 >容器组页面,查看对应名称的容器组,目标应用Pod全部被调度到了gs-jiayuguan-1.172.16.0.4的节点上,这个节点正是本文示例中在节点中打了标签(deployment: nginx)的节点。