Назад | Перейти на главную страницу

Миграция NAS с использованием LVM на аппаратный RAID1 без потери данных

Я пытаюсь понять, как добавить RAID 1 к моему серверу CentOS NAS. Сегодня у меня диски 2x3 ТБ в конфигурации без RAID. Я использую LVM для управления несколькими логическими томами для разделения данных. Я не использую почти полную емкость 6 ТБ, но хочу, чтобы в будущем комната расширилась. Я также регулярно делаю резервные копии за пределами офиса с помощью CrashPlan, но я хочу убедиться, что сбой диска не будет означать дни простоя для восстановления данных.

Итак, я планирую купить еще 2 диска по 3 ТБ для настройки RAID 1. Я хочу сделать так, чтобы новые диски были соединены со старыми, поскольку старым сейчас пара лет, и вероятность их выхода из строя выше.

Сегодня я использую примерно 1,6 ТБ из 6 ТБ, поэтому я думаю, что могу немного передвигаться и минимизировать риск потери данных. Может ли кто-нибудь указать мне на руководство или помочь убедиться, что эти шаги сработают? Я знаю, что существует некоторый риск, что что-то пойдет не так, поэтому у меня будут резервные копии, но я хочу убедиться, что эти шаги должны работать с низким риском, чтобы сэкономить время.

  1. Сначала я объединю 6 ТБ LVM VG в один PV. Итак, если / dev / sdb1 и / dev / sdc1 - мои старые диски, я уменьшу некоторые из моих LV (resize2fs, lvresize), перенесу все на sdb1 (pvmove) и удалю sdc1 из VG (vgreduce).
  2. Затем я добавлю новый диск и создам RAID 1 в настройках BIOS для sdc1 и нового диска (назовите его sdd1). Назовем это rda1 (я не знаю, какое именование используется, но для ясности в моих действиях).
  3. Добавить rda1 в мой VG (vgextend)
  4. Переместите все LV в rda1 (pvmove)
  5. Удалите sdb1 из VG (vgreduce)
  6. Добавьте другой новый диск и создайте RAID 1 в BIOS для sdb1 и нового диска 2 (sde1). Назовем это rdb1.
  7. Добавить rdb1 в мой VG (vgextend)

Наконец, мне бы очень хотелось перераспределить данные по обоим RAID-массивам, чтобы они не лежали на одном. Имеет ли мне смысл просто вручную переместить некоторые LV на другой диск RAID? Могу ли я как-то добавить чередование и позволить данным распределяться равномерно, или мне придется воссоздавать LV для этого?

Вот краткий обзор моей текущей настройки (у меня также есть SSD с установленной ОС и LVM, но я просто показываю диски с данными):

$ sudo pvdisplay
  --- Physical volume ---
  PV Name               /dev/sdb1
  VG Name               vg_media
  PV Size               2.73 TiB / not usable 19.00 MiB
  Allocatable           yes
  PE Size               32.00 MiB
  Total PE              89424
  Free PE               19792
  Allocated PE          69632
  PV UUID               D0Z3Fn-40Yr-akkx-TsLH-n5iM-LQNc-vdLbMf

  --- Physical volume ---
  PV Name               /dev/sdc1
  VG Name               vg_media
  PV Size               2.73 TiB / not usable 19.00 MiB
  Allocatable           yes
  PE Size               32.00 MiB
  Total PE              89424
  Free PE               40272
  Allocated PE          49152
  PV UUID               4A1tD5-Rj2I-IdZX-2FPS-4KmS-WnjT-TcAGPf

$ sudo vgdisplay
  --- Volume group ---
  VG Name               vg_media
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  7
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                4
  Open LV               4
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               5.46 TiB
  PE Size               32.00 MiB
  Total PE              178848
  Alloc PE / Size       118784 / 3.62 TiB
  Free  PE / Size       60064 / 1.83 TiB
  VG UUID               wneSMl-nllf-9yaO-GGv2-iDGv-n4vK-mVfGjk

