Spec-Zone.ru › Ansible 2.6

aws_s3 - управление объектами в S3.

  • Описание
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
  • Техническое обслуживание
    • Поддержка
    • Автор

Описание

  • Этот модуль позволяет пользователю управлять корзинами S3 и объектами внутри них. Включает поддержку создания и удаления объектов и корзин, извлечения объектов в виде файлов или строк, а также генерации ссылок для скачивания. Этот модуль зависит от boto3 и botocore.

Псевдонимы: s3

Требования

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

  • boto
  • boto3
  • botocore
  • python >= 2.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
aws_access_key
Идентификатор ключа доступа AWS. Если не задан, используется значение переменной среды AWS_ACCESS_KEY.

Псевдонимы: ec2_access_key, access_key
aws_secret_key
Секретный ключ AWS. Если не задан, используется значение переменной среды AWS_SECRET_KEY.

Псевдонимы: ec2_secret_key, secret_key
bucket
обязательно
Имя корзины.
dest
(добавлено в 1.3)
Путь к файлу назначения при скачивании объекта/ключа с помощью операции GET.
ec2_url
URL для подключения к EC2 или облаку Eucalyptus (по умолчанию модуль будет использовать адреса EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной среды EC2_URL, если она существует.
encrypt
(добавлено в 2.0)
По умолчанию:
"да"
При установке в режиме PUT запрашивает шифрование на стороне сервера.
expiration По умолчанию:
600
Срок действия (в секундах) URL-адреса, сгенерированного и возвращенного S3/Walrus при выполнении операции mode=put или mode=geturl.
headers
(добавлено в 2.0)
Пользовательские заголовки для операции PUT в виде словаря 'ключ=значение' и 'ключ=значение,ключ=значение'.
ignore_nonexistent_bucket
(добавлено в 2.3)
Переопределяет начальные запросы к корзине в случае ограничений корзины или политиками IAM. Например, пользователь может иметь разрешение GetObject, но не иметь других разрешений. В этом случае использование параметра mode: get приведет к ошибке без указания ignore_nonexistent_bucket: True.
marker
(добавлено в 2.0)
Указывает ключ, с которого нужно начать при использовании режима списка. Ключи объектов возвращаются в алфавитном порядке, начиная с ключа после маркера в порядке.
max_keys
(добавлено в 2.0)
По умолчанию:
1000
Максимальное количество результатов, возвращаемых в режиме списка. Установите это значение, если вы хотите получить меньше, чем стандартные 1000 ключей.
metadata
(добавлено в 1.6)
Метаданные для операции PUT в виде словаря 'ключ=значение' и 'ключ=значение,ключ=значение'.
mode
обязательно
    Варианты:
  • get
  • put
  • delete
  • create
  • geturl
  • getstr
  • delobj
  • list
Переключает поведение модуля между режимами put (загрузка), get (скачивание), geturl (возврат URL для скачивания, Ansible 1.3+), getstr (скачивание объекта как строки (1.3+)), list (список ключей, Ansible 2.0+), create (корзина), delete (корзина) и delobj (удаление объекта, Ansible 2.0+).
object
Имя ключа объекта внутри корзины. Может использоваться для создания «виртуальных каталогов», см. примеры.
overwrite По умолчанию:
"всегда"
Принудительно переписывает локально на файловой системе или удаленно объект/ключ. Используется с операциями PUT и GET. Логическое значение или одно из [всегда, никогда, другое], true эквивалентно 'всегда', а false - 'никогда', нововведение в 2.0. Когда это значение установлено в 'другое', сравнивается md5 сумма локального файла с 'ETag' объекта/ключа в S3. ETag может или не может быть хэш-суммой MD5 данных объекта. См. заголовок ответа ETag здесь http://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonResponseHeaders.html

Псевдонимы: force
permission
(добавлено в 2.0)
По умолчанию:
"приватный"
Этот параметр позволяет пользователю установить предопределенные разрешения на создаваемый объект/корзину. Разрешения, которые можно установить, — 'private', 'public-read', 'public-read-write', 'authenticated-read' для корзины или 'private', 'public-read', 'public-read-write', 'aws-exec-read', 'authenticated-read', 'bucket-owner-read', 'bucket-owner-full-control' для объекта. Несколько разрешений можно указать в виде списка.
prefix
(добавлено в 2.0)
По умолчанию:
""
Ограничивает ответ ключами, начинающимися с указанного префикса для режима списка
profile
(добавлено в 1.6)
Использует профиль boto. Работает только с boto >= 2.24.0.
region
(добавлено в 1.8)
Регион AWS для создания корзины. Если не задан, проверяются значения переменных среды AWS_REGION и EC2_REGION, а затем параметры aws_region и ec2_region в файле конфигурации Boto. Если ни одно из этих значений не задано, регион по умолчанию — стандартный регион S3: США.

Псевдонимы: aws_region, ec2_region
retries
(добавлено в 2.0)
По умолчанию:
0
Количество попыток повтора при восстановимой ошибке перед фактическим отказом.
rgw
(добавлено в 2.2)
По умолчанию:
"нет"
Включить поддержку Ceph RGW S3. Этот параметр требует явного URL-адреса через s3_url.
s3_url
Конечная точка URL-адреса S3 для использования с Ceph, Eucalypus, fakes3 и т. д. В противном случае предполагается AWS

Псевдонимы: S3_URL
security_token
(добавлено в 1.6)
Токен безопасности AWS STS. Если не задан, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.

Псевдонимы: access_token
src
(добавлено в 1.3)
Путь к исходному файлу при выполнении операции PUT.
validate_certs
bool

(добавлено в 1.5)
    Варианты:
  • нет
  • да ←
Если установлено «нет», сертификаты SSL не будут проверяться для версий boto >= 2.6.0.
version
(добавлено в 2.0)
Идентификатор версии объекта внутри корзины. Может использоваться для получения определенной версии файла, если включена версия в целевой корзине.

Примечания

Примечание

  • В версии 2.4 этот модуль был переименован из s3 в aws_s3.
  • Если параметры не установлены внутри модуля, следующие переменные среды могут использоваться в порядке убывания приоритета 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), если учетные данные не предоставлены. См. http://boto.readthedocs.org/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION обычно используются для указания региона AWS, когда это необходимо, но это также можно настроить в файле конфигурации boto

