2.34. 将节点设置为维护模式


2.34.1. 了解节点维护模式

将节点置于维护中可将节点标记为不可调度,并排空其中的所有虚拟机和 pod。具有 LiveMigrate 驱除策略的虚拟机实例实时迁移到另一节点不会丢失服务。在从通用模板创建的虚拟机中默认配置此驱除策略,而自定义虚拟机则必须手动更配置。

没有驱除策略的虚拟机实例将在该节点上被删除,并会在另一节点上重新创建。

重要

虚拟机必须具有一个采用共享 ReadWriteMany (RWX) 访问模式的 PersistentVolumeClaim (PVC) 才能实时迁移。

通过 web 控制台或 CLI 将节点置于维护模式

2.34.2. 通过 web 控制台将节点设置为维护模式

使用 Compute Nodes 列表中每个节点上的 Options 菜单, kebab 或使用 Node Details 屏幕中的 Actions 控件将节点设置为维护模式。

流程

  1. 在容器原生虚拟化控制台中,点击 Compute Nodes
  2. 您可从此屏幕将节点设置为维护,这有助于在一个屏幕中对多个虚拟机执行操作,也可通过 Node Details 屏幕进行,其中可查看所选节点的综合详情:

    • 点击 Options 菜单 kebab (在节点后面),然后选择 Start Maintenance
    • 点击节点名称以打开 Node Details 屏幕,然后点击 Actions Start Maintenance
  3. 在确认窗口中点击 Start Maintenance

该节点将实时迁移具有 liveMigration 驱除策略的虚拟机实例,且该节点不可再调度。该节点上的所有其他 pod 和虚拟机均被删除,并会在另一节点上重新创建。

2.34.3. 在 CLI 中将节点设置为维护模式

通过创建 NodeMaintenance 自定义资源 (CR) 对象来将节点设置为维护模式,该对象需引用节点名称以及将节点设置为维护模式的原因。

流程

  1. 创建节点维护模式的 CR 配置。本例使用名为 node02-maintenance.yaml 的 CR:

    apiVersion: kubevirt.io/v1alpha1
    kind: NodeMaintenance
    metadata:
      name: node02-maintenance
    spec:
      nodeName: node02
      reason: "Replacing node02"
  2. 在集群中创建 NodeMaintenance 对象:

    $ oc apply -f <node02-maintenance.yaml>

该节点会实时迁移具有 liveMigration 驱除策略的虚拟机实例,并污染该节点,使其不可再调度。该节点上的所有其他 pod 和虚拟机均被删除,并会在另一节点上重新创建。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.