AWS CLI® — это интерфейс командной строки для работы с сервисами AWS. Для установки AWS CLI® скачайте дистрибутив на сайте разработчика.
Перед началом работы
Для доступа к Object Storage подготовьте:
Tenant ID — идентификатор тенанта. Его можно скопировать на странице с бакетами.
Key ID (логин) и Key Secret (пароль) — формируются при создании персонального API-ключа или ключа сервисного аккаунта.
Endpoint — https://s3.cloud.ru.
Настройка
Введите команду aws configure.
Для параметра aws_access_key_id введите <tenant_id>:<key_id>.
Для параметра aws_secret_access_key введите <key_secret>.
Для параметра Default region name введите регион ru-central-1.
Команда aws configure сохранит пару ключей в файле .aws/credentials в формате:
[default]aws_access_key_id = <tenant_id>:<key_id>aws_secret_access_key = <key_secret>
Примеры команд
AWS CLI® работает с Object Storage как с иерархической файловой системой. Ключи объектов имеют вид пути к файлу.
При запуске команды aws для работы с Object Storage обязателен параметр --endpoint-url=https://<endpoint>, так как по умолчанию клиент настроен на работу с серверами Amazon Web Storage. В качестве <endpoint> указывается адрес хранилища s3.cloud.ru.
Создать бакет:
aws s3api create-bucket --endpoint-url https://<endpoint> --bucket <bucket_name>Где:
<endpoint> — адрес хранилища.
<bucket_name> — название бакета.
Для включения блокировок используйте метод Object Lock.
Получить список бакетов:
aws s3api list-buckets --endpoint-url https://<endpoint> --query "Buckets[].Name"Где <endpoint> — адрес хранилища.
Загрузить объект:
aws s3api put-object --endpoint-url https://<endpoint> --bucket <bucket_name> --key <object_key> --body </path/to/object.ext>Где:
<endpoint> — адрес хранилища.
<bucket_name> — название бакета.
<object_key> — ключ объекта.
</path/to/object.extention> — полный путь до объекта.
ВниманиеПо умолчанию загружаемому объекту присваивается класс STANDARD. Подробнее о классах хранения. Чтобы присвоить объекту класс ICE или COLD, укажите его в параметре --storage-class.
Получить список объектов:
aws s3api list-objects-v2 --endpoint-url https://<endpoint> --bucket <bucket_name>Где:
<endpoint> — адрес хранилища.
<bucket_name> — название бакета.
Создание преподписанной ссылки для доступа к объекту с заданным временем жизни:
aws s3 presign --endpoint-url https://<endpoint> s3://<bucket_name>/<object_key> --expires-in <time>Где:
<endpoint> — адрес хранилища.
<bucket_name> — название бакета.
<object_key> — ключ объекта.
<time> — время жизни ссылки в секундах.
Чтобы посмотреть и проанализировать проблемы, добавьте к команде параметр --debug.
Подробнее с информацией о команде можно ознакомиться на сайте разработчика.
С полным списком команд для AWS CLI® можно ознакомиться на сайте разработчика. Также доступна встроенная справочная система, которую можно вызвать командой aws help.
- Перед началом работы
- Настройка
- Примеры команд