s3_lifecycle – Управление правилами жизненного цикла для ведер s3 в AWS
Новое в версии 2.0.
Краткий обзор
- Управление правилами жизненного цикла ведер s3 в AWS
Требования
Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.
- boto
- python >= 2.6
- python-dateutil
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| 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 для вывода полного списка, выполненного во время игры. Также может использоваться переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS. |
| ec2_url строка | URL для подключения к EC2 или вашей облачной среде Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если не используется регион. Если не задан, используется значение переменной окружения EC2_URL, если таковое имеется. | |
| expiration_date - | Указывает срок действия объектов, которые подпадают под действие правила, по дате истечения срока действия. Значение должно быть в формате ISO-8601, время должно быть полночь, а часовой пояс должен быть GMT. | |
| expiration_days - | Указывает срок действия, в днях, объектов, которые подпадают под действие правила. Значение должно быть положительным целым числом, отличным от нуля. | |
| name - / обязательно | Имя ведра s3 | |
| noncurrent_version_expiration_days - добавлено в 2.6 | Удаление неактуальных версий через столько дней после того, как они стали неактуальными | |
| noncurrent_version_storage_class - добавлено в 2.6 |
| Переход неактуальных версий в этот класс хранения |
| noncurrent_version_transition_days - добавлено в 2.6 | Переход неактуальных версий через столько дней после того, как они стали неактуальными | |
| noncurrent_version_transitions - добавлено в 2.6 | Список действий перехода, которые нужно применить к неактуальным версиям для правила. Каждый класс хранения можно использовать только один раз. Каждое действие перехода содержит эти элементы transition_days storage_class
| |
| prefix - | Префикс, определяющий один или несколько объектов, на которые распространяется правило. Если префикс не указан, правило будет применяться ко всему ведру. | |
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| purge_transitions логический тип добавлено в 2.6 |
| "Заменить все текущие переходы на новые переходы. Если значение ложно, указанные переходы будут добавлены, заменяя переходы с тем же классом хранения. Если истинно, существующие переходы будут удалены и заменены новыми переходами" |
| region строка | Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковое имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: aws_region, ec2_region | |
| rule_id - | Уникальный идентификатор правила. Значение не может быть длиннее 255 символов. Уникальное значение для правила будет сгенерировано, если значение не указано. | |
| security_token строка | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | |
| state - |
| Создание или удаление правила жизненного цикла |
| status - |
| Если 'enabled', правило в настоящее время применяется. Если 'disabled', правило в настоящее время не применяется. |
| storage_class - |
| Класс хранения для перехода. В настоящее время поддерживаются два значения — 'glacier', 'onezone_ia' или 'standard_ia'. Класс 'standard_ia' доступен только начиная с версии Ansible 2.2. |
| transition_date - | Указывает срок действия объектов, которые подпадают под действие правила, по дате перехода в другой класс хранения. Значение должно быть в формате ISO-8601, время должно быть полночь, а часовой пояс должен быть GMT. Если transition_days не указан, этот параметр требуется." | |
| transition_days - | Указывает, через сколько дней объект переходит в другой класс хранения. Если transition_date не указан, этот параметр требуется. | |
| transitions - добавлено в 2.6 | Список действий перехода, которые нужно применить к правилу. Каждый класс хранения можно использовать только один раз. Каждое действие перехода может содержать эти элементы transition_days transition_date storage_class
| |
| validate_certs логический тип |
| Если установлено значение "нет", сертификаты SSL для boto версии >= 2.6.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
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
# Configure a lifecycle rule on a bucket to expire (delete) items with a prefix of /logs/ after 30 days
- s3_lifecycle:
name: mybucket
expiration_days: 30
prefix: /logs/
status: enabled
state: present
# Configure a lifecycle rule to transition all items with a prefix of /logs/ to glacier after 7 days and then delete after 90 days
- s3_lifecycle:
name: mybucket
transition_days: 7
expiration_days: 90
prefix: /logs/
status: enabled
state: present
# Configure a lifecycle rule to transition all items with a prefix of /logs/ to glacier on 31 Dec 2020 and then delete on 31 Dec 2030.
# Note that midnight GMT must be specified.
# Be sure to quote your date strings
- s3_lifecycle:
name: mybucket
transition_date: "2020-12-30T00:00:00.000Z"
expiration_date: "2030-12-30T00:00:00.000Z"
prefix: /logs/
status: enabled
state: present
# Disable the rule created above
- s3_lifecycle:
name: mybucket
prefix: /logs/
status: disabled
state: present
# Delete the lifecycle rule created above
- s3_lifecycle:
name: mybucket
prefix: /logs/
state: absent
# Configure a lifecycle rule to transition all backup files older than 31 days in /backups/ to standard infrequent access class.
- s3_lifecycle:
name: mybucket
prefix: /backups/
storage_class: standard_ia
transition_days: 31
state: present
status: enabled
# Configure a lifecycle rule to transition files to infrequent access after 30 days and glacier after 90
- s3_lifecycle:
name: mybucket
prefix: /logs/
state: present
status: enabled
transitions:
- transition_days: 30
storage_class: standard_ia
- transition_days: 90
storage_class: glacier
Статус
- Этот модуль гарантированно не будет содержать изменений интерфейса, несовместимых со старыми версиями. [stableinterface]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- Rob White (@wimnat)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 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/s3_lifecycle_module.html