Миграция ВМ с вычислительных узлов перед перезагрузкой
Перед перезагрузкой вычислительных узлов (гипервизоров) для обеспечения работы ВМ освободите вычислительный узел.
Обслуживание вычислительных узлов описано в разделах документа Руководство администратора VK Private Cloud:
- Управление инфраструктурой → Вычислительные узлы (compute node).
- Управление облачными сервисами → Виртуальные машины → Миграция ВМ.
Пример «живой» миграции с вычислительного узла перед перезагрузкой:
-
Подключитесь к управляющему узлу с файлом конфигурации
openrc.sh:$ ssh cpn003$ sudo su -# source ~/openrc.sh -
Отключите сервис nova-compute на вычислительном узле, чтобы на нем не создавались новые ВМ:
# openstack compute service set --disable --disable-reason "maintenance" kcn001 nova-compute -
Получите список ВМ для миграции на узле, который будет перезагружен:
# openstack server list -f value --all --long --host kcn001Пример ожидаемого результатаfb010714-ead6-46f4-8dfb-ee27ce0970e5 centos_Basic-1-1_10GB_3 ACTIVE None 1 {'local-net': ['192.168.100.4', '10.31.1.34']} N/A (booted from volume) N/A (booted from volume) Basic-1-1 dac0c7ba-a78f-4fb5-a96a-e537937e935a AZ1 kcn001 {'service_user_id': 'c49c389fd5bc46b1bbfb288fb74c2a4c'}e43ae734-9d8c-4e74-a5f0-525b387a5320 centos_Basic-1-1_10GB ACTIVE None 1 {'local-net': ['192.168.100.21', '10.31.1.29']} N/A (booted from volume) N/A (booted from volume) Basic-1-1 dac0c7ba-a78f-4fb5-a96a-e537937e935a AZ1 kcn001 {'service_user_id': '81b40fccba574ac2b058159809c549ca'} -
Запустите миграцию одной ВМ c ожиданием выполнения миграции:
# openstack server migrate --live-migration --wait fb010714-ead6-46f4-8dfb-ee27ce0970e5 -
Проверьте, что ВМ успешно запустилась на другом узле после миграции:
# openstack server show fb010714-ead6-46f4-8dfb-ee27ce0970e5Пример ожидаемого результата+-------------------------------------+-----------------------------------------------------------+| Field | Value |+-------------------------------------+-----------------------------------------------------------+| OS-DCF:diskConfig | MANUAL || OS-EXT-AZ:availability_zone | AZ1 || OS-EXT-SRV-ATTR:host | kcn002 || OS-EXT-SRV-ATTR:hypervisor_hostname | kcn002 || OS-EXT-SRV-ATTR:instance_name | instance-00000008 || OS-EXT-STS:power_state | Running || OS-EXT-STS:task_state | None || OS-EXT-STS:vm_state | active || OS-SRV-USG:launched_at | 2025-01-20T12:54:46.000000 || OS-SRV-USG:terminated_at | None || accessIPv4 | || accessIPv6 | || addresses | local-net=10.31.1.34, 192.168.100.4 || config_drive | True || created | 2025-01-20T12:54:34Z || flavor | Basic-1-1 (dac0c7ba-a78f-4fb5-a96a-e537937e935a) || hostId | bb54c1c859458dd31ed9f1a7e44388f219352bc642594a151c04de15 || id | fb010714-ead6-46f4-8dfb-ee27ce0970e5 || image | N/A (booted from volume) || key_name | centos-Basic-1-1-10GB-3-1RxhxnVS || name | centos_Basic-1-1_10GB_3 || os_type | linux || progress | 0 || project_id | 974ccf8970844b18a109b3bd828f4d12 || properties | service_user_id='c49c389fd5bc46b1bbfb288fb74c2a4c' || security_groups | id='03267fff-f325-48e8-b316-5613c407795c', name='iocmp' || | id='139bc5aa-b415-427f-adc9-4b54b6c99c8b', name='default' || | id='685e2e9a-7ac5-4778-b9cf-1592178d5047', name='ssh' || status | ACTIVE || updated | 2025-01-20T15:26:33Z || user_id | 8747232330a0480faf3289b580955daf || volumes_attached | id='c8fc461d-6f8e-496b-a9b5-85dd444957c0' |+-------------------------------------+-----------------------------------------------------------+ -
Запустите пакетную миграцию всех ВМ в статусе
ACTIVEс узла (указывается в параметре--host):for server in $(openstack server list -f value --all --long --host kcn001 --status ACTIVE -c ID); do openstack server migrate --live-migration --wait ${server}; done -
Убедитесь, что на узле не осталось ВМ. В случае наличия ВМ в статусе
SHUTOFF(отключены), продолжайте процедуру без их миграции:# openstack server list -f value --all --long --host kcn001 -
После того как все ВМ будут перенесены с узла, выполните его перезагрузку.
Перед перезагрузкой проверьте версию ядра и убедитесь, что пакет с новым ядром установлен:
$ ssh kcn001$ uname -r$ sudo rpm -qa | grep kernel-lt-6.1.170-1.el7.3.x86_64$ sudo shutdown -r now -
После запуска вычислительного узла убедитесь, что все сервисы успешно запущены и загружено новое ядро.
Если есть интерфейс
dummy-i-evpn, Unit Network запускается раньше и может быть запущен с ошибками.$ ssh kcn001$ sudo systemctl list-units --failed$ uname -r$ 6.1.170-1.el7.3.x86_64 -
С управляющего узла
cpn003проверьте, что на гипервизореkcn001успешно запущены:-
Сервис Nova:
# openstack compute service list --host kcn001Пример ожидаемого результата+----+--------------+--------+------+----------+-------+----------------------------+| ID | Binary | Host | Zone | Status | State | Updated At |+----+--------------+--------+------+----------+-------+----------------------------+| 86 | nova-compute | kcn001 | AZ1 | disabled | up | 2025-01-21T07:29:01.000000 |+----+--------------+--------+------+----------+-------+----------------------------+ -
Сервис Neutron:
# openstack network agent list --host kcn001Пример ожидаемого результата+--------------------------------------+--------------------+--------+-------------------+-------+-------+---------------------------+| ID | Agent Type | Host | Availability Zone | Alive | State | Binary |+--------------------------------------+--------------------+--------+-------------------+-------+-------+---------------------------+| 3bdb2568-edf8-4f8b-88d9-8238b2416a34 | Open vSwitch agent | kcn001 | None | :-) | UP | neutron-openvswitch-agent || 77721c28-2b79-45cc-b01d-aad7ea8207b1 | L3 agent | kcn001 | nova | :-) | UP | neutron-l3-agent || 7ad6a475-82b2-47e7-b500-52cb8c789b81 | Metadata agent | kcn001 | None | :-) | UP | neutron-metadata-agent |+--------------------------------------+--------------------+--------+-------------------+-------+-------+---------------------------+
-
-
Если ошибок нет, выведите вычислительный узел из режима обслуживания, чтобы ВМ могли на нем создаваться:
# openstack compute service set --enable kcn001 nova-compute -
Мигрируйте любую ВМ на узел:
# openstack server migrate --live-migration --os-compute-api-version 2.30 --host kcn001 --wait a26789e5-f236-4147-9092-f7ec4da97417 -
Убедитесь, что ВМ мигрировала:
# openstack server list -f value --all --long --host kcn001a26789e5-f236-4147-9092-f7ec4da97417 centos_Basic-1-1_10GB_4 ACTIVE None 1 {'local-net': ['192.168.100.16', '10.31.1.48']} N/A (booted from volume) N/A (booted from volume) Basic-1-1 dac0c7ba-a78f-4fb5-a96a-e537937e935a AZ1 kcn001 {'service_user_id': '454e823d46dd4d3f9fbf2366ece9b20f'}