Растягивание железного рейда
Итак, дано следующее:
- raid-контроллер LSI, скажем LSI 9260-8i или любой другой контроллер LSI.
- raid6 на 20 дисков
- 12 новых HDD
- среднесуточная нагрузка – 1300 IOPS на чтение, 135 IOPS на запись.
Делаем следующе:
- Удостоверяемся, что у нас есть свежий бэкап всего находящегося на рейде, и располагается этот бэкап не на этом рейде.
- Убеждаемся, что рейд который мы хотим растянуть находится в оптимальном состоянии:
MegaCli -LDInfo -LALL -a0В выдаче ищем вот это:
State : Optimal - Вставляем в сервер новые HDD.
- Получаем список дисков сервера:
MegaCli64 -PDList -a0
смотрим на диски в статусе Unconfigured Good, и записываем их Enclosure Device ID и Slot Number. - Запускаем расширение рейда:
MegaCli -LDRecon -Start -r6 -Add -Physdrv[EnclosureID1:SlotNumber1,EnclosureID2:SlotNumber2,EnclosureID3:SlotNumber3] -LRAID -aController
с реальными параметрами это будет выглядеть примерно так:
MegaCli -LDRecon -Start -r6 -Add -Physdrv[21:17,21:18,21:19] -L0 -a0
- C момента запуска, категорически не рекомендуется что-либо делать с сервером примерно 1 неделю. При наличии нагрузки на рейде, именно столько займет растягивание рейда и его последующая инициализация.
Все время работы с рейдом, он будет полностью доступен и теоритически ваши пользователи даже не заметят происходящих изменений. Однако:
- Рейд будет принудительно переведен в режим Direct-IO, кэширования чтения со стороны контроллера не будет.
- Рейд будет принудительно переведен в режим Write-Through, кэширования записи со стороны контроллера не будет.
- Средний IOwait поднимется на 5-50 миллисекунд, в зависимости от приоритета реконструкции и инициализиации.
Также следует обратить внимание на еще пару системных нюансов:
- Если вы хотите изменить приоритет реконструкции или инициализации, сделать это вы должны ДО начала процесса растягивания рейда.
- В существующих драйверах и прошивках LSI 92хх есть баг: по завершении процесса добавления новых дисков вы никак не заставите систему увидеть новое пространство. Для этого понадобится перезагрузка операционной системы.