manageiq

Развертывание ManageIQ в oVirt

Эта роль была перенесена в oVirt Ansible Collection, пожалуйста, используйте последнюю версию оттуда. Этот репозиторий теперь только для чтения и больше не используется для активной разработки.

Роль ovirt.manageiq загружает образ QCOW ManageIQ/CloudForms и развертывает его в oVirt/Red Hat Virtualization (RHV).

Роль также позволяет создать виртуальную машину и подключить диск ManageIQ, затем дождаться инициализации системы ManageIQ и зарегистрировать oVirt в качестве поставщика инфраструктуры.

Примечание

Пожалуйста, обратите внимание, что при установке этой роли из Ansible Galaxy вам будет предложено выполнить следующую команду:

$ ansible-galaxy install ovirt.manageiq

Это загрузит роль в директорию с тем же именем, что вы указали в командной строке, в данном случае ovirt.manageiq. Но имейте в виду, что имя чувствительно к регистру, поэтому, если вы укажете, например, OVIRT.manageiq, то она загрузит ту же роль, но добавит её в директорию с именем OVIRT.manageiq, и вам всегда придется использовать эту роль с заглавным префиксом. Поэтому будьте осторожны, как вы указываете имя роли в командной строке.

Для установки RPM мы устанавливаем три устаревших имени oVirt.manageiq, ovirt.manageiq и ovirt-manageiq. Вы можете использовать любое из этих имен. В этой документации и примерах в этом репозитории используется имя ovirt.manageiq. Имена ролей oVirt.manageiq и ovirt-manageiq устарели.

Требования

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

  • Проверьте, запущен ли ovirt-imageio-proxy на управляющем узле:
systemctl status ovirt-imageio-proxy
  • Проверьте, запущен ли ovirt-imageio-daemon на хостах:
systemctl status ovirt-imageio-daemon

Вам также потребуется сертификат CA управляющего узла. Для этого настройте переменную ovirt_ca с путём к сертификату CA.

Ограничения

  • Мы не поддерживаем режим проверки Ansible (Dry Run), потому что эта роль использует несколько модулей (command module), которые его не поддерживают. Как только все модули, используемые этой ролью, будут его поддерживать, мы тоже его поддержим.

Переменные роли

Переменные QCOW:

Имя Значение по умолчанию Описание
miq_qcow_url http://releases.manageiq.org/manageiq-ovirt-hammer-6.qc2 URL образа ManageIQ QCOW.
miq_image_path /tmp/ Путь, куда будет загружен образ QCOW2. Если директория, будет использовано базовое имя URL на удалённом сервере.
miq_image_checksum UNDEF Если задана контрольная сумма, будет рассчитан дайджест целевого файла после его загрузки для проверки целостности и завершения передачи. Формат: :, например, checksum="sha256:D98291AC[...]B6DC7B97".

Переменные входа в систему управляющего узла:

Имя Значение по умолчанию Описание
engine_user UNDEF Пользователь для доступа к управляющему узлу.
engine_password UNDEF Пароль 'engine_user'.
engine_fqdn UNDEF Полное доменное имя управляющего узла.
engine_ca UNDEF Путь к сертификату CA управляющего узла.

Переменные виртуальной машины:

Имя Значение по умолчанию Описание
miq_vm_name manageiq_gaprindashvili-3 Имя виртуальной машины ManageIQ.
miq_vm_cluster Default Кластер виртуальной машины.
miq_vm_memory 16GiB Оперативная память виртуальной машины.
miq_vm_memory_guaranteed UNDEF Минимально гарантированная память виртуальной машины. Параметр miq_vm_memory_guaranteed не может быть меньше параметра miq_vm_memory.
miq_vm_memory_max UNDEF Максимальный объём оперативной памяти виртуальной машины, до которого можно выполнить "горячее" подключение памяти.
miq_vm_cpu 4 Количество ядер процессора виртуальной машины.
miq_vm_cpu_shares UNDEF Установка долей CPU для этой виртуальной машины.
miq_vm_cpu_sockets UNDEF Количество сокетов виртуальных CPU виртуальной машины.
miq_vm_cpu_threads UNDEF Количество потоков виртуальных CPU виртуальной машины.
miq_vm_os rhel_7x64 Операционная система виртуальной машины.
miq_vm_root_password miq_app_password Пароль root для виртуальной машины.
miq_vm_cloud_init UNDEF Словарь cloud init, который будет передан виртуальной машине.
miq_vm_high_availability true Если да, виртуальная машина ManageIQ будет настроена как высокодоступная.
miq_vm_high_availability_priority 50 Указывает приоритет виртуальной машины в очередях выполнения и миграции. Значение – целое число от 0 до 100. Чем выше значение, тем выше приоритет.
miq_vm_delete_protected true Если да, виртуальная машина ManageIQ будет защищена от удаления.
miq_debug_create false Если да, логировать конфиденциальные данные, полезно для целей отладки.
miq_wait_for_ip_version v4 Указать, на какую версию IP следует дождаться. Либо v4, либо v6.
miq_wait_for_ip_timeout 240 Максимальное время, которое плейбук должен ждать, чтобы IP был сообщён.

Переменные основных дисков виртуальной машины (например, операционная система):

Имя Значение по умолчанию Описание
miq_vm_disk_name miq_vm_name Имя диска виртуальной машины.
miq_vm_disk_storage UNDEF Целевая доменная хранилище диска.
miq_vm_disk_size Размер qcow диска Размер диска виртуальной машины.
miq_vm_disk_interface virtio_scsi Тип интерфейса диска виртуальной машины.
miq_vm_disk_format cow Формат диска виртуальной машины.

Дополнительные диски виртуальной машины (например, база данных, журналы, временные файлы): словарь с именем miq_vm_disks позволяет описать каждый из дополнительных дисков (см. пример плейбука). Обратите внимание, что это работает только с CFME. Для каждого диска можно установить следующие атрибуты:

Имя Значение по умолчанию Описание
name miq_vm_name_type Имя диска виртуальной машины.
size UNDEF Размер диска виртуальной машины (XXGiB).
interface virtio_scsi Тип интерфейса диска виртуальной машины (virtio или virtio_scsi). virtio_scsi рекомендуется, так как у virtio низкий предел количества дисков.
format UNDEF Формат диска виртуальной машины (raw или cow).
timeout UNDEF Таймаут создания диска.

Переменные для сетевых интерфейсов (NIC) виртуальной машины:

Имя Значение по умолчанию Описание
miq_vm_nics {'name': 'nic1', 'profile_name': 'ovirtmgmt', 'interface': 'virtio'} Список словарей, определяющих сетевые интерфейсы виртуальной машины.

Элементы в списке miq_vm_nics могут содержать следующие атрибуты:

Имя Значение по умолчанию
name UNDEF Имя сетевого интерфейса.
interface UNDEF Тип сетевого интерфейса.
mac_address UNDEF Пользовательский MAC-адрес сетевого интерфейса, по умолчанию получается из пула MAC-адресов.
profile_name UNDEF Профиль виртуального сетевого интерфейса, который будет подключён к сетевому интерфейсу ВМ.

Переменные ManageIQ:

Имя Значение по умолчанию Описание
miq_app_username admin Имя пользователя для входа в ManageIQ.
miq_app_password smartvm Пароль пользователя, указанного в имени пользователя для входа в ManageIQ.
miq_username admin Псевдоним для miq_app_username для обратной совместимости.
miq_password smartvm Псевдоним для miq_app_password для обратной совместимости.
miq_db_username root Имя пользователя для подключения к базе данных.
miq_db_password miq_app_password Пароль пользователя, указанного в имени пользователя для подключения к базе данных.
miq_region 0 Регион ManageIQ, созданный в базе данных. Замечание: работает только с CFME.
miq_company My Company Название компании для устройства.
miq_disabled_roles [] Список ролей сервера ManageIQ, которые следует отключить на устройстве.
miq_enabled_roles [] Список ролей сервера ManageIQ, которые следует включить на устройстве.

