Spec-Zone.ru › Ansible

Модуль community.aws.s3_lifecycle — управление правилами жизненного цикла корзины S3 в AWS

Примечание

Этот модуль входит в коллекцию community.aws (версия 10.1.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, выполните команду ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.aws. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: community.aws.s3_lifecycle.

Добавлено в community.aws 1.0.0

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры

Краткое описание

  • Управление правилами жизненного цикла корзины S3 в AWS.

Требования

Перечисленные ниже требования необходимы на хосте, который выполняет этот модуль.

  • python >= 3.6
  • boto3 >= 1.34.0
  • botocore >= 1.34.0

Параметры

Параметр

Комментарии

abort_incomplete_multipart_upload_days

целое число

добавлено в community.aws 2.2.0

Указывает, сколько дней Amazon S3 будет ждать с момента начала незавершенной многокомпонентной загрузки, прежде чем окончательно удалить все ее части.

access_key

псевдонимы: aws_access_key_id, aws_access_key

строка

Идентификатор ключа доступа AWS.

Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменные среды AWS_ACCESS_KEY_ID или AWS_ACCESS_KEY (в порядке убывания приоритета).

Параметры aws_access_key и profile являются взаимоисключающими.

Псевдоним aws_access_key_id добавлен в выпуске 5.1.0 для согласованности с AWS SDK botocore.

aws_ca_bundle

путь

Путь к пакету сертификатов центра сертификации, используемому для проверки SSL-сертификатов.

Также можно использовать переменную среды AWS_CA_BUNDLE.

aws_config

словарь

Словарь для изменения конфигурации botocore.

Параметры описаны в документации AWS: https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.

debug_botocore_endpoint_logs

логическое значение

Использовать регистратор botocore.endpoint для анализа уникальных (а не общего числа) вызовов API "resource:action", выполненных во время задачи, и записывать их набор в ключ resource_actions результатов задачи. Используйте обработчик aws_resource_action, чтобы вывести общий список вызовов, выполненных в плейбуке.

Также можно использовать переменную среды ANSIBLE_DEBUG_BOTOCORE_LOGS.

Варианты:

  • false ← (по умолчанию)
  • true

endpoint_url

псевдонимы: aws_endpoint_url

строка

URL для подключения вместо стандартных конечных точек AWS. Хотя этот параметр можно использовать для подключения к другим совместимым с AWS сервисам, коллекции amazon.aws и community.aws тестируются только с AWS.

Также можно использовать переменную среды AWS_URL.

expiration_date

строка

Задает срок жизни объектов, на которые распространяется правило, в виде даты их истечения.

Значение должно быть в формате ISO-8601; время должно быть равно полуночи, а часовой пояс должен быть указан как GMT.

Этот параметр нельзя указывать вместе с expire_object_delete_marker.

expiration_days

целое число

Задает срок жизни в днях объектов, на которые распространяется правило.

Значение должно быть положительным целым числом, отличным от нуля.

Этот параметр нельзя указывать вместе с expire_object_delete_marker.

expire_object_delete_marker

логическое значение

добавлено в community.aws 2.2.0

Указывает, будет ли Amazon S3 удалять маркер удаления, у которого нет неактуальных версий.

Если задано значение true, срок действия маркера удаления истечет; если задано false, политика не выполняет никаких действий.

Этот параметр нельзя указывать вместе с expiration_days или expiration_date.

Варианты:

  • false
  • true

maximum_object_size

целое число

добавлено в community.aws 9.1.0

Максимальный размер объекта, к которому применяется правило.

minimum_object_size

целое число

добавлено в community.aws 9.1.0

Минимальный размер объекта, к которому применяется правило.

name

строка / обязательный

Имя корзины S3.

noncurrent_version_expiration_days

целое число

Количество дней, по истечении которых неактуальные версии должны быть удалены.

Необходимо задать, если задан параметр noncurrent_version_keep_newer.

noncurrent_version_keep_newer

целое число

добавлено в community.aws 5.3.0

Минимальное количество неактуальных версий, которые нужно сохранить.

Требуется параметр noncurrent_version_expiration_days.

noncurrent_version_storage_class

строка

Класс хранилища, в который переводятся неактуальные версии.

Варианты:

  • "glacier" ← (по умолчанию)
  • "onezone_ia"
  • "standard_ia"
  • "intelligent_tiering"
  • "deep_archive"

noncurrent_version_transition_days

целое число

Количество дней, по истечении которых неактуальные версии будут переведены в класс хранилища, указанный в параметре noncurrent_version_storage_class.

noncurrent_version_transitions

список / элементы=словарь

Список действий по изменению класса хранилища, применяемых к неактуальным версиям в соответствии с правилом.

Каждый класс хранилища можно использовать только один раз. Каждое действие по изменению класса хранилища содержит следующие элементы: transition_days storage_class.

prefix

строка

Префикс, определяющий один или несколько объектов, к которым применяется правило.

Если префикс не указан, правило применяется ко всей корзине.

profile

псевдонимы: aws_profile

строка

Именованный профиль AWS, используемый для аутентификации.

Дополнительные сведения об именованных профилях см. в документации AWS: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html.

Также можно использовать переменную среды AWS_PROFILE.

Параметр profile взаимоисключающий с параметрами aws_access_key, aws_secret_key и session_token.

purge_transitions

логическое значение

Заменять ли все текущие переходы новыми.

Если задано значение false, указанные переходы добавляются, заменяя переходы с тем же значением storage_class. Если задано значение true, существующие переходы удаляются и заменяются новыми.

Варианты:

  • false
  • true ← (по умолчанию)

region

псевдонимы: aws_region

строка

Регион AWS, который нужно использовать.

Для глобальных сервисов, таких как IAM, Route53 и CloudFront, параметр region игнорируется.

Также можно использовать переменную среды AWS_REGION.

Дополнительные сведения см. в документации Amazon AWS: http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region.

rule_id

строка

Уникальный идентификатор правила.

Длина значения не может превышать 255 символов.

Если значение не указано, для правила будет создан уникальный идентификатор.

secret_key

псевдонимы: aws_secret_access_key, aws_secret_key

строка

Секретный ключ доступа AWS.

Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменные среды AWS_SECRET_ACCESS_KEY или AWS_SECRET_KEY (в порядке убывания приоритета).

Параметры secret_key и profile являются взаимоисключающими.

Псевдоним aws_secret_access_key добавлен в выпуске 5.1.0 для согласованности с AWS SDK botocore.

session_token

псевдонимы: aws_session_token

строка

Токен сеанса AWS STS для использования с временными учетными данными.

Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменную среды AWS_SESSION_TOKEN.

Параметры session_token и profile являются взаимоисключающими.

state

строка

Создать или удалить правило жизненного цикла.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

status

строка

Если задано значение enabled, правило применяется в данный момент.

Если задано значение disabled, правило в данный момент не применяется.

Варианты:

  • "enabled" ← (по умолчанию)
  • "disabled"

storage_class

строка

Класс хранилища, в который нужно выполнить переход.

Варианты:

  • "glacier" ← (по умолчанию)
  • "onezone_ia"
  • "standard_ia"
  • "intelligent_tiering"
  • "deep_archive"

transition_date

строка

Задает срок жизни объектов, на которые распространяется правило, в виде даты их перехода в другой класс хранилища.

Значение должно быть в формате ISO-8601; время должно быть равно полуночи, а часовой пояс должен быть указан как GMT.

Этот параметр обязателен, если не указан параметр transition_days.

transition_days

целое число

Указывает, через сколько дней объект перейдет в другой класс хранилища.

Этот параметр обязателен, если не указан transition_date.

transitions

список / элементы=словарь

Список действий по изменению класса хранилища, применяемых к правилу.

Каждый класс хранилища можно использовать только один раз. Каждое действие по изменению класса хранилища может содержать следующие элементы: transition_days transition_date storage_class.

validate_certs

логическое значение

Если задано значение false, SSL-сертификаты при взаимодействии с API AWS не проверяются.

Настоятельно не рекомендуется задавать validate_certs=false; вместо этого рассмотрите возможность указать aws_ca_bundle.

Варианты:

  • false
  • true ← (по умолчанию)

wait

логическое значение

добавлено в community.aws 1.5.0

Дождаться завершения настройки перед возвратом.

Варианты:

  • false ← (по умолчанию)
  • true

Примечания

Примечание

  • Если срок действия задан в днях, срок перехода также необходимо указать в днях.
  • Если срок действия задан датой, срок перехода также необходимо указать датой.
  • Внимание: Для модулей переменные среды и файлы конфигурации считываются из контекста «хоста» Ansible, а не из контекста «контроллера». Поэтому файлы может потребоваться явно скопировать на «хост». Для плагинов поиска и подключения переменные среды и файлы конфигурации считываются из контекста «контроллера» Ansible, а не из контекста «хоста».
  • Используемый Ansible пакет AWS SDK (boto3) также может считывать значения по умолчанию для учетных данных и других настроек, например региона, из файлов конфигурации в контексте «хоста» Ansible (обычно ~/.aws/credentials). Дополнительные сведения см. по адресу https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.

Примеры

# Note: These examples do not set authentication details, see the AWS Guide for details.

- name: Configure a lifecycle rule on a bucket to expire (delete) items with a prefix of /logs/ after 30 days
  community.aws.s3_lifecycle:
    name: mybucket
    expiration_days: 30
    prefix: logs/
    status: enabled
    state: present

- name: Configure a lifecycle rule to transition all items with a prefix of /logs/ to glacier after 7 days and then delete after 90 days
  community.aws.s3_lifecycle:
    name: mybucket
    transition_days: 7
    expiration_days: 90
    prefix: logs/
    status: enabled
    state: present

# Note that midnight GMT must be specified.
# Be sure to quote your date strings
- name: 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.
  community.aws.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

- name: Disable the rule created above
  community.aws.s3_lifecycle:
    name: mybucket
    prefix: logs/
    status: disabled
    state: present

- name: Delete the lifecycle rule created above
  community.aws.s3_lifecycle:
    name: mybucket
    prefix: logs/
    state: absent

- name: Configure a lifecycle rule to transition all backup files older than 31 days in /backups/ to standard infrequent access class.
  community.aws.s3_lifecycle:
    name: mybucket
    prefix: backups/
    storage_class: standard_ia
    transition_days: 31
    state: present
    status: enabled

- name: Configure a lifecycle rule to transition files to infrequent access after 30 days and glacier after 90
  community.aws.s3_lifecycle:
    name: mybucket
    prefix: logs/
    state: present
    status: enabled
    transitions:
      - transition_days: 30
        storage_class: standard_ia
      - transition_days: 90
        storage_class: glacier

Авторы

  • Rob White (@wimnat)

Ссылки на коллекцию

  • Отслеживание ошибок
  • Репозиторий (исходный код)
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/aws/s3_lifecycle_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API