5.4. 删除 Object Storage 节点


删除 Object Storage (swift)节点的方法有两种。根据集群的复杂性或其包含的数据数量选择以下选项之一:

5.4.1. 在一个操作中删除 Object Storage 节点

使用此方法删除具有少量数据的集群中的节点。以下示例流程将四个节点减少到三个。

流程

  1. stack 用户身份登录 undercloud,再提供 stackrc 凭证文件:

    $ source ~/stackrc
    Copy to Clipboard Toggle word wrap
  2. 使用 ObjectStorageCount 参数将对象存储计数减少 1。此参数通常位于 node-info.yaml 中,这是包含节点数的环境文件:

    parameter_defaults:
      ObjectStorageCount: 3
    Copy to Clipboard Toggle word wrap
  3. 删除从 node-info.yaml 文件中的 ObjectStorageIPs 参数中删除的节点的 IP 地址:

    ObjectStorageIPs: <ip_address>
    Copy to Clipboard Toggle word wrap
  4. 创建环境文件,如 remove-object-node.yaml。此文件标识和删除您指定的 Object Storage 节点。以下示例内容指定 overcloud-objectstorage-1 的移除:

    parameter_defaults:
      ObjectStorageRemovalPolicies:
        [{'resource_list': ['1']}]
    Copy to Clipboard Toggle word wrap
  5. 在部署命令中包含 node-info.yamlremove-object-node.yaml 文件:

    $ openstack overcloud deploy \
    --templates \
    …
    -e <existing_overcloud_environment_files> \
    -e node-info.yaml \
    -e remove-object-node.yaml \
    …
    Copy to Clipboard Toggle word wrap

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

  6. 列出活跃节点,以验证您删除了正确的节点:

    $ openstack server list
    Copy to Clipboard Toggle word wrap
  7. 在 undercloud 节点上,删除 remove-object-node.yaml 文件,使其不包含在将来的重新部署中:

    $ rm <file_path>/remove-object-node.yaml
    Copy to Clipboard Toggle word wrap

5.4.2. 将环更改为逐步删除对象存储节点

如果您需要在删除节点时最小化对存储网络的影响,或者集群包含大量数据,请使用这种方法。要更改存储环,以减少您要删除的节点上的磁盘的权重,首先完成先决条件中列出的步骤。以下示例将节点从四个减少到三个。

先决条件

流程

  1. stack 用户身份登录 undercloud,再提供 stackrc 凭证文件:

    $ source ~/stackrc
    Copy to Clipboard Toggle word wrap
  2. 使用 ObjectStorageCount 参数将对象存储计数减少 1。此参数通常位于 node-info.yaml 中,这是包含节点数的环境文件:

    parameter_defaults:
      ObjectStorageCount: 3
    Copy to Clipboard Toggle word wrap
  3. 删除从 node-info.yaml 文件中的 ObjectStorageIPs 参数中删除的节点的 IP 地址:

    ObjectStorageIPs: <ip_address>
    Copy to Clipboard Toggle word wrap
  4. 创建环境文件,如 remove-object-node.yaml。此文件标识和删除您指定的 Object Storage 节点。以下示例内容指定 overcloud-objectstorage-1 的移除:

    parameter_defaults:
      ObjectStorageRemovalPolicies:
        [{'resource_list': ['1']}]
    Copy to Clipboard Toggle word wrap
  5. 在部署命令中包含 node-info.yamlremove-object-node.yaml 文件:

    $ openstack overcloud deploy \
    --templates \
    …
    -e <existing_overcloud_environment_files> \
    -e node-info.yaml \
    -e remove-object-node.yaml \
    …
    Copy to Clipboard Toggle word wrap

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

  6. 列出活跃节点,以验证您删除了正确的节点:

    $ openstack server list
    Copy to Clipboard Toggle word wrap
  7. 在 undercloud 节点上,删除 remove-object-node.yaml 文件,使其不包含在将来的重新部署中:

    $ rm <file_path>/remove-object-node.yaml
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat