- Записки IT специалиста
- Windows Server. Настраиваем программный RAID.
- Поддержка
- Особенности работы программного RAID в Windows Server
- Возможности программного RAID в Windows Server
- Динамические диски
- Невозможно создать тома с разными уровнями RAID
- Одновременная синхронизация томов
- RAID5
- Пример грамотной реализации программного RAID
- Software RAID configuration — Windows Server 2012
- To Create a Storage Pool
- To Create a Volume
- Related articles
- Have More Questions?
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»
- Главная
- Windows Server. Настраиваем программный RAID.
Windows Server. Настраиваем программный RAID.
Перед тем как продолжить, снова вспомним основной принцип построения аппаратных массиво: один элемент массива — один физический диск. Основа программных массивов — логический диск. Понимание этой разницы — залог успеха, то что применимо к аппаратному массиву, может оказаться катастрофическим для программного, особенно если речь идет об отказе одного из элементов массива.
Для создания программного RAID в среде Windows нам понадобится познакомиться с понятием динамического диска, так как программные массивы могут быть созданы только на них. Репутация динамических дисков неоднозначна, многие администраторы шарахаются от них, как черт от ладана. А зря, запомнив несколько простых правил работа с динамическими дисками становится столь же проста как с обычными.
Главное правило: установка или загрузка Windows с динамического тома возможна только в том случае, если этот диск был преобразован из системного или загрузочного тома. Т.е. если у вас стоит несколько экземпляров ОС, то после преобразования диска в динамический вы сможете загрузить лишь тот экземпляр, который находится на загрузочном разделе.
Исходя из этого правила становится очевидно, что для загрузочного и системного томов возможно создание только зеркального массива (RAID1), создание иных видов массива невозможно, так как они подразумевают установку системы на заранее созданный раздел.
А стоит ли овчинка выделки? Несмотря на все ограничения, стоит. Основной недостаток аппаратных массивов — привязка к конкретной модели контроллера. Если у вас сгорела материнская плата или контроллер, вам понадобится точно такой же (или материнская плата с аналогичным контроллером), иначе с данными можно попрощаться. В случае программного RAID достаточно машины с установленным Windows Server.
На практике работа с программными массивами и динамическими дисками производится через оснастку Хранение — Управление дисками в Диспетчере сервера. Для преобразования дисков в динамические достаточно щелкнуть на одном из них правой кнопкой мыши и выбрать Преобразовать в динамический диск, в открывшемся окне можно выбрать для преобразования сразу несколько дисков.
Стоит помнить, что эта операция необратимая и особое внимание следует уделить системному разделу, переразметить загрузочный диск у вас уже не получится (точнее он после этого перестанет быть загрузочным), единственное, что вы сможете — это расширить том за счет неразмеченного пространства.
Следующим шагом станет создание массива, щелкаем правой кнопкой мыши на нужном томе и выбираем желаемый вариант, в случае с системным и загрузочными томами вариант будет один — зеркало, потом вам будет предложено выбрать диск для размещения зеркального тома. По завершению создания массива тут же начнется его ресинхронизация.
Подключив дополнительные диски мы получим гораздо более широкие возможности, вы можете как объединить несколько дисков в отдельный том, так и создать RAID 0, 1 или 5.
В общем ничего сложного, однако множество ограничений способны отпугнуть кого угодно. Но не спешите делать скоропалительных выводов, по здравому размышлению никаких серьезных препятствий нет, так как обычно принято разносить систему и данные по разным дискам, учитывая копеечную стоимость современных дисков, это не влечет существенных затрат. Мы, например, для нашего тестового сервера создали зеркало для системного диска и RAID5 для данных.
Причем все это удовольствие можно реализовать на самой обычной бюджетной материнской плате, учитывая, что производительность программного массива ничем не отличается от дешевых аппаратных, данная технология выглядит очень привлекательно. О методах обеспечения отказоустойчивости и действиях при отказе дисков мы поговорим в нашей следующей статье.
Поддержка
Категория: Администрирование
Программный RAID масиивы в Windows могут быть созданы только на динамических дисках.
Так что прежде чем создавать RAID необходимо пероброзовать оба диска к этому виду.
Заходим в Панель управления — Управление компьютером — Управление дисками
У нас два диска. Один — системный с двуми разделами Зарезервировано системой и диск C .
Второй такого же объема — нераспределенный.
Кликаем на один из дисков, выбираем Преобразовать в динамический диск
В появившемся окне добавляем к операции второй диск и жмем OK и далее Преобразовать
Далее идет предупреждение, что будет загружаться только текущая ОС Windows.
В результате оба диска теперь отображаются, как динамические
Теперь приступаем к зеркалированию.
Выбираем первый том Зарезервировано системой , кликаем правой кнопкой мыши, выбираем Добавить зеркало
Выбираем Диск1 в качестве зеркального, жмем Добавить зеркальный том
После этого начнется ресинхронизация тома
Аналогичным образом добавляем зеркальный том для диска С
Ресинк идет долго. В это время сервер может заметно притормаживать.
После ресинка, картина будет следующая. Оба тома стали зеркальные
Особенности работы программного RAID в Windows Server
В этой статье я обзорно расскажу о возможностях по организации RAID массивов встроенными средствами Windows Server и подробно о том, какие подводные камни могут встретиться при создании и эксплуатации таких массивов.
Возможности программного RAID в Windows Server
Поддерживаются следующие массивы:
- чередующийся том (striped volume, RAID0)
- зеркальный том (mirrored volume, RAID1)
- том RAID5 (RAID5 volume)
- охватывающий том (spanned volume, один логический том размещается более чем на одном физическом диске)
Динамические диски
Массивы RAID можно создавать только на динамических дисках — особая разметка физических дисков (понятная только Windows), которая обладает следующими особенностями:
- Обычный (базовый) диск можно преобразовать в динамический только целиком.
- Обратное преобразование динамического диска в базовый возможно, но только если с динамического диска удалить все тома.
- Динамический диск представляет собой один большой NTFS раздел, на котором с помощью хитрой служебной информации может размещаться большое количество томов (как простых, так и RAID), имеется возможность изменять размеры простых томов штатными средствами Windows. Однако, насколько оптимально и фрагментировано будут размещаться данные, мне не известно.
- Известные мне программы клонирования, восстановления и изменения размеров дисков не поддерживают динамические диски.
- Динамические диски, содержащие RAID-тома, могут быть перенесены на другой компьютер с Windows Server, так как содержат необходимую информацию для правильной сборки массива.
Невозможно создать тома с разными уровнями RAID
На одной группе физических дисков можно создавать тома RAID только одного типа (уровня). Например, если у нас есть 3 физических диска, и мы создали на них том RAID5, не занимая всего пространства. Мы не сможем в свободном пространстве создавать тома другого уровня RAID (RAID0 и RAID1), а только RAID5 и простые тома.
Одновременная синхронизация томов
Если на одной группе дисков создано несколько томов RAID, то в случае какого-либо сбоя после загрузки компьютера они начинают восстанавливаться одновременно. Это лютый, бешеный EPIC FAIL! Простая ситуация: имеется два физических диска, на них создано два RAID1 тома, один под операционную систему, другой под данные.
Такая схема замечательно работает до первого сбоя (простейшие виды — внезапное отключение питания или синий экран). И тут приходит ужас. Операционная система загружается и в это же время начинает одновременно синхронизировать оба тома RAID1. Таким образом, физические диски получают конкурирующие команды для интенсивных последовательных операций сразу в трех разных физических областях. При этом механика дисков дико изнашивается, кэш бесполезен.
Со стороны такая «отказоустойчивость» выглядит следующим образом: общее быстродействие дисковой подсистемы падает раз в 20, сама ОС загрузится либо после окончания синхронизации одного из томов (минут 15, если он небольшой, гиг на 50), либо минут через 20 и будет бесполезна до конца синхронизации одного из томов.
Вышеописанное поведение я считаю недопустимым архитектурным просчетом со стороны Microsoft и удивлен тем, что эта беда не решена до сих пор со времен появления программного RAID в Windows 2000 Server.
Если вы попали в описанную ситуацию, то не стоит дожидаться загрузки ОС и изнашивания дисков.
- Отключаете один из физических дисков.
- Загружаетесь в ОС с нормальной скоростью.
- Разбиваете зеркало, превратив тома RAID1 в простые.
- Подключаете обратно второй диск.
- Создаете только одно зеркало для необходимого вам тома.
RAID5
Опишу сценарий, при котором вы не сможете восстановить деградировавший массив RAID5 до здорового состояния, даже если для этого предоставлены все условия.
- Имеется массив RAID5 из шести дисков (Диск1-Диск6).
- Среди них есть один сбойный Диск1 (например, из терабайтного объёма пара мегабайт не читаются), но операционная система об этом еще не знает и как сбойный его не отметила.
- По каким-либо причинам от массива был отключен исправный Диск2.
- Следуя логике RAID5, при отказе одного диска работоспособность массива сохраняется, такой массив помечается как деградировавший (degraded), скорость его работы резко падает, требуется синхронизация с новым исправным диском.
- Исправный Диск2 подключается на место. Система его опознает как сбойный. Чтобы синхронизировать массив, этот сбойный диск нужно удалить из массива RAID5 и определить как пустой.
- Все готово для синхронизации массива. Запускаем исправление массива (repair) на пустой Диск2.
- ВНЕЗАПНО синхронизация натыкается на ошибки чтения на действительно неисправном диске Диск1 и останавливается.
- Весть массив остается деградированным. Диск1 помечен как содержащий ошибки (errors), Диск2 помечен как online, однако из-за прерванной синхронизации не содержит полных корректных данных.
- В надежде на восстановление подключается совершенно новый исправный Диск7. Запускается восстановление массива на него.
- В результате исправный Диск2 заменяется на другой исправный Диск7, но синхронизация снова прерывается, найдя ошибку на неисправном диске Диск1.
- И так далее по циклу.
Ничего сделать, кроме как скопировать еще читающиеся данные и пересобрать весь массив нельзя.
Не желая признавать поражения, я пытался сделать следующие вещи:
- Синхронизировать массив с пропуском ошибок чтения на диске Диск1 (ведь это всего лишь мегабайты их целого терабайта). Но Microsoft не дает такой возможности.
- Посекторно переписать весь сбойный Диск1 на другой здоровый диск с помощью программ для клонирования. Однако, доступные мне программы с динамическими дисками не работали.
Пример грамотной реализации программного RAID
От перечисленных выше недостатков избавлена аппаратно-программная реализация RAID-контроллера, известная как Intel Matrix Storage, и недавно переименованная в Intel Rapid Storage (работает на RAID-версиях чипсетов, таких как ICH9R, ICH10R). Аппаратно-программный RAID от Intel обеспечивает многие преимущества «врослых» RAID-контроллеров:
- возможность определить диски горячей замены
- возможность создавать тома разного уровня RAID на одной группе дисков
- последовательная синхронизация и проверка RAID томов на группе дисков
Основным ее недостатком, в отличии от полностью аппаратных RAID-контроллеров, остается «программность», из которой вытекают:
- отсутствие встроенного кеша и возможности автономной работы в случае аварии
- полностью зависит от операционной системы и драйверов
- выполняемые операции на дисковой подсистеме нагружают основной процессор и память
- отсутствует поддержка продвинутых вычислительно емких уровней RAID, таких как RAID6
Software RAID configuration — Windows Server 2012
Software RAID configuration — Windows Server 2012
Storage Virtualization — Disk virtualization is working like a software RAID with better scalability, resiliency and optimization.
The basic concept is to group physical disks together into a container called storage pools and to manage those disks as a single storage space.
The Raid Levels of a virtual disk can be:
Simple: This is a stripe set with no parity, similar to RAID 0. There is no redundancy. It has a better performance and more capacity available compared to a configuration with a single disk.
Mirror: This is a mirror set, similar to RAID 1. Data is duplicated across two or three disks, increasing reliability but decreasing the total size in half. This configuration protects data from a single drive failure or from two simultaneous drive failures in the case of a five disk configuration.
Parity: This is a striped set with distributed parity, similar to RAID 5. This configuration protects data from a single disk failure. It requires a minimum of three disks to operate.
To Create a Storage Pool
Within the Server Manager under File and Storage Services > Volumes > Storage Pools.
Click on the drop down text box ‘Tasks’ then click ‘New Storage Pool’
Create a storage pool name and click the ‘Next’ button.
Select the disks you want to add to the storage pool, configure the allocation, and click the ‘Next’ button, then ‘Create’.
To create a Virtual Disk
Select the Storage Pool and on the Virtual Disks Tasks select New Virtual Disk.
Select the Storage Pool and click the ‘Next’ button.
Give it a name and click on the ‘Next’ button.
Select the Layout option you want and click on the ‘Next’ button.
Select the Provision Type and click on the ‘Next’ button.
Select the Size and click on the ‘Next’ button.
Finally, click the ‘Create’ button.
Lastly, you will need to create a volume
Make sure to check the option ‘Create a volume when this wizard closes’ and click ‘Close’.
To Create a Volume
Select the new Virtual Disk and click the ‘Next’ button.
Set the Volume Size and click on the ‘Next’ button.
Specify a Drive letter or assign it to a folder, then click on the ‘Next’ button.
Set the file system settings and click on the ‘Next’ button.
Click on the ‘Create’ button to finish.
To view disks by using Powershell
List the available physical disks along with their status and their ability to participate in storage pools.
The Get-Disk cmdlet will return information about any disk attached to the current operating system
We can use Get-PhysicalDisk to get information about disks the operating system sees as physical disks
Lastly Get-VirtualDisk to see information about virtual disks created from storage pools
Created: February 26, 2018 22:56
Last Updated: February 26, 2018 22:56
Related articles
Have More Questions?
Contact our support instantly via Live Chat