AWS CLI для работы с Object Storage
AWS CLI® — это интерфейс командной строки для работы с сервисами AWS. Для установки AWS CLI® скачайте дистрибутив на сайте разработчика.
Перед началом работы
Для доступа Object Storage потребуются:
Tenant ID — идентификатор тенанта. ID тенанта можно скопировать в сервисе Object Storage платформы Evolution.
Key ID (логин) и Key Secret (пароль) — формируются при создании персонального API-ключа или ключа сервисного аккаунта.
Endpoint — 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://s3.cloud.ru --bucket customer-bucket-nameДля включения блокировок Object Lock.
Получить список бакетов:
aws s3api list-buckets --endpoint-url https://s3.cloud.ru --query "Buckets[].Name"Загрузить объект:
aws s3api put-object --endpoint-url https://s3.cloud.ru --bucket customer-bucket-name --key customer-object-key --body /Desktop/customer_object.htmlВ body необходимо указать полный путь до объекта.
ВниманиеПо умолчанию загружаемому объекту присваивается класс STANDARD. Подробнее о классах хранения. Чтобы присвоить объекту класс ICE или COLD, укажите его в параметре --storage-class.
Получить список объектов:
aws s3api list-objects-v2 --endpoint-url https://s3.cloud.ru --bucket customer-bucket-nameСоздание преподписанной ссылки для доступа к объекту с заданным временем жизни, время задается в секундах:
aws s3 presign --endpoint-url https://s3.cloud.ru s3://customer-bucket-name/customer-object-key --expires-in 604800
Чтобы посмотреть и проанализировать проблемы, добавьте к команде параметр --debug.
Подробнее с информацией о команде можно ознакомиться на сайте разработчика.
С полным списком команд для AWS CLI® можно ознакомиться на сайте разработчика. Также доступна встроенная справочная система, которую можно вызвать командой aws help.