Давайте дружить в Телеграме: рассказываем про новые фичи, общаемся в комментах, прислушиваемся к вашим идеям Подписаться

Начало работы и управление бакетами

Данные в S3-хранилище хранятся в едином формате: в виде объектов, помещенных в бакеты (контейнеры).

Объекты — это ваши файлы и данные в любом формате. Бакет — это хранилище объектов. Чтобы разместить файл в S3-хранилище, его необходимо поместить в бакет.

Бакеты могут быть приватными или публичными и отличаются способом доступа к ним. Получить доступ к объектам в приватном контейнере может только авторизованный пользователь (администратор).

Пользователь хранилища — один, и ему доступны все его бакеты с полными правами. Access Key и Secret Access Key для разных бакетов в рамках одного аккаунта совпадают. На текущий момент нет возможности настроить какие-либо ограничения видимости бакетов (например, отображать в Cyberduck только конкретный из них).

В настоящий момент мы поддерживаем два кластера S3, которые немного отличаются доступными возможностями и методами. Если какой-то функционал, описанный в документации, недоступен для вашего аккаунта, но необходим вам для работы — мы можем перевести ваш аккаунт на другой кластер, по запросу в поддержку.

Лимиты хранилища

Существует только одно ограничение — на объем занятого места. Этот объем определяется выбранным тарифом для каждого бакета. 

Никакие иные параметры (количество бакетов, объем трафика, количество запросов и др.) не ограничиваются и не тарифицируются. Вы оплачиваете только ежемесячную фиксированную стоимость каждого бакета согласно выбранному тарифу.

Создание бакета

Чтобы создать бакет, нажмите «Создать» или «Добавить» в разделе «Хранилище S3». Укажите необходимые параметры.

Cf9be064 08bb 4b3f Baf1 A194df1cd220

1. Имя бакета можно оставить по умолчанию или указать свое. Для работы по протоколу S3 имя бакета должно соответствовать правилам, заданным Amazon.

2. Выберите нужный тариф и размер хранилища.

3. Выберите тип бакета. Тип можно будет изменить в дальнейшем.

  • Приватный
    Доступ к такому бакету и размещенным в нем объектам будет иметь только администратор. Выбирайте этот тип бакета для хранения данных, доступ к которым важно ограничить.
  • Публичный
    Для доступа к данным в публичном бакете не требуется авторизация. Этот тип подойдет для хранения данных, которые могут быть доступны широкому кругу лиц.

4. Выберите нужный проект.

5. Нажмите «Создать».

Бакет будет создан мгновенно и отобразится в панели управления.

Теперь вы можете загрузить файлы в бакет — с помощью Cyberduckобъектного менеджера или другого способа подключения.

Подключение к бакету и работа с файлами

Оба кластера нашего хранилища S3 поддерживают доступ через Amazon S3 API и Swift API. При этом, для одного из кластеров реквизиты подключения для S3 и Swift совпадают. Для другого кластера реквизиты разделены, и в этом случае в настройках бакета в панели будут отдельно отображены «Параметры Swift».

Подключение к хранилищу и управление файлами (загрузка, удаление, изменение) может быть реализовано разными способами:

  • Вы можете использовать клиент API S3. Это может быть файловый менеджер Cyberduck или любой другой инструмент с поддержкой протокола S3, например, S3cmdRcloneAWS CLI, S3 Browser и многие другие.
  • Подключение к хранилищу может быть реализовано в коде вашего приложения, с помощью библиотек языка программирования для протокола S3. Примеры можно найти здесь.
  • Загружать файлы в бакет можно с помощью объектного менеджера в панели управления.
  • Можно подключаться к бакету с помощью ISPmanager для автоматической загрузки бэкапов.
  • Можно настроить выгрузку в хранилище бэкапов через Bitrix Backup — для этого необходима версия AWS Signature v2, доступная в кластере s3.timeweb.cloud. По запросу мы можем перевести ваш аккаунт на нужный кластер.

Один из наших кластеров хранилища (эндпойнт s3.timeweb.com) поддерживает только AWS Signature v4, второй (эндпойнт s3.timeweb.cloud) — версии v2 и v4. Клиент S3 может использовать другую версию Signature, поэтому возможны ошибки подключения. Например, в клиенте S3 Browser можно выставить в настройках использование AWS Signature v4 вместо v2.

Реквизиты подключения доступны в блоке «Параметры S3» в настройках бакета. 

8f5ca1db 49f9 4815 A1fa E788f2fcb389

В зависимости от кластера, URL может быть s3.timeweb.com или s3.timeweb.cloud. Проверить корректные ссылки всегда можно в вашей панели в настройках бакета.

Для доступа к файлам используются пути вида:

https://s3.timeweb.com/имя_бакета/имя_файла
https://s3.timeweb.cloud/имя_бакета/имя_файла

Либо, если файл размещен внутри директории в бакете:

https://s3.timeweb.com/имя_бакета/имя_директории/имя_файла
https://s3.timeweb.cloud/имя_бакета/имя_директории/имя_файла

К файлам в публичных бакетах также можно обращаться, используя модель адресации Virtual-hosted style, в этом случае название бакета входит в имя хоста:

https://имя_бакета.s3.timeweb.com/имя_файла
https://имя_бакета.s3.timeweb.com/имя_директории/имя_файла

https://имя_бакета.s3.timeweb.cloud/имя_файла
https://имя_бакета.s3.timeweb.cloud/имя_директории/имя_файла

Вы также можете обращаться к бакету по своему домену, привязав его.

Получить доступ к файлам в публичном бакете можно через браузер или другой HTTP-клиент, обратившись непосредственно по такой ссылке.

Доступ к файлам в приватном бакете также может быть организован через HTTP, но дополнительно потребуется подпись для аутентификации, которая добавляется к запросу в виде HTTP-заголовков. Подробнее см. Описание принципов работы с S3.

Скорость загрузки файлов в бакет или из бакета составляет 1 Гбит/сек.

Объектный менеджер

Вы можете управлять файлами в бакете прямо в браузере, используя объектный менеджер в панели управления — он доступен на странице бакета на вкладке «Объекты».

9d8f8df3 7f24 43f9 A8ad 2de9f6d4eae7

С помощью объектного менеджера вы можете загружать файлы в бакет, удалять их, переименовывать, а также создавать директории.

При загрузках больших объектов будет использоваться составная загрузка (multipart upload), которая снижает вероятность того, что процесс загрузки прервется до его завершения. При этом в бакете будет создан объект (манифест), который содержит ссылки на все загруженные сегменты.

В одном из кластеров хранилища S3 сегменты хранятся в отдельном пространстве и доступны на вкладке «Составные загрузки». В другом — на вкладке «Объекты»; вкладки «Составные загрузки» в панели управления при этом не будет.

91c73a64 5e04 459b A394 E752e999976e

Привязка домена

Чтобы не указывать имя бакета при обращении к файлам, вы можете привязать к бакету домен.

В этом случае для обращения к файлам вместо путей:

https://s3.timeweb.com/имя_бакета/имя_файла
https://s3.timeweb.com/имя_бакета/имя_директории/имя_файла

https://s3.timeweb.cloud/имя_бакета/имя_файла
https://s3.timeweb.cloud/имя_бакета/имя_директории/имя_файла

вы сможете использовать пути:

https://ваш.домен.tld/имя_файла
https://ваш.домен.tld/имя_директории/имя_файла

Обратите внимание, что при прямом обращении по домену (https://ваш.домен.tld/) не будет отображаться листинг файлов или какая-либо другая индексная страница. Привязка домена подразумевает, что в URL будет указан путь к конкретному файлу. 

Для привязки необходимо использовать домен третьего или более уровня, например, timeweb.mydomain.com.

Если для домена включено проксирование через Cloudflare, отключите его перед привязкой домена. Подождите 5-10 минут, чтобы изменения вступили в силу, привяжите домен по инструкции ниже, после чего проксирование можно снова подключить.

Порядок действий:

  1. В настройках бакета на вкладке «Домены» кликните «Привязать домен».
  2. Скопируйте значение CNAME-записи — это может быть s3.timeweb.com либо s3.timeweb.cloud, в зависимости от кластера хранилища.
  3. Укажите для домена эту CNAME-запись на стороне держателя NS-серверов (проверить его можно здесь). Если домен размещен на NS-серверах Timeweb Cloud, настройка выполняется по нашей инструкции.

21e4c097 5c41 43f8 Bd64 5c30b9f885ff

  1. Подождите 15-20 минут, чтобы изменения вступили в силу.
  2. Кликните «Привязать домен».

Ef681e80 1ff3 4bc9 86c7 0492b24e466e

Если оставить отмеченной галку «Выпустить SSL-сертификат», мы автоматически сгенерируем и установим на указанный домен бесплатный SSL Let's Encrypt и будем автоматически его продлевать за неделю до истечения.

Перенос данных от других провайдеров

Перенос данных из сторонних S3-совместимых хранилищ можно выполнить автоматически. Для этого в бакете, в который нужно перенести объекты, перейдите на вкладку «Перенос данных» и введите реквизиты от стороннего хранилища. Нажмите «Начать перенос».

Данные будут скопированы в ваш бакет в Timeweb Cloud.

A4ecfa97 2cd2 4894 8cbf Ddfd2d09145d

Смена тарифа

Вы можете увеличить тариф бакета, если вам потребуется больше пространства для хранения данных. Изменить тариф в меньшую сторону невозможно.

Для смены тарифа кликните на нужный бакет в панели управления, чтобы открыть настройки, и нажмите «Изменить размер хранилища».

26ce3e68 5bb2 4923 839a 9e1e3dbe9ff4

Выберите новый тариф и сохраните изменения. 

Объем пространства увеличится сразу же.

Скачивание бакетов

Любой контейнер со всем содержимым можно скачать с помощью Cyberduck.

Контейнер и все файлы в нем будут загружены на ваше устройство в виде директории.

История действий

Вы можете просмотреть, какие действия выполнялись с бакетом, на вкладке «История».

54ecc2e1 469f 465d A447 22eed36724d5

Логируются следующие события:

  • Создание бакета
  • Изменение конфигурации
  • Привязка домена
  • Выпуск SSL-сертификата на домен
  • Перенос данных
  • Удаление бакета

Удаление бакета

Будет удален бакет и все файлы в нем. 

Для удаления кликните на три точки на вкладке Бакеты:

8ab811ba 4d47 4553 894f 5989b3ecaa45

Либо на значок удаления в настройках бакета:

B53721d5 5fe3 4f1a A7d7 4fc3dc0e2329

Во всплывающем окне введите имя бакета или код подтверждения, в зависимости от ваших настроек.

Была ли статья полезна?

15 лет опыта
Сосредоточьтесь на своей работе: об остальном позаботимся мы
165 000 клиентов
Нам доверяют частные лица и компании, от небольших фирм до корпораций
Поддержка 24/7
100+ специалистов поддержки, готовых помочь в чате, тикете и по телефону