$ sudo lvdisplay
  --- Logical volume ---
  LV Path                /dev/vg_media/library
  LV Name                library
  VG Name                vg_media
  LV UUID                AOs1yk-sVQE-f6sI-PstX-txtm-mu2d-mgJj4W
  LV Write Access        read/write
  LV Creation host, time srv.mattval.us.to, 2013-05-13 02:37:31 -0700
  LV Status              available
  # open                 1
  LV Size                1.00 TiB
  Current LE             32768
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:2

  --- Logical volume ---
  LV Path                /dev/vg_media/photos
  LV Name                photos
  VG Name                vg_media
  LV UUID                2DWA1Q-MYTH-1bqq-QgW3-7LiJ-3jNe-v9WXlK
  LV Write Access        read/write
  LV Creation host, time srv.mattval.us.to, 2013-05-13 02:37:48 -0700
  LV Status              available
  # open                 1
  LV Size                1.00 TiB
  Current LE             32768
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:3

  --- Logical volume ---
  LV Path                /dev/vg_media/projects
  LV Name                projects
  VG Name                vg_media
  LV UUID                027kQC-dSSJ-Bo40-Xmpa-8ELo-hbGD-jZITBJ
  LV Write Access        read/write
  LV Creation host, time srv.mattval.us.to, 2013-05-13 02:38:01 -0700
  LV Status              available
  # open                 1
  LV Size                1.50 TiB
  Current LE             49152
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:4

  --- Logical volume ---
  LV Path                /dev/vg_media/docs
  LV Name                docs
  VG Name                vg_media
  LV UUID                El10u0-yYeW-XekC-TP7t-xF9t-qLgz-aFU8AQ
  LV Write Access        read/write
  LV Creation host, time srv.mattval.us.to, 2013-05-13 02:38:15 -0700
  LV Status              available
  # open                 1
  LV Size                128.00 GiB
  Current LE             4096
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:5

Фактические используемые размеры: документы = 100 ГБ, библиотека = 500 ГБ, фотографии = 350 ГБ, проекты = 620 ГБ

Serverfault предназначен для профессиональных системных администраторов, которые, по сути, сделают резервную копию всего своего набора данных, прежде чем делать что-то подобное. В этот момент - если у вас есть время для этого - многие просто стерли бы, перенастроили / переформатировали и восстановили. Таким образом, у вас есть известная стабильная установка.

Не HW, но один простой вариант, который следует рассмотреть, - это преобразование логических томов в RAID1 с использованием lvconvert --type raid1 -m 1 vg/lv при необходимости указать, какой PV следует использовать, чтобы вы правильно соединяли новые диски со старыми. Это использует тот же драйвер ядра, что и mdadm.

ЗА:

  • большая гибкость, позволяющая использовать линейные / чередующиеся LV для выбрасывания / массовых данных (например, кешей или загруженных образов ISO), а также RAID1 и / или RAID5 для других по вашему желанию
  • будет работать в другом месте, если ваш RAID-контроллер выйдет из строя. Под другим местом я подразумеваю, что если вы подключите диски в другом месте, они будут распознаны последними Linux распространение. Это точно не будет работать под Windows или * BSD, что не является проблемой для вашего NAS.

МИНУСЫ:

  • немного большая нагрузка на сервер (у меня нет цифр производительности).

LVM против mdadm:

ПРО mdadm:

  • mdadm более широко используется, протестирован поколениями администраторов, многими учебниками ...
  • В LVM отсутствуют некоторые функции mdadm (изменение формы), которые вам не нужны (сейчас). Работа в процессе.

PRO lvm:

  • LVM более гибкий, что может вам не понадобиться (сейчас)
  • переход на LVM RAID настолько прост

Производительность:

LVM против mdadm RAID:

  • представление должен быть таким же, но ...
  • есть известная ошибка, при которой некоторые операции с LVM RAID значительно медленнее, чем у mdadm: Ошибка 1332221 - Плохая производительность в fsyncs для lvm raid1

Программный RAID против FakeRAID

  • Понятия не имею, но это во многом зависит от RAID-контроллера.

Разрешение:

Если вам нужно проверенное решение, mdadm raid и LVM поверх этого будут хорошим выбором.

Если вам нужна беспроблемная миграция и гибкость, LVM RAID - ваш выбор.