Общий доступ к управляемому диску Azure

Применимо к: ✔️ Виртуальные машины Linux ✔️ Виртуальные машины Windows ✔️ Универсальные масштабируемые наборы

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

Для общих дисков требуется диспетчер кластеров, например отказоустойчивый кластер Windows Server (WSFC) или Pacemaker, который обрабатывает связь узла кластера и блокировку записи. Общие управляемые диски изначально не предлагают полностью управляемую файловую систему, доступ к которой можно получить с помощью SMB/NFS.

Принцип работы

Виртуальные машины в кластере могут выполнять чтение или запись на подключенный диск в соответствии с резервированием, выбранным кластеризованным приложением, с помощью постоянного резервирования SCSI (SCSI PR). SCSI PR — это промышленный стандарт, используемый приложениями, работающими в локальных сетях хранения данных (SAN). Включение SCSI PR на управляемом диске позволяет перенести эти приложения в Azure "как есть".

Общие управляемые диски предлагают общее блочное хранилище, к которому можно получить доступ с нескольких виртуальных машин, при этом они представлены в виде номеров логических устройств (LUN). Затем LUN представляются инициатору (виртуальной машине) из целевого объекта (диска). Эти LUN представляются виртуальной машине дисками с прямым подключением (DAS) или локальными дисками.

Ограничения

Общие ограничения

Общие диски имеют общие ограничения, которые применяются ко всем общим дискам независимо от типа диска. Они также имеют больше ограничений, которые применяются только к определенным типам общих дисков. Ниже приведен список общих ограничений:

  • В настоящее время в качестве общего диска можно использовать только диски ценовой категории "Ультра", SSD уровня "Премиум" версии 2, SSD уровня "Премиум" и "Стандартный"
  • Общие диски можно подключить к отдельным Масштабируемые наборы виртуальных машин, но нельзя определить в моделях масштабируемого набора виртуальных машин или автоматически развернутых
  • Общий диск нельзя развернуть без размещения всех виртуальных машин, к которым подключен диск, или отсоединения диска от всех этих виртуальных машин
  • Ускоритель записи не поддерживается для общих дисков
  • Кэширование узлов не поддерживается для общих дисков

Для каждого управляемого диска, для которого включены общие диски, также действуют следующие ограничения (список упорядочен по типам дисков):

Диски (цен. категория "Ультра")

У дисков категории "Ультра" есть собственный список ограничений, не зависящий от общих дисков. Сведения об ограничениях для таких дисков см. в статье Использование дисков Azure ценовой категории "Ультра".

При совместном использовании дисков применяются следующие дополнительные ограничения:

SSD (цен. категория "Премиум") версии 2

Управляемые диски SSD уровня "Премиум" версии 2 имеют собственный список ограничений, не связанных с общими дисками. Сведения об этих ограничениях см. в разделе Ограничения SSD (цен. категория "Премиум") версии 2.

При совместном использовании дисков SSD (цен. категория "Премиум") версии 2 применяются следующие дополнительные ограничения:

SSD ценовой категории «Премиум»

Диски SSD ценовой категории "Стандартный"

Требования к операционной системе

Общие диски поддерживают несколько операционных систем. Список поддерживаемых операционных систем см. в разделах Windows или Linux.

Процесс выставления счетов

Счет, выставляемый за совместное использование диска, зависит от типа диска.

Для общих дисков SSD категории "Премиум", помимо стоимости уровня диска, взимается дополнительная плата за каждую подключенную к SSD виртуальную машину. Дополнительные сведения см. в разделе цен на управляемые диски.

Диски общего уровня "Ультра" и общие диски SSD уровня "Премиум" версии 2 не взимается дополнительная плата за каждую виртуальную машину, к которой они подключены. Плата взимается в общей сумме операций ввода-вывода в секунду и МБ/с, на которые настроен диск. Как правило, диски ультра и SSD уровня "Премиум" версии 2 имеют два регулирования производительности, определяющие общий объем операций ввода-вывода в секунду/МБ/с. Однако при настройке в качестве общего диска предоставляются еще два регулирования производительности для четырех. Эти два дополнительных регулирования позволяют увеличить производительность за дополнительную плату. У каждой единицы измерения есть значение по умолчанию, которое повышает производительность и стоимость диска.

Четыре ограничения производительности общего диска ценовой категории "Ультра" и общего диска SSD уровня "Премиум" версии 2: diskIOPSReadWrite, diskMB/sReadWrite, diskIOPSReadOnly и diskMB/sReadOnly. Для каждого регулирования можно настроить изменение производительности диска. Производительность диска SSD уровня "Премиум" уровня "Ультра" версии 2 вычисляется следующим образом: общий объем подготовленных операций ввода-вывода в секунду (diskIOPSReadWrite + diskIOPSReadOnly) и для общей подготовленной пропускной способности МБ/с (diskMB/sReadWrite + diskMB/sReadOnly).

Определив общую подготовленную пропускную способность операций ввода-вывода в секунду и общую подготовленную пропускную способность, вы можете использовать их в калькуляторе цен, чтобы определить стоимость общего диска ценовой категории "Ультра" и общего диска SSD уровня "Премиум" версии 2.

РАЗМЕР ДИСКА

На данный момент только диски ценовой категории "Ультра", SSD уровня "Премиум" версии 2, SSD уровня "Премиум" и "Стандартный" могут включать общие диски. В зависимости от размера диски могут иметь различные пределы maxShares, которые не могут быть превышены при установке значения maxShares.

Для каждого диска можно определить maxShares значение, представляющее максимальное число узлов, которые могут одновременно совместно использовать диск. Например, если планируется настроить отказоустойчивый кластер из двух узлов, вы задаете значение maxShares=2. Максимальное значение — это верхняя граница. Узлы могут присоединиться к кластеру или выйти из него (подключить или отключить диск), если число узлов ниже указанного maxShares значения.

Примечание.

maxSharesЗначение может быть задано или изменено только при отсоединении диска от всех узлов.

Диапазоны SSD (цен. категория "Премиум")

В следующей таблице показаны допустимые максимальные значения для maxShares размеров SSD уровня "Премиум".

РАЗМЕР ДИСКА Ограничение maxShares
P1,P2,P3,P4,P6,P10,P15,P20 3
P30, P40, P50 5
P60, P70, P80 10

Значение maxShares не влияет на количество операций ввода-вывода в секунду и ограничение пропускной способности для диска. Например, максимальное число операций ввода-вывода для диска P15 — 1100, если maxShares = 1 или maxShares > 1.

Диапазоны SSD (цен. категория "Стандартный")

В следующей таблице показаны допустимые максимальные значения для maxShares размеров SSD уровня "Стандартный".

РАЗМЕР ДИСКА Ограничение maxShares
E1,E2,E3,E4,E6,E10,E15,E20 3
E30, E40, E50 5
E60, E70, E80 10

Значение maxShares не влияет на количество операций ввода-вывода в секунду и ограничение пропускной способности для диска. Например, максимальное число операций ввода-вывода для диска E15 — 500, если maxShares = 1 или maxShares > 1.

Диапазоны диска (цен. категория "Ультра")

Минимальное значение maxShares — 1, максимальное значение maxShares — 15. Ограничения по размеру для дисков (цен. категория "Ультра") отсутствуют, диск любого размера (цен. категория "Ультра") может использовать любое значение для maxShares, вплоть до максимального значения включительно.

Диапазоны SSD (цен. категория "Премиум") версии 2

Минимальное значение maxShares — 1, максимальное значение maxShares — 15. Ограничения по размеру для дисков SSD (цен. категория "Премиум") версии 2 отсутствуют, диск любого размера (цен. категория "Премиум") версии 2 может использовать любое значение для maxShares, вплоть до максимального значения включительно.

Примеры рабочих нагрузок

Windows

Общие диски Azure поддерживаются в Windows Server 2008 и более поздних версиях. Большинство кластеров на основе Windows используют платформу WSFC, которая обеспечивает всю основную инфраструктуру для обмена данными с узлами кластера, позволяя приложениям использовать шаблоны параллельного доступа. WSFC поддерживает решения на основе CSV и других форматов в зависимости от используемой версии Windows Server. Дополнительные сведения см. в разделе Создание отказоустойчивого кластера.

Ниже перечислены некоторые популярные приложения, работающие в WSFC:

Linux

Общие диски Azure поддерживаются в следующих ОС:

Кластеры Linux могут использовать диспетчеры кластеров, например Pacemaker. Pacemaker построен на основе Corosync и обеспечивает связь с кластером для приложений, развернутых в средах с высокой доступностью. Некоторые распространенные кластерные файловые системы включают ocfs2 и gfs2. Вы можете использовать модели кластеризации на основе SCSI Persistent Reservation (SCSI PR) или STONITH Block Device (SBD) для арбитража доступа к диску. При использовании SCSI PR вы можете управлять резервированием и регистрацией с помощью таких утилит, как fence_scsi и sg_persist.

Поток постоянного резервирования

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

Кластер из двух узлов, состоящий из Azure VM1, VM2 и общего для них диска. Приложение, работающее в кластере, обрабатывает доступ к диску.

Процесс выглядит следующим образом:

  1. Кластеризованное приложение, работающее и на Azure VM1, и на VM2, регистрирует свое намерение выполнить чтение или запись на диск.
  2. Затем экземпляр приложения в VM1 выполняет монопольное резервирование для записи на диск.
  3. Это резервирование применяется на диске Azure, и база данных теперь имеет эксклюзивное право записи на диск. Любые операции записи из экземпляра приложения в VM2 не будут выполнены.
  4. Если экземпляр приложения в VM1 выходит из строя, экземпляр в VM2 может инициировать отработку отказа базы данных и перехватить контроль над диском.
  5. Теперь он резервирует диске Azure, и этот диск больше не будет принимать операции записи от VM1. Он будет принимать только операции записи от VM2.
  6. Кластеризованное приложение может завершить отработку отказа базы данных и обслуживать запросы от VM2.

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

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

Процесс выглядит следующим образом:

  1. Кластеризованное приложение, работающее на всех виртуальных машинах, регистрирует свое намерение выполнить чтение или запись на диск.
  2. Экземпляр приложения в VM1 выполняет монопольное резервирование для записи на диск, а операции чтения с диска делаются доступными для других виртуальных машин.
  3. Это резервирование принудительно применяется на диске Azure.
  4. Теперь все узлы в кластере могут выполнять чтение с диска. Только один узел может записывать результаты обратно на диск от имени всех узлов в кластере.

Поток резервирования ssd ценовой категории "Ультра" и SSD уровня "Премиум" версии 2

Как диски категории "Ультра", так и управляемые диски SSD уровня "Премиум" версии 2 предлагают два дополнительных регулирования, что дает каждому из них всего четыре регулирования. Из-за этого поток резервирования может работать, как описано в предыдущем разделе, или он может регулировать и распределять производительность более детально.

Изображение таблицы, в которой показан доступ только для чтения и доступ на чтение и запись для владельца резервирования, зарегистрированного пользователя и прочих.

Ограничение производительности

Ограничение производительности SSD категории "Премиум"

У SSD премиум-класса IOPS и пропускная способность диска фиксированы, например, значение IOPS для P30 составляет 5000. Это значение сохраняется независимо от того, используется ли диск для 2 виртуальных машин или 5 виртуальных машин. Ограничения диска могут быть достигнуты с одной виртуальной машины или разделены между двумя или более виртуальными машинами.

Регулирование производительности диска и SSD уровня "Премиум" версии 2

Управляемые диски ценовой категории "Ультра" и SSD уровня "Премиум" версии 2 имеют уникальную возможность, позволяя настроить производительность, предоставляя изменяемые атрибуты и позволяя изменять их. По умолчанию есть только два изменяемых атрибута, но общие диски ценовой категории "Ультра" и общие управляемые диски SSD уровня "Премиум" версии 2 имеют два дополнительных атрибута. Диски категории "Ультра" и SSD уровня "Премиум" версии 2 разделяют эти атрибуты по каждой подключенной виртуальной машине. Примеры работы этого распределения емкости, операций ввода-вывода в секунду и пропускной способности см. в разделе "Примеры ".

Атрибут Description
DiskIOPSReadWrite (операций ввода-вывода в секунду на диск для чтения и записи) Общее разрешенное количество операций ввода-вывода в секунду на всех виртуальных машинах, подключенных к общему диску с доступом на запись.
DiskMB/sReadWrite (пропускная способность диска чтения и записи) Общая разрешенная пропускная способность (МБ/с) на всех виртуальных машинах, подключенных к общему диску с доступом на запись.
DiskIOPSReadOnly* (операций ввода-вывода в секунду только для чтения) Общее количество операций ввода-вывода в секунду, разрешенное для всех виртуальных машин, подключающих этот общий диск как ReadOnly.
DiskMB/sReadOnly* (пропускная способность диска только для чтения) Общая пропускная способность (МБ/с), разрешенная для всех виртуальных машин, подключающих этот общий диск как ReadOnly.

