5.5. 替换 Object Storage 节点


参考本节中的说明,了解如何在不影响集群完整性的情况下替换 Object Storage 节点。此示例涉及您要替换 overcloud-objectstorage-1 节点的三节点 Object Storage 集群。此操作过程的目标是添加一个节点,然后删除 overcloud-objectstorage-1 节点。新节点替换 overcloud-objectstorage-1 节点。

步骤

  1. 通过 ObjectStorageCount 参数增加 Object Storage 数量。此参数通常位于 node-info.yaml 中,这是包含节点数的环境文件:

    parameter_defaults:
      ObjectStorageCount: 4

    ObjectStorageCount 参数定义环境中 Object Storage 节点的数量。在本例中,将 Object Storage 节点的数量从 3 扩展到 4

  2. 使用更新的 ObjectStorageCount 参数,运行部署命令:

    $ source ~/stackrc
    (undercloud) $ openstack overcloud deploy --templates -e node-info.yaml <environment_files>

    部署命令完成后,overcloud 将包含新增的 Object Storage 节点。

  3. 将数据复制到新节点。在删除节点(本例中为 overcloud-objectstorage-1)前,先等待新节点上完成复制传递。在 /var/log/swift/swift.log 文件中检查复制传递进度。当传递完成时,Object Storage 服务应该会记录类似于以下示例的日志条目:

    Mar 29 08:49:05 localhost *object-server: Object replication complete.*
    Mar 29 08:49:11 localhost *container-server: Replication run OVER*
    Mar 29 08:49:13 localhost *account-server: Replication run OVER*
  4. 若要从环中删除旧节点,可减小 ObjectStorageCount 参数来省略旧节点。在本例中,将 ObjectStorageCount 参数减小到 3:

    parameter_defaults:
      ObjectStorageCount: 3
  5. 创建一个新环境文件,命名为 remove-object-node.yaml。此文件将确认并移除指定的 Object Storage 节点。以下内容指定了 overcloud-objectstorage-1 的移除:

    parameter_defaults:
      ObjectStorageRemovalPolicies:
        [{'resource_list': ['1']}]
  6. 在部署命令中包含 node-info.yamlremove-object-node.yaml 文件:

    (undercloud) $ openstack overcloud deploy --templates -e node-info.yaml <environment_files> -e remove-object-node.yaml

director 从 overcloud 中删除 Object Storage 节点,并更新 overcloud 中的其他节点来使删除生效。

重要

请包含初始 overcloud 创建中的所有环境文件和选项。这包括非 Compute 节点的相同缩放参数。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.