rhevm - Автоматизация RHEV/oVirt
Новая версия 2.2.
Обзор
- Этот модуль поддерживает только oVirt/RHEV версии 3. Более новый модуль ovirt_vms поддерживает oVirt/RHV версии 4.
- Позволяет создавать/удалять/обновлять или управлять питанием виртуальных машин на платформе RHEV/oVirt.
Требования (к хосту, на котором выполняется модуль)
- ovirtsdk
Параметры
| параметр | обязательно | по умолчанию | выбор | комментарии |
|---|---|---|---|---|
| boot_order |
нет | [u'network', u'hd'] |
Этот параметр использует сложные аргументы и представляет собой список элементов, определяющих порядок загрузки.
|
|
| cd_drive |
нет |
Диск CD, который нужно смонтировать на ВМ при state = 'CD'.
|
||
| cluster |
нет |
Кластер rhev/ovirt, в котором должна запускаться ВМ.
|
||
| cpu_share |
нет | 0 |
Этот параметр используется для настройки распределения ЦП.
|
|
| datacenter |
нет | По умолчанию |
Центр обработки данных rhev/ovirt, в котором должна запускаться ВМ.
|
|
| del_prot |
нет | True |
Этот параметр устанавливает флажок защиты от удаления.
|
|
| disks |
нет |
Этот параметр использует сложные аргументы и представляет собой список дисков с параметрами имя, размер и домен.
|
||
| ifaces |
нет |
Этот параметр использует сложные аргументы и представляет собой список интерфейсов с параметрами имя и vlan.
псевдонимы: nics, interfaces
|
||
| image |
нет |
Шаблон для использования ВМ.
|
||
| insecure_api |
нет |
Логический переключатель для создания безопасного или небезопасного подключения к серверу.
|
||
| mempol |
нет | 1 |
Минимальный объем памяти, который нужно зарезервировать для этой системы.
|
|
| name |
нет |
Имя ВМ.
|
||
| osver |
нет | rhel_6x64 |
Параметр операционной системы в RHEV/oVirt.
|
|
| port |
нет | 443 |
Порт, по которому доступен API.
|
|
| server |
нет | 127.0.0.1 |
Имя/IP вашего экземпляра RHEV-m/oVirt.
|
|
| state |
нет | present |
|
Служит для создания/удаления/обновления или управления питанием вашей ВМ.
|
| timeout |
нет |
Таймаут, который вы хотите задать для действий с питанием.
Когда state = 'up'
Когда state = 'down'
Когда state = 'restarted'
|
||
| type |
нет | server |
|
Определяет, является ли ВМ серверной или настольной.
|
| user |
нет | admin@internal |
Пользователь для аутентификации.
|
|
| vm_ha |
нет | True |
Для обеспечения высокой доступности вашей ВМ.
|
|
| 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"
cluster: "centos"
# 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 |
Возвращает все переменные ВМ и выполнение.
|
всегда | dict | { "boot_order": [ "hd", "network" ], "changed": true, "changes": [ "Защита от удаления" ], "cluster": "C1", "cpu_share": "0", "created": false, "datacenter": "По умолчанию", "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" } |
Статус
Этот модуль помечен как предварительный просмотр, что означает, что он не гарантирует обратную совместимость интерфейса.
Для получения помощи в разработке модулей, если вам это интересно, прочитайте Информация о сообществе и внесение вклада, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/rhevm_module.html