Spec-Zone.ru › Ansible 2.5

ec2_eni - Создание и (необязательно) подключение Elastic Network Interface (ENI) к экземпляру

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

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

Обзор

  • Создает и (необязательно) подключает Elastic Network Interface (ENI) к экземпляру. Если предоставлен идентификатор ENI или private_ip, существующий ENI (если таковой имеется) будет изменён. Параметр «attached» управляет состоянием подключения сетевого интерфейса.

Требования

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

  • python >= 2.6
  • boto

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
attached
(добавлен в 2.2)
Значение по умолчанию:
yes
Указывает, должен ли сетевой интерфейс быть подключен или отключен от экземпляра. Если опущено, состояние подключения не изменится
aws_access_key Значение по умолчанию:
None
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY.

псевдонимы: ec2_access_key, access_key
aws_secret_key Значение по умолчанию:
None
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.

псевдонимы: ec2_secret_key, secret_key
delete_on_termination
Удалить интерфейс при завершении работы экземпляра, к которому он подключен. Этот флаг можно указывать только при изменении интерфейса, а не при его создании.
description Значение по умолчанию:
None
Необязательное описание ENI.
device_index Значение по умолчанию:
0
Индекс устройства для подключения сетевого интерфейса к экземпляру.
ec2_url Значение по умолчанию:
None
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где регион требуется. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковое имеется.
eni_id Значение по умолчанию:
None
Идентификатор ENI (для изменения); если null и state присутствует, будет создан новый eni.
force_detach Значение по умолчанию:
no
Принудительное отключение интерфейса. Это применяется при явном отключении интерфейса, установив instance_id в None, или при удалении интерфейса со state=absent.
instance_id Значение по умолчанию:
None
Идентификатор экземпляра, к которому нужно подключить ENI. С версии 2.2 используйте параметр «attached» для подключения или отключения ENI. До версии 2.2 для отключения ENI от экземпляра используйте «None».
private_ip_address Значение по умолчанию:
None
Приватный IP-адрес.
profile
(добавлен в 1.6)
Значение по умолчанию:
None
Использует профиль boto. Работает только с boto >= 2.24.0.
purge_secondary_private_ip_addresses
(добавлен в 2.5)
Значение по умолчанию:
no
Используется вместе с secondary_private_ip_addresses, чтобы определить, нужно ли удалять вторичные IP-адреса, кроме указанных. Установите secondary_private_ip_addresses в пустой список, чтобы удалить все вторичные адреса.
region
AWS регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковая имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region

псевдонимы: aws_region, ec2_region
secondary_private_ip_address_count
(добавлен в 2.2)
Количество вторичных IP-адресов для назначения сетевому интерфейсу. Этот параметр взаимоисключающий с secondary_private_ip_addresses
secondary_private_ip_addresses
(добавлен в 2.2)
Список IP-адресов для назначения в качестве вторичных IP-адресов сетевому интерфейсу. Этот параметр взаимоисключающий с secondary_private_ip_address_count
security_groups Значение по умолчанию:
None
Список групп безопасности, связанных с интерфейсом. Используется только при state=present. С версии 2.2 можно указать группы безопасности по ID или имени или сочетанием того и другого. До версии 2.2 можно было указать только по ID.
security_token
(добавлен в 1.6)
Значение по умолчанию:
None
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.

псевдонимы: access_token
source_dest_check
По умолчанию интерфейсы выполняют проверки источника/назначения. Однако экземпляры NAT нуждаются в отключении этой проверки. Этот флаг можно указывать только при изменении интерфейса, а не при его создании.
state
    Варианты:
  • present ←
  • absent
Создать или удалить ENI
subnet_id
Идентификатор подсети, в которой нужно создать ENI.
validate_certs
(добавлен в 1.5)
    Варианты:
  • no
  • yes ←
Если установлено "no", сертификаты SSL не будут проверены для версий boto >= 2.6.0.

Примечания

