community.vmware.vmware_guest_controller – Управление контроллерами дисков или USB, связанными с виртуальной машиной в заданной инфраструктуре vCenter
Примечание
Этот плагин входит в коллекцию community.vmware (версия 1.6.0).
Для его установки используйте: ansible-galaxy collection install community.vmware.
Для использования в playbook укажите: community.vmware.vmware_guest_controller.
Обзор
- Этот модуль можно использовать для добавления или удаления контроллеров дисков или USB, относящихся к заданной виртуальной машине.
- Все параметры и имена объектов VMware чувствительны к регистру.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.7
- PyVmomi
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| controllers список / элементы=словарь | Список контроллеров дисков или USB для добавления или удаления. Максимально 4 контроллера дисков одного типа на одну ВМ. Максимально 2 контроллера USB на одну ВМ, 1 USB 2.0 и 1 USB 3.0 или 3.1. Для конкретных гостевых ОС, поддерживаемых типов контроллеров, см. Руководство по совместимости VMware. | ||
| controller_number целое число |
| Номер шины контроллера диска. Когда state установлено в absent, этот параметр обязателен.Когда type установлено в usb2 или usb3, этот параметр не требуется. | |
| state строка / обязательный |
| Добавить новый контроллер или удалить существующий. Если state установлено в absent, указанный контроллер будет удален из виртуальной машины, когда к нему не подключены диски или устройства.Если указанный контроллер удален или не существует, никаких действий не будет выполнено, только предупреждающее сообщение. Если state установлено в present, будет добавлен новый контроллер указанного типа.Если количество контроллеров указанного типа достигает максимального значения, никаких действий не будет выполнено, только предупреждающее сообщение. | |
| type строка / обязательный |
| Тип контроллера диска или USB. Начиная с vSphere 6.5 и виртуальных машин с версией аппаратного обеспечения 13, поддержка контроллера nvme началась. | |
| datacenter строка | Значение по умолчанию: "ha-datacenter" | Имя дата-центра, к которому принадлежит виртуальная машина. | |
| folder строка | Папка назначения, абсолютный или относительный путь к поиску существующего гостя. Этот параметр обязателен только в случае, если найдено несколько ВМ с одинаковым именем. Папка должна включать дата-центр. Дата-центр ESX - ha-datacenter Примеры: folder: /ha-datacenter/vm folder: ha-datacenter/vm folder: /datacenter1/vm folder: datacenter1/vm folder: /datacenter1/vm/folder1 folder: datacenter1/vm/folder1 folder: /folder1/datacenter1/vm folder: folder1/datacenter1/vm folder: /folder1/datacenter1/vm/folder2 | ||
| gather_disk_controller_facts логическое |
| Собирать факты о существующих контроллерах дисков и USB. Когда этот параметр установлен в True, параметр controllers будет проигнорирован. | |
| hostname строка | Имя хоста или IP-адрес сервера vSphere vCenter или ESXi. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_HOST. Поддержка переменных окружения добавлена в Ansible 2.6. | ||
| moid строка | Идентификатор управляемого объекта экземпляра для управления, если известен. Это уникальный идентификатор только в пределах одного экземпляра vCenter. Это необходимо, если name или uuid не указаны. | ||
| name строка | Имя виртуальной машины. Этот параметр обязателен, если параметр uuid или moid не указан. | ||
| password строка | Пароль сервера vSphere vCenter или ESXi. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_PASSWORD. Поддержка переменных окружения добавлена в Ansible 2.6. псевдонимы: pass, pwd | ||
| port целое число | Значение по умолчанию: 443 | Номер порта сервера vSphere vCenter или ESXi. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_PORT. Поддержка переменных окружения добавлена в Ansible 2.6. | |
| proxy_host строка | Адрес прокси-сервера, который будет получать все запросы HTTPS и перенаправлять их. Формат - имя хоста или IP-адрес. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_PROXY_HOST. Эта функция зависит от версии pyvmomi, большей, чем v6.7.1.2018.12 | ||
| proxy_port целое число | Порт HTTP-прокси, который будет получать все запросы HTTPS и перенаправлять их. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_PROXY_PORT. | ||
| sleep_time целое число | Значение по умолчанию: 10 | Время ожидания в секундах после завершения задачи переконфигурации ВМ, используется, когда не получены обновленные факты о контроллерах ВМ после переконфигурации. Этот параметр не обязателен. Максимальное значение - 600. | |
| use_instance_uuid логическое |
| Использовать UUID экземпляра VMware вместо BIOS UUID. | |
| username строка | Имя пользователя сервера vSphere vCenter или ESXi. Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_USER. Поддержка переменных окружения добавлена в Ansible 2.6. псевдонимы: admin, user | ||
| uuid строка | UUID экземпляра для сбора фактов, если известен. Это уникальный идентификатор VMware. Этот параметр обязателен, если параметр name или moid не указан. | ||
| validate_certs логическое |
| Разрешает подключение, когда сертификаты SSL недействительны. Установите в false при недоверии к сертификатам.Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_VALIDATE_CERTS. Поддержка переменных окружения добавлена в Ansible 2.6. Если установлено в true, убедитесь, что на данном компьютере установлен Python >= 2.7.9. | |
Примечания
Примечание
- Проверено на vSphere 6.0, 6.5 и 6.7
Примеры
- name: Add disk and USB 3.0 controllers for virtual machine located by name
community.vmware.vmware_guest_controller:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
name: test_VM
controllers:
- state: present
type: sata
- state: present
type: nvme
- state: present
type: usb3
delegate_to: localhost
register: disk_controller_facts
- name: Remove disk controllers and USB 2.0 from virtual machine located by moid
community.vmware.vmware_guest_controller:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
moid: vm-33
controllers:
- state: absent
controller_number: 1
type: sata
- state: absent
controller_number: 0
type: nvme
- state: absent
type: usb2
delegate_to: localhost
register: disk_controller_facts
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| disk_controller_status словарь | всегда | метаданные о существующих контроллерах дисков виртуальной машины или после операции добавления или удаления Пример: {'nvme': {'0': {'controller_busnumber': 0, 'controller_controllerkey': 100, 'controller_devicekey': 31000, 'controller_disks_devicekey': [], 'controller_label': 'NVME контроллер 0', 'controller_summary': 'NVME контроллер 0', 'controller_unitnumber': 30}}, 'sata': {'0': {'controller_busnumber': 0, 'controller_controllerkey': 100, 'controller_devicekey': 15000, 'controller_disks_devicekey': [16000, 16001], 'controller_label': 'SATA контроллер 0', 'controller_summary': 'AHCI', 'controller_unitnumber': 24}}, 'scsi': {'0': {'controller_busnumber': 0, 'controller_controllerkey': 100, 'controller_devicekey': 1000, 'controller_disks_devicekey': [2000], 'controller_label': 'SCSI контроллер 0', 'controller_summary': 'LSI Logic SAS', 'controller_unitnumber': 3}, '1': {'controller_busnumber': 1, 'controller_controllerkey': 100, 'controller_devicekey': 1001, 'controller_disks_devicekey': [], 'controller_label': 'SCSI контроллер 1', 'controller_summary': 'VMware парвиртуализированный SCSI', 'controller_unitnumber': 4}}, 'usb2': {'0': {'controller_busnumber': 0, 'controller_controllerkey': 100, 'controller_devicekey': 7000, 'controller_disks_devicekey': [], 'controller_label': 'USB контроллер', 'controller_summary': 'Автоподключение отключено', 'controller_unitnumber': 22}}} |
Авторы
- Diane Wang (@Tomorrow9) <dianew@vmware.com>
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/vmware/vmware_guest_controller_module.html