Примеры

- name: Simple PUT operation
  aws_s3:
    bucket: mybucket
    object: /my/desired/key.txt
    src: /usr/local/myfile.txt
    mode: put

- name: Simple PUT operation in Ceph RGW S3
  aws_s3:
    bucket: mybucket
    object: /my/desired/key.txt
    src: /usr/local/myfile.txt
    mode: put
    rgw: true
    s3_url: "http://localhost:8000"

- name: Simple GET operation
  aws_s3:
    bucket: mybucket
    object: /my/desired/key.txt
    dest: /usr/local/myfile.txt
    mode: get

- name: Get a specific version of an object.
  aws_s3:
    bucket: mybucket
    object: /my/desired/key.txt
    version: 48c9ee5131af7a716edc22df9772aa6f
    dest: /usr/local/myfile.txt
    mode: get

- name: PUT/upload with metadata
  aws_s3:
    bucket: mybucket
    object: /my/desired/key.txt
    src: /usr/local/myfile.txt
    mode: put
    metadata: 'Content-Encoding=gzip,Cache-Control=no-cache'

- name: PUT/upload with custom headers
  aws_s3:
    bucket: mybucket
    object: /my/desired/key.txt
    src: /usr/local/myfile.txt
    mode: put
    headers: 'x-amz-grant-full-control=emailAddress=owner@example.com'

- name: List keys simple
  aws_s3:
    bucket: mybucket
    mode: list

- name: List keys all options
  aws_s3:
    bucket: mybucket
    mode: list
    prefix: /my/desired/
    marker: /my/desired/0023.txt
    max_keys: 472

- name: Create an empty bucket
  aws_s3:
    bucket: mybucket
    mode: create
    permission: public-read

- name: Create a bucket with key as directory, in the EU region
  aws_s3:
    bucket: mybucket
    object: /my/directory/path
    mode: create
    region: eu-west-1

- name: Delete a bucket and all contents
  aws_s3:
    bucket: mybucket
    mode: delete

- name: GET an object but don't download if the file checksums match. New in 2.0
  aws_s3:
    bucket: mybucket
    object: /my/desired/key.txt
    dest: /usr/local/myfile.txt
    mode: get
    overwrite: different

- name: Delete an object from a bucket
  aws_s3:
    bucket: mybucket
    object: /my/desired/key.txt
    mode: delobj

Возвращаемые значения

Общие возвращаемые значения задокументированы здесь, ниже приведены поля, уникальные для этого модуля:

Ключ Возвращаемое значение Описание
contents
строка
(для операции getstr)
содержимое объекта в виде строки

Пример:
Привет, мир!
expiry
целое число
(для операции geturl)
количество секунд, в течение которого действителен предварительно подписанный URL

Пример:
600
msg
строка
всегда
сообщение, указывающее статус операции

Пример:
Операция PUT завершена
s3_keys
список
(для операции list)
список ключей объектов

Пример:
['prefix1/', 'prefix1/key1', 'prefix1/key2']
url
строка
(для операций put и geturl)
URL объекта

Пример:
https://my-bucket.s3.amazonaws.com/my-key.txt?AWSAccessKeyId=<access-key>&Expires=1506888865&Signature=<signature>


Статус

Этот модуль помечен как stableinterface, что означает, что разработчики этого модуля гарантируют, что не будет внесено обратной совместимости с интерфейсом изменений.

Техническое обслуживание

Этот модуль помечен как core, что означает, что он поддерживается Командой Ansible Core. Более подробную информацию см. в разделе Техническое обслуживание и поддержка модулей.

Список других модулей, поддерживаемых Командой Ansible Core, см. здесь.

Поддержка

Дополнительную информацию о поддержке этого модуля компанией Red Hat см. в этой статье базы знаний

Автор

  • Lester Wade (@lwade)
  • Sloane Hertel (@s-hertel)

Подсказка

Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/aws_s3_module.html

Spec-Zone.ru

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