Что именно меняется при добавлении диска и расширении RAID
В аппаратном RAID объектами могут быть disk group, array, Virtual Drive или Logical Drive; в Linux MD — md-устройство. Названия и границы объектов зависят от реализации.
| Операция | Что меняется | Что не происходит автоматически |
|---|---|---|
| Добавление физического диска | Контроллер или ОС видит новый физический диск. | Диск не обязательно становится участником массива и не увеличивает объём ОС. |
| OCE | Поддерживаемый массив перераспределяет данные с добавлением дисков или увеличением доступной ёмкости участников. | Разделы, LVM, шифрование и файловая система обычно не растут сами. |
| RLM | Существующий массив преобразуется из одного RAID-уровня в другой, если переход документирован. | Поддержка перехода, число нужных дисков и итоговый объём нельзя предполагать по общему названию RAID. |
| Увеличение Virtual Drive или Logical Drive | Логический диск, предоставленный ОС, получает больший размер. | Файловая система не увидит свободное место, пока не расширены реально существующие верхние слои. |
| Увеличение файловой системы | Файловая система начинает использовать свободное пространство своего блочного устройства. | Нижележащий RAID, раздел или LVM не меняются. |
Не смешивайте аппаратный RAID, программный RAID Linux с mdadm, ZFS и RAID-функции файловых систем. У них различаются метаданные, команды, допустимые изменения и восстановление. Для выбора реализации полезно сравнить программный и аппаратный RAID.
Сначала определите владельца RAID и схему слоёв
До изменения зафиксируйте, кто формирует массив: аппаратный RAID контроллера, mdadm, ZFS или другая подсистема. Если ОС получает один Virtual Drive от RAID-контроллера, она обычно не знает о составе физических дисков и не может расширить сам массив средствами LVM или файловой системы.
lsblk -o NAME,SIZE,TYPE,FSTYPE,FSVER,UUID,WWN,SERIAL,MOUNTPOINTSfindmnt -T /путь/к/даннымpvs; vgs; lvs -a -o +devicescat /proc/mdstat; mdadm --detail /dev/mdXРасширяют только присутствующие в конкретной схеме слои и только снизу вверх. LUKS/dm-crypt нельзя пропускать, если он расположен между RAID-устройством и LVM или файловой системой.
| Фактическая схема | Порядок роста после увеличения RAID-устройства |
|---|---|
| Logical Drive → файловая система | Увеличить Logical/Virtual Drive → увеличить файловую систему. |
| Logical Drive → раздел → файловая система | Увеличить Logical/Virtual Drive → расширить раздел → увеличить файловую систему. |
| Logical Drive → LVM PV → LV → файловая система | Увеличить Logical/Virtual Drive → увеличить PV → увеличить нужный LV → увеличить файловую систему. |
| Logical Drive → раздел → LVM PV → LV → файловая система | Увеличить Logical/Virtual Drive → расширить раздел → увеличить PV → увеличить нужный LV → увеличить файловую систему. |
| Logical Drive или раздел → LUKS/dm-crypt → LVM либо файловая система | Увеличить нижнее устройство → выполнить документированное для используемой версии изменение размера LUKS/dm-crypt mapping → затем расширять PV, LV и/или файловую систему, если они есть. |
Шифрование и промежуточные отображения
Какие возможности сверять в документации контроллера или реализации
- Точную модель контроллера, версию его прошивки, драйвера и утилиты управления. Термины
OCE,RLM,reconfigure,transformилиexpand virtual diskв разных семействах могут означать разные операции. - Исходный и целевой RAID-уровень, минимальное и максимальное число участников, необходимость добавлять диск и допустимую конфигурацию зеркальных и parity-массивов.
- Какой объект расширяется: array, disk group, Virtual Drive, Logical Drive или md-устройство; появляется ли свободное место у существующего логического диска либо требуется отдельное поддерживаемое де йствие.
- Совместимость новых дисков: интерфейс, секторный формат, ёмкость, прошивка, поддержка SSD и NVMe, ограничения корзины и контроллера. Особенности SSD, M.2 и NVMe разобраны в статье «RAID на SSD, M.2 и NVMe».
- Поддержку операции на работающем хосте, доступные статусы и журнал событий, возможность изменить приоритет, поставить задачу на паузу или отменить её. Не считайте паузу и отмену доступными, пока это не подтверждено документацией.
- Для
mdadm: формат RAID-метаданных, версию ядра и mdadm, изменение числа участников и уровня, ограничения reshape, а также требуемый запас свободного места или резервная область по документации выбранной версии.
Даже контроллеры одного бренда и одного семейства могут иметь разные матрицы OCE/RLM. Поэтому здесь намеренно нет универсального списка переходов дл я Dell PERC, HPE Smart Array или Broadcom/MegaRAID. Для аппаратной конфигурации сначала соберите модель, firmware и текущую топологию; пример безопасной инвентаризации MegaRAID дан в статье «MegaRAID и StorCLI: настройка RAID и проверка состояния в Linux».
Стоп-критерии перед расширением RAID-массива
Не запускайте OCE, RLM или reshape при проблемном состоянии
Для аппаратного RAID отдельно проверьте защищённый кэш и его политику. Состояния BBU, CacheVault, flash-модуля или суперконденсатора могут отключить Write-Back кэш либо переключить контроллер в Write Through. Не включайте Write Back принудительно ради ускорения длительной операции: допустимое поведение определяет документация контроллера. Диагностика и замена модулей защиты кэша описаны в отдельной инструкции.
Маршрут: расширение RAID или смена RAID-уровня
Последовательность не подменяет руководство производителя. Она помогает подтвердить, что документированная операция относится именно к вашему массиву и что верхние слои будут увеличены в безопасном порядке.
- 1Зафиксируйте исходную конфигурациюСохраните отчёт контроллера или
mdadm, модель и версию firmware/ПО, RAID-уровень, состав дисков, enclosure:slot или серийные номера, размер предоставленного ОС устройства, схемуlsblk, LVM и точки монтирования. Зафиксируйте состояние массива, физических дисков, кэша и активных фоновых задач. - 2Проверьте резервную копию восстановлениемКопия должна быть завершённой, актуальной и независимой от изменяемого массива. Подтвердите восстановление хотя бы выборочных данных либо тестового экземпляра и определите, сколько времени оно займёт. RAID не заменяет резервное копирование: причины и требования к проверке разобраны в статье «Почему RAID — не резервное копирование».
- 3Подтвердите поддерживаемый переходПо документации именно вашей модели и версии подтвердите исходный и целевой RAID-уровни, число и тип дисков, возможность OCE/RLM или md reshape, объект изменения, онлайн-режим и действия при ошибке. Если хотя бы один пункт не подтверждён, не применяйте команды или пункты GUI по аналогии с другой моделью.
- 4Убедитесь, что массив здоровПроверьте Optimal/Normal либо эквивалентный статус массива, отсутствие Rebuild, синхронизации RAID, background initialization и consistency check. Проверьте события контроллера, состояние каждого диска и для аппаратного RAID — кэш, BBU/CacheVault или суперконденсатор.
- 5Подготовьте окно наблюдения и критерии остановкиНастройте оповещения, назначьте ответственного, определите допустимые задержки и нагрузку на период операции. Подготовьте документированный путь реакции на ошибку. Не планируйте отмену, перезагрузку или выключение как универсальный способ исправить ситуацию.
- 6Выполните только документированную операцию RAIDДобавьте подтверждённые диски и запустите OCE, RLM или reshape в штатной утилите владельца массива. Не меняйте одновременно RAID-уровень, прошивку контроллера, топологию подключения и несколько независимых массивов без отдельного плана.
- 7Дождитесь завершения и проверьте новый размер нижнего устройстваУбедитесь, что операция завершилась штатно, статус массива нормальный, все ожидаемые диски видны, а ОС обнаружила именно увеличенное Logical/Virtual Drive или md-устройство. Только после этого переходите к разделам, LUKS, LVM и файловой системе.
- 8Расширьте существующие верхние слои снизу вверхСледуйте фактической схеме: раздел, затем LUKS/dm-crypt при наличии, затем LVM PV, LV и файловая система. Не создавайте новые разделы или тома там, где требуется рост существующего объекта, пока не подтверждён план разметки и восстановления.
- 9Подтвердите результатСверьте размер на каждом слое, UUID и точки монтирования, доступность приложений, журналы ОС и контроллера, задержки ввода-вывода и состояние кэша. Сохраните новый снимок конфигурации и проверьте, что резервное копирование продолжает выполняться.
Как расширять разделы, LVM и файловую систему
После OCE или RLM ОС может видеть прежний размер Logical/Virtual Drive, пока драйвер или подсистема хранения повторно не запросит ёмкость устройства. Безопасный способ повторного обнаружения зависит от ОС, драйвера и контроллера. Сначала подтвердите новый размер блочного устройства средствами ОС. Если в фактической схеме есть раздел, после этого отдельно расширьте его и обновите сведения о таблице разделов в ядре документированным для используемой ОС способом. Затем меняйте только те верхние слои, которые действительно присутствуют.
ext4обычно поддерживает увеличение смонтированной файловой системы, если нижнее блочное устройство уже стало больше. Уменьшение требует размонтирования и отдельной процедуры.XFSподдерживает рост смонтированной файловой системы; штатного уменьшения XFS нет. Если треб уется меньший размер, обычно создают новую файловую систему нужного размера на другом томе и переносят либо восстанавливают данные.Btrfsподдерживает изменение размера, включая уменьшение, но это не делает безопасным уменьшение нижележащего RAID, раздела или шифрованного отображения. Сначала подтверждают состояние файловой системы и процедуру для используемой версии.- LVM позволяет увеличивать PV и LV при наличии расширенного нижнего устройства. Уменьшение LV требует отдельной проверки файловой системы: нельзя сокращать LV ниже занятого или минимально допустимого размера файловой системы.
- Если файловая система находится непосредственно на Logical Drive, раздела, LVM и LUKS в цепочке нет — их не нужно и нельзя «расширять для порядка».
Не сокращайте нижний слой раньше верхнего
mdadm умеет сократить сам RAID. Сокращение Logical Drive, Virtual Drive или md-устройства раньше всех потребителей может немедленно сделать часть данных недоступной.Можно ли работать во время OCE и RLM
При документированной онлайн-поддержке сервер обычно может продолжать читать и записывать данные, пока OCE, RLM или reshape выполняются в фоне. Но операция конкурирует с приложениями за диски, контроллер, шину и кэш: задержки могут вырасти, а пропускная способность — снизиться. Для баз данных, в иртуальных машин и других чувствительных нагрузок заранее согласуйте ограничение фоновых заданий, перенос части нагрузки или окно пониженной активности.
- Контролируйте процент и статус операции в штатной утилите контроллера либо в системных средствах MD.
- Следите за состоянием логического массива, каждого диска, кэша и сообщениями контроллера; отдельный мониторинг S.M.A.R.T. может быть ограничен способом подключения дисков.
- Измеряйте задержки и ошибки I/O на хосте, а не только процент выполнения операции.
- Проверяйте, не запущены ли параллельно Rebuild, Patrol Read, Consistency Check, фоновая инициализация или задачи, которые документация считает конфликтующими.
- Возможность паузы, отмены либо изменения приоритета проверяйте для конкретной модели и версии. Не останавливайте уже запущенную задачу вслепую.
Если Degraded, Offline, Failed или ошибки накопителя обнаружены до запуска OCE, RLM или reshape, не начинайте операцию. Если состояние ухудшилось во время уже выполняемой миграции, не запускайте новые фоновые задачи и не пытайтесь вслепую отменять операцию, перезагружать или выключать сервер. Сохраните статусы, прогресс и журналы, затем следуйте документированной процедуре конкретной реализации и материалу «RAID Degraded, Offline или Failed: диагностика отказа дисков».
Почему срок расширения RAID нельзя назвать заранее
Размер массива — только один из факторов. При OCE, RLM и reshape может перераспределяться значительная часть полос, зеркальных блоков или чётности, поэтому два массива одинаковой ёмкости способны завершиться за разное время.
- исходный и целевой RAID-уровень, число дисков и объём данных, который нужно переразложить;
- тип, ёмкость и фактическая производительность HDD, SSD или NVMe, а также состояние и ошибки накопителей;
- текущая нагрузка хоста, очередь запросов, пиковые задания резервного копирования, базы данных или виртуальных машин;
- приоритет фоновой операции, настройки контроллера или ядра, работа кэша и параллельные фоновые задачи;
- возможные повторы операций чтения, коррекция ошибок и ограничение производительности при проблемах с кэшем или дисками.
