efs – создание и поддержка файловых систем EFS
Новое в версии 2.2.
Обзор
- Модуль позволяет создавать, искать и удалять файловые системы 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 для вывода общего списка, созданного во время выполнения книги команд. |
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где необходим регион. Должен быть указан для всех остальных модулей, если не используется регион. Если не задан, используется значение переменной окружения EC2_URL, если таковая имеется. | |
| encrypt логический добавлен в 2.5 |
| Логическое значение, которое, если истинно, создаёт зашифрованную файловую систему. Это значение нельзя изменить после создания файловой системы. |
| id - | Идентификатор Amazon EFS. Для удаления необходим либо имя, либо ID. | |
| kms_key_id - добавлен в 2.5 | Идентификатор AWS KMS CMK, который будет использоваться для защиты зашифрованной файловой системы. Этот параметр требуется только в случае использования CMK, отличного от стандартного. Если этот параметр не указан, используется стандартный CMK для Amazon EFS. Идентификатор ключа может быть идентификатором ключа, ARN ключа, псевдонимом ключа или ARN псевдонима ключа. | |
| name - | Токен создания файловой системы Amazon EFS. Требуется для создания и обновления. Для удаления необходим либо имя, либо ID. | |
| performance_mode - |
| Режим производительности файловой системы для использования. Действует только при создании. |
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| provisioned_throughput_in_mibps вещественное число добавлен в 2.8 | Если throughput_mode равен provisioned, выберите значение пропускной способности для выделения в Мбит/с. Требуется 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 |
| Режим throughput_mode для создаваемой файловой системы. Требуется 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 Пример: создание, доступно, удаление, удалено |
| mount_point строка | всегда | url файловой системы с ведущей точкой с момента, когда AWS EFS потребовалось добавить суффикс региона к адресу Пример: .fs-xxxxxxxx.efs.us-west-2.amazonaws.com:/ |
| mount_targets список | всегда | список целевых точек mount Пример: [{'file_system_id': 'fs-a7ad440e', 'ip_address': '172.31.17.173', 'life_cycle_state': 'доступно', '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': 'Значение'} |
Состояние
- Гарантия обратной совместимости этого модуля не предоставляется. [превью]
- Этот модуль поддерживается сообществом 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.8/modules/efs_module.html