Spec-Zone.ru › Ansible 2.11

azure.azcollection.azure_rm_networkinterface – Управление сетевыми интерфейсами Azure

Примечание

Этот плагин является частью коллекции azure.azcollection (версия 1.4.0).

Для его установки используйте: ansible-galaxy collection install azure.azcollection.

Чтобы использовать его в книге задач, укажите: azure.azcollection.azure_rm_networkinterface.

Новое в версии 0.1.0: из azure.azcollection

  • Описание
  • Требования
  • Параметры
  • Примечания
  • См. также
  • Примеры
  • Значения возврата

Описание

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

Требования

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

  • python >= 2.7
  • azure >= 2.0.0

Параметры

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

Псевдонимы: ip_forwarding
ip_configurations
строка
Список IP-конфигураций. Каждый объект конфигурации должен содержать поле private_ip_address, private_ip_allocation_method, public_ip_address_name, public_ip, public_ip_allocation_method, name.
application_security_groups
строка
Список групп безопасности приложений, в которые включена IP-конфигурация.
Элементом списка может быть идентификатор ресурса группы безопасности приложений или словарь с полями resource_group и name.
load_balancer_backend_address_pools
строка
Список существующих пулов адресов обратной связи балансировщика нагрузки, которые нужно связать с сетевым интерфейсом.
Может быть записан как идентификатор ресурса.
Также может быть словарь с полями name и load_balancer.
name
строка / обязательно
Имя IP-конфигурации.
primary
логическое
    Варианты:
  • нет ←
  • да
Является ли IP-конфигурация основной в списке.
Первая IP-конфигурация по умолчанию устанавливается с primary=True.
private_ip_address
строка
Приватный IP-адрес для IP-конфигурации.
private_ip_allocation_method
строка
    Варианты:
  • Динамический ←
  • Статический
Метод распределения приватного IP-адреса.
public_ip_address_name
строка
Имя публичного IP-адреса. None для отключения IP-адреса.

Псевдонимы: public_ip_address, public_ip_name
public_ip_allocation_method
строка
    Варианты:
  • Динамический ←
  • Статический
Метод распределения публичного 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=Static, вы должны указать значение для private_ip_address.
Вы можете обновить метод распределения на Static после того, как динамический приватный IP-адрес был назначен.
Этот параметр устареет в версии 2.9, используйте вместо него ip_configurations.
profile
строка
Профиль безопасности, находящийся в файле ~/.azure/credentials.
public_ip
логическое
    Варианты:
  • нет
  • да ←
(Устаревший) При создании сетевого интерфейса, если не указано имя публичного 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-адрес постоянным.
Этот параметр будет устаревать в версии 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, или войти в систему перед запуском задач или пьес с помощью az login.
  • Аутентификация также возможна с помощью сервисного принципала или пользователя 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. Также можно добавить дополнительные профили. Укажите профиль, передав профиль или установив AZURE_PROFILE в среде.

См. также

См. также

Вход с помощью Azure CLI

Как войти в систему с помощью команды az login.

Примеры

- name: Create a network interface with minimal parameters
  azure_rm_networkinterface:
    name: nic001
    resource_group: myResourceGroup
    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: myResourceGroup
    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: myResourceGroup
    virtual_network: vnet001
    subnet_name: subnet001
    os_type: Windows
    rdp_port: 3399
    security_group: "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkSecurit
                     yGroups/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: myResourceGroup
    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 multiple ip configurations
  azure_rm_networkinterface:
    name: nic004
    resource_group: myResourceGroup
    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: Create a network interface in accelerated networking mode
  azure_rm_networkinterface:
    name: nic005
    resource_group: myResourceGroup
    virtual_network_name: vnet001
    subnet_name: subnet001
    enable_accelerated_networking: True

- name: Create a network interface with IP forwarding
  azure_rm_networkinterface:
    name: nic001
    resource_group: myResourceGroup
    virtual_network: vnet001
    subnet_name: subnet001
    ip_forwarding: True
    ip_configurations:
      - name: ipconfig1
        public_ip_address_name: publicip001
        primary: True

- name: Create a network interface with dns servers
  azure_rm_networkinterface:
    name: nic009
    resource_group: myResourceGroup
    virtual_network: vnet001
    subnet_name: subnet001
    dns_servers:
      - 8.8.8.8

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

Значения возврата

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

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

dns_server
list / elements=string
успех
DNS-серверы, которые должен использовать сетевой адаптер.
Список IP-адресов.

Пример:
['8.9.10.11', '7.8.9.10']
dns_setting
dictionary
успех
Настройки DNS в сетевом интерфейсе.

Пример:
{'applied_dns_servers': [], 'dns_servers': ['8.9.10.11', '7.8.9.10'], 'internal_dns_name_label': None, 'internal_fqdn': None}
enable_accelerated_networking
boolean
успех
Включить или выключить функцию ускоренного сетевого взаимодействия для сетевого интерфейса.

Пример:
True
enable_ip_forwarding
boolean
успех
Включить или выключить переадресацию IP.

Пример:
True
etag
string
успех
Уникальная неизменяемая строка, которая меняется при каждом обновлении ресурса.

Пример:
W/"be115a43-2148-4545-a324-f33ad444c926"
id
string
успех
Идентификатор сетевого интерфейса.

Пример:
/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroup/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nic003
ip_configurations
complex
успех
Список IP-конфигураций.

load_balancer_backend_address_pools
list / elements=string
успех
Список существующих пулов адресов обратного балансировщика для ассоциации с сетевым интерфейсом.

name
string
успех
Имя IP-конфигурации.

Пример:
default
private_ip_address
string
успех
Приватный IP-адрес для IP-конфигурации.

Пример:
10.1.0.10
private_ip_allocation_method
string
успех
Метод выделения приватного IP-адреса.

Пример:
Static
public_ip_address
dictionary
успех
Имя публичного IP-адреса. None для отключения IP-адреса.

Пример:
{'id': '/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroup/myResourceGroup/providers/Microsoft.Network/publicIPAddresse s/publicip001', 'name': 'publicip001'}
subnet
dictionary
успех
Ссылка на ресурс подсети.

Пример:
{'id': '/subscriptions/xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/ myresourcegroup/providers/Microsoft.Network/virtualNetworks/tnb57dc95318/subnets/tnb57dc95318', 'name': 'tnb57dc95318', 'resource_group': 'myresourcegroup', 'virtual_network_name': 'tnb57dc95318'}
location
string
успех
Расположение ресурса сетевого интерфейса.

Пример:
eastus
mac_address
string
успех
MAC-адрес сетевого интерфейса.

name
string
успех
Имя сетевого интерфейса.

Пример:
nic003
network_security_group
dictionary
успех
Ссылка на ресурс группы безопасности сети.

Пример:
{'id': '/subscriptions//xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroup/ myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/nsg001', 'name': 'nsg001'}
primary
boolean
успех
Узнать, является ли этот сетевой интерфейс основным интерфейсом на виртуальной машине.

Пример:
True
provisioning_state
string
успех
Состояние подготовки публичного IP-ресурса.

Пример:
Успешно
tags
dictionary
успех
-Теги сетевого интерфейса.

Пример:
{'key': 'value'}
type
string
успех
Тип ресурса.

Пример:
Microsoft.Network/networkInterfaces


Авторы

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

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/azure/azcollection/azure_rm_networkinterface_module.html

Spec-Zone.ru

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