Примечание

  • Этот модуль идентифицирует ENI на основе идентификатора eni_id, сочетания private_ip_address и subnet_id или сочетания instance_id и device_id. Любой из этих вариантов позволит указать конкретный ENI.
  • Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета AWS_URL или EC2_URL, AWS_ACCESS_KEY_ID или AWS_ACCESS_KEY или EC2_ACCESS_KEY, AWS_SECRET_ACCESS_KEY или AWS_SECRET_KEY или EC2_SECRET_KEY, AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN, AWS_REGION или EC2_REGION
  • Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. http://boto.readthedocs.org/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION обычно используются для указания региона AWS при необходимости, но это также можно настроить в файле конфигурации boto

Примеры

# Note: These examples do not set authentication details, see the AWS Guide for details.

# Create an ENI. As no security group is defined, ENI will be created in default security group
- ec2_eni:
    private_ip_address: 172.31.0.20
    subnet_id: subnet-xxxxxxxx
    state: present

# Create an ENI and attach it to an instance
- ec2_eni:
    instance_id: i-xxxxxxx
    device_index: 1
    private_ip_address: 172.31.0.20
    subnet_id: subnet-xxxxxxxx
    state: present

# Create an ENI with two secondary addresses
- ec2_eni:
    subnet_id: subnet-xxxxxxxx
    state: present
    secondary_private_ip_address_count: 2

# Assign a secondary IP address to an existing ENI
# This will purge any existing IPs
- ec2_eni:
    subnet_id: subnet-xxxxxxxx
    eni_id: eni-yyyyyyyy
    state: present
    secondary_private_ip_addresses:
      - 172.16.1.1

# Remove any secondary IP addresses from an existing ENI
- ec2_eni:
    subnet_id: subnet-xxxxxxxx
    eni_id: eni-yyyyyyyy
    state: present
    secondary_private_ip_address_count: 0

# Destroy an ENI, detaching it from any instance if necessary
- ec2_eni:
    eni_id: eni-xxxxxxx
    force_detach: yes
    state: absent

# Update an ENI
- ec2_eni:
    eni_id: eni-xxxxxxx
    description: "My new description"
    state: present

# Update an ENI identifying it by private_ip_address and subnet_id
- ec2_eni:
    subnet_id: subnet-xxxxxxx
    private_ip_address: 172.16.1.1
    description: "My new description"

# Detach an ENI from an instance
- ec2_eni:
    eni_id: eni-xxxxxxx
    instance_id: None
    state: present

### Delete an interface on termination
# First create the interface
- ec2_eni:
    instance_id: i-xxxxxxx
    device_index: 1
    private_ip_address: 172.31.0.20
    subnet_id: subnet-xxxxxxxx
    state: present
  register: eni

# Modify the interface to enable the delete_on_terminaton flag
- ec2_eni:
    eni_id: "{{ eni.interface.id }}"
    delete_on_termination: true

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

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

Ключ Возвращаемое значение Описание
интерфейс
complex
когда состояние != отсутствует
Атрибуты сетевого интерфейса

статус
строка
Статус сетевого интерфейса

Пример:
ожидание
описание
строка
Описание интерфейса

Пример:
Сетевой интерфейс брандмауэра
subnet_id
строка
В какой подсети VPC привязан интерфейс

Пример:
subnet-b0a0393c
private_ip_addresses
список словарей
Список всех приватных IP-адресов, связанных с этим интерфейсом

Пример:
[{'private_ip_address': '10.20.30.40', 'primary_address': True}]
mac_address
строка
Физический адрес интерфейса

Пример:
00:00:5E:00:53:23
private_ip_address
строка
Основной IP-адрес этого интерфейса

Пример:
10.20.30.40
vpc_id
строка
В какой VPC привязан этот сетевой интерфейс

Пример:
vpc-9a9a9da
groups
список словарей
Список групп безопасности

Пример:
[{'sg-f8a8a9da': 'default'}]
id
строка
ID сетевого интерфейса

Пример:
eni-1d889198
source_dest_check
булево
Значение флага проверки источника/назначения

Пример:
True
owner_id
строка
ID учётной записи AWS

Пример:
812381371


Статус

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

Автор

  • Rob White (@wimnat)

Подсказка

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

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

Spec-Zone.ru

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