RAID-10


Разбивка на чередующиеся области зеркалированных дисков, или RAID-10, пожалуй, самый быстрый способ получить высокопроизводительное устройство хранения больших объемов данных. Сначала диски объединяются в зеркальные пары, а затем производится запись данных на эти пары с чередованием. В массивах этого типа отсутствует выделенное устройство для хранения контрольных сумм, вместо этого избыточность обеспечивается зеркалированием, а запись с чередованием — производительность. Для создания такого массива требуется много дисков, но RAID-10 — единственный реальный способ обеспечить высокую пропускную способность.

Формально RAID-10 — это вложенный (nested) RAID. Фактически это RAID-0, работающий поверх RAID-1. Создание этого массива начинается с создания зеркал (RAID-1) а затем добавляется механизм чередования (RAID-0) записи данных на эти зеркала. Платформа GEOM упрощает возможность создания многоуровневых схем.

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

Создание RAID-10

Прежде чем приступить к работе, выпишите на лист бумаги размещение ваших дисков, чтобы потом не запутаться. В этом примере задействованы четыре жестких диска: /dev/da0, /dev/da2, /dev/da3 и /dev/da4. Диски da0 и da2 объединяются в пару mirror0, а диски da3 и da4 — в пару mirror1. Если возможно, диски da0 и da3 не должны быть подключены к одному и тому же контроллеру SCSI, так же как и диски da2 и da4.

Создание зеркал выполняется командой gmirror(8):

# gmirror label -v mirror0 /dev/daO /dev/da2
# gmirror label -v mirror1 /dev/da3 /dev/da4

С помощью команды gmirror status проверьте состояние всех созданных зеркал — убедитесь в том, что они созданы и выполнили синхронизацию.

Теперь с помощью gstripe(8) создайте том, включающий оба зеркала. Мы применим стандартный размер области чередования, а само устройство назовем raid10:

# gstripe label -v -s 131072 raid10 /dev/mirror/mirror0 /dev/mirror/mirror1
Metadata value stored on /dev/mirror/mirror0.
warning: /dev/mirror/mirror1 : only 9105017856 bytes from 9186601984 bytes used.
Metadata value stored on /dev/mirror/mirror1.
Done.

Создание закончено.

Нет, правда! Это действительно все! В каталоге /dev/stripe появилось устройство raid10. Выполните команду newts -U /dev/stripe/rai10, чтобы создать файловую систему на устройстве, смонтируйте ее — и дисковый массив готов к работе!

Состояние RAID-10

Чтобы проверить состояние массива RAID-10, нужно проверить состояния каждого из зеркал и состояние самого устройства чередования:

# gmirror status
          Name    Status  Components
mirror/mirror0  COMPLETE  da0
                          da2
mirror/mirror1  COMPLETE  da3
                          da4

# gstripe status
         Name  Status  Components
stripe/raid10      UP  mirror/mirror0
                       mirror/mirror1

Очень важна работоспособность зеркал. Если одно из зеркал деградирует, нужно заменить вышедший из строя диск и пересобрать зеркало. Устройство чередования не требует обслуживания, как и обычный раздел, созданный командой gstrip(8). Полная потеря одного из зеркал приведет к потере всех данных. Не забывайте, как важно расположить зеркальные диски как можно дальше друг от друга.

Разборка RAID-10

Чтобы прекратить работу RAID-10, нужно сначала разобрать устройство чередования, а затем разобрать зеркала, так же как для любых других дисковых массивов RAID-0 и RAID-1.

Другие типы вложенных дисковых массивов

Вероятно, вы уже подумали: «Я же могу создать RAID-13, настроив RAID-3 поверх зеркал!» Да, платформа GEOM позволит сделать это. Вы можете придумать свои уровни RAID. Можно, например, создать RAID-33 из трех устройств RAID-3, RAID-130, добавив функцию чередования к двум RAID-3, созданным поверх зеркал, RAID-303, и т. д. Однако все эти варианты требуют слишком большого количества дисков, не давая преимуществ, а многие из них в действительности представляют большую угрозу для данных, чем простой RAID-10. Вложенный RAID может нести в себе массу ошибочных состояний, и вполне возможно, что кто-то уже проверил идеи, которые пришли в голову вам. Поэтому прежде чем внедрять тот или иной тип вложенного RAID в рабочую систему, почитайте соответствующую литературу!

Комментарии запрещены.