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

Amazon Elastic File System

Amazon Elastic File System (Amazon EFS) — это полностью управляемый облачный сервис для создания и использования файловых хранилищ, предоставляемый компанией Amazon Web Services (AWS). EFS реализует протокол NFSv4 (Network File System версии 4) и позволяет одновременно подключать одно и то же хранилище к множеству виртуальных машин (EC2-инстансов), контейнеров (в Amazon ECS, Amazon EKS) и локальных серверов (через AWS Direct Connect или VPN). Сервис автоматически масштабируется: при добавлении файлов ёмкость хранилища увеличивается, а при удалении — уменьшается, без необходимости предварительного выделения дискового пространства.

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

Сервис Amazon EFS был запущен в 2015 году как ответ на потребность клиентов AWS в простом, масштабируемом файловом хранилище с общим доступом. До появления EFS основным вариантом файлового хранилища в AWS был Amazon Elastic Block Store (EBS), который подключался к одному инстансу и не поддерживал одновременный доступ с нескольких машин. Первая версия EFS поддерживала только протокол NFSv4.1.

В 2016 году была добавлена поддержка шифрования данных в покое (с использованием AWS Key Management Service) и в пути (TLS). В 2018 году появился режим «One Zone» (EFS One Zone), который хранит данные в одной зоне доступности, что снижает стоимость, но уменьшает отказоустойчивость. В 2020 году была внедрена поддержка протокола NFSv4.0 и возможность использования EFS с контейнерными оркестраторами (Kubernetes через CSI-драйвер). В 2022 году компания представила EFS Replication — функцию репликации данных между регионами AWS для обеспечения аварийного восстановления.

Архитектура и устройство

Amazon EFS работает как распределённая файловая система. Данные хранятся на множестве серверов в нескольких зонах доступности (Availability Zones) внутри одного региона AWS. Сервис автоматически реплицирует данные в пределах региона для обеспечения отказоустойчивости (за исключением режима One Zone). Пользователь создаёт точку монтирования (mount target) в каждой зоне доступности, через которую виртуальные машины подключаются к файловой системе.

Ключевые компоненты

  • Файловая система — логический контейнер для хранения файлов и каталогов. Каждая файловая система имеет уникальный идентификатор (fs-xxxxxxxx).
  • Точки монтирования — сетевые интерфейсы (ENI), создаваемые в подсетях VPC. Через них EC2-инстансы подключаются к EFS.
  • Политики доступа — IAM-политики, которые определяют, какие пользователи и роли могут выполнять операции с файловой системой (чтение, запись, монтирование).
  • Контроль доступа на уровне файлов — стандартные права POSIX (владелец, группа, разрешения rwx).

Режимы производительности

Amazon EFS предлагает два режима производительности, которые выбираются при создании файловой системы и не могут быть изменены впоследствии:

  • General Purpose — оптимизирован для низкой задержки (единицы миллисекунд). Подходит для веб-серверов, сред разработки, домашних каталогов пользователей. Задержка на операции чтения/записи составляет 1–3 мс.
  • Max I/O — предназначен для приложений с высокими требованиями к пропускной способности и параллелизму (аналитика больших данных, научные вычисления, медиаобработка). Задержка выше (10–30 мс), но пропускная способность может достигать нескольких гигабайт в секунду.

Классы хранения

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

  • Standard — для часто используемых данных. Хранится в трёх зонах доступности (или одной в режиме One Zone).
  • Infrequent Access (IA) — для данных, к которым обращаются реже (раз в несколько дней или недель). Стоимость хранения ниже, но выше плата за операции чтения/записи.
  • Archive — для данных, которые практически не используются (доступ раз в год и реже). Самый дешёвый класс хранения, но с высокой стоимостью доступа.

Политики жизненного цикла позволяют автоматически перемещать файлы между классами в зависимости от времени последнего обращения. Например, файл, к которому не обращались 30 дней, перемещается в IA, а через 90 дней — в Archive.

Применение

Amazon EFS используется в широком спектре сценариев, где требуется общее файловое хранилище с поддержкой одновременного доступа:

Веб-серверы и CMS

