efs – создание и поддержка файловых систем EFS
Описание
- Модуль позволяет создавать, искать и удалять файловые системы Amazon EFS
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| 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 | |
| debug_botocore_endpoint_logs логический тип добавлено в 2.8 |
| Использовать логирование botocore.endpoint для парсинга уникальных (а не общих) API-вызовов «ресурс:действие», выполненных во время задачи, выводя набор в ключ resource_actions в результатах задачи. Использовать обратный вызов aws_resource_action для вывода полного списка, выполненного во время выполнения playbook. Также может использоваться переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS. |
| ec2_url строка | URL для подключения к EC2 или облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковое имеется. | |
| encrypt логический тип добавлено в 2.5 |
| Логическое значение, которое, если истинно, создаёт зашифрованную файловую систему. Это значение нельзя изменить после создания файловой системы. |
| id - | ID файловой системы Amazon EFS. Для удаления требуется имя или ID. | |
| kms_key_id - добавлено в 2.5 | Идентификатор AWS KMS CMK, который будет использоваться для защиты зашифрованной файловой системы. Этот параметр необходим только в том случае, если требуется использовать CMK, отличный от стандартного. Если этот параметр не указан, используется стандартный CMK Amazon EFS. Идентификатор ключа может быть ID ключа, ARN ID ключа, псевдонимом ключа или ARN псевдонима ключа. | |
| name - | Токен создания файловой системы Amazon EFS. Требуется для создания и обновления. Для удаления требуется имя или ID. | |
| performance_mode - |
| Режим производительности файловой системы. Действует только при создании. |
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| provisioned_throughput_in_mibps число с плавающей точкой добавлено в 2.8 | Если режим пропускной способности — предоставленная, выберите количество пропускной способности, которое необходимо предоставить в Мбит/с. Требуется botocore >= 1.10.57 | |
| purge_tags логический тип добавлено в 2.5 |
| Если да, существующие теги будут удалены из ресурса, чтобы точно соответствовать параметру теги. Если параметр теги не задан, теги не будут изменены. |
| region строка | Регион AWS. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковое имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region | |
| security_token строка | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | |
| state - |
| Позволяет создавать, искать и удалять файловые системы Amazon EFS |
| tags - | Список тегов Amazon EFS. Должен быть определён как словарь. В случае состояния 'present' со списком тегов и существующей EFS (совпадающей по имени), теги EFS будут заменены предоставленными данными. | |
| targets - | Список подключённых целей. Это должен быть список словарей, каждый словарь должен содержать следующие атрибуты: - subnet_id — обязательный. ID подсети, в которую добавляется целевой пункт подключения. - ip_address — необязательный. Действительный IPv4-адрес в диапазоне адресов указанной подсети. - security_groups — необязательный. Список ID групп безопасности в формате 'sg-xxxxxxxx'. Они должны относиться к той же VPC, что и указанная подсеть. Эти данные могут быть изменены для существующей EFS с помощью состояния 'present' и нового списка целевых пунктов подключения. | |
| throughput_mode - добавлено в 2.8 |
| Режим пропускной способности для создаваемой файловой системы. Требуется botocore >= 1.10.57 |
| validate_certs логический тип |
| При установке в "нет", сертификаты SSL для boto версии >= 2.6.0 не будут проверяться. |
| wait логический тип |
| В случае состояния 'present' следует дождаться состояния жизненного цикла EFS 'available' (конечно, если текущее состояние не 'deleting' или 'deleted'). В случае состояния 'absent' следует дождаться состояния жизненного цикла EFS 'deleted' |
| wait_timeout - | По умолчанию: 0 | Время ожидания модулем (в секундах) желаемого состояния перед возвратом. Ноль означает ожидание до достижения желаемого состояния. |
Примечания
Примечание
- Если параметры не заданы внутри модуля, следующие переменные окружения могут быть использованы в порядке убывания приоритета
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), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используются для указания региона AWS, когда это необходимо, но это также можно настроить в конфигурационном файле boto
Примеры
# EFS provisioning
- efs:
state: present
name: myTestEFS
tags:
name: myTestNameTag
purpose: file-storage
targets:
- subnet_id: subnet-748c5d03
security_groups: [ "sg-1a2b3c4d" ]
# Modifying EFS data
- efs:
state: present
name: myTestEFS
tags:
name: myAnotherTestTag
targets:
- subnet_id: subnet-7654fdca
security_groups: [ "sg-4c5d6f7a" ]
# Deleting EFS
- efs:
state: absent
name: myTestEFS
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| creation_time строка | всегда | временная метка даты создания Пример: 2015-11-16 07:30:57-05:00 |
| creation_token строка | всегда | токен создания EFS Пример: console-88609e04-9a0e-4a2e-912c-feaa99509961 |
| file_system_id строка | всегда | Идентификатор файловой системы Пример: fs-xxxxxxxx |
| filesystem_address строка | всегда | URL файловой системы, пригодный для использования с mount Пример: fs-xxxxxxxx.efs.us-west-2.amazonaws.com:/ |
| life_cycle_state строка | всегда | состояние файловой системы EFS Пример: creating, available, deleting, deleted |
| mount_point строка | всегда | URL файловой системы с ведущей точкой с момента, когда AWS EFS потребовало добавить префикс региона к адресу Пример: .fs-xxxxxxxx.efs.us-west-2.amazonaws.com:/ |
| mount_targets список | всегда | список целевых точек монтирования Пример: [{'file_system_id': 'fs-a7ad440e', 'ip_address': '172.31.17.173', 'life_cycle_state': 'available', 'mount_target_id': 'fsmt-d8907871', 'network_interface_id': 'eni-6e387e26', 'owner_id': '740748460359', 'security_groups': ['sg-a30b22c6'], 'subnet_id': 'subnet-e265c895'}, '...'] |
| name строка | всегда | имя файловой системы Пример: my-efs |
| number_of_mount_targets целое число | всегда | количество смонтированных целей Пример: 3 |
| owner_id строка | всегда | Идентификатор AWS аккаунта владельца EFS Пример: XXXXXXXXXXXX |
| performance_mode строка | всегда | режим производительности файловой системы Пример: generalPurpose |
| size_in_bytes словарь | всегда | размер файловой системы в байтах по состоянию на указанную временную метку Пример: {'timestamp': '2015-12-21 13:59:59-05:00', 'value': 12288} |
| tags словарь | всегда | метки экземпляра efs Пример: {'name': 'my-efs', 'key': 'Value'} |
Статус
- Данный модуль не гарантирует обратную совместимость. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Ryan Sydnor (@ryansydnor)
- Artem Kazakov (@akazakov)
Подсказка
Если вы заметили какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/efs_module.html