1.3. 在 Red Hat Virtualization 上部署的 OpenShift Data Foundation


1.3.1. 在安装程序置备的基础架构中替换可运行的 Red Hat Virtualization 节点

流程

  1. 登录 OpenShift Web 控制台,再点击 Compute Nodes
  2. 确定需要替换的节点。记录其 Machine Name
  3. 将节点标记为不可调度:

    $ oc adm cordon <node_name>
    <node_name>
    指定替换的节点的名称。
  4. 排空节点:

    $ oc adm drain <node_name> --force --delete-emptydir-data=true --ignore-daemonsets
    重要

    此活动可能至少需要 5 到 10 分钟或更多。Ceph 周期内生成的 Ceph 错误是临时的,当您标记新节点并且可以正常工作时,会自动解决。

  5. Compute Machines。搜索所需的机器。
  6. 除了所需机器外,点击 Action 菜单(⋮)→ Delete Machine
  7. Delete 以确认机器已被删除。会自动创建新机器。等待新计算机启动并过渡到 Running 状态。

    重要

    此活动可能至少需要 5 到 10 分钟或更多。

  8. Compute Nodes。确认新节点处于 Ready 状态。
  9. 使用以下任一方法之一将 OpenShift Data Foundation 标签应用到新节点:

    从用户界面
    1. 对于新节点,点击 Action Menu(⋮)→ Edit Labels
    2. 添加 cluster.ocs.openshift.io/openshift-storage,然后点 Save
    使用命令行界面
    • 将 OpenShift Data Foundation 标签应用到新节点:
    $ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
    <new_node_name>
    指定新节点的名称。

验证步骤

  1. 验证输出中是否存在新节点:

    $ oc get nodes --show-labels | grep cluster.ocs.openshift.io/openshift-storage= |cut -d' ' -f1
  2. 点击 Workloads Pods。确认新节点上至少以下 pod 处于 Running 状态:

    • csi-cephfsplugin-*
    • csi-rbdplugin-*
  3. 验证所有其他所需的 OpenShift Data Foundation pod 是否处于 Running 状态。
  4. 验证新的对象存储设备(OSD)pod 是否在替换节点上运行:

    $ oc get pods -o wide -n openshift-storage| egrep -i <new_node_name> | egrep osd
  5. 可选:如果在集群中启用了集群范围的加密,请验证新 OSD 设备是否已加密。

    对于上一步中标识的每个新节点,请执行以下操作:

    1. 创建 debug pod 并为一个或多个所选主机打开 chroot 环境:

      $ oc debug node/<node_name>
      $ chroot /host
    2. 显示可用块设备列表:

      $ lsblk

      检查一个或多个 ocs-deviceset 名称旁的 crypt 关键字。

  6. 如果验证步骤失败,请联系红帽支持团队

1.3.2. 在安装程序置备的基础架构中替换失败的 Red Hat Virtualization 节点

流程

  1. 登录 OpenShift Web 控制台,再点击 Compute Nodes
  2. 确定出现故障的节点。记录其 Machine Name
  3. 删除 Virtual Machine(VM)实例时,确保磁盘不会被删除。

    • 登录 Red Hat Virtualization 管理门户,并从失败的虚拟机中删除与监控 pod 和对象存储设备(OSD)关联的虚拟磁盘。

      重要

      当您删除一个或多个磁盘时,不要选择 Remove Perently 选项。

  4. OpenShift Web 控制台中,点 Compute Machines。搜索所需的机器。
  5. Actions Edit Annotations,然后点 Add More
  6. 添加 machine.openshift.io/exclude-node-draining 并点 Save
  7. Actions Delete Machine,然后点 Delete

    会自动创建新机器。等待新机器启动。

    重要

    此活动可能至少需要 5 到 10 分钟或更多。Ceph 周期内生成的 Ceph 错误是临时的,当您标记新节点并且可以正常工作时,会自动解决。

  8. Compute Nodes。确认新节点处于 Ready 状态。
  9. 使用以下任一方法之一将 OpenShift Data Foundation 标签应用到新节点:

    从用户界面
    1. 对于新节点,点击 Action Menu(⋮)→ Edit Labels
    2. 添加 cluster.ocs.openshift.io/openshift-storage,然后点 Save
    使用命令行界面
    • 将 OpenShift Data Foundation 标签应用到新节点:
    $ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
    <new_node_name>
    指定新节点的名称。
  10. 可选: 如果没有自动删除失败的虚拟机,请从 Red Hat Virtualization 管理门户中删除虚拟机。

验证步骤

  1. 验证输出中是否存在新节点:

    $ oc get nodes --show-labels | grep cluster.ocs.openshift.io/openshift-storage= |cut -d' ' -f1
  2. 点击 Workloads Pods。确认新节点上至少以下 pod 处于 Running 状态:

    • csi-cephfsplugin-*
    • csi-rbdplugin-*
  3. 验证所有其他所需的 OpenShift Data Foundation pod 是否处于 Running 状态。
  4. 验证新的对象存储设备(OSD)pod 是否在替换节点上运行:

    $ oc get pods -o wide -n openshift-storage| egrep -i <new_node_name> | egrep osd
  5. 可选:如果在集群中启用了集群范围的加密,请验证新 OSD 设备是否已加密。

    对于上一步中标识的每个新节点,请执行以下操作:

    1. 创建 debug pod 并为一个或多个所选主机打开 chroot 环境:

      $ oc debug node/<node_name>
      $ chroot /host
    2. 显示可用块设备列表:

      $ lsblk

      检查一个或多个 ocs-deviceset 名称旁的 crypt 关键字。

  6. 如果验证步骤失败,请联系红帽支持团队
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.