- tocdepth
2
AWS CLI для S3 VMware
AWS CLI® — это интерфейс командной строки для работы с сервисами AWS.
Для установки AWS CLI® скачайте дистрибутив на сайте разработчика.
До начала работы
Получите реквизиты доступа к Объектному хранилищу (endpoint, access Key, Secret Key). Если у вас нет реквизитов доступа, обратитесь в техническую поддержку.
Настройка
Для настройки AWS CLI® используйте команду aws configure
и заполните значения для следующих параметров:
AWS Access Key ID: идентификатор ключа access Key, который вы получили при создании бакета.
WS Secret Access Key: секретный ключ Secret Key, который вы получили при создании бакета.
Default region name: оставьте незаполненным.
Команда aws configure
сохранит в файле .aws/credentials
пару ключей в формате:
[default]
aws_access_key_id = <id>
aws_secret_access_key = <secretKey>
Примеры команд
Примечание
AWS CLI® работает с Объектным хранилищем как с иерархической файловой системой и ключи объектов будут иметь вид пути к файлу.
При запуске команды
aws
для работы с Объектным хранилищем обязателен параметр--endpoint-url=https://<endpoint>
, так как по умолчанию клиент настроен на работу с серверами Amazon Web Storage. В качестве<endpoint>
указывается адрес хранилища, например:a1.s3.sbercloud.ru
.
// Создать бакет
aws --endpoint-url=https://<endpoint> s3 mb s3://bucket-name
// Загрузить все объекты из локального каталога:
aws --endpoint-url=https://<endpoint> s3 cp --recursive my-files/
s3://bucket-name/path/
// Загрузить объекты, описанные в фильтре --include, и пропустить объекты, описанные в фильтре --exclude:
aws --endpoint-url=https://<endpoint> \
s3 cp --recursive --exclude "*" --include "*.log" \
my-files/ s3://bucket-name/path/
// Загрузить объекты по одному, запуская для каждого объекта команду следующего вида:
aws --endpoint-url=https://<endpoint> \
s3 cp testfile.txt s3://bucket-name/path/textfile.txt
// Получить список объектов
aws --endpoint-url=https://<endpoint> \
s3 ls --recursive s3://bucket-name
// Удалить все объекты с заданным префиксом:
aws --endpoint-url=https://<endpoint> \
s3 rm s3://bucket-name/path/ --recursive
// Удалить объекты, описанные в фильтре --include, и пропустить объекты, описанные в фильтре --exclude:
aws --endpoint-url=https://<endpoint> \
s3 rm s3://bucket-name/path/ --recursive \
--exclude "*" --include "*.log"
// Удалить объекты по одному, запуская для каждого объекта команду следующего вида:
aws --endpoint-url=https://<endpoint> \
s3 rm s3://bucket-name/path/textfile.txt
// Удалить бакет и все объекты в нем:
aws s3 --endpoint-url=https://<endpoint> rb s3://bucket-name --force
// Получить объект
aws --endpoint-url=https://<endpoint> \
s3 cp s3://bucket-name/textfile.txt textfile.txt
С полным списком команд для AWS CLI® вы можете ознакомиться на сайте разработчика.
Также доступна встроенная справочная система, которую можно вызвать командой aws help
.
Объектное хранилище S3 позволяет настроить автоматическое удаление объектов с помощью политики жизненного цикла. Это помогает автоматизировать рутинные операции по удалению объектов и сэкономить на вызовах API, которые тарифицируются.
для Dev & Test