* Применяется только к общим дискам Ценовой категории "Ультра" и общим управляемым дискам SSD уровня "Премиум" версии 2

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

  • DiskIOPSReadWrite (операций ввода-вывода в секунду на диске чтения и записи):
    • Имеет базовый минимальный объем операций ввода-вывода в секунду 100 для дисков размером 100 ГиБ и меньше.
      • Для дисков размером более 100 ГиБ базовый минимальный объем операций ввода-вывода в секунду можно задать на 1 на ГиБ. Таким образом, наименьшее значение для диска DiskIOPSReadWrite можно задать для диска 101 ГиБ — 101 операций ввода-вывода в секунду.
    • Максимальное значение этого атрибута определяется размером диска, формула составляет 300 * ГиБ, не более 400 000.
  • DiskMB/sReadWrite (пропускная способность диска чтения и записи)
    • Минимальная пропускная способность (МБ/с) этого атрибута определяется операцией ввода-вывода в секунду, формула составляет 4 КиБ в секунду на секунду в секунду. Таким образом, если у вас было 101 операций ввода-вывода в секунду, минимальное количество МБ/с можно задать 1.
    • Максимальное значение этого атрибута определяется объемом заданных операций ввода-вывода в секунду, формула составляет 256 КиБ в секунду, до максимума 10 000 МБ/с.
  • DiskIOPSReadOnly (операций ввода-вывода в секунду только для чтения)
    • Минимальное базовое число операций ввода-вывода в секунду для этого атрибута равно 100. Для DiskIOPSReadOnly базовый план не увеличивается с размером диска.
    • Максимальное значение этого атрибута определяется размером диска, формула составляет 300 * ГиБ, не более 400 000.
  • DiskMB/sReadOnly (пропускная способность диска только для чтения)
    • Минимальная пропускная способность (МБ/с) для этого атрибута составляет 1. Для DiskMB/sReadOnly базовые показатели не увеличиваются с помощью операций ввода-вывода в секунду.
    • Максимальное значение этого атрибута определяется объемом заданных операций ввода-вывода в секунду, формула составляет 256 КиБ в секунду, до максимума 10 000 МБ/с.

Примеры

В следующих примерах показано несколько сценариев, демонстрирующих, как регулирование может работать конкретно с общими дисками ценовой категории "Ультра".

Использование общих томов кластера двухузловым кластером

Ниже приведен пример кластера WSFC с двумя узлами, использующего кластеризованные общие тома. В этой конфигурации обе виртуальные машины имеют одновременный доступ для записи на диск, в результате чего регулятор рабочей нагрузки ReadWrite распределяется между двумя виртуальными машинами, а регулятор ReadOnly не используется.

Пример CSV с двумя узлами (цен. категория Ультра)

Кластер с двумя узлами без общих томов кластера

Ниже приведен пример кластера WSFC с двумя узлами, не использующего кластеризованные общие тома. В такой конфигурации только одна виртуальная машина имеет доступ на запись к диску. Это приводит к тому, что регулятор рабочей нагрузки ReadWrite используется исключительно для первичной виртуальной машины, а регулятор рабочей нагрузки ReadOnly — только для вторичной.

Пример CSV с двумя узлами без диска CSV в цен. категории Ультра

Кластер с четырьмя узлами Linux

Ниже приведен пример кластера Linux с 4 узлами с одним модулем записи и тремя модулями чтения с горизонтальным масштабированием. В такой конфигурации только одна виртуальная машина имеет доступ на запись к диску. Это приводит к тому, что регулятор рабочей нагрузки ReadWrite используется исключительно для первичной виртуальной машины, а регулятор рабочей нагрузки ReadOnly — только для вторичной.

Пример регулирования Ультра на четырех узлах

Цены на общий диск категории "Ультра" и SSD уровня "Премиум" версии 2

Общие диски ценовой категории "Ультра" и общие управляемые диски SSD уровня "Премиум" версии 2 оцениваются на основе подготовленной емкости, общего объема подготовленных операций ввода-вывода в секунду (diskIOPSReadWrite + diskIOPSReadOnly) и общей подготовленной пропускной способности МБ/с (diskMB/sReadWrite + diskMB/sReadOnly). Дополнительная плата за каждую дополнительную виртуальную машину не взимается. Например, общий диск Ultra со следующей конфигурацией (diskSizeGB: 1024, DiskIOPSReadWrite: 10000, DiskMB/sReadWrite: 600, DiskIOPSReadOnly: 100, DiskMB/sReadOnly: 1) взимается с 1024 ГиБ, 10100 операций ввода-вывода в секунду и 601 МБ/с независимо от того, подключена ли она к двум виртуальным машинам или пяти виртуальным машинам.

Следующие шаги

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

Если у вас есть дополнительные вопросы, ознакомьтесь с разделом "Общие диски" раздела "Вопросы и ответы ".