Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: Azure Stack HCI, версии 22H2 и 21H2; Windows Server 2022, Windows Server 2019
В этой статье описаны доступные варианты устойчивости и описаны требования к масштабированию, эффективность хранения и общие преимущества и компромиссы каждого.
Overview
Технология Storage Spaces Direct обеспечивает отказоустойчивость данных, часто называемую "резильентностью". Его реализация аналогична RAID, но распределена по серверам и выполнена в программном обеспечении.
Как и в случае с RAID, существует несколько различных способов использования дисковых пространств, что делает различные компромиссы между отказоустойчивостью, эффективностью хранилища и сложностью вычислений. Эти в общем делятся на две категории: "зеркальное отображение" и "паритет", последний иногда называется "кодирование стирания".
Mirroring
Зеркальное отображение обеспечивает отказоустойчивость, сохраняя несколько копий всех данных. Это больше всего напоминает RAID-1. Как эти данные чередуются и помещаются нетривиально (см. этот блог , чтобы узнать больше), но это абсолютно верно, чтобы сказать, что любые данные, хранящиеся с помощью зеркального отображения, записываются в целом несколько раз. Каждая копия записывается на другое физическое оборудование (разные диски на разных серверах), и предполагается, что они могут выходить из строя независимо.
Вы можете выбрать один из двух вариантов зеркального отображения — "двусторонний" и "трехсторонний".
Двустороннее зеркальное отображение
Двунаправленное зеркальное отображение записывает две копии всего. Его эффективность хранилища составляет 50 процентов — для записи 1 ТБ данных требуется не менее 2 ТБ физической емкости хранилища. Аналогичным образом, вам потребуется как минимум два аппаратных домена отказа — с технологией Storage Spaces Direct, это означает два сервера.
Warning
Если у вас более двух серверов, вместо этого рекомендуется использовать трехстороннее зеркальное отображение.
Трехсторонняя зеркальная копия
Трехкратное зеркалирование создает три копии всего. Его эффективность хранения составляет 33,3 процента— для записи 1 ТБ данных требуется не менее 3 ТБ физической емкости хранилища. Аналогично, вам потребуется не менее трех доменов отказоустойчивости оборудования — с использованием Storage Spaces Direct, это означает необходимость в трех серверах.
Трехстороннее зеркалирование может безопасно выдерживать как минимум две аппаратные проблемы (диска или сервера) одновременно. Например, если вы перезагрузите один сервер при внезапном сбое другого диска или сервера, все данные остаются безопасными и постоянно доступными.
Parity
Кодировка четности, часто называемая "стирание кода", обеспечивает отказоустойчивость с помощью битовой арифметики, которая может получить удивительно сложный. То, как это работает, менее очевидно, чем зеркальное отображение, и есть много отличных онлайн-ресурсов (например, этот сторонний Руководство для чайников по кодированию с устранением ошибок), которые могут помочь вам получить представление. Достаточно сказать, что это обеспечивает лучшую эффективность хранения без ущерба для отказоустойчивости.
Хранилище данных предлагает две версии четности — "одинарный" и "двойной" паритет, второй использует усовершенствованный метод, называемый "локальными кодами реконструкции" на больших масштабах.
Important
Рекомендуется использовать зеркальное отображение для большинства рабочих нагрузок с учетом производительности. Дополнительные сведения о том, как сбалансировать производительность и емкость в зависимости от рабочей нагрузки, см. в разделе "Планирование томов".
Однократное четность
Единая четность сохраняет только один битовый символ четности, который обеспечивает отказоустойчивость только к одному сбою за раз. Он больше всего похож на RAID-5. Чтобы использовать единичную четность, вам потребуется не менее трех доменов сбоя оборудования — с Storage Spaces Direct, это означает три сервера. Так как трехкратное зеркалирование обеспечивает большую отказоустойчивость в том же масштабе, мы не рекомендуем использовать одиночную четность. Но, если вы настаиваете на его использовании, и он полностью поддерживается.
Warning
Мы не рекомендуем использовать одиночную четность, так как она может безопасно выдерживать только один аппаратный сбой за раз: если вы перезагружаете один сервер, когда вдруг происходит сбой другого диска или сервера, у вас будет время простоя. Если у вас есть только три сервера, рекомендуется использовать трехсторонние зеркальное отображение. Если у вас есть четыре или более, см. следующий раздел.
Двойной четности
Двойная четность реализует Reed-Solomon коды исправления ошибок для поддержания двух битовых символов четности, тем самым обеспечивая ту же отказоустойчивость, что и трехстороннее зеркалирование (т. е. до двух сбоев одновременно), но с более эффективным использованием хранилища. Он больше всего похож на RAID-6. Чтобы использовать двойную четность, вам потребуется по крайней мере четыре домена сбоя оборудования — с использованием Storage Spaces Direct, это означает четыре сервера. В этом масштабе эффективность хранения составляет 50% — для хранения 2 ТБ данных требуется 4 ТБ физической емкости хранилища.
Эффективность хранилища с двойной четностью увеличивается с увеличением числа доменов сбоя оборудования, достигая от 50 до 80 процентов. Например, при семи (с использованием Storage Spaces Direct, это означает семь серверов) эффективность резко возрастает до 66,7 процента: для хранения 4 ТБ данных требуется всего 6 ТБ физической емкости хранилища.
Дополнительные сведения о эффективности двойной партии и локальных кодов реконструкции см. в разделе "Сводка " для каждого масштаба.
Локальные коды реконструкции
В пространствах хранения внедрён продвинутый метод, разработанный Microsoft Research и называемый "локальные коды реконструкции" или LRC. В крупномасштабных системах двойная четность использует LRC для разделения кодирования и декодирования на несколько меньших групп, чтобы уменьшить издержки, необходимые для записи или восстановления после сбоев.
При использовании жестких дисков (HDD) размер группы составляет четыре символа; с твердотельными дисками (SSD) размер группы составляет шесть символов. Например, вот как выглядит макет с жесткими дисками и 12 доменами сбоя оборудования (то есть 12 серверов) — есть две группы из четырех символов данных. Она достигает 72,7 процента эффективности хранения.
Мы рекомендуем этот подробный, но легко читаемый обзор о том, как местные коды восстановления обрабатывают различные сценарии сбоя и почему они привлекательныот Клауса Джоергенсена.
Зеркально ускоренная четность
Локальный том дисковых пространств может быть зеркальным отображением и четностью частей. Запись сначала осуществляется в зеркальном разделе, а затем постепенно перемещается в раздел четности. Фактически это применение зеркального отображения для ускорения кода стирания.
Чтобы смешивать трехстороннее зеркалирование и двойной паритет, требуется по крайней мере четыре домена сбоев, то есть четыре сервера.
Эффективность хранения с зеркально ускоренной четностью находится между показателями, которые можно получить в случае использования только зеркалирования или только четности, и зависит от выбранных вами пропорций.
Important
Рекомендуется использовать зеркальное отображение для большинства рабочих нагрузок с учетом производительности. Дополнительные сведения о том, как сбалансировать производительность и емкость в зависимости от рабочей нагрузки, см. в разделе "Планирование томов".
Summary
В этом разделе приведены типы устойчивости, доступные в локальных пространствах для хранения данных, минимальные требования к масштабу для использования каждого типа, количество сбоев, которые может выдержать каждый тип, и соответствующая эффективность хранилища.
Типы устойчивости
Resiliency | Отказоустойчивость | Эффективность хранилища |
---|---|---|
Двустороннее зеркальное отображение | 1 | 50.0% |
Трехсторонняя зеркальная копия | 2 | 33.3% |
Двойной четности | 2 | 50,0% - 80,0% |
Mixed | 2 | 33,3% - 80,0% |
Минимальные требования к масштабированию
Resiliency | Минимальные обязательные домены сбоя |
---|---|
Двустороннее зеркальное отображение | 2 |
Трехсторонняя зеркальная копия | 3 |
Двойной четности | 4 |
Mixed | 4 |
Tip
Если не используется шасси или отказоустойчивость стойки, количество доменов отказов соответствует количеству серверов. Количество дисков на каждом сервере не влияет на типы устойчивости, которые можно использовать, если вы соответствуете минимальным требованиям для локальных дисковых пространств.
Эффективность двойного четности для гибридных развертываний
В этой таблице показана эффективность хранения с использованием кодов двойной четности и локальных кодов восстановления на каждом уровне для гибридных развертываний, включающих как жесткие диски (HDD), так и твердотельные накопители (SSD).
Домены сбоя | Layout | Efficiency |
---|---|---|
2 | – | – |
3 | – | – |
4 | RS 2+2 | 50.0% |
5 | RS 2+2 | 50.0% |
6 | RS 2+2 | 50.0% |
7 | RS 4+2 | 66.7% |
8 | RS 4+2 | 66.7% |
9 | RS 4+2 | 66.7% |
10 | RS 4+2 | 66.7% |
11 | RS 4+2 | 66.7% |
12 | ЦУР (8, 2, 1) | 72.7% |
13 | ЦУР (8, 2, 1) | 72.7% |
14 | ЦУР (8, 2, 1) | 72.7% |
15 | ЦУР (8, 2, 1) | 72.7% |
16 | ЦУР (8, 2, 1) | 72.7% |
Эффективность двойной четности для всефлешевых развертываний
В этой таблице показана эффективность использования хранилища с двойной четностью и локальных кодов восстановления для каждого уровня в развертываниях на основе флэш-памяти, которые содержат только твердотельные накопители (SSD). Макет четности может использовать более крупные размеры групп и повысить эффективность хранения в конфигурации all-flash.
Домены сбоя | Layout | Efficiency |
---|---|---|
2 | – | – |
3 | – | – |
4 | RS 2+2 | 50.0% |
5 | RS 2+2 | 50.0% |
6 | RS 2+2 | 50.0% |
7 | RS 4+2 | 66.7% |
8 | RS 4+2 | 66.7% |
9 | RS 6+2 | 75.0% |
10 | RS 6+2 | 75.0% |
11 | RS 6+2 | 75.0% |
12 | RS 6+2 | 75.0% |
13 | RS 6+2 | 75.0% |
14 | RS 6+2 | 75.0% |
15 | RS 6+2 | 75.0% |
16 | ЦУР (12, 2, 1) | 80.0% |
Examples
Если у вас не меньше двух серверов, мы рекомендуем использовать трехстороннее зеркальное отображение либо двойную четность, поскольку они обеспечивают более высокую отказоустойчивость. В частности, они гарантируют, что все данные остаются безопасными и постоянно доступными, даже если два домена сбоя — с Storage Spaces Direct, это означает, что два сервера пострадали от одновременных сбоев.
Примеры, где все остается в сети
В этих шести примерах показано, что может терпеть трехсторонняя зеркальная и/или двойная четность.
- 1. Один диск потерян (включает диски кэша)
- 2. Один сервер потерял
- 3. Один сервер и один диск потеряны
- 4. Два диска, потерянные на разных серверах
- 5. Более двух дисков потеряны до тех пор, пока не более двух серверов затронуты
- 6. Два сервера потеряли
... В каждом случае все тома остаются в сети. (Убедитесь, что кластер поддерживает кворум.)
Примеры, в которых все идет в автономном режиме
На протяжении всего срока службы пулы хранения могут терпеть любое количество сбоев, так как они восстанавливаются до полной устойчивости после каждого из них, при условии наличия достаточного времени. Однако в любой момент может быть безопасно затронуто максимум два домена отказа. Ниже приведены примеры того, что трехсторонняя зеркальная и/или двойная четность не допускается .
- 7. Диски, потерянные на трех или более серверах одновременно
- 8. Три или более серверов, потерянных одновременно
Usage
Ознакомьтесь со сведениями о создании томов.
Дальнейшие шаги
Дополнительные сведения о темах, упомянутых в этой статье, см. в следующих статьях:
- Кодирование стиранием в Azure от Microsoft Research
- Локальные коды реконструкции и ускорение обработки томов четности
- тома в API управления хранилищами