community.aws.efs – создание и обслуживание файловых систем EFS
Примечание
Этот плагин является частью коллекции community.aws (версии 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Для использования в книге задач укажите: community.aws.efs.
Новое в версии 1.0.0: из community.aws
Обзор
- Модуль позволяет создавать, искать и удалять файловые системы Amazon EFS.
Требования
Ниже перечислены требования, которые должны быть выполнены на хосте, на котором выполняется этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| aws_access_key строка | Ключ доступа AWS. Если не задан, используется значение переменной среды AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Если задан параметр profile, этот параметр игнорируется. Одновременное указание параметров aws_access_key и profile устарело, и эти параметры будут сделаны взаимоисключающими после 2022-06-01. псевдонимы: ec2_access_key, access_key | ||
| aws_ca_bundle путь | Расположение файла с корневым сертификатом для проверки SSL-сертификатов. Используется только для модулей на основе boto3. Примечание: Файл с корневым сертификатом читается со стороны модуля и, возможно, должен быть явно скопирован с контроллера, если он не выполняется локально. | ||
| aws_config словарь | Словарь для изменения конфигурации botocore. Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. Для модулей boto используется только ключ 'user_agent'. См. http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto для получения дополнительной информации о конфигурации boto. | ||
| aws_secret_key строка | Секретный ключ AWS. Если не задан, используется значение переменной среды AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Если задан параметр profile, этот параметр игнорируется. Одновременное указание параметров aws_secret_key и profile устарело, и эти параметры будут сделаны взаимоисключающими после 2022-06-01. псевдонимы: ec2_secret_key, secret_key | ||
| debug_botocore_endpoint_logs булево |
| Используйте логирование botocore.endpoint для анализа уникальных (а не суммарных) API-вызовов «ресурс:действие», произведённых во время задачи, выводимые в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action, чтобы вывести полный список, созданный во время книги задач. Переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована. | |
| ec2_url строка | Адрес для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать адреса EC2). Игнорируется для модулей, где регион необходим. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной среды EC2_URL, если она есть. псевдонимы: aws_endpoint_url, endpoint_url | ||
| encrypt булево |
| Если encrypt=true, создаётся зашифрованная файловая система. Это значение нельзя изменить после создания файловой системы. | |
| id строка | ID файловой системы Amazon EFS. Требуется либо имя, либо ID для удаления. | ||
| kms_key_id строка | ID AWS KMS CMK, который будет использоваться для защиты зашифрованной файловой системы. Требуется только в случае использования не по умолчанию CMK. Если этот параметр не указан, используется по умолчанию CMK для Amazon EFS. ID ключа может быть ID ключа, ARN ID ключа, псевдонимом ключа или ARN псевдонима ключа. | ||
| name строка | Токен создания файловой системы Amazon EFS. Требуется для создания и обновления. Требуется либо имя, либо ID для удаления. | ||
| performance_mode строка |
| Режим производительности файловой системы. Действует только при создании. | |
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. Использование profile переопределяет aws_access_key, aws_secret_key и security_token, и поддержка одновременного указания их вместе с profile устарела. aws_access_key, aws_secret_key и security_token будут сделаны взаимоисключающими с profile после 2022-06-01. псевдонимы: aws_profile | ||
| provisioned_throughput_in_mibps вещественное число | Если режим пропускной способности — предоставленный, выберите объём предоставленной пропускной способности в Мибпс. Требуется botocore >= 1.10.57 | ||
| purge_tags булево |
| Если да, существующие теги будут очищены, чтобы точно соответствовать параметру tags. Если параметр tags не задан, теги не будут изменены. | |
| 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. Если задан параметр profile, этот параметр игнорируется. Одновременное указание параметров security_token и profile устарело, и эти параметры будут сделаны взаимоисключающими после 2022-06-01. псевдонимы: aws_security_token, access_token | ||
| state строка |
| Позволяет создавать, искать и удалять файловые системы Amazon EFS. | |
| tags словарь | Список тегов Amazon EFS. Должен быть определён как словарь. В случае состояния 'present' со списком тегов и существующей файловой системой (соответствующей 'name'), теги файловой системы будут заменены предоставленными данными. | ||
| targets список / элементы=словарь | Список подключённых целей. Должен быть списком словарей, каждый словарь должен содержать следующие атрибуты: Эти данные могут быть изменены для существующей файловой системы с помощью состояния 'present' и нового списка подключённых целей. | ||
| ip_address строка | Действительный IPv4-адрес в диапазоне адресов указанной подсети. | ||
| security_groups список / элементы=строка | Список ID групп безопасности, вида 'sg-xxxxxxxx'. Они должны быть для той же VPC, что и указанная подсеть | ||
| subnet_id строка / требуется | ID подсети, в которую добавляется подключённая цель. | ||
| 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_PROFILEилиAWS_DEFAULT_PROFILE,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,AWS_CA_BUNDLE - Ansible использует конфигурационный файл boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используются для указания региона AWS, если это необходимо, но это также можно настроить в файле конфигурации boto
Примеры
- name: EFS provisioning
community.aws.efs:
state: present
name: myTestEFS
tags:
Name: myTestNameTag
purpose: file-storage
targets:
- subnet_id: subnet-748c5d03
security_groups: [ "sg-1a2b3c4d" ]
- name: Modifying EFS data
community.aws.efs:
state: present
name: myTestEFS
tags:
name: myAnotherTestTag
targets:
- subnet_id: subnet-7654fdca
security_groups: [ "sg-4c5d6f7a" ]
- name: Deleting EFS
community.aws.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 список / элементы=строка | всегда | список целевых точек mount Пример: [{'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 Пример: {'key': 'Значение', 'name': 'my-efs'} |
Авторы
- 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.10/collections/community/aws/efs_module.html