Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Хранилище BLOB-объектов Azure теперь поддерживает протокол NFS 3.0. Эта поддержка обеспечивает совместимость файловой системы Linux в рамках масштаба и стоимости хранилища объектов и позволяет пользователям Linux подключать контейнер в хранилище BLOB-объектов из виртуальной машины Azure или локального компьютера на месте.
Это проблема для выполнения крупномасштабных устаревших рабочих нагрузок, таких как высокопроизводительные вычисления (HPC) в облаке. Одна из причин заключается в том, что приложения часто используют традиционные протоколы файлов, такие как NFS, для доступа к данным. Кроме того, собственные облачные службы хранилища, ориентированные на хранилище объектов, имеют плоское пространство имен и обширные метаданные вместо файловых систем, которые обеспечивают иерархическое пространство имен и эффективные операции метаданных.
Хранилище BLOB-объектов теперь поддерживает иерархическое пространство имен. В сочетании с поддержкой протокола NFS 3.0 Azure упрощает выполнение устаревших приложений на основе масштабируемого облачного хранилища объектов.
Приложения и рабочие нагрузки, подходящие для использования NFS 3.0 с Blob Storage
Функция протокола NFS 3.0 оптимизирована для высокопроизводительных, крупномасштабных рабочих нагрузок с большим количеством операций чтения с последовательным вводом-выводом. Это идеально подходит для сценариев, которые включают несколько читателей и многочисленные потоки, где пропускная способность является более критической, чем низкая задержка. Распространенные примеры:
Высокопроизводительные вычисления: задания HPC часто включают тысячи ядер, считывающих одни и те же большие наборы данных одновременно. Функция протокола NFS 3.0 использует пропускную способность хранилища объектов для устранения традиционных узких мест файлового сервера. Ниже приведены некоторые примеры.
- Секвенирование геномов: обработка крупных наборов данных ДНК.
- Моделирование финансовых рисков: использование моделирования Монте-Карло на исторических данных.
- Сейсмический анализ: анализ геологических данных для разведки нефти и газа.
- Прогнозирование погоды: моделирование атмосферных данных для прогнозирования климата и шторма.
Большие данные и аналитика (озера данных): для многих средств аналитики требуются иерархические каталоги. BlobNFS (через Azure Data Lake Storage Gen2) обеспечивает эту структуру при поддержке стандартных протоколов файлов. Ниже приведены некоторые примеры.
- Машинное обучение: передача обучающих данных в кластеры GPU с помощью стандартного ввода-вывода файлов.
- Log Analytics: агрегирование журналов из тысяч источников.
Расширенные системы поддержки драйверов (ADAS): рабочие процессы ADAS создают петабайты последовательных данных датчика, такие как облака точек LiDAR и каналы камер с высоким разрешением. Данные должны эффективно обрабатываться и анализироваться в масштабе для моделирования и обучения моделей. Примером является хранение необработанных проверок LiDAR и многокамерных видеопотоков из автономных тестовых транспортных средств с помощью NFS 3.0, а затем выполнение крупномасштабных имитаций воспроизведения на тысячах вычислительных узлов для проверки алгоритмов восприятия.
Мультимедиа и развлечения: фермы рендеринга нуждаются в эффективном доступе к большим библиотекам данных. NFS 3.0 через blob предоставляет файловый интерфейс для устаревших инструментов рендеринга, ожидающих пути к файлам. Ниже приведены некоторые примеры.
- Визуализация видео: чтение исходных ресурсов при помощи распределенных узлов.
- Транскодирование. Преобразование больших необработанных видеофайлов в формат потоковой передачи.
Резервное копирование базы данных: экономичное, высокопроизводительное NFS 3.0 хранилище без сложных коннекторов или дорогостоящих моментальных снимков. Oracle RMAN может записывать большие резервные копии непосредственно для долгосрочного архивирования и включать прямое восстановление с любой виртуальной машины Linux, подключенной к NFS.
Если не использовать NFS 3.0 с Blob Storage
Избегайте использования общих папок общего назначения или транзакционных рабочих нагрузок из-за характеристик хранилища объектов:
| Тип рабочей нагрузки | Причина | Более эффективная альтернатива |
|---|---|---|
| Базы данных транзакций | Требует детализированной блокировки, задержки субмиллисекунда и частой случайной записи. | Управляемые диски или Azure NetApp Files или Файлы Azure |
| Редактирование файла на месте | Редактирование файлов вынуждает выполнять полную перезапись блобов, что делает эти операции неэффективными. | Azure Files |
Иерархическое пространство имен NFS 3.0
Поддержка протокола NFS 3.0 требует, чтобы BLOB-объекты были организованы в иерархическое пространство имен. Вы можете включить иерархическое пространство имен при создании учетной записи хранения.
Azure Data Lake Storage представила возможность использования иерархического пространства имен. Эта функция позволяет собирать объекты (файлы) и упорядочивать их в иерархию директорий и поддиректорий таким же образом, как организована файловая система на вашем компьютере. Иерархическое пространство имен масштабируется линейно и не снижает объем данных и производительность. Различные протоколы проистекают из иерархического пространства имен. Протокол NFS 3.0 является одним из доступных протоколов.
Данные, хранящиеся в виде блочных блобов
Когда ваше приложение выполняет запрос с помощью протокола NFS 3.0, этот запрос преобразуется в сочетание операций с блочными BLOB. Например, запросы на чтение удаленного вызова процедур (RPC) NFS 3.0 преобразуются в операции Get Blob. Запросы NFS 3.0 на запись RPC переводятся в виде комбинации команд Get Block List, Put Block и Put Block List.
Блочные BLOB-объекты оптимизируются для эффективной обработки больших объемов данных, предназначенных для чтения. Блочные BLOB-объекты состоят из блоков. Идентификатор блока определяет каждый блок. Блочный BLOB-объект может включать до 50 000 блоков. Каждый блок в BLOB может иметь разный размер, вплоть до максимального размера, разрешённого для используемой вашей учетной записью версии службы.
| NFSv3 RPC | Операция REST API |
|---|---|
| Метаданные и атрибуты | |
Nfs3GetAttr |
Get Blob Properties |
Nfs3SetAttr |
Set Blob Properties (Если размер файла задан, Nfs3Write вызывается.) |
Nfs3Lookup |
Get Blob Properties |
Nfs3Access |
Get Blob Properties |
Nfs3Readlink |
Get Blob Properties |
Nfs3FsStat |
Get Blob Properties |
Nfs3Fsinfo |
Get Blob Properties |
Nfs3Pathconf |
Get Blob Properties |
| Перечисление каталогов | |
Nfs3ReadDir |
List Blobs |
Nfs3ReadDirPlus |
List Blobs |
| Операции чтения | |
Nfs3Read |
Get Blob |
Nfs3ReadLink |
Get Blob Properties
+
Get Blob базового файла. |
| Операции записи | |
NFs3Write |
Get Block List (1) + Put Block (x) + Put Block List (1) |
Nfs3Commit |
Нет операции. |
| Жизненный цикл файлов | |
Nfs3Create |
Put Blob + Get Blob Properties |
Nfs3Remove |
Delete Blob |
Nfs3Rename |
Не поддерживается (не поддерживается сопоставление 1–1). |
Nfs3Link |
Не поддерживается. |
| Управление каталогом | |
Nfs3MkDir |
Put Blob + Get Blob Properties |
Nfs3RmDir |
Put Blob |
| Прочее | |
Nfs3SymLink |
Put Blob + Get Blob Properties |
Nfs3MkNod |
Не поддерживается. |
Nfs3Null |
Нет операции. |
Результаты попадания или промаха в кэше могут активировать другие Get Blob Properties запросы для получения атрибутов до и после операции. Некоторые переменные влияют на количество транзакций в Blob Storage для операций полного цикла (например, чтения или записи файлов) и могут отличаться между итерациями. Чтобы оценить количество транзакций для репрезентативных рабочих нагрузок, используйте журналы Blob Storage для примеров сценариев.
Общий рабочий процесс: Подсоединение контейнера учетной записи хранилища
Клиенты Linux могут подключить контейнер в хранилище блоб-объектов из виртуальной машины Azure или локального компьютера. Чтобы подключить контейнер учетной записи хранения, выполните следующие задачи:
- создайте виртуальную сеть Azure;
- Настройка защиты сети.
- Создайте и настройте учетную запись хранения, которая принимает трафик только из виртуальной сети.
- Создайте контейнер в учетной записи хранения.
- Смонтируйте контейнер.
Пошаговые инструкции см. в Mount Blob Storage, используя протокол NFS 3.0.
Безопасность сети
Трафик должен исходить из виртуальной сети. Виртуальная сеть позволяет клиентам безопасно подключаться к учетной записи хранения. Единственным способом защиты данных в учетной записи является использование виртуальной сети и других параметров безопасности сети. Любое другое средство, используемое для защиты данных, включая авторизацию ключа учетной записи, безопасность Microsoft Entra и списки управления доступом (ACL), нельзя использовать для авторизации запроса NFS 3.0.
Дополнительные сведения см. в рекомендациях по безопасности сети для хранилища BLOB-объектов.
Замечание
Фильтрация общедоступных IP-адресов для доступа к учетной записи хранения не поддерживается.
Поддерживаемые сетевые подключения
Клиенты могут подключаться через общедоступную или частную конечную точку , если подключение происходит из любого из следующих сетевых расположений:
Виртуальная сеть, которую вы настраиваете для своей учетной записи хранения.
В этой статье мы называем эту виртуальную сеть основной виртуальной сетью. Дополнительные сведения см. в разделе Предоставление доступа из виртуальной сети.
Одноранговая виртуальная сеть, которая находится в том же регионе, что и основная виртуальная сеть.
Необходимо настроить учетную запись хранения, чтобы разрешить доступ к этой одноранговой виртуальной сети. Дополнительные сведения см. в разделе Предоставление доступа из виртуальной сети.
Локальная сеть, подключенная к основной виртуальной сети с помощью VPN-шлюза Azure или шлюза Azure ExpressRoute.
Дополнительные сведения см. в статье "Настройка доступа из локальных сетей".
Локальная сеть, подключенная к одноранговой сети.
Vpn-шлюз или шлюз ExpressRoute можно использовать вместе с транзитом шлюза.
Внимание
Протокол NFS 3.0 использует порты 111 и 2048. При подключении из локальной сети убедитесь, что клиент разрешает исходящий обмен данными через эти порты. Если вы предоставили доступ к определенным виртуальным сетям, убедитесь, что все группы безопасности сети, связанные с этими виртуальными сетями, не содержат правил безопасности, которые блокируют входящий обмен данными через эти порты.
Известные проблемы и ограничения
Полный список проблем и ограничений, связанных с текущим выпуском поддержки NFS 3.0, см. в разделе Известные проблемы.
Цены
Чтобы узнать о затратах на хранение данных и транзакции, смотрите страницу цены на Azure Blob Storage.