- tocdepth
2
Концепции
В описании сервиса Object Storage используются следующие основные понятия:
- Тенант
Логическая сущность для организации хранения бакетов.
- Бакет
Логическая сущность для организации хранения объектов. Допускается хранение объектов, имеющих различные классы хранения данных.
Примечание
Если при загрузке данных в бакет указать нужный класс хранения из числа доступных, то объект будет сохранен с указанным классом хранения.
- Блокировка
Object Lock — это механизм блокировки, запрещающий удаление и редактирование версии объекта в версионируемом бакете.
Object Lock поддерживает два способа управления блокировками:
Retention period — временная блокировка объекта.
Legal hold — бессрочная блокировка.
Виды временных блокировок
Retention period
:Временная управляемая блокировка (governance-mode retention) — устанавливается до определенной даты и времени. Блокировка может быть снята или сокращена с помощью заголовка
X-Amz-Bypass-Governance-Retention
. Он также позволяет перезаписать или удалить версию объекта.Временная строгая блокировка (compliance-mode retention) — устанавливается до определенной даты и времени. Может быть только продлена. Версии объектов не могут быть удалены с помощью заголовка
X-Amz-Bypass-Governance-Retention
.
Временные и бессрочная блокировка управляются независимо друг от друга. На версию объекта одновременно могут быть установлены одна временная и одна бессрочная блокировка. Поскольку единственным возможным значением для поля
ObjectLockEnabled
являетсяEnabled
, то отключить поддержку блокировок в бакете нельзя. Пока блокировка активна, отключить версионирование бакета нельзя. В таком случае, нужно создать новый бакет с отключенной блокировкой.Роли пользователей при работе с
Object Lock
:- Роль
s3e.viewer
позволяет: Просматривать настройки блокировок с помощью методов GetObjectLockConfiguration, GetObjectLegalHold, GetObjectRetention.
Просматривать заголовки
X-Amz-Object-Lock-Mode
,X-Amz-Object-Lock-Retain-Until-Date
,X-Amz-Object-Lock-Legal-Hold
при вызове методов GetObject и HeadObject.
- Роль
- Роль
s3e.editor
позволяет: Просматривать настройки блокировок с помощью методов GetObjectLockConfiguration, GetObjectLegalHold, GetObjectRetention.
Устанавливать настройки блокировок при загрузке объектов с помощью заголовков
X-Amz-Object-Lock-Mode
,X-Amz-Object-Lock-Retain-Until-Date
,X-Amz-Object-Lock-Legal-Hold
при вызове методов PutObject, CopyObject и CreateMultiPartUpload.
- Роль
- Роль
s3e.admin
позволяет: То же, что и роли выше.
Устанавливать настройки блокировок с помощью методов PutObjectLockConfiguration, PutObjectLegalHold, PutObjectRetentio.
- Роль
Подробнее о ролевой модели — в статье «Роли»
- Объект
Файл с данными в произвольном формате, является основной единицей хранения. Объекты размещаются в бакетах.
- Тегирование объекта
Присвоение пары ключ-значение для логической маркировки объекта.
- Версионирование бакета
Средство хранения нескольких копий объекта в бакете. Каждая версия является полной копией объекта и занимает соответствующий объем в Object Storage.
- Жизненный цикл объекта в бакете
Правило автоматического удаления объектов и изменения их класса хранения.
- Ключ
Идентификатор объекта в бакете. Ключи можно записать как путь в файловой системе. Ключ состоит из символов формата UTF-8, занимает меньше 1024 байт и не содержит символов : * ? » < > | !.
- Папка
В структуре хранилища нет папок, но графические файловые менеджеры имитируют папки. В роли папки выступает объект с нулевым размером, ключ которого входит в ключи других объектов как префикс.
- Метаданные
С объектом хранятся метаданные в виде пар «имя-значение». Метаданные могут быть системными и пользовательскими.
- Составная загрузка (multipart)
Способ загрузки больших объектов частями.
- Класс хранения
Object Storage имеет четыре класса хранения объектов: стандартный, холодный, ледяной и однозонный.
Стандартный класс подходит для хранения данных, к которым нужен частый доступ.
Более холодные классы предназначены для хранения объектов с низкой частотой обращения к ним. Чем холоднее выбранный класс хранения, тем дешевле хранение данных и дороже их чтение и запись.
Стандартный, холодный и ледяной классы хранения подразумевают репликацию хранимых данных во всех дата-центрах, доступных в инфраструктуре Cloud.ru.
Однозонный класс хранения подходит для данных, к которым нужен частый доступ, как при стандартном классе хранения, но при этом не предъявляются требования к столь же высокому уровню их сохранности и доступности. Снижение требований к уровню сохранности и доступности данных обеспечивается за счет отсутствия репликации между несколькими дата-центрами. Хранение данных с однозонным классом дешевле, чем со стандартным.
Класс хранения данных назначается при создании бакета в личном кабинете пользователя. При загрузке данных через API класс хранения данных можно задать в заголовке
X-Amz-Storage-Class
методов CreateMultipartUpload, PutObject и CopyObject.
- Класс хранения по умолчанию
Специальный параметр, который может быть назначен при создании бакета в личном кабинете. Позволяет не указывать класс хранения при загрузке каждого объекта, если этого не требуется. Позже класс хранения по умолчанию можно изменить в настройках бакета.
Примечание
При создании бакета с использованием Object Storage API всегда создается бакет со стандартным классом хранения.
- Идентификаторы классов хранения
При загрузке данных через API с использованием методов CreateMultipartUpload, PutObject и CopyObject для указания классов хранения используются следующие идентификаторы:
Стандартный класс хранения —
STANDARD
.Холодный класс хранения —
COLD
.Ледяной класс хранения —
ICE
.Однозонный класс хранения —
SINGLE
.
- Хостинг статического сайта
Object Storage можно использовать для размещения статического веб-сайта в облаке Evolution.
Статический сайт состоит из отдельных веб-страниц, содержащих статическое содержимое, без каких-либо скриптов, требующих запуска на стороне веб-сервера. Статический сайт может содержать клиентскую часть — сценарии, которые основываются на технологиях, таких как HTML, CSS и JavaScript.
В Object Storage можно настроить бакет:
Для хостинга статического сайта — загрузить в бакет содержимое статического сайта и указать его главную страницу.
Для переадресации всех запросов — указать хост, на который будут перенаправляться все запросы, а также задать протокол для передачи запросов.
Для условной переадресации запросов — перенаправить запросы в соответствии с префиксами имен объектов или HTTP-кодами ответов. Например, запросы к удаленному объекту или возвращающие ошибку можно перенаправить на другие веб-страницы.
Для настройки хостинга через Object Storage API доступны методы Static Website Hosting (DeleteBucketWebsite, GetBucketWebsite, PutBucketWebsite).
Примечание
Для работы хостинга статического сайта необходим публичный доступ к бакету. Иначе при обращении к сайту Object Storage вернет пользователю ответ с кодом 403.
- Аудит-логирование
Сбор логов и просмотр истории событий, а также экспорт журналов логов во внешнюю клиентскую систему SIEM (разработка находится на стадии Preview).
для Dev & Test