EFS часто применяется для хранения статических файлов (изображений, CSS, JavaScript) и пользовательского контента (загрузок) в системах управления контентом (WordPress, Drupal, Joomla). Несколько веб-серверов могут подключаться к одной файловой системе, обеспечивая единое хранилище без дублирования данных.

Контейнерные приложения

В средах оркестрации контейнеров (Kubernetes, Amazon ECS) EFS используется как постоянное хранилище (Persistent Volume) для приложений, которым требуется общий доступ к данным между несколькими контейнерными экземплярами. Например, для хранения логов, конфигурационных файлов или очередей сообщений.

Научные вычисления и аналитика

Приложения, работающие с большими объёмами данных (геномные исследования, климатическое моделирование, обработка спутниковых снимков), используют EFS в режиме Max I/O для обеспечения высокой пропускной способности при параллельном доступе.

Домашние каталоги и среды разработки

EFS может служить централизованным хранилищем для домашних каталогов пользователей в корпоративных средах. Разработчики подключают EFS к своим рабочим станциям (через VPN или Direct Connect) и получают доступ к общим репозиториям кода, документации и инструментам.

Аварийное восстановление

С помощью функции репликации (EFS Replication) данные могут автоматически копироваться из одного региона AWS в другой. В случае сбоя в основном регионе можно быстро переключить приложения на резервную файловую систему.

Безопасность и управление доступом

Amazon EFS интегрируется с сервисами безопасности AWS:

  • Шифрование — данные могут шифроваться в покое (с использованием AWS KMS или собственных ключей) и в пути (TLS). Шифрование включается при создании файловой системы.
  • Сетевые политики — доступ к EFS ограничивается через группы безопасности (Security Groups) и сетевые ACL. По умолчанию доступ разрешён только изнутри VPC.
  • IAM-политики — можно задать, какие пользователи или роли могут создавать, монтировать или удалять файловые системы.
  • POSIX-права — стандартные разрешения на чтение, запись и выполнение для владельца, группы и остальных пользователей.

Стоимость

Ценообразование Amazon EFS основано на объёме хранимых данных (в гигабайтах в месяц) и классе хранения. Дополнительно взимается плата за операции доступа (чтение/запись) в классах IA и Archive, а также за передачу данных между регионами при использовании репликации. Сервис не взимает плату за операции в классе Standard. Для режима One Zone стоимость хранения примерно на 50% ниже, чем для Standard.

Ограничения

  • Максимальный размер одного файла — 52 428 800 ГБ (52 ПБ), что практически не ограничивает использование.
  • Максимальное количество файлов в одной файловой системе — не ограничено (определяется только ёмкостью хранилища).
  • Максимальное количество одновременных подключений — до нескольких тысяч NFS-клиентов.
  • Задержка — в режиме General Purpose составляет 1–3 мс, в Max I/O — 10–30 мс.
  • Региональная доступность — сервис доступен во всех регионах AWS, за исключением некоторых правительственных регионов (AWS GovCloud).

Отличия от других файловых хранилищ AWS

ПараметрAmazon EFSAmazon EBSAmazon FSx for Windows File Server
Тип доступаСетевой (NFS)Блочный (iSCSI)Сетевой (SMB)
Одновременный доступДа (множество клиентов)Нет (только один инстанс)Да (множество клиентов)
МасштабированиеАвтоматическоеРучное (изменение размера тома)Автоматическое (до 64 ТБ)
ПротоколNFSv4EBSSMB
Классы храненияStandard, IA, Archivegp2, gp3, io1, io2, st1, sc1SSD, HDD
Типичное применениеОбщие файлы, веб-серверы, контейнерыБазы данных, приложения с низкой задержкойWindows-приложения, Active Directory

Источники

  • Документация Amazon Web Services: «Amazon Elastic File System User Guide» (AWS, 2024)
  • Официальный блог AWS: «Announcing Amazon EFS One Zone Storage Class» (2020)
  • Книга «AWS Certified Solutions Architect Study Guide» by Ben Piper, David Clinton (Sybex, 2021)
  • Статья «Performance Comparison of Amazon EFS and Amazon EBS» в журнале «IEEE Cloud Computing» (2022)
  • Документация Amazon Web Services: «Amazon EFS Pricing» (AWS, 2024)

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

На главную BFOmetr →