Spec-Zone.ru › Ansible 2.4

ec2_vol - создание и подключение тома, возврат идентификатора тома и отображения устройств

  • Обзор
  • Требования (для хоста, выполняющего модуль)
  • Параметры
  • Примеры
  • Возвращаемые значения
  • Примечания
    • Статус
    • Информация о техническом обслуживании

Обзор

  • создаёт том EBS и, по желанию, подключает его к экземпляру. Если заданы ID экземпляра и имя устройства, и экземпляр имеет устройство с указанным именем, то том не создаётся, и подключение не выполняется. Данный модуль зависит от python-boto.

Требования (для хоста, выполняющего модуль)

  • python >= 2.6
  • boto

Параметры

параметр обязательно по умолчанию варианты комментарии
aws_access_key
нет
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY.
псевдонимы: ec2_access_key, access_key
aws_secret_key
нет
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.
псевдонимы: ec2_secret_key, secret_key
delete_on_termination
(добавлен в 2.1)
нет нет
  • да
  • нет
Если установлено «да», том будет удалён при завершении работы экземпляра.
device_name
нет
Идентификатор устройства для переопределения сопоставления устройств. Предполагает /dev/sdf для Linux/UNIX и /dev/xvdf для Windows.
ec2_url
нет
URL для подключения к EC2 или облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть.
encrypted
(добавлен в 1.8)
нет
Включить шифрование для этого тома.
id
(добавлен в 1.6)
нет
Идентификатор тома, если требуется подключить существующий том (требуется экземпляр) или удалить существующий том
instance
нет
ID экземпляра, если требуется подключить том. С версии 1.9 можно установить значение None для отключения.
iops
(добавлен в 1.3)
нет 100
Зарезервированные значения IOP, которые необходимо связать с этим томом (целое число).
kms_key_id
(добавлен в 2.3)
нет
Укажите идентификатор ключа KMS для использования.
name
(добавлен в 1.6)
нет
Тег имени тома, если требуется подключить существующий том (требуется экземпляр)
profile
(добавлен в 1.6)
нет
Использует профиль boto. Работает только с boto >= 2.24.0.
region
нет
AWS регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если она есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region
security_token
(добавлен в 1.6)
нет
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.
псевдонимы: access_token
snapshot
(добавлен в 1.5)
нет
Идентификатор снимка, на основе которого будет создан том
state
(добавлен в 1.6)
нет present
  • absent
  • present
  • list
указывает, нужно ли убедиться, что том присутствует или отсутствует, или вывести список существующих томов (Вариант list добавлен в версии 1.8).
tags
(добавлен в 2.3)
нет
пары тег:значение, которые необходимо добавить к тому после его создания
validate_certs
(добавлен в 1.5)
нет да
  • да
  • нет
Если установлено «нет», сертификаты SSL для boto версий >= 2.6.0 не будут проверены.
volume_size
нет
размер создаваемого тома (в ГБ).
volume_type
(добавлен в 1.9)
нет standard
Тип тома EBS; стандартный (магнитный), gp2 (SSD), io1 (зарезервированные IOPS), st1 (HDD с оптимизированной пропускной способностью), sc1 (HDD для холодного хранения). «Стандартный» — это старый стандартный том EBS, и он по-прежнему остаётся значением по умолчанию в Ansible для обеспечения обратной совместимости.
zone
нет
зона, в которой требуется создать том. Если не указано, используется зона экземпляра (если задана)
псевдонимы: aws_zone, ec2_zone

Примеры

# Simple attachment action
- ec2_vol:
    instance: XXXXXX
    volume_size: 5
    device_name: sdd

# Example using custom iops params
- ec2_vol:
    instance: XXXXXX
    volume_size: 5
    iops: 100
    device_name: sdd

# Example using snapshot id
- ec2_vol:
    instance: XXXXXX
    snapshot: "{{ snapshot }}"

# Playbook example combined with instance launch
- ec2:
    keypair: "{{ keypair }}"
    image: "{{ image }}"
    wait: yes
    count: 3
  register: ec2
- ec2_vol:
    instance: "{{ item.id }}"
    volume_size: 5
  with_items: "{{ ec2.instances }}"
  register: ec2_vol

# Example: Launch an instance and then add a volume if not already attached
#   * Volume will be created with the given name if not already created.
#   * Nothing will happen if the volume is already attached.
#   * Requires Ansible 2.0

- ec2:
    keypair: "{{ keypair }}"
    image: "{{ image }}"
    zone: YYYYYY
    id: my_instance
    wait: yes
    count: 1
  register: ec2

- ec2_vol:
    instance: "{{ item.id }}"
    name: my_existing_volume_Name_tag
    device_name: /dev/xvdf
  with_items: "{{ ec2.instances }}"
  register: ec2_vol

# Remove a volume
- ec2_vol:
    id: vol-XXXXXXXX
    state: absent

# Detach a volume (since 1.9)
- ec2_vol:
    id: vol-XXXXXXXX
    instance: None

# List volumes for an instance
- ec2_vol:
    instance: i-XXXXXX
    state: list

# Create new volume using SSD storage
- ec2_vol:
    instance: XXXXXX
    volume_size: 50
    volume_type: gp2
    device_name: /dev/xvdf

# Attach an existing volume to instance. The volume will be deleted upon instance termination.
- ec2_vol:
    instance: XXXXXX
    id: XXXXXX
    device_name: /dev/sdf
    delete_on_termination: yes

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

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

название описание возвращается тип пример
device
имя устройства подключённого тома
при успехе строка /def/sdf
volume
словарь, содержащий подробные атрибуты тома
при успехе строка {'status': 'в использовании', 'zone': 'us-east-1b', 'tags': {'env': 'dev'}, 'encrypted': False, 'iops': None, 'create_time': '2015-10-21T14:36:08.870Z', 'snapshot_id': '', 'attachment_set': {'device': '/dev/sdf', 'instance_id': 'i-8356263c', 'deleteOnTermination': 'false', 'status': 'подключено', 'attach_time': '2015-10-23T00:22:29.000Z'}, 'type': 'стандартный', 'id': 'vol-35b333d9', 'size': 1}
volume_id
идентификатор тома
при успехе строка vol-35b333d9
volume_type
тип тома
при успехе строка стандартный

Примечания

Примечание

  • Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета 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

Статус

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

Информация о техническом обслуживании

Для получения дополнительной информации о поддержке данного модуля компанией Red Hat, пожалуйста, обратитесь к этому knowledge base article<https://access.redhat.com/articles/rhel-top-support-policies>

Для получения помощи в разработке модулей, если у вас есть такое желание, пожалуйста, ознакомьтесь с Информация о сообществе и участие в разработке, Тестирование Ansible и Разработка модулей.

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

Spec-Zone.ru

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