Для улучшения работы сайта мы используем файлы cookies. Оставаясь на сайте, вы соглашаетесь с политикой обработки персональных данных.

Интеграция с zVirt

Данный раздел содержит информацию по интеграции Nova Container Platform SE с zVirt. Раздел содержит следующие основные шаги:

1. Подготовка шаблонов виртуальных машин в среде zVirt

В данном разделе документации описывается подготовка виртуальной машины и создание из неё шаблона, который будет использоваться для развертывания всех виртуальных узлов кластера Nova Container Platform.

1.1. Создание виртуальной машины

Процесс создания виртуальной машины заключается в задании её настроек (некоторые из них можно изменить позже) и последующей установке операционной системы.

Процедура

  1. Перейдите в веб-интерфейс менеджера управления zVirt.

  2. Нажмите Ресурсы  Виртуальные машины.

  3. Нажмите Создать. Откроется окно Новая виртуальная машина.

  4. Выберите Операционную систему из выпадающего списка.

  5. Укажите Имя виртуальной машины.

  6. Добавьте диск к виртуальной машине в разделе Виртуальные диски.

  7. Нажмите Создать и укажите Размер (GiB) и Псевдоним нового виртуального диска. В остальных полях можно принять настройки по умолчанию или изменить их при необходимости.

  8. Подключите виртуальную машину к сети. Добавьте сетевой интерфейс, выбрав vNIC-профиль в выпадающем списке nic1 внизу на вкладке Общее.

  9. Задайте параметр Оперативная память (разделяемая) виртуальной машины на вкладке Система.

  10. На вкладке Параметры загрузки выберите Первое устройство, которое виртуальная машина будет использовать для начальной загрузки.

  11. На вкладке Запуск инициализации включите опцию Cloud-Init.

  12. В остальных полях можно принять настройки по умолчанию или изменить их при необходимости.

  13. Нажмите OK.

Новая виртуальная машина будет создана и отобразится в списке виртуальных машин в состоянии Выключено. Перед её использованием необходимо установить операционную систему. Используйте операционную систему из списка поддерживаемых операционных систем.

1.2. Подготовка виртуальной машины

  1. Запустите созданную виртуальную машину и перейдите в ее консоль.

  2. Установите пакеты qemu-guest-agent и cloud-init:

    dnf install -y qemu-guest-agent cloud-init
  3. Включите и добавьте в автозагрузку сервисы qemu-guest-agent и cloud-init:

    systemctl enable qemu-guest-agent cloud-init
  4. Выключите межсетевой экран:

    systemctl disable firewalld
  5. Сценарий инициализации виртуальных машин при настройке сети использует именование интерфейсов ethX. Если в виртуальной машине сетевые интерфейсы именуются иначе, например, enp1s0, то необходимо выполнить следующие шаги:

    • Откройте файл /etc/default/grub с помощью текстового редактора:

      vi /etc/default/grub
    • Добавьте параметр net.ifnames=0 в строку GRUB_CMDLINE_LINUX

      Пример содержимого файла /etc/default/grub:

      GRUB_TIMEOUT=5
      GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
      GRUB_DEFAULT=saved
      GRUB_DISABLE_SUBMENU=true
      GRUB_TERMINAL_OUTPUT="console"
      GRUB_DISABLE_RECOVERY="true"
      GRUB_ENABLE_BLSCFG=true
    • Создайте новый файл конфигурации grub:

      grub2-mkconfig -o /boot/grub2/grub.cfg
  6. Подготовьте пользовательскую учетную запись согласно статье.

  7. Выключите виртуальную машину.

  8. Удалите сетевой интерфейс из виртуальной машины.

1.2.1. Создание шаблона

Создайте из виртуальной машины шаблон, который будет использоваться для создания виртуальных узлов кластера Nova Container Platform.

  1. Перейдите в веб-интерфейс менеджера управления zVirt.

  2. Нажмите Ресурсы  Виртуальные машины и выберите виртуальную машину.

  3. Убедитесь, что виртуальная машина выключена (находится в состоянии Выключена).

  4. Нажмите action, затем – Создать шаблон.

  5. Введите Имя, Описание и Комментарий для шаблона.

  6. В выпадающем списке Кластер выберите кластер, с которым нужно ассоциировать шаблон. По умолчанию он будет тем же, что и для исходной виртуальной машины.

  7. При желании выберите профиль ЦП для шаблона в выпадающем списке Профиль ЦП.

  8. В разделе Выделение дискового пространства введите имя для диска в поле Имя. В выпадающем списке Формат выберите формат диска, в выпадающем списке Цель – домен хранения, где будет размещаться диск, а в выпадающем списке Профиль диска – профиль диска. По умолчанию эти параметры будут теми же, что и для исходной виртуальной машины.

  9. Установите флажок Разрешить всем пользователям доступ к шаблону, чтобы разрешить совместное использование шаблона.

  10. Установите флажок Копировать разрешения ВМ, чтобы скопировать разрешения исходной виртуальной машины в шаблон.

  11. Нажмите OK.

  12. Нажмите Ресурсы  Шаблоны и выберите шаблон.

  13. Нажмите Изменить, затем – Показать расширенные настройки.

  14. В разделе Высокая доступность установите флажок Высокая доступность и в выпадающем списке Целевой домен хранения для аренды ВМ выберите домен хранения.

  15. Нажмите OK.

