Описание продукта S3
S3 (объектное хранилище) — сервис Servercore для хранения и раздачи неограниченного объема неструктурированных и полуструктурированных данных. S3 построено на базе программно-определяемой распределенной системы хранения данных.
Условия использования продукта S3 определяются документом Пользовательское соглашение и условия использования.
S3 можно размещать в разных регионах и пулах, подробнее в подразделе S3 инструкции Доступность продуктов в локациях.
Если требуется обязательная аттестация информационной системы, применение только сертифицированных средств защиты или обработка персональных данных первого и второго уровней защищенности, разместите S3 в аттестованном пуле .
В продукте поддерживаются типы и роли пользователей и проекты.
Записи об операциях с S3 сохраняются в аудит-логах.
Решаемые задачи
S3 является универсальным хранилищем, его можно использовать для:
- раздачи статической информации (данных сайтов и приложений), потоковой передачи данных и т. д.;
- хранения резервных копий и архивов. Вы можете настроить резервное копирование сервера по расписанию, чтобы переносить важные данные в S3;
- хранения больших объемов данных для машинного обучения и аналитики;
- размещения статических сайтов.
Принцип работы
Чтобы начать работу с S3, создайте бакет. Создать бакет можно:
- в панели управления;
- с помощью S3 API или Swift API.
В бакет можно загружать объекты. Объекты наследуют настройки бакета.
S3 имеет плоскую адресную структуру — в хранилище нет папок и иерархии, благодаря чему вы можете получать быстрый доступ к объектам по протоколу HTTP.
Каждый объект содержит:
- данные;
- уникальный идентификатор, который используется хеш-функцией для определения местоположения объекта;
- метаданные. Вы можете добавлять свои метаданные, чтобы реализовать собственную систему хранения и обработки данных.
Все данные в S3 реплицируются. Способ репликации зависит от выбранного пула:
- мультизональный пул (ru-6) — реплики данных синхронно распределяются между тремя физически изолированными дата-центрами (ЦОД). Выдерживает полный выход из строя одного дата-центра без потери данных и остановки сервиса;
- однозональный пул (ru-1, ru-3, ru-7, uz-2, kz-1) — реплики данных синхронно распределяются в пределах одного дата-центра между несколькими независимыми физическими серверами в разных стойках. Выдерживает выход из строя отдельных дисков, серверов или стоек внутри одного ЦОД.
Как работать с S3
Работать с S3 можно:
- через S3 API, Swift API и Object Storage API. Для работы через API можно использовать различные инструменты (Rclone, AWS CLI, s3cmd и другие);
- по протоколу FTP. Он использует Swift API для трансляции запросов в S3;
- через панель управления, которая выполняет запросы в S3 через Swift API и Object Storage API. У панели управления есть ограничения на работу с большим количеством объектов и с объектами большого размера;
- с помощью Terraform.
После создания бакета вы можете:
- управлять настройками бакета — типом бакета, типом адресации, кешированием;
- управлять объектами в бакете;
- включать версионирование;
- управлять блокировкой Object Lock в бакетах и на объектах;
- устанавливать лимиты бакета;
- управлять пользовательскими доменами;
- управлять доступом с помощью разрешений пользователей или политики доступа к бакету;
- управлять заголовками CORS и другое.
Зоны ответственности
Servercore обеспечивает
- физическую безопасность и отказоустойчивость инфраструктуры, на которой работает S3;
- масштабируемость хранилища;
- техническую поддержку.
Servercore не несет ответственность
- за настройку бакетов и доступов к ним;
- настройку и работоспособность стороннего ПО для работы с S3, а также интеграций;
- соответствие хранимых данных законодательству.
Стоимость
S3 оплачивается по модели оплаты pay-as-you-go. С баланса каждый час списываются средства за предыдущий час использования ресурсов S3.
Подробнее в инструкции Модели оплаты и цены S3.
Что входит в стоимость
В стоимость S3 входит:
- возможность загрузки неограниченного количества объектов;
- безлимитный входящий трафик и трафик между продуктами Servercore;
- управление S3 с помощью API и Terraform.
Лимиты и ограничения
Servercore устанавливает ограничения сущностей S3 и ограничения на количество запросов API на один бакет.
Ограничивается загрузка объектов большого объема через панель управления.