community.vmware.vmware_guest_network – Управление сетевыми адаптерами указанной виртуальной машины в заданной инфраструктуре vCenter
Примечание
Этот плагин является частью коллекции community.vmware (версия 1.6.0).
Для его установки используйте: ansible-galaxy collection install community.vmware.
Для использования в плейбуке укажите: community.vmware.vmware_guest_network.
Новое в версии 1.0.0: of community.vmware
Обзор
- Этот модуль используется для добавления, переконфигурации или удаления сетевого адаптера заданной виртуальной машины.
Требования
Ниже приведены требования к хосту, на котором выполняется этот модуль.
- python >= 2.7
- PyVmomi
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| cluster строка | Имя кластера, к которому принадлежит ВМ. | ||
| connected логическое значение |
| Подключать сетевую карту к сети. | |
| datacenter строка | Значение по умолчанию: "ha-datacenter" | Центр обработки данных, к которому принадлежит ВМ. | |
| device_type строка | Значение по умолчанию: "vmxnet3" | Тип виртуального сетевого устройства. Допустимые значения - e1000, e1000e, pcnet32, vmxnet2, vmxnet3 (по умолчанию), sriov. | |
| directpath_io логическое значение |
| Включить универсальную передачу (UPT). Совместимо только с типом устройства vmxnet3. | |
| esxi_hostname строка | Имя хоста ESXi, к которому принадлежит ВМ. | ||
| folder строка | Расположение папки данной ВМ, требуется только при наличии нескольких ВМ с одинаковым именем. | ||
| force логическое значение |
| Принудительное создание адаптера, даже если к той же сети подключен существующий адаптер. | |
| gather_network_info логическое значение |
| Возвращает информацию о текущих сетевых адаптерах гостя. псевдонимы: gather_network_facts | |
| guest_control логическое значение |
| Включает управление гостем над тем, подключено ли устройство. | |
| hostname строка | Имя хоста или IP-адрес сервера vCenter или ESXi. Если значение не указано в задаче, используется значение переменной окружения VMWARE_HOST. Поддержка переменных окружения добавлена в Ansible 2.6. | ||
| label строка | Изменение имени сетевого адаптера. | ||
| mac_address строка | MAC-адрес сетевой карты, который должен быть изменён. Если MAC-адрес не указан, будет создана новая сетевая карта. Требуется, когда state=absent. | ||
| moid строка | Идентификатор управляемого объекта экземпляра для управления, если известен. Это уникальный идентификатор только внутри одного экземпляра vCenter. Требуется, если uuid или name не указаны. | ||
| name строка | Имя виртуальной машины Требуется, если uuid или moid не указаны. | ||
| network_name строка | Имя сети в vSphere. | ||
| networks список / элементы=словарь | Этот метод будет устаревать, используйте циклы в своём плане задач для нескольких интерфейсов вместо этого. Список сетевых адаптеров. mac или label или device_type требуется для переконфигурации или удаления существующего сетевого адаптера.Если существует несколько сетевых адаптеров с одинаковым device_type, вы должны установить label или mac в соответствие одному из них, иначе изменения будут применены ко всем сетевым адаптерам с указанным device_type. mac, label, device_type — порядок приоритетов от наибольшего к наименьшему, если все установлены. | ||
| connected логическое значение |
| Указывает, что виртуальный сетевой адаптер подключен к соответствующей виртуальной машине. | |
| device_type строка | Допустимые типы виртуальных сетевых устройств e1000, e1000e, pcnet32, vmxnet2, vmxnet3 (по умолчанию), sriov.Используется для добавления нового сетевого адаптера, переконфигурации или удаления существующего сетевого адаптера с этим типом. Если mac и label не указаны или сетевой адаптер не найден по mac или label, используется этот параметр. | ||
| directpath_io логическое значение |
| Если задано, универсальная передача (UPT или DirectPath I/O) будет включена для сетевого адаптера. UPT совместим только с адаптером Vmxnet3. | |
| dvswitch_name строка | Имя распределённого коммутатора vSwitch. Это значение требуется, если существует несколько распределённых групп портов с одинаковым именем. | ||
| label строка | Метка существующего сетевого адаптера, который нужно переконфигурировать или удалить, например, "Сетевой адаптер 1". | ||
| mac строка | MAC-адрес существующего сетевого адаптера, который нужно переконфигурировать или удалить. | ||
| manual_mac строка | Вручную указанный MAC-адрес сетевого адаптера при создании или переконфигурации. Если не указан при создании нового сетевого адаптера, MAC-адрес будет сгенерирован автоматически. При переконфигурации MAC-адреса ВМ должна быть выключена. | ||
| name строка | Имя группы портов или распределённой виртуальной группы портов для этого интерфейса. При указании распределённой виртуальной группы портов убедитесь, что указанные esxi_hostname или cluster связаны с ней. | ||
| start_connected логическое значение |
| Указывает, что виртуальный сетевой адаптер подключается к связанной виртуальной машине при её включении. | |
| state строка | Состояние сетевого адаптера. Если установлено present, будет выполнена переконфигурация указанного сетевого адаптера.Если установлено new, будет добавлен указанный сетевой адаптер.Если установлено absent, этот сетевой адаптер будет удалён. | ||
| vlan целое число | Номер VLAN для этого интерфейса. | ||
| 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. | ||
| start_connected логическое значение |
| Подключать сетевую карту к сети при запуске. | |
| state строка |
| Состояние сетевой карты. При значении state=present, сетевая карта будет добавлена, если MAC-адрес или метка не существовали ранее или не были установлены.При значении state=absent, параметр mac_address должен быть установлен. | |
| switch строка | Имя (dv)коммутатора для целевой сети, требуется только для dvswitches. | ||
| use_instance_uuid логическое значение |
| Использовать UUID экземпляра VMware вместо UUID BIOS. | |
| username строка | Имя пользователя сервера vSphere vCenter или ESXi. Если значение не указано в задаче, используется значение переменной окружения VMWARE_USER. Поддержка переменных окружения добавлена в Ansible 2.6. псевдонимы: admin, user | ||
| uuid string | uuid виртуальной машины Требуется, если name или moid не предоставлены. | ||
| validate_certs boolean |
| Разрешает подключение, когда сертификаты SSL недействительны. Установите в false, когда сертификаты ненадёжны.Если значение не указано в задаче, будет использовано значение переменной окружения VMWARE_VALIDATE_CERTS. Поддержка переменных окружения добавлена в Ansible 2.6. Если установлено значение true, убедитесь, что на данном компьютере установлен Python >= 2.7.9. | |
| vlan_id integer | Идентификатор VLAN, связанный с сетью. | ||
| wake_onlan boolean |
| Включить Wake-on-LAN. | |
Примечания
Примечание
- Тестировалось на vSphere 6.0, 6.5 и 6.7
- Для обратной совместимости network_data возвращается при использовании параметров gather_network_info и networks
Примеры
- name: change network for 00:50:56:11:22:33 on vm01.domain.fake
community.vmware.vmware_guest_network:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
name: vm01.domain.fake
mac_address: 00:50:56:11:22:33
network_name: admin-network
state: present
- name: add a nic on network with vlan id 2001 for 422d000d-2000-ffff-0000-b00000000000
community.vmware.vmware_guest_network:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
uuid: 422d000d-2000-ffff-0000-b00000000000
vlan_id: 2001
- name: remove nic with mac 00:50:56:11:22:33 from vm01.domain.fake
community.vmware.vmware_guest_network:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
mac_address: 00:50:56:11:22:33
name: vm01.domain.fake
state: absent
- name: add multiple nics to vm01.domain.fake
community.vmware.vmware_guest_network:
hostname: "{{ vcenter_hostname }}"
username: "{{ vcenter_username }}"
password: "{{ vcenter_password }}"
datacenter: "{{ datacenter_name }}"
name: vm01.domain.fake
state: present
vlan_id: "{{ item.vlan_id | default(omit) }}"
network_name: "{{ item.network_name | default(omit) }}"
connected: "{{ item.connected | default(omit) }}"
loop:
- vlan_id: 2000
connected: false
- network_name: guest-net
connected: true
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие являются полями, уникальными для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| network_data dictionary | при использовании параметров gather_network_info или networks | Для обратной совместимости, метаданные о сетевых адаптерах виртуальной машины Пример: {'network_data': {'0': {'allow_guest_ctl': True, 'connected': True, 'device_type': 'vmxnet3', 'label': 'Сетевой адаптер 2', 'mac_addr': '00:50:56:AA:AA:AA', 'mac_address': '00:50:56:AA:AA:AA', 'name': 'admin-net', 'network_name': 'admin-net', 'start_connected': True, 'switch': 'vSwitch0', 'unit_number': 8, 'vlan_id': 10, 'wake_onlan': False}, '1': {'allow_guest_ctl': True, 'connected': True, 'device_type': 'vmxnet3', 'label': 'Сетевой адаптер 1', 'mac_addr': '00:50:56:BB:BB:BB', 'mac_address': '00:50:56:BB:BB:BB', 'name': 'guest-net', 'network_name': 'guest-net', 'start_connected': True, 'switch': 'vSwitch0', 'unit_number': 7, 'vlan_id': 10, 'wake_onlan': True}}} |
| network_info list / elements=string | всегда | метаданные о сетевых адаптерах виртуальной машины Пример: {'network_info': [{'allow_guest_ctl': True, 'connected': True, 'device_type': 'vmxnet3', 'label': 'Сетевой адаптер 2', 'mac_address': '00:50:56:AA:AA:AA', 'network_name': 'admin-net', 'start_connected': True, 'switch': 'vSwitch0', 'unit_number': 8, 'vlan_id': 10, 'wake_onlan': False}, {'allow_guest_ctl': True, 'connected': True, 'device_type': 'vmxnet3', 'label': 'Сетевой адаптер 1', 'mac_address': '00:50:56:BB:BB:BB', 'network_name': 'guest-net', 'start_connected': True, 'switch': 'vSwitch0', 'unit_number': 7, 'vlan_id': 10, 'wake_onlan': True}]} |
Авторы
- 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_network_module.html