5.4. 删除 Object Storage 节点
删除 Object Storage (swift)节点的方法有两种。根据集群的复杂性或其包含的数据数量选择以下选项之一:
- 简单移除:此方法在一个操作中删除节点,并适合以较小的数据量为中心的集群。请参阅在一个操作中删除对象存储节点。
- 增量移除:更改环,以降低您要删除的节点上磁盘的权重。如果要最大程度降低对存储网络使用量的影响,或者集群包含更多数量的数据,这个方法是适当的。请参阅,以递增方式删除对象存储节点。
5.4.1. 在一个操作中删除 Object Storage 节点 复制链接链接已复制到粘贴板!
使用此方法删除具有少量数据的集群中的节点。以下示例流程将四个节点减少到三个。
流程
以
stack用户身份登录 undercloud,再提供stackrc凭证文件:source ~/stackrc
$ source ~/stackrcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
ObjectStorageCount参数将对象存储计数减少 1。此参数通常位于node-info.yaml中,这是包含节点数的环境文件:parameter_defaults: ObjectStorageCount: 3
parameter_defaults: ObjectStorageCount: 3Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除从
node-info.yaml文件中的ObjectStorageIPs参数中删除的节点的 IP 地址:ObjectStorageIPs: <ip_address>
ObjectStorageIPs: <ip_address>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建环境文件,如
remove-object-node.yaml。此文件标识和删除您指定的 Object Storage 节点。以下示例内容指定overcloud-objectstorage-1的移除:parameter_defaults: ObjectStorageRemovalPolicies: [{'resource_list': ['1']}]parameter_defaults: ObjectStorageRemovalPolicies: [{'resource_list': ['1']}]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在部署命令中包含
node-info.yaml和remove-object-node.yaml文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow director 从 overcloud 中删除 Object Storage 节点,并更新 overcloud 中的其他节点来使删除生效。
列出活跃节点,以验证您删除了正确的节点:
openstack server list
$ openstack server listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在 undercloud 节点上,删除
remove-object-node.yaml文件,使其不包含在将来的重新部署中:rm <file_path>/remove-object-node.yaml
$ rm <file_path>/remove-object-node.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
5.4.2. 将环更改为逐步删除对象存储节点 复制链接链接已复制到粘贴板!
如果您需要在删除节点时最小化对存储网络的影响,或者集群包含大量数据,请使用这种方法。要更改存储环,以减少您要删除的节点上的磁盘的权重,首先完成先决条件中列出的步骤。以下示例将节点从四个减少到三个。
先决条件
- 更新和重新平衡对象存储环。请参阅更新和重新平衡对象存储环。
- Object Storage 环中的更改会被同步。请参阅 同步更改并迁移数据。
流程
以
stack用户身份登录 undercloud,再提供stackrc凭证文件:source ~/stackrc
$ source ~/stackrcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
ObjectStorageCount参数将对象存储计数减少 1。此参数通常位于node-info.yaml中,这是包含节点数的环境文件:parameter_defaults: ObjectStorageCount: 3
parameter_defaults: ObjectStorageCount: 3Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除从
node-info.yaml文件中的ObjectStorageIPs参数中删除的节点的 IP 地址:ObjectStorageIPs: <ip_address>
ObjectStorageIPs: <ip_address>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建环境文件,如
remove-object-node.yaml。此文件标识和删除您指定的 Object Storage 节点。以下示例内容指定overcloud-objectstorage-1的移除:parameter_defaults: ObjectStorageRemovalPolicies: [{'resource_list': ['1']}]parameter_defaults: ObjectStorageRemovalPolicies: [{'resource_list': ['1']}]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在部署命令中包含
node-info.yaml和remove-object-node.yaml文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow director 从 overcloud 中删除 Object Storage 节点,并更新 overcloud 中的其他节点来使删除生效。
列出活跃节点,以验证您删除了正确的节点:
openstack server list
$ openstack server listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在 undercloud 节点上,删除
remove-object-node.yaml文件,使其不包含在将来的重新部署中:rm <file_path>/remove-object-node.yaml
$ rm <file_path>/remove-object-node.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow