После замены узла или вывода его из эксплуатации в базе данных OpenStack могут остаться записи о сервисах в состоянии down или XXX. Эти сервисы можно удалить.
-
Подключитесь к OpenStack CLI с правами администратора. Подробнее — в разделе ссылка.
-
Найдите сервисы в состоянии
downилиXXX:# openstack volume service list | grep down# cinder-manage service list | grep XXXПример ответа для
openstack volume service list:+------------------+----------------------------+------+----------+-------+----------------------------+| Binary | Host | Zone | Status | State | Updated At |+------------------+----------------------------+------+----------+-------+----------------------------+| cinder-scheduler | cpn001 | nova | disabled | down | 2023-08-17T02:52:37.000000 || cinder-volume | rbd:volumes:c1@ceph-silver | AZ1 | disabled | down | 2023-08-17T02:52:35.000000 || cinder-volume | rbd:volumes:c1@manila | nova | disabled | down | 2023-08-17T02:52:40.000000 || cinder-scheduler | cpn003 | nova | disabled | down | 2023-08-17T02:52:39.000000 || cinder-scheduler | cpn002 | nova | disabled | down | 2023-08-17T02:52:35.000000 |+------------------+----------------------------+------+----------+-------+----------------------------+ -
Удалите systemd-юниты и конфигурации кластеров сервиса
cinder-volumeв состоянииdown.Пример для кластера
ceph-silver:# systemctl stop mcs-cinder-volume@ceph-silver# systemctl disable mcs-cinder-volume@ceph-silver# systemctl mask mcs-cinder-volume@ceph-silver# rm -f /etc/systemd/system/multi-user.target.wants/mcs-cinder-volume@ceph-silver.service# rm -f /etc/systemd/system/mcs-cinder-volume@ceph-silver.service# rm -rf /etc/systemd/system/mcs-cinder-volume@ceph-silver.service.d# systemctl daemon-reload# systemctl reset-failed# rm -f /etc/cinder/ceph-silver-cinder.conf# rm -f /etc/ceph/ceph-silver.conf# rm -f /etc/ceph/ceph-silver.client.cinder.keyring -
Удалите сервисы
cinder-volumeдля Ceph-бэкендов.Пример для кластера
ceph-silver:# cinder-manage service remove cinder-volume 'rbd:volumes:c1@ceph-silver'# cinder-manage service remove cinder-volume 'rbd:volumes:c2@ceph-silver'# cinder-manage service remove cinder-volume 'rbd:volumes:c3@ceph-silver'В этих командах хост должен в точности совпадать со значением из столбца
Host. -
Удалите остальные сервисы в состоянии
downилиXXX.Пример для сервиса
cinder-scheduler:# cinder-manage service remove cinder-scheduler cpn001# cinder-manage service remove cinder-scheduler cpn002# cinder-manage service remove cinder-scheduler cpn003 -
Удалите кластеры сервиса
cinder-volume:-
Проверьте состояние кластеров:
# cinder-manage cluster list -
Удалите кластеры сервиса
cinder-volumeв состоянииdown.Пример для кластера
ceph-silver:# cinder-manage cluster remove cinder-volume ceph-silver@ceph-silverПри выполнении команды
cinder-manage cluster removeмогут возникать ошибки.
-
-
Удалите связанные типы дисков:
-
Найдите типы дисков, связанные с удаляемым кластером:
# openstack volume type list -
Удалите их:
# openstack volume type delete <ID_ТИПА_ДИСКА>
-
-
Удалите связанные спецификации QoS:
-
Найдите спецификации QoS, связанные с удаляемым кластером:
# openstack volume qos list -
Удалите их:
# openstack volume qos delete <ID_QOS>
-
-
Проверьте, что сервисы в состоянии
downилиXXXудалены:# openstack volume service list | grep down# cinder-manage service list | grep XXX# cinder-manage cluster list -
Удалите RBD-секреты на вычислительных узлах:
-
Найдите RBD-секреты удаленных кластеров:
# virsh secret-list | grep <ИМЯ_КЛАСТЕРА> -
Удалите их:
# virsh secret-undefine <UUID_СЕКРЕТА>
-
-
Удалите конфигурации кластеров на вычислительных узлах:
# rm -f /etc/ceph/<CLUSTER_NAME>.conf# rm -f /etc/ceph/<CLUSTER_NAME>.client.cinder.keyring
-
Подключитесь к OpenStack CLI с правами администратора. Подробнее — в разделе ссылка.
-
Найдите сервисы в состоянии
down:# openstack compute service list | grep down -
Удалите эти сервисы:
# openstack compute service delete <ID_СЕРВИСА>
-
Найдите DHCP-агенты в состоянии
XXX:# openstack network agent list | grep XXX -
Отключите их:
# openstack network agent set --disable <ID_DHCP-АГЕНТА> -
Удалите их:
# openstack network agent delete <ID_DHCP-АГЕНТА> -
Получите список DHCP-портов, закрепленных за удаленными агентами:
# for port_id in $(openstack port list --device-owner network:dhcp -c ID -f value); do openstack port show $port_id -c id -c binding_host_id -f value | grep cpn -A1; done -
Удалите эти DHCP-порты:
# openstack port delete <ID_DHCP-ПОРТА>