rhevm - Автоматизация RHEV/oVirt
Новое в версии 2.2.
Обзор
- Этот модуль поддерживает только версии oVirt/RHEV 3. Более новый модуль ovirt_vms поддерживает версии oVirt/RHV 4.
- Позволяет создавать/удалять/обновлять или управлять питанием виртуальных машин на платформе RHEV/oVirt.
Требования
Ниже приведены требования к хосту, на котором выполняется этот модуль.
- ovirtsdk
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| boot_order | Значение по умолчанию: [u'network', u'hd'] | Этот параметр использует сложные аргументы и представляет собой список элементов, определяющих порядок загрузки. |
| cd_drive | Значение по умолчанию: None | CD-диск, который необходимо смонтировать на ВМ при state = 'CD'. |
| cluster | Кластер rhev/ovirt, в котором должна быть запущена ВМ. | |
| cpu_share | Значение по умолчанию: 0 | Этот параметр используется для настройки доли процессора. |
| datacenter | Значение по умолчанию: Default | Центр обработки данных rhev/ovirt, в котором должна быть запущена ВМ. |
| del_prot | Значение по умолчанию: yes | Этот параметр устанавливает флаг защиты от удаления. |
| disks | Этот параметр использует сложные аргументы и представляет собой список дисков с параметрами имя, размер и домен. | |
| ifaces | Этот параметр использует сложные аргументы и представляет собой список интерфейсов с параметрами имя и vlan. Псевдонимы: nics, interfaces | |
| image | Значение по умолчанию: None | Шаблон для использования в ВМ. |
| insecure_api | Значение по умолчанию: no | Логический переключатель для создания защищенного или незащищенного подключения к серверу. |
| mempol | Значение по умолчанию: 1 | Минимальный объем памяти, который необходимо зарезервировать для этой системы. |
| name | Имя ВМ. | |
| osver | Значение по умолчанию: rhel_6x64 | Параметр операционной системы в RHEV/oVirt. |
| port | Значение по умолчанию: 443 | Порт, по которому доступен API. |
| server | Значение по умолчанию: 127.0.0.1 | Имя/IP-адрес вашего экземпляра RHEV-m/oVirt. |
| state |
| Служит для создания/удаления/обновления или управления питанием вашей ВМ. |
| timeout | Значение по умолчанию: None | Таймаут, который необходимо установить для действий по управлению питанием. При state = 'up'
При state = 'down'
При state = 'restarted'
|
| type |
| Определение типа ВМ (сервер или рабочий стол). |
| user | Значение по умолчанию: admin@internal | Пользователь для аутентификации. |
| vm_ha | Значение по умолчанию: yes | Для обеспечения высокой доступности вашей ВМ. |
| vmcpu | Значение по умолчанию: 2 | Количество процессоров для вашей ВМ. |
| vmhost | Хост, на котором должна работать ВМ. | |
| vmmem | Значение по умолчанию: 1 | Объем памяти для использования ВМ (в ГБ). |
Примеры
# basic get info from VM
- rhevm:
name: "demo"
user: "{{ rhev.admin.name }}"
password: "{{ rhev.admin.pass }}"
server: "rhevm01"
state: "info"
# basic create example from image
- rhevm:
name: "demo"
user: "{{ rhev.admin.name }}"
password: "{{ rhev.admin.pass }}"
server: "rhevm01"
state: "present"
image: "centos7_x64"
cluster: "centos"
# power management
- rhevm:
name: "uptime_server"
user: "{{ rhev.admin.name }}"
password: "{{ rhev.admin.pass }}"
server: "rhevm01"
cluster: "RH"
state: "down"
image: "centos7_x64"
# multi disk, multi nic create example
- rhevm:
name: "server007"
user: "{{ rhev.admin.name }}"
password: "{{ rhev.admin.pass }}"
server: "rhevm01"
cluster: "RH"
state: "present"
type: "server"
vmcpu: 4
vmmem: 2
ifaces:
- name: "eth0"
vlan: "vlan2202"
- name: "eth1"
vlan: "vlan36"
- name: "eth2"
vlan: "vlan38"
- name: "eth3"
vlan: "vlan2202"
disks:
- name: "root"
size: 10
domain: "ssd-san"
- name: "swap"
size: 10
domain: "15kiscsi-san"
- name: "opt"
size: 10
domain: "15kiscsi-san"
- name: "var"
size: 10
domain: "10kiscsi-san"
- name: "home"
size: 10
domain: "sata-san"
boot_order:
- "network"
- "hd"
# add a CD to the disk cd_drive
- rhevm:
name: 'server007'
user: "{{ rhev.admin.name }}"
password: "{{ rhev.admin.pass }}"
state: 'cd'
cd_drive: 'rhev-tools-setup.iso'
# new host deployment + host network configuration
- rhevm:
name: "ovirt_node007"
password: "{{ rhevm.admin.pass }}"
type: "host"
state: present
cluster: "rhevm01"
ifaces:
- name: em1
- name: em2
- name: p3p1
ip: '172.31.224.200'
netmask: '255.255.254.0'
- name: p3p2
ip: '172.31.225.200'
netmask: '255.255.254.0'
- name: bond0
bond:
- em1
- em2
network: 'rhevm'
ip: '172.31.222.200'
netmask: '255.255.255.0'
management: True
- name: bond0.36
network: 'vlan36'
ip: '10.2.36.200'
netmask: '255.255.254.0'
gateway: '10.2.36.254'
- name: bond0.2202
network: 'vlan2202'
- name: bond0.38
network: 'vlan38'
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| vm словарь | всегда | Возвращает все переменные ВМ и результаты выполнения. Пример: { "boot_order": [ "hd", "network" ], "changed": true, "changes": [ "Защита от удаления" ], "cluster": "C1", "cpu_share": "0", "created": false, "datacenter": "Default", "del_prot": true, "disks": [ { "domain": "ssd-san", "name": "OS", "size": 40 } ], "eth0": "00:00:5E:00:53:00", "eth1": "00:00:5E:00:53:01", "eth2": "00:00:5E:00:53:02", "exists": true, "failed": false, "ifaces": [ { "name": "eth0", "vlan": "Управление" }, { "name": "eth1", "vlan": "Внутренний" }, { "name": "eth2", "vlan": "Внешний" } ], "image": false, "mempol": "0", "msg": [ "ВМ существует", "cpu_share уже установлен в 0", "Высокая доступность ВМ уже установлена в True", "Порядок загрузки уже установлен", "Защита от удаления ВМ установлена в True", "Диск web2_Disk0_OS уже существует", "Хост запуска ВМ уже установлен в host416" ], "name": "web2", "type": "server", "uuid": "4ba5a1be-e60b-4368-9533-920f156c817b", "vm_ha": true, "vmcpu": "4", "vmhost": "host416", "vmmem": "16" } |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантированно будет обратно совместимым.
Автор
- Timothy Vandenbrande
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ для его улучшения.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/rhevm_module.html