При создании шаблона укажите формат диска: RAW или QCOW2.

  • Диски QCOW2 – динамически выделяемые.

  • Диски RAW в файловом хранилище – динамически выделяемые.

  • Диски RAW в блочном хранилище – предварительно размечаемые.

2. Настройка пользователя в zVirt

2.1. Права доступа

При создании пользователя в zVirt рекомендуется предоставить ему права администратора.
Если это невозможно, требуется следующий минимальный набор доступов, который может обновляться с выходом новых версий Nova Container Platform:

  • DiskOperator

  • UserTemplateBasedVm

  • DiskProfileUser

  • UserProfileEditor

  • CpuProfileOperator

  • VnicProfileUser

2.2. Дополнительные настройки

Для корректной установки, обновления и функционирования Nova Container Platform SE необходимо снять ограничение на количество одновременных сессий.

Перейдите в веб-интерфейс менеджера управления zVirt и снимите ограничение на количество сессий на время установки кластера:

  • Нажмите Управление  Пользователи и выберите пользователя, который будет использоваться для подключения к zVirt в процессе установки кластера Nova Container Platform SE.

  • Выберите меню Управление сессиями.

  • В меню Управление сессиями установите для параметра Количество сессий значение равное 0.

3. Получение информации о кластере zVirt

Для дальнейшей установки и настройки Nova Container Platform SE вам необходимо получить следующую информацию о кластере zVirt:

В предоставленной инструкции в качестве примера используется доменное имя (FQDN) менеджера управления виртуализацией zVirt - zvirt.mycompany.local. Данное имя необходимо заменить на действительное доменное имя вашего менеджера управления.

3.1. Получение корневого сертификата zVirt

Процедура

  1. Скачайте корневой сертификат zVirt с главной страницы веб-интерфейса менеджера управления zVirt c помощью браузера или следующей команды:

    curl -ko ca-zvirt.cer https://zvirt.mycompany.local/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA
  2. Закодируйте в base64 полученный сертификат:

    cat ca-zvirt.cer | base64 -w0

    Закодированный сертификат потребуется для дальнейшей установки платформы.

3.2. Получение идентификатора кластера

Для получения идентификатора кластера в среде виртуализации zVirt перейдите в веб-консоль zVirt и откройте раздел Ресурсы  Кластеры, затем выберите нужный кластер.

3.3. Получение идентификатора шаблона

Для получения идентификатор шаблона в среде виртуализации zVirt перейдите в веб-консоль zVirt и откройте раздел Ресурсы  Шаблоны, затем выберите нужный шаблон.

3.4. Получение имени домена хранения

Для получения имени домена хранения в среде виртуализации zVirt перейдите в веб-консоль zVirt и откройте раздел Хранилище  Домены.

3.5. Получение идентификатора профиля сети

3.5.1. zVirt без Keycloak

Узнать идентификатор профиля сети в среде виртуализации zVirt можно, перейдя в zVirt API, например, https://zvirt.mycompany.local/ovirt-engine/api/vnicprofiles.

3.5.2. zVirt с установленным Keycloak

Узнать идентификатор профиля сети в среде виртуализации zVirt можно в zVirt API. Поскольку используется Keycloak, сначала необходимо запросить токен.

  1. Получите токен:

    export USER='user@internalsso'
    export PASSWORD='password'
    export TOKEN=$(curl --silent -k "https://zvirt.mycompany.local/ovirt-engine/sso/oauth/token?grant_type=password&username=$USER&password=$PASSWORD&scope=ovirt-app-api" -H "Accept: application/json" | jq -r '.access_token')
  2. Получите список сетей и информацию по ним:

    curl -k https://zvirt.mycompany.local/ovirt-engine/api/vnicprofiles -H "Accept: application/json" -H "Authorization: Bearer $TOKEN"

4. Рекомендуется к выполнению