Как в ManageIQ, так и в CloudForms, роли сервера по умолчанию включены:

  • automate - Движок автоматизации
  • database_operations - Операции с базами данных
  • event - Монитор событий
  • ems_inventory - Инвентарь провайдера
  • ems_operations - Операции провайдера
  • reporting - Отчёты
  • scheduler - Планировщик
  • smartstate - Анализ SmartState
  • user_interface - Пользовательский интерфейс
  • websocket - Вебсокеты
  • web_services - Веб-сервисы

Переменные провайдера RHV и метрики RHV:

Имя Значение по умолчанию Описание
miq_rhv_provider_name RHV provider Имя провайдера RHV, которое будет отображаться в ManageIQ.
metrics_fqdn UNDEF Полное доменное имя метрик oVirt/RHV.
metrics_user engine_history Пользователь для подключения к серверу метрик.
metrics_password "" Пароль пользователя metrics_user.
metrics_port 5432 Порт для подключения к метрикам oVirt/RHV.
metrics_db_name ovirt_engine_history Имя базы данных для базы данных метрик oVirt.

Зависимости

Нет.

Пример плейбука

Обратите внимание, что для паролей следует использовать Ansible vault.

Вот пример, как развернуть CFME:

    - name: Развертывание CFME на двигателе oVirt
      hosts: localhost
      gather_facts: no

      vars_files:
        # Содержит зашифрованный параметр `engine_password` с помощью ansible-vault
        - passwords.yml

      vars:
        engine_fqdn: ovirt-engine.example.com
        engine_user: admin@internal

        miq_qcow_url: https://cdn.example.com/cfme-rhevm-5.9.1.2-1.x86_64.qcow2
        miq_vm_name: cfme_59
        miq_vm_cluster: mycluster
        miq_vm_cloud_init:
          host_name: "{{ miq_vm_name }}"
        miq_vm_disks:
          database:
            name: "{{ miq_vm_name }}_database"
            size: 10GiB
            interface: virtio_scsi
            format: raw
          log:
            name: "{{ miq_vm_name }}_log"
            size: 10GiB
            interface: virtio_scsi
            format: cow
          tmp:
            name: "{{ miq_vm_name }}_tmp"
            size: 10GiB
            interface: virtio_scsi
            format: cow
        miq_disabled_roles:
          - smartstate
        miq_enabled_roles:
          - notifier
          - ems_metrics_coordinator
          - ems_metrics_collector
          - ems_metrics_processor
          - embedded_ansible

      roles:
        - ovirt.manageiq

Вот пример, как развернуть ManageIQ:

---
- name: Развертывание oVirt ManageIQ
  hosts: localhost
  connection: local
  gather_facts: false

  vars_files:
    # Содержит зашифрованные переменные `engine_password` и `metrics_password`
    # с помощью ansible-vault
    - passwords.yml

  vars:
    engine_fqdn: ovirt.example.com
    engine_user: admin@internal
    engine_cafile: /etc/pki/ovirt-engine/ca.pem

    miq_qcow_url: http://releases.manageiq.org/manageiq-ovirt-hammer-6.qc2
    miq_vm_name: manageiq_hammer6
    miq_vm_cluster: mycluster

    metrics_fqdn: metrics.example.com
    metrics_port: 8443
    metrics_user: admin

  roles:
    - ovirt.manageiq
О проекте

Role to deploy ManageIQ/CloudForms into oVirt/RHV.

Установить
ansible-galaxy install oVirt/ovirt-ansible-manageiq
Лицензия
apache-2.0
Загрузки
15147
Владелец
Open Virtual Datacenter