管理节点
更新节点标签
Labels 是附加到节点上的键值对,可用于定义节点属性。为节点设置标签后,您可以轻松按标签筛选或选择节点。例如:将 Pods 调度到指定节点。
支持更新正常状态节点的节点标签,以及添加或删除自定义节点标签。
操作步骤
-
在左侧导航栏中,单击 Cluster Management > Clusters。
-
单击包含待更新标签节点的 cluster name。
-
在 Nodes 选项卡下,单击待更新标签节点右侧的 Update Node Labels。
-
添加、修改或删除节点标签。
-
单击 OK。
成功更新节点标签后,节点标签数量会发生变化。您可以在 Node 信息栏中的 Node Labels 项查看该节点的所有标签信息。
停止/恢复节点调度
通过设置节点的调度状态,您可以控制集群中新创建的 Pods 是否允许调度到该节点。
-
Stop Scheduling:不允许新创建的 Pods 调度到该节点,但不影响该节点上已运行的 Pods。
-
Resume Scheduling:允许新创建的 Pods 调度到该节点。
操作步骤
-
在左侧导航栏中,单击 Clusters > Clusters。
-
单击包含待停止/恢复调度节点的 cluster name。
-
在 Nodes 选项卡下,单击待设置调度状态节点右侧的 Stop Scheduling/Resume Scheduling。
-
单击 OK。
驱逐 Pods
将正常状态节点上除由 DaemonSet(daemon set)管理之外的所有 Pods 驱逐到集群中的其他节点,并将该节点设为不可调度状态。
注意:驱逐会移除 Pods 中本地存储的数据。请在驱逐 Pods 之前确认数据影响。
操作步骤
-
在左侧导航栏中,单击 Cluster Management > Clusters。
-
单击包含待驱逐 Pods 节点的 cluster name。
-
在 Nodes 选项卡下,单击待驱逐 Pods 的 node name。
-
在右上角,单击 Actions > Evict Pods。
-
查看待驱逐 Pods 的信息,然后单击 Evict。
设置污点
为正常状态节点设置污点信息。
污点是节点的一种属性,允许节点拒绝运行某些类型的 Pods,甚至驱逐 Pods。污点与 Pods 上的容忍(tolerations)配合使用,可防止 Pods 被分配到不合适的节点。每个节点可以应用一个或多个污点,无法容忍这些污点的 Pods 将不会被该节点接受。
例如:如果我们发现某个节点的内存利用率已达到 91%,则不建议继续将新的 Pods 调度到该节点。此时可以为其设置污点。设置污点后,Kubernetes 将不会把 Pods 调度到该节点。
有关 Kubernetes 污点和容忍的行为,请参见 Taints and Tolerations。
操作步骤
-
在左侧导航栏中,单击 Cluster Management > Clusters。
-
单击包含待设置污点节点的 cluster name。
-
在 Nodes 选项卡下,单击待设置污点节点右侧的 Set Taints。
-
设置污点的键、值和效果。一个节点可以添加多个污点。
污点属性由
key=value [effect]组成。key=value用于匹配 Pod 容忍。污点表示该节点已被key=value污染,除非 Pod 能够容忍(Tolerations)key=value污点,否则不允许或应避免将 Pod 调度到该节点。effect 是污点的影响,提供以下三种选项:
-
NoSchedule:表示不允许调度,已调度的资源不受影响。
-
PreferNoSchedule:表示尽量不要调度。
-
NoExecute:表示不允许调度,且已调度的资源将在
tolerationSeconds之后被删除。
-
-
单击 OK。
标签和污点管理
平台支持批量为节点设置标签和污点。
约束与限制
-
在设置设备标签之前,您需要先在集群中部署设备插件,例如 NVIDIA GPU MPS device plugin、NVIDIA GPU device plugin、GPU Manager device plugin 等。
提示:设备标签实际上是节点标签。为方便您使用,平台将设备插件依赖的节点标签归类为设备标签,便于快速配置。
操作步骤
-
在左侧导航栏中,单击 Clusters > Clusters。
-
单击要管理标签和污点的 cluster name。
-
在 Nodes 选项卡下,多选要管理的节点,然后单击 Label and Taint Management 按钮。
提示:您可以在节点列表页的搜索框中输入您关心的节点标签,快速筛选出要管理标签和污点的节点列表。
-
在 Batch Operations 中,添加并填写要执行的操作,然后单击 OK 将批量操作提交到集群。
-
Node Labels:可以为所选节点 添加/更新 指定标签,或 删除 指定标签。选择删除时,平台会筛选出所选节点上的所有标签列表。值设置为 Any 时,表示删除包含指定标签键的所有节点上的标签。
-
Taints:可以为所选节点 添加/更新 指定污点,或 删除 指定污点。选择删除时,平台会筛选出所选节点上的所有污点列表。值设置为 Any 时,表示删除包含指定污点键的所有节点上的污点。
-
Device Labels:可以为所选节点设置要使用的设备,设备列表来自您已在该集群中部署的设备插件。
-
启用/禁用虚拟化开关
当裸金属集群中的节点为物理机时,您可以通过启用/禁用节点虚拟化开关,控制 Kubernetes 是否允许将虚拟机(VMI, VirtualMachineInstance)调度到该节点。
当开关启用时,允许将新创建的虚拟机调度到该物理机节点;当开关禁用时,禁止将新创建的虚拟机调度到该物理机节点,但这不会影响已经在该节点上运行的虚拟机。
提示:相关操作和注意事项,请参见 Prepare Virtualization Environment。
删除裸金属集群节点
支持删除裸金属类型集群中的节点。例如:删除裸金属集群中的故障节点。
约束与限制
-
不支持删除导入集群中的节点。
-
当集群中只有一个控制平面节点时,不支持删除该控制平面节点。
操作步骤
-
在左侧导航栏中,单击 Cluster Management > Clusters。
-
单击包含待删除节点的 On-Premises 类型 cluster name。
-
在 Nodes 选项卡下,单击待删除节点右侧的 Delete。
提示:如果在删除 Linux 节点后需要清理该节点下的资源,可单击对话框底部的 Download Cleanup Script,将清理脚本下载到本地。节点成功删除后,登录该节点并执行清理脚本。
-
输入节点名称,然后单击 Delete。