Подключение к Объектному хранилищу S3 через сторонние интерфейсы
Подключение к Объектному хранилищу S3 через сторонние сервисы упрощает управление данными, автоматизацию, резервное копирование и публикацию контента. Такие инструменты, как AWS CLI, S3cmd и S3 Browser, позволяют загружать файлы, управлять бакетами и настраивать доступ к ним.
Подключение через S3 API
Чтобы подключиться к Объектному хранилищу S3 через S3 API:
- Выберите проект, в котором подключено Объектное хранилище S3.
- Создайте сервисный аккаунт с нужной ролью.
- В сервисном аккаунте на вкладке Статические ключи для Объектного хранилища S3 AZ0 или Статические ключи Объектного хранилища S3 AZ1 (в зависимости от того, какое хранилище используется) нажмите на кнопку + Создать.
- Введите Описание * ключа.
- Нажмите на кнопку Создать.
- Отобразятся Access key и Secret key. Сохраните их и нажмите на кнопку Закрыть.
Добавьте правила доступа к нужным бакетам для созданного сервисного аккаунта.
Адрес Endpoint
При обращении к Объектному хранилищу S3 через сторонние сервисы используются следующие адреса Endpoint:
Адрес Endpoint | |
---|---|
Объектное хранилище S3 AZ0 | https://api.s3.dp.t1.cloud |
Объектное хранилище S3 AZ1 | https://api.s3.az1.t1.cloud |
Подключение через S3cmd
S3cmd — это интерфейс командной строки для работы с сервисами, поддерживающими HTTP API Amazon S3. Общий порядок вызова команд см. в официальной документации S3cmd.
Установка S3cmd
Для установки S3cmd воспользуйтесь инструкцией в репозитории проекта.
Настройка S3cmd
Для настройки S3cmd используйте команду:
Команда запросит значения параметров и сохранит их в файле ~/.s3cfg:
- Access Key — значение Access key, полученное при подключении к Объектному хранилищу S3 через S3 API;
- Secret Key — значение Secret key, полученное при подключении к Объектному хранилищу S3 через S3 API;
- Default Region — зона доступности, в которой расположено Объектное хранилище S3. Укажите dc1 для зоны AZ0 или dc3 для зоны AZ1;
- S3 Endpoint — адрес Endpoint без https://. Например, api.s3.az1.t1.cloud;
- DNS-style bucket+hostname:port template for accessing a bucket — %(bucket)s.<адрес Endpoint без https://>. Например, %(bucket)s.api.s3.az1.t1.cloud;
- значения остальных параметров оставьте без изменений.
Программа попытается установить соединение с Объектным хранилищем S3 и получить список бакетов. В случае успеха на экране появится сообщение «Success».
Команда s3cmd --configure
сохранит настройки в файле ~/.s3cfg в формате:
При необходимости вы можете изменить значения параметров в файле ~/.s3cfg.
Синтаксис команд S3cmd
После запуска командной строки S3cmd можно выполнить команды:
создание бакета:
где:
<имя бакета> — название создаваемого бакета;
загрузка объекта в бакет:
где:
- <путь к файлу> — локальный путь к файлу. Например, C:\Users\Administrator\Documents\Images;
- <имя файла> — название загружаемого файла с расширением. Например, photo.jpg;
<имя бакета> — название бакета, в который загружается объект.
<путь к объекту> — путь к объекту в бакете. Например, document/images. Если объект загружается в корень бакета, то данный параметр не указывается;
получение списка объектов бакета:
где:
<имя бакета> — название бакета.
скачивание объекта:
где:
<имя бакета> — название бакета.
- <путь к объекту> — путь к объекту в бакете. Например, document/images. Если объект находится в корне бакета, то данный параметр не указывается;
- <объект> — название объекта с расширением. Например, image1.png;
- <путь к файлу> — локальный путь, по которому сохранится объект. Например, C:\Users\Administrator\Documents\Images;
- <имя файла> — новое название для скачиваемого объекта. Например, new_image.png. Объект не сохранится, если по пути, указанному в параметре <путь к файлу>, уже существует файл с названием скачиваемого объекта. Параметр <имя файла> не указывается, если не нужно переименовывать объект;
удаление объекта:
где:
<имя бакета> — название бакета.
- <путь к объекту> — путь к объекту в бакете. Например, document/images. Если объект находится в корне бакета, то данный параметр не указывается;
- <объект> — название объекта с расширением. Например, image1.png. Если параметр <объект> не указан, то удалятся все объекты по пути, указанному в параметре <путь к объекту>.
Полный список команд см. в официальной документации S3cmd.
В этой статье
Мы ответили на ваш вопрос?