Сопровождение развёртывания
Действия администратора системы после установки
После установки системы можно выполнить несколько действий через dctui. Для этого зайдите во вкладку Cloud Admin Actions в меню развёртывания:
+----------------------------------------- Cloud Admin Actions ------------------------------------------+
|Restart ⏷ Collapse |
|Configure ⏷ Collapse [service] Running processes O
| galera [restart button] |
| neutron ----------------------------------------- |
| neutron_ml2 all |
| nova_libvirt Compute |
| nova PowerOfThree |
| barbican ----------------------------------------- |
| cinder |
|Extra ⏷ Collapse Controller |
| haproxy Pacemaker |
| galera-local-connection ----------------------------------------- |
| glance |
| Controller |
| ----------------------------------------- |
| horizon |
| Controller |
| ----------------------------------------- |
| ironic |
| Controller |
| ----------------------------------------- |
| keystone |
| Controller |
| ----------------------------------------- |
| memcached |
| Controller |
| ----------------------------------------- |
| michman |
| Controller |
| ----------------------------------------- |
| neutron |
| Compute |
| Controller |
| ----------------------------------------- |
+--------------------------------------------------------------------------------------------------------+
Вы увидите список разделов:
Restart - перезапуск сервисов
Configure - конфигурация сервисов (без перезапуска сервисов)
Extra - дополнительные плейбуки:
haproxy- конфигурация haproxygalera-local-connection- изменить подключение к galera с VIP адреса на локальный
Изменение состава физических узлов
Добавление узла
Общий порядок действий:
Добавить новый физический узел. Настроить порядок интерфейсов и диск ОС далее, согласно инструкции;
Применить изменения. Выполните операции Provision Nodes, Deploy Services.
На этапе Deploy Services при масштабировании развёртывания типа OpenStack и роли:
Compute: выберите только нулевой контроллер и новый узел вычисления,
Controller/PowerOfThree: выберите все узлы в роли Controller/PowerOfThree соответственно,
Monitoring: выберите только новый узел.
При масштабировании развёртывания типа Ceph выберите нулевой хост и ваш новый узел типа Ceph.
Удаление узла
Общий порядок действий:
Подготовить систему к удалению узла.
Удалить узел из развёртывания.
Удалить узел из системы.
Для подготовки системы к удалению в развёртывании типа Openstack узла:
вычисления: в режиме администратора облака необходимо выключить удаляемый узел.
управления: с удаляемого узла выполните команду:
sudo pcs node maintenance <node-name>
Для удаления узла из развёртывания используйте DeckCrew TUI, зайдите во вкладку Deployment из меню развёртывания, в состав которого входит узел для удаления и нажмите на галку Activate Danger Zone:
+---------------------------------------------- Deployment ----------------------------------------------+
| < Refresh/Ctrl+R > |
| O
|Stack status |
| interactive: screen -x test |
| last_action: Deploy Services |
| logs: /var/log/deckcrew/test/dc-deploy-test.log |
| status: DEPLOY_SUCCESS |
| |
|Debug mode |
| [ ] No launch. Generate deployment script /tmp/dc-deploy-test |
| |
|Pick deployment action |
| (X) Prepare Networks |
| ( ) Create VIPs |
| ( ) Provision Nodes |
| ( ) Update Known Hosts |
| ( ) Validate Templates |
| ( ) Deploy Services |
| |
| [X] Activate danger section |
| ( ) Update Partition |
| (X) Delete Nodes |
| ( ) Delete Deployment |
| |
|Set extra settings for deployment action |
|[ ] test-compute-0 |
|[ ] test-controller-0 |
| |
|--------------------------------------------------------------------------------------------------------|
| < Show log > |
|Logs |
| b'2025-12-05 17:20:40.231 784389 INFO osc_lib.shell [-] END return value: None\x1b[00m\n' |
| |
| < Start/Ctrl+A > < Stop/Ctrl+D > < Cancel/Ctrl+C > |
+--------------------------------------------------------------------------------------------------------+
Шаг 1. Выберите узлы для удаления и нажмите кнопку Start.
Если узла нет в списке во вкладке Deployment, значит развёртывание узла завершено неуспешно. В этом случае перейдите сразу к Шагу 2.
Шаг 2. Затем перейдите в меню Roles/Nodes and Networks и удалите ваш узел из списка узлов используя кнопку Delete.
Шаг 3. Для удаления узла из системы перейдите в меню управления физическими узлами и удалите узел выбрав его в списке узлов и нажав на кнопку Delete.
Если узел находится в состоянии deploy failed или error, перед удалением необходимо сбросить состояние узла, запустив операцию undeploy.
Полезно перед удаление очистить узел от данных используя операцию clean
Замена узла в облаке
Для замены узла необходимо сначала добавить новый физический узел и настроить его согласно инструкции из Добавления узлов в облако.
Затем перейдите в раздел Roles/Nodes and Networks, удалите узел, который хотите заменить, и добавьте новый узел.
Затем в разделе Deployment выполните Provision Nodes, Update Known Hosts и Deploy Services.
Ручное обновление
Обновление пакетов
Для обновления пакетов системы необходимо использовать менеджер пакетов dnf.
Настройте репозитории для обновления в /etc/yum.repos.d/ на узле развёртывания.
Для простоты укажите имя репозитория moncloud_updates.
Если обновляется узел развёртывания, то выполните команду:
dctl update packages
Для обновления пакетов на узлах развёртываний выполните команду:
dctl instance update --packages <deploy_name>
Обновление контейнеров
Реестр образов контейнеров находится на узле развёртывания на порту 8787. Для обновления всех образов в реестре необходимо обновить (или установить) пакет acloud-registry на узле развёртывания:
sudo dnf update acloud-registry --enablerepo=acloud_staging_imagedata
Для обновления всех контейнеров в системе перейдите к соответствующему разделу документации Обновление Openstack или Обновление узла развёртывания.
Частичное обновление контейнеров
Чтобы обновить один или несколько образов в реестре, используйте команду skopeo, установленную на узле развёртывания. Например, для обновления образа openstack-nova-api выполните команду:
skopeo copy --src-tls-verify=false \
docker://acloud-obs.intra.acloud.ru/acloud/staging/containers/containers/acloud/openstack-nova-api:latest \
docker://<undercloud_ip>:8787/acloud/openstack-nova-api:latest
В зависимости от того, как контейнер управляется, способ его обновления может отличаться:
простые контейнеры, не управляемые сервисом Pacemaker,
сложные контейнеры, управляемые сервисом Pacemaker, а именно:
cinder-volume
rabbitmq
redis
haproxy
mariadb
Для простых контейнеров используйте команду dctl для пересоздания контейнера на всех узлах управления:
dctl instance update demo --container nova_api --role Controller
или на одном узле, например:
dctl instance update demo --container nova_api --host demo-controller-0
Для сложных контейнеров воспользуйтесь командой:
dctl instance update demo --pcs-service SERVICE_NAME
При обновлении контейнеров nova_virt* необходимо предварительно остановить виртуальные машины на узле с обновляемым контейнером.
Обновление OpenStack
Примечание
Предварительно необходимо остановить виртуальные машины на обновляемом узле, так как при обновлении все контейнеры пересоздаются, то есть будут пересозданы и контейнеры nova_virt*, остановка которых приводит к завершению работы всех запущенных ВМ.
Для начала необходимо сбекапить данные:
dctl instance backup <deploy_name> --all
Последовательность действий:
Обновить пакеты acloud-registry и acloud-images на узле развёртывания:
sudo dnf update acloud-registry acloud-images --enablerepo acloud_staging_imagedata
Запустить обновление всех или нескольких развёртываний:
dctl update instances [name ...]
Обновление скриптов развёртывания
Если не планируется обновление пакетов, то можно обновить только скрипты развёртывания.
Шаг 1. Для этого обновите необходимые пакеты на узле развёртывания:
dctl update packages
Шаг 2. Запустите обновление шаблонов развёртывания:
dctl instance update --templates <deploy_name>
В случае возникновения ошибок ребейза зайдите в указанную в ошибке директорию:
cd /etc/deckcrew/templates/<deploy_name>-<deploy_type>-update
и выполните успешный ребейз, после чего запустите команду обновления шаблонов с флагом --finish:
dctl instance update --templates <deploy_name> --finish
Шаг 3. Запустите деплой сервисов:
dctl instance deploy <deploy_name> services
Примечание
При обновлении шаблонов могут происходить конфликты обновления. Если вы не уверены, что делаете, то лучше обратитесь к разработчикам Moncloud.
Обновление с добавлением SSL/TLS
Проведите настройку SSL/TLS согласно инструкции
Если первоначально развёртывание было создано без SSL/TLS, то для добавления SSL/TLS необходимо зайти на один из узлов управления и выполнить:
sudo pcs resource bundle update haproxy-bundle storage-map add \
source-dir=/etc/pki/tls/private/overcloud_endpoint.pem \
target-dir=/etc/pki/tls/private/overcloud_endpoint.pem \
options=ro
Обновление узла развёртывания
Примечание
Не требуется при обновлении OpenStack или Ceph.
Запустите полное обновление узла развёртывания:
dctl update undercloud
Обновление системы хранения
(В разработке)