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). Зашифрованные тома автоматически шифруют данные при записи и расшифровывают при чтении. Шифрование может быть включено по умолчанию для всех новых томов в регионе.
Дополнительные меры безопасности включают:
- Управление доступом через AWS Identity and Access Management (IAM).
- Использование сетевых списков контроля доступа (NACL) и групп безопасности для ограничения доступа к экземплярам.
- Аудит действий с томами через AWS CloudTrail.
Ценообразование
Стоимость 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 →