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 путь | Расположение файла с сертификатами CA для проверки SSL-сертификатов. Используется только для модулей, основанных на boto3. Примечание: Файл CA Bundle читается со стороны модуля и может потребоваться явное копирование с контроллера, если модуль не выполняется локально. | ||
| 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 строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть. псевдонимы: aws_endpoint_url, endpoint_url | ||
| encrypt логический тип |
| Если encrypt=true, создаёт зашифрованную файловую систему. Это нельзя изменить после создания файловой системы. | |
| id строка | ID Amazon EFS. Требуется либо имя, либо ID для удаления. | ||
| kms_key_id строка | Идентификатор AWS KMS CMK, который будет использоваться для защиты зашифрованной файловой системы. Этот параметр требуется только в случае использования нестандартного CMK. Если этот параметр не указан, используется стандартный CMK Amazon EFS. Идентификатор ключа может быть ID ключа, ARN ключа, псевдонимом ключа или 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 число с плавающей точкой | Если throughput_mode равен provisioned, выберите количество пропускной способности для выделения в Мбит/с. Требуется 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' со списком тегов и существующей файловой системой EFS (соответствующей параметру 'name'), теги файловой системы EFS будут заменены предоставленными данными. | ||
| targets список / элементы=словарь | Список подключенных целевых узлов. Он должен быть списком словарей, каждый словарь должен включать следующие атрибуты: Эти данные могут быть изменены для существующей файловой системы EFS, используя состояние 'present', и новый список целевых узлов. | ||
| ip_address строка | Действительный IPv4-адрес в диапазоне адресов указанной подсети. | ||
| security_groups список / элементы=строка | Список идентификаторов групп безопасности в формате 'sg-xxxxxxxx'. Они должны относиться к той же VPC, что и указанная подсеть. | ||
| subnet_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 Пример: создание, доступно, удаление, удалено |
| 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–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/aws/efs_module.html