Открыть сервис

Amazon Elastic Block Store

Amazon Elastic Block Store (Amazon EBS) — это облачная служба блочного хранения данных, предоставляемая компанией Amazon Web Services (AWS). EBS предназначена для использования совместно с экземплярами Amazon EC2 (Elastic Compute Cloud) и обеспечивает постоянное, высокопроизводительное хранение данных на уровне блоков, которое может быть подключено к виртуальным серверам. В отличие от временного хранилища экземпляра, данные на томах EBS сохраняются независимо от жизненного цикла экземпляра EC2, что позволяет создавать отказоустойчивые и масштабируемые приложения.

История и развитие

Служба Amazon EBS была запущена компанией Amazon Web Services в августе 2008 года. Первоначально она предоставляла базовые возможности блочного хранения с фиксированной производительностью. Основной целью было устранение ограничений временного хранилища экземпляров EC2, которое теряло данные при остановке или завершении работы виртуальной машины.

В последующие годы служба значительно эволюционировала. В 2012 году были представлены тома с обеспеченными IOPS (Provisioned IOPS), что позволило гарантировать предсказуемую производительность для критически важных приложений, таких как базы данных. В 2014 году появились тома общего назначения (General Purpose SSD, gp2), которые стали стандартом для большинства рабочих нагрузок. В 2016 году был анонсирован Elastic Volumes, позволяющий изменять размер, тип и производительность тома без отключения от экземпляра EC2. В 2018 году были представлены тома io2 с более высокой долговечностью и производительностью, а в 2021 году — тома gp3, которые отделили производительность от емкости, предоставив пользователям возможность платить только за необходимые ресурсы ввода-вывода.

Архитектура и принципы работы

Amazon EBS работает на уровне блоков, что означает, что данные хранятся в виде фиксированных блоков фиксированного размера (обычно 512 байт или 4 КБ). Тома EBS представляют собой виртуальные диски, которые подключаются к экземплярам EC2 через сеть AWS. Каждый том существует в одной зоне доступности (Availability Zone) и автоматически реплицируется в пределах этой зоны для обеспечения отказоустойчивости.

Том EBS может быть подключен только к одному экземпляру EC2 в один момент времени (за исключением некоторых типов томов, поддерживающих многоадресное подключение). После подключения том отображается в операционной системе как обычное блочное устройство (например, /dev/xvda в Linux или D: в Windows), которое можно форматировать, монтировать и использовать для хранения файлов, баз данных или приложений.

Типы томов Amazon EBS

Amazon EBS предлагает несколько типов томов, оптимизированных для различных сценариев использования. Типы делятся на две основные категории: твердотельные накопители (SSD) и жесткие диски (HDD).

Твердотельные накопители (SSD)

Тома на базе SSD обеспечивают высокую производительность для транзакционных рабочих нагрузок с частыми операциями чтения и записи.

  • General Purpose SSD (gp3) — современный стандарт для большинства рабочих нагрузок. Обеспечивает базовую производительность в 3000 IOPS и 125 МБ/с пропускной способности на том независимо от его размера. Производительность может быть увеличена за дополнительную плату. Максимальная производительность — 16 000 IOPS и 1000 МБ/с.
  • General Purpose SSD (gp2) — более старая версия томов общего назначения, где производительность привязана к размеру тома. Чем больше том, тем выше базовая производительность (до 16 000 IOPS). Используется в основном для устаревших систем.
  • Provisioned IOPS SSD (io2 Block Express) — предназначен для критически важных приложений с высокими требованиями к производительности и долговечности. Обеспечивает до 256 000 IOPS и 4000 МБ/с пропускной способности. Долговечность составляет 99,999% (потери одного тома из 100 000 в год).
  • Provisioned IOPS SSD (io1) — более старая версия томов io2, с меньшей долговечностью (99,9%) и производительностью (до 64 000 IOPS).

Жесткие диски (HDD)

Тома на базе HDD оптимизированы для рабочих нагрузок с большими последовательными операциями, такими как обработка логов, потоковая передача данных и аналитика.

  • Throughput Optimized HDD (st1) — предназначен для часто используемых данных с высокими требованиями к пропускной способности. Максимальная производительность — 500 IOPS и 500 МБ/с пропускной способности.
  • Cold HDD (sc1) — самый дешевый тип томов, предназначенный для редко используемых данных. Максимальная производительность — 250 IOPS и 250 МБ/с пропускной способности. Подходит для архивного хранения и резервного копирования.

Производительность и характеристики

Производительность томов EBS измеряется в двух основных показателях: IOPS (операции ввода-вывода в секунду) и пропускная способность (скорость передачи данных в МБ/с). Каждый тип тома имеет свои ограничения, которые зависят от выбранной конфигурации.

Важной характеристикой является долговечность (durability). Amazon EBS гарантирует годовую частоту отказов (AFR) для различных типов томов:

  • gp2/gp3: 99,8–99,9% (потеря 0,1–0,2% томов в год)
  • io1: 99,9%
  • io2: 99,999%
  • st1/sc1: 99,8–99,9%

Доступность (availability) для томов EBS составляет 99,95% в месяц.

Управление томами

Пользователи могут управлять томами EBS через консоль AWS, интерфейс командной строки (AWS CLI) или программно через API. Основные операции включают:

  • Создание тома — задается тип, размер (от 1 ГБ до 16 ТБ для большинства типов) и зона доступности.
  • Подключение к экземпляру EC2 — том монтируется к работающему или остановленному экземпляру.
  • Отключение тома — том отсоединяется от экземпляра, данные сохраняются.
  • Изменение размера и типа — с помощью Elastic Volumes можно динамически изменять параметры тома без потери данных.
  • Создание снимков (snapshots) — моментальные копии тома, хранящиеся в Amazon S3. Снимки могут использоваться для резервного копирования, восстановления и миграции данных между зонами доступности или регионами.
  • Удаление тома — том уничтожается, все данные безвозвратно теряются.

Снимки (Snapshots)

Снимки EBS — это инкрементальные резервные копии томов. Первый снимок содержит полную копию данных, а последующие — только изменения с момента последнего снимка. Снимки хранятся в Amazon S3 и могут быть использованы для создания новых томов в любой зоне доступности или регионе. Это позволяет восстанавливать данные после сбоев, мигрировать тома и создавать копии для тестирования.

Снимки также поддерживают функцию быстрого восстановления снимков (Fast Snapshot Restore, FSR), которая позволяет создавать тома из снимков с минимальной задержкой.

Безопасность и шифрование

Amazon EBS поддерживает шифрование данных как в состоянии покоя, так и при передаче. Шифрование томов осуществляется с использованием ключей AWS Key Management Service (KMS). Зашифрованные тома автоматически шифруют данные при записи и расшифровывают при чтении. Шифрование может быть включено по умолчанию для всех новых томов в регионе.

Дополнительные меры безопасности включают:

Ценообразование

Стоимость Amazon EBS складывается из нескольких компонентов:

  • Плата за выделенное пространство — ежемесячная плата за гигабайт хранимых данных (зависит от типа тома).
  • Плата за производительность — для томов gp3 и io2/io1 взимается отдельная плата за IOPS и пропускную способность сверх базового уровня.
  • Плата за снимки — стоимость хранения снимков в Amazon S3 (за гигабайт в месяц).
  • Плата за передачу данных — при передаче данных между зонами доступности или регионами.

Цены варьируются в зависимости от региона AWS. Например, в регионе us-east-1 (Северная Виргиния) стоимость gp3 составляет около $0,08 за ГБ в месяц, а io2 — около $0,125 за ГБ в месяц плюс $0,065 за каждый обеспеченный IOPS.

Применение

Amazon EBS используется для широкого спектра задач:

  • Базы данных — реляционные (MySQL, PostgreSQL, Oracle) и NoSQL (MongoDB, Cassandra) базы данных требуют низкой задержки и высокой производительности ввода-вывода, что обеспечивают тома io2.
  • Операционные системы и загрузочные диски — корневые тома экземпляров EC2 обычно используют gp3.
  • Приложения реального времени — системы обработки транзакций, ERP и CRM.
  • Хранилища для контейнеров — тома EBS используются в Amazon EKS и ECS для постоянного хранения данных контейнеров.
  • Аналитика и обработка больших данных — тома st1 подходят для потоковой обработки логов и данных Hadoop.
  • Архивное хранение — тома sc1 используются для хранения редко используемых данных.

Ограничения и критика

Несмотря на широкие возможности, Amazon EBS имеет ряд ограничений:

  • Привязка к зоне доступности — том не может быть подключен к экземпляру в другой зоне напрямую, требуется создание снимка и восстановление.
  • Задержка — поскольку том подключается через сеть, задержка выше, чем у локальных дисков (NVMe).
  • Максимальный размер тома — ограничен 16 ТБ для большинства типов (для io2 Block Express — 64 ТБ).
  • Сложность управления — для больших инфраструктур требуется автоматизация управления томами и снимками.

Критика службы часто связана с высокой стоимостью при больших объемах данных и сложностью прогнозирования затрат. Некоторые пользователи отмечают, что альтернативные решения, такие как Amazon Elastic File System (EFS) или Amazon FSx, могут быть более подходящими для определенных сценариев.

Интересные факты

  • Amazon EBS является одной из самых старых служб AWS, запущенной всего через два года после появления самого Amazon EC2.
  • Снимки EBS используются для создания образов машин Amazon Machine Images (AMI), которые позволяют быстро разворачивать предварительно настроенные экземпляры.
  • Тома io2 Block Express обеспечивают долговечность, сопоставимую с корпоративными системами хранения данных (99,999%).

Источники

  • Документация Amazon Web Services: «Amazon EBS User Guide»
  • Официальный блог AWS: «Amazon EBS Overview and Best Practices»
  • AWS re:Invent 2018: «Amazon EBS: The Evolution of Block Storage» (презентация)
  • Документация AWS по ценообразованию: «Amazon EBS Pricing»
  • Статья «Amazon Elastic Block Store (EBS)» в AWS Knowledge Center

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →