4.5. 从单元格删除 Compute 节点
要从单元格中删除 Compute 节点,您必须从单元格中删除所有实例,并从放置数据库中删除主机名。
流程
从单元格中的 Compute 节点删除所有实例。
注意不支持在单元格之间迁移实例。您必须删除实例并在另一个单元中创建它们。
在其中一个全局 Controller 上,从单元中删除所有 Compute 节点:
$ CTRL_IP=$(ansible-inventory -i /home/stack/overcloud-deploy/overcloud/config-download/overcloud/tripleo-ansible-inventory.yaml --host <controller_node> | jq -r .ctlplane_ip) $ ssh tripleo-admin@${CTRL_IP} sudo podman \ exec -i -u root nova_api \ nova-manage cell_v2 list_hosts $ ssh tripleo-admin@${CTRL_IP} sudo podman \ exec -i -u root nova_api \ nova-manage cell_v2 delete_host --cell_uuid <uuid> --host <compute>
-
将
<controller_node
> 替换为 Controller 节点的名称,如controller-0
。
-
将
从放置服务中删除单元格的资源供应商,以确保在稍后将具有相同主机名的 Compute 节点添加到另一个单元时可以使用主机名:
(undercloud)$ source ~/overcloudrc (overcloud)$ openstack resource provider list +--------------------------------------+---------------------------------------+------------+ | uuid | name | generation | +--------------------------------------+---------------------------------------+------------+ | 9cd04a8b-5e6c-428e-a643-397c9bebcc16 | computecell1-novacompute-0.site1.test | 11 | +--------------------------------------+---------------------------------------+------------+ (overcloud)$ openstack resource provider \ delete 9cd04a8b-5e6c-428e-a643-397c9bebcc16