Бакет
Логическая сущность, которая помогает организовать хранение объектов.
Именование бакетов
Название бакета используется как часть URL для доступа к данным и его будут видеть ваши пользователи. Например, https://storage.yandexcloud.net/bucket-name
.
Правила именования:
-
Имена бакетов уникальны для всего Object Storage, т.е. нельзя создать два бакета с одинаковыми именами даже в разных каталогах разных облаков. Помните об этом, если планируете создавать бакеты автоматически через API.
-
На имя бакета накладываются следующие ограничения:
- Длина имени должна быть от 3 до 63 символов.
- Имя может содержать строчные буквы латинского алфавита, цифры, дефисы и точки.
- Первый и последний символы должны быть буквами или цифрами.
- Символы справа и слева от точки должны быть буквами или цифрами.
- Имя не должно иметь вид IP-адреса (например 10.1.3.9).
При выборе имени бакета помните, что имена с точками используются при хостинге статических сайтов. Возможен конфликт имен, который не позволит вам или другому пользователю разместить свой сайт в Object Storage.
URL бакета
Для обращения к бакету вы можете использовать следующие формы URL:
https://storage.yandexcloud.net/<bucket>?<parameters>
http://<bucket>.storage.yandexcloud.net?<parameters>
Примечание
Если вы используете SDK для .NET, обращайтесь к хосту s3.yandexcloud.net
.
Обращение к бакету по HTTPS
Object Storage поддерживает безопасное подключение по протоколу HTTPS. При обращении к бакетам используйте URL вида https://storage.yandexcloud.net/<bucket>?<parameters>
.
При использовании URL вида http://<bucket>.storage.yandexcloud.net?<parameters>
протокол HTTPS не доступен.
О поддержке HTTPS при хостинге сайтов в Object Storage, читайте в разделе Хостинг статических сайтов.
Настройки бакетов
Вы можете:
-
Ограничить максимальный размер бакета.
Object Storage не позволит загрузить объект, если при его добавлении размер бакета превысит максимальное значение.
-
Установить класс хранилища по умолчанию.
Объекты, загружаемые в бакет, по умолчанию сохраняются с классом хранилища, установленным для этого бакета.
-
Настроить бакет для хостинга статических веб-сайтов.
-
Загрузить конфигурацию CORS для бакета.
-
Включить шифрование бакета.
Объекты, добавляемые в этот бакет, будут по умолчанию шифроваться указанным ключом KMS.
-
Настроить жизненные циклы объектов.
Доступ к бакетам
По умолчанию бакеты создаются с ограниченным доступом, который определяется настройками в IAM. С помощью консоли управления вы можете открыть публичный доступ:
- На чтение объектов в бакете.
- К списку объектов в бакете.
- На чтение настроек:
Публичный доступ к каждой операции выдается отдельно. То есть, если вы открыли доступ только на чтение объектов, то операции получения списка объектов и настроек бакета недоступны анонимному пользователю.
При необходимости, вы можете выполнить настройку разрешений для бакетов и находящихся в них объектов с помощью ACL.
Особенности использования
-
Бакет нельзя переименовать.
-
Производительность Object Storage не зависит от количества бакетов. Вы можете хранить все свои данные в одном бакете или в нескольких.
-
Бакеты не могут быть вложенными.
-
Удалить можно только пустой бакет.
-
После удаления бакета может пройти некоторое время прежде, чем вы сможете создать новый бакет с этим же именем. Также есть риск, что другой пользователь Yandex.Cloud создаст бакет с освободившимся именем до того, как вы успеете его занять снова. Не удаляйте бакеты без веской причины.
-
При быстрой последовательной загрузке объектов возможно превышение максимального заданного объема бакета.
-
После удаления объектов из бакета, удаленный объем еще некоторое время считается занятым.
Примечание
Если вы ограничили максимальный объем бакета, то бакет может некоторое время оставаться недоступным для записи, даже если вы освободили достаточно места для новых объектов.