S3 (Simple Storage Service) — это облачное объектное хранилище, которое стало чуть ли не синонимом надежного и гибкого способа хранения данных. Но что же такое объектное хранилище, и почему S3 так популярно?

Основы S3: Объектное хранилище в простых словах

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

Объектное хранилище — это способ организации данных, где каждый объект (будь то файл или группа файлов) хранится в виде отдельной сущности. У каждого объекта есть уникальный идентификатор, метаданные и сами данные. При этом нет привычной иерархии папок, как в файловых системах. Вместо этого объекты складываются в «бакеты» (buckets), которые можно представить как виртуальные контейнеры для файлов.

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

Ключевые сценарии использования S3

S3 используется во множестве сценариев, начиная от личных проектов до высоконагруженных корпоративных систем:

Хранение и резервное копирование данных

Один из самых распространённых сценариев использования S3 — это хранение резервных копий данных. Будь то файлы, базы данных или журналы доступа, всё это можно выгружать на S3 для долговременного хранения. Это дешевле, чем локальные диски, а надёжность таких облачных провайдеров практически гарантирует, что данные никогда не пропадут.

Статические веб-сайты и ресурсы

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

Хранение мультимедиа-контента

Представьте, что у вас есть стриминговый сервис или видеохостинг. Вы можете хранить огромные архивы видеофайлов на S3 и получать к ним доступ по запросу, отправляя клиентам файлы через Content Delivery Network (CDN), например, CloudFront. Это обеспечивает быстрый и глобальный доступ к контенту.

Big Data и аналитика

S3 отлично подходит для сбора и хранения огромных объёмов данных. Платформы для анализа данных, такие как Amazon Redshift или EMR (Elastic MapReduce), могут интегрироваться с S3 для анализа больших массивов информации. Это особенно актуально в бизнесе, где необходимо обрабатывать терабайты данных для аналитики и отчётов.

Хранение данных IoT

Интернет вещей (IoT) генерирует огромные объемы данных, которые нужно где-то хранить. И это тоже легко делается с помощью S3. Устройства IoT могут выгружать данные прямо в бакеты, где они потом будут анализироваться.

Контроль версий и архивирование

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

Преимущества S3

  • Масштабируемость: Одно из ключевых преимуществ S3 — это автоматическая масштабируемость. Вы можете загружать сколько угодно данных, не беспокоясь о том, что когда-то закончится место. Это делает S3 идеальным решением для компаний, у которых объем данных может варьироваться от сотен гигабайт до нескольких петабайт.
  • Надежность и доступность: S3 хранит данные с 99.999999999% (это 11 девяток) надёжности. Это достигается за счет того, что данные автоматически реплицируются на несколько географически разнесенных дата-центров. В случае сбоя одного центра, доступ к вашим данным будет предоставлен из другого.
  • Гибкость управления: S3 поддерживает гранулированные политики доступа. Вы можете настроить права доступа как для отдельных файлов, так и для целых бакетов. Это важно для тех случаев, когда разные пользователи или приложения должны иметь доступ к определенным файлам или папкам.
  • Безопасность: S3 предлагает высокий уровень безопасности. Вы можете шифровать данные как на уровне передачи (используя HTTPS), так и на уровне хранения (с помощью встроенных средств шифрования). Также есть интеграция с AWS Identity and Access Management (IAM), чтобы контролировать, кто и как может взаимодействовать с твоими данными.
  • Гибкая ценовая модель: S3 использует модель оплаты за фактическое использование, что особенно выгодно для стартапов и небольших проектов. Вы платите только за тот объем данных, который используешь, а также за исходящий трафик. Это позволяет гибко управлять бюджетом и не переплачивать за неиспользуемое пространство.

S3 на примере Selectel: объектное хранилище в отечественных облаках

Когда речь заходит о S3, многие сразу думают о AWS. Однако не стоит забывать, что подобные сервисы активно развиваются и в других облачных платформах, таких как Selectel — один из ведущих российских провайдеров облачных услуг. Важно отметить, что Selectel предлагает свой аналог объекта хранения с поддержкой S3-совместимого API.

Selectel создал объектное хранилище, которое во многом напоминает S3 от Amazon по своим функциям и возможностям, но при этом предлагает локальный сервис, что может быть особенно актуально для компаний, которым важно хранить данные в России. Хранилище в Selectel поддерживает стандартный протокол S3 API, что означает, что многие приложения и системы, разработанные под AWS, могут быть адаптированы к Selectel с минимальными изменениями.

Модель оплаты

Selectel использует гибкую модель оплаты pay-as-you-go, что означает, что вы платите только за фактически использованные ресурсы. Стоимость хранения зависит от класса хранилища (стандартное, холодное или ледяное), а также от объема данных и исходящего трафика. При этом входящий трафик и трафик внутри инфраструктуры Selectel не тарифицируются.

Основные особенности

  • Хранение данных в трёх копиях: данные дублируются на трёх серверах для гарантии безопасности.
  • Автоматическое масштабирование: объём хранилища растет автоматически по мере увеличения данных.
  • Управление доступом через IAM: настройка прав доступа для пользователей и систем.
  • Соответствие стандартам: поддержка 152-ФЗ, ФСТЭК №21, PCI DSS, ISO 27001 и других.
  • Поддержка S3 API: легко интегрируется с любыми сервисами, совместимыми с Amazon S3.
  • Классы хранения: стандартное, холодное и ледяное для различных типов данных и частоты их использования.
  • Подключение CDN: для быстрой загрузки данных пользователями по всему миру.

Создаем свое объектное хранилище

Перед началом работы убедитесь, что на вашем аккаунте достаточно средств. Это нужно для создания контейнера и хранения данных. Попробовать можно со 100 рублей.

Переходим на сайт Selectel и заходим в панель управления. Далее перейдите в раздел «Объектное хранилище» → «Контейнеры».

Придумайте и введите имя контейнера (оно должно быть уникальным в рамках хранилища и соответствовать правилам S3). Нажмите на кнопку «Создать контейнер».

Выберите тип контейнера:

  • Приватный — доступ только по логину/паролю или токену.
  • Публичный — для открытого доступа, например, для веб-контента.

Выберите класс хранения

  • Стандартное хранение — для данных, которые запрашиваются часто.
  • Холодное хранение — для данных, которые запрашиваются редко.

Обратите внимание, что после создания контейнера изменить класс хранения нельзя.

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

В разделе «Контейнеры» можно настроить:

  • Политику доступа (ограничение на доступ к данным).
  • Лимиты на количество объектов или их общий размер.
  • Время хранения объектов.

Получите доступ к данным

  • Публичные объекты можно получить по ссылке через домены.
  • Приватными контейнерами можно управлять и получать доступ через API.

 

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