Spec-Zone.ru › Ansible 2.6

azure_rm_networkinterface - Управление сетевыми адаптерами Azure.

Новая версия с 2.1.

  • Обзор
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
  • Техническое обслуживание
    • Автор

Обзор

  • Создать, обновить или удалить сетевой адаптер. При создании сетевого адаптера необходимо указать имя существующей виртуальной сети, имя существующей подсети в рамках виртуальной сети. Автоматически будет создана группа безопасности по умолчанию и общедоступный IP-адрес, или вы можете указать имя существующей группы безопасности и общедоступного IP-адреса. Более подробную информацию см. в примерах ниже.

Требования

Ниже приведены требования к хосту, на котором выполняется этот модуль.

  • python >= 2.7
  • azure >= 2.0.0

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
ad_user
Имя пользователя Active Directory. Используйте при аутентификации с пользователем Active Directory вместо служебного принципала.
adfs_authority_url
(добавлено в 2.6)
Значение по умолчанию:
null
URL-адрес службы Azure AD. Используйте при аутентификации с помощью имени пользователя/пароля и собственной службой ADFS.
api_profile
(добавлено в 2.5)
Значение по умолчанию:
"latest"
Выбирает профиль API для взаимодействия с Azure-службами. Значение по умолчанию latest подходит для публичных облаков; будущие значения позволят использовать с Azure Stack.
append_tags
bool
    Варианты:
  • no
  • да ←
Управляет тем, является ли поле тегов каноническим или оно просто добавляется к существующим тегам. При каноническом значении любые теги, отсутствующие в параметре tags, будут удалены из метаданных объекта.
auth_source
(добавлено в 2.5)
    Варианты:
  • auto
  • cli
  • credential_file
  • env
  • msi
Управляет источником учетных данных для аутентификации.
Если не указано, будет использоваться переменная среды ANSIBLE_AZURE_AUTH_SOURCE и по умолчанию будет auto если переменная не определена.
auto будет следовать умолчанию приоритет параметров модуля -> переменные среды -> профиль по умолчанию в файле учетных данных ~/.azure/credentials.
При установке в cli, учетные данные будут взяты из профиля Azure CLI по умолчанию.
Также может быть задано через переменную среды ANSIBLE_AZURE_AUTH_SOURCE.
При установке в msi, хост-машина должна быть Azure-ресурсом с включенным расширением MSI. subscription_id или переменная среды AZURE_SUBSCRIPTION_ID может использоваться для идентификации идентификатора подписки, если ресурсу предоставлен доступ к нескольким подпискам, в противном случае выбирается первая подписка.
msi было добавлено в Ansible 2.6.
cert_validation_mode
(добавлено в 2.5)
    Варианты:
  • validate
  • ignore
Управляет поведением проверки сертификатов для Azure-точек конечного доступа. По умолчанию все модули проверяют сертификат сервера, но при использовании прокси HTTPS или с Azure Stack может потребоваться отключить это поведение, передав ignore. Также может быть установлено через профиль файла учетных данных или переменную среды AZURE_CERT_VALIDATION.
client_id
Идентификатор клиента Azure. Используйте при аутентификации со служебным принципалом.
cloud_environment
(добавлено в 2.4)
Значение по умолчанию:
"AzureCloud"
Для облачных сред, отличных от публичного облака США, имя среды (как определено Azure Python SDK, например, AzureChinaCloud, AzureUSGovernment) или URL-адрес конечной точки обнаружения метаданных (требуется для Azure Stack). Также может быть задано через профиль файла учетных данных или переменную среды AZURE_CLOUD_ENVIRONMENT.
create_with_security_group
bool

(добавлено в 2.6)
    Варианты:
  • no
  • да ←
Указывает, следует ли создавать группу безопасности по умолчанию вместе с сетевым интерфейсом. Применимо только при создании нового сетевого интерфейса.
ip_configurations
(добавлено в 2.5)
Список конфигурации IP, если содержит несколько конфигураций, должен содержать объект конфигурации, включающий поле private_ip_address, private_ip_allocation_method, public_ip_address_name, public_ip, public_ip_allocation_method, name.
name
обязательно
Имя конфигурации IP.
private_ip_address
Приватный IP-адрес для конфигурации IP.
private_ip_allocation_method
    Варианты:
  • Динамический ←
  • Статический
Метод выделения приватного IP-адреса.
public_ip_address_name
Имя публичного IP-адреса. Нет для отключения IP-адреса.
public_ip_allocation_method
    Варианты:
  • Динамический ←
  • Статический
Метод выделения публичного IP-адреса.
load_balancer_backend_address_pools
(добавлено в 2.6)
Список ID существующих пулов адресов обратной связи балансировщика нагрузки для ассоциации с сетевым интерфейсом.
Может быть представлен как идентификатор ресурса.
Также может быть словарем с полями name и load_balancer.
primary
bool
    Варианты:
  • нет ←
  • да
Является ли конфигурация IP основной в списке.
location
Допустимое местоположение Azure. По умолчанию используется местоположение группы ресурсов.
name
обязательно
Имя сетевого интерфейса.
open_ports
При создании группы безопасности по умолчанию для хоста Linux будет добавлено правило, разрешающее входящие TCP-соединения на стандартный порт SSH 22, а для хоста Windows будут добавлены правила, разрешающие входящий доступ к портам RDP 3389 и 5986. Переопределите порты по умолчанию, указав список открытых портов.
os_type
    Варианты:
  • Windows
  • Linux ←
Определяет правила, которые будут добавлены в группу безопасности по умолчанию. При создании сетевого интерфейса, если имя группы безопасности не указано, будет создана группа безопасности по умолчанию. Если os_type равен 'Windows', будет добавлено правило, разрешающее доступ RDP. Если os_type равен 'Linux', будет добавлено правило, разрешающее доступ SSH.
password
Пароль пользователя Active Directory. Используйте при аутентификации с пользователем Active Directory вместо служебного принципала.
private_ip_address
(Устарело) Действительный IPv4-адрес, который находится в указанном подсети.
Этот параметр будет устаревшим в 2.9, используйте ip_configurations вместо этого.
private_ip_allocation_method
    Варианты:
  • Динамический ←
  • Статический
(Устарело) Указывает, является ли назначенный IP-адрес постоянным. ПРИМЕЧАНИЕ: при создании сетевого интерфейса указание значения 'Статический' требует указания значения private_ip_address. Вы можете обновить метод выделения на 'Статический' после назначения динамического приватного IP-адреса.
Этот параметр будет устаревшим в 2.9, используйте ip_configurations вместо этого.
profile
Профиль безопасности, найденный в файле ~/.azure/credentials.
public_ip
bool
    Варианты:
  • no
  • да ←
(Устарело) При создании сетевого интерфейса, если имя публичного IP-адреса не указано, будет создан публичный IP-адрес по умолчанию. Установите в false, если вы не хотите автоматически создавать публичный IP-адрес.
Этот параметр будет устаревшим в 2.9, используйте ip_configurations вместо этого.
public_ip_address_name
(Устарело) Имя существующего объекта публичного IP-адреса, который необходимо ассоциировать с группой безопасности.
Этот параметр будет устаревшим в 2.9, используйте ip_configurations вместо этого.

псевдонимы: public_ip_address, public_ip_name
public_ip_allocation_method
    Варианты:
  • Динамический ←
  • Статический
(Устарело) Если public_ip_address_name не указан, будет создан публичный IP-адрес по умолчанию. Метод выделения определяет, является ли публичный IP-адрес, назначенный сетевому интерфейсу, постоянным.
Этот параметр будет устаревшим в 2.9, используйте ip_configurations вместо этого.
resource_group
обязательно
Имя группы ресурсов, в которой существует или будет создан сетевой интерфейс.
secret
Секрет клиента Azure. Используйте при аутентификации со служебным принципалом.
security_group
Существующая группа безопасности, с которой нужно ассоциировать сетевой интерфейс. Если не указано, группа безопасности по умолчанию будет создана, когда create_with_security_group имеет значение true.
Может быть именем группы безопасности.
Убедитесь, что группа безопасности находится в той же группе ресурсов, если вы предоставляете только её имя.
Может быть идентификатором ресурса.
Может быть словарем, содержащим name и resource_group группы безопасности.

псевдонимы: security_group_name
state
    Варианты:
  • absent
  • present ←
Установить состояние сетевого интерфейса. Используйте 'present' для создания или обновления интерфейса и 'absent' для удаления интерфейса.
subnet_name
обязательно
Имя существующей подсети в указанной виртуальной сети. Требуется при создании сетевого интерфейса
Используйте ресурсную группу virtual_network.

псевдонимы: subnet
subscription_id
Ваш идентификатор подписки Azure.
tags
Словарь пар "строка:строка" для назначения метаданных объекту. Метаданные теги объекта будут обновлены любыми предоставленными значениями. Для удаления тегов установите параметр append_tags в значение false.
tenant
Идентификатор Azure-аренды. Используйте при аутентификации с помощью Служебного принципа.
virtual_network
обязательно
Существующая виртуальная сеть, к которой будет подключен сетевой интерфейс. Требуется при создании сетевого интерфейса.
Это может быть имя виртуальной сети.
Убедитесь, что ваша виртуальная сеть находится в той же ресурсной группе, что и сетевой адаптер, когда вы указываете только имя.
Это может быть идентификатор ресурса виртуальной сети.
Это может быть словарь, содержащий name и resource_group виртуальной сети.

псевдонимы: virtual_network_name

Примечания

Примечание

  • Для аутентификации с Azure вы можете передать параметры, установить переменные среды или использовать профиль, сохраненный в ~/.azure/credentials. Аутентификация возможна с помощью служебного принципа или пользователя Active Directory. Для аутентификации через служебного принципа, передайте subscription_id, client_id, secret и tenant или установите переменные среды AZURE_SUBSCRIPTION_ID, AZURE_CLIENT_ID, AZURE_SECRET и AZURE_TENANT.
  • Для аутентификации через пользователя Active Directory передайте ad_user и password или установите AZURE_AD_USER и AZURE_PASSWORD в среде.
  • В качестве альтернативы данные учетных данных могут быть сохранены в ~/.azure/credentials. Это файл ini, содержащий раздел [default] и следующие ключи: subscription_id, client_id, secret и tenant или subscription_id, ad_user и password. Также можно добавить дополнительные профили. Укажите профиль, передав profile или установив AZURE_PROFILE в среде.

Примеры

- name: Create a network interface with minimal parameters
  azure_rm_networkinterface:
    name: nic001
    resource_group: Testing
    virtual_network: vnet001
    subnet_name: subnet001
    ip_configurations:
      - name: ipconfig1
        public_ip_address_name: publicip001
        primary: True

- name: Create a network interface with private IP address only (no Public IP)
  azure_rm_networkinterface:
    name: nic001
    resource_group: Testing
    virtual_network: vnet001
    subnet_name: subnet001
    create_with_security_group: False
    ip_configurations:
      - name: ipconfig1
        primary: True

- name: Create a network interface for use in a Windows host (opens RDP port) with custom RDP port
  azure_rm_networkinterface:
    name: nic002
    resource_group: Testing
    virtual_network: vnet001
    subnet_name: subnet001
    os_type: Windows
    rdp_port: 3399
    security_group: "/subscriptions/XXXXXXX/resourceGroups/Testing/providers/Microsoft.Network/networkSecurityGroups/nsg001"
    ip_configurations:
      - name: ipconfig1
        public_ip_address_name: publicip001
        primary: True

- name: Create a network interface using existing security group and public IP
  azure_rm_networkinterface:
    name: nic003
    resource_group: Testing
    virtual_network: vnet001
    subnet_name: subnet001
    security_group: secgroup001
    ip_configurations:
      - name: ipconfig1
        public_ip_address_name: publicip001
        primary: True

- name: Create a network with mutilple ip configurations
  azure_rm_networkinterface:
    name: nic004
    resource_group: Testing
    subnet_name: subnet001
    virtual_network: vnet001
    security_group:
      name: testnic002
      resource_group: Testing1
    ip_configurations:
      - name: ipconfig1
        public_ip_address_name: publicip001
        primary: True
      - name: ipconfig2
        load_balancer_backend_address_pools:
          - "{{ loadbalancer001.state.backend_address_pools[0].id }}"
          - name: backendaddrpool1
            load_balancer: loadbalancer001

- name: Delete network interface
  azure_rm_networkinterface:
    resource_group: Testing
    name: nic003
    state: absent

Возвращаемые значения

Общие возвращаемые значения документированы здесь, следующие являются полями, уникальными для этого модуля:

Ключ Возвращаемое значение Описание
state
словарь
всегда
Текущее состояние сетевого интерфейса.

Пример:
{'dns_settings': {'applied_dns_servers': [], 'dns_servers': [], 'internal_dns_name_label': None, 'internal_fqdn': None}, 'enable_ip_forwarding': False, 'etag': 'W/"be115a43-2148-4545-a324-f33ad444c926"', 'id': '/subscriptions/XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX/resourceGroups/Testing/providers/Microsoft.Network/networkInterfaces/nic003', 'ip_configurations': [{'name': 'default', 'private_ip_address': '10.1.0.10', 'private_ip_allocation_method': 'Static', 'public_ip_address': {'id': '/subscriptions/XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX/resourceGroups/Testing/providers/Microsoft.Network/publicIPAddresses/publicip001', 'name': 'publicip001'}, 'subnet': {}, 'load_balancer_backend_address_pools': []}], 'location': 'eastus2', 'mac_address': None, 'name': 'nic003', 'network_security_group': {'id': '/subscriptions//XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX/resourceGroups/Testing/providers/Microsoft.Network/networkSecurityGroups/nsg001', 'name': 'nsg001'}, 'primary': None, 'provisioning_state': 'Succeeded', 'tags': None, 'type': 'Microsoft.Network/networkInterfaces'}


Статус

Этот модуль помечен как превью, что означает, что он не гарантирует обратной совместимости интерфейса.

Техническое обслуживание

Этот модуль помечен как сертифицированный, что означает, что он поддерживается партнером Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.

Список других модулей, также поддерживаемых партнером Ansible, см. здесь.

Автор

  • Chris Houseknecht (@chouseknecht)
  • Matt Davis (@nitzmahone)
  • Yuwei Zhou (@yuwzho)

Подсказка

Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/azure_rm_networkinterface_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API