Пока еще инсталлятор Proxmox не умеет при установки предлагать сделать Software RAID, вот краткая инструкция перевода под raid 1 сразу после установки :
- Комментируем существующий репозитарий, добавляем бесплатный:
# vi /etc/apt/sources.list.d/pve-enterprise.list # echo "deb http://download.proxmox.com/debian wheezy pve pve-no-subscription" >> /etc/apt/sources.list.d/proxmox.list
- Устанавливаем необходимые утилиты:
# apt-get update && apt-get install mdadm initramfs-tools screen
- Копируем таблицу разделов на второй диск
# sgdisk -R /dev/sdb /dev/sda The operation has completed successfully. # sgdisk -G /dev/sdb The operation has completed successfully. # sgdisk --randomize-guids --move-second-header /dev/sdb The operation has completed successfully.
- Меняем тип раздела на raid
# parted -s /dev/sdb set 2 "raid" on # parted -s /dev/sdb set 3 "raid" on
- Далее:
# mdadm --zero-superblock /dev/sdb2 mdadm: Unrecognised md component device - /dev/sdb2 # mdadm --zero-superblock /dev/sdb3 mdadm: Unrecognised md component device - /dev/sdb3
- Создаем массивы
# mdadm --create /dev/md1 --level=1 --raid-disks=2 missing /dev/sdb2 mdadm: Note: this array has metadata at the start and may not be suitable as a boot device. If you plan to store '/boot' on this device please ensure that your boot-loader understands md/v1.x metadata, or use --metadata=0.90 Continue creating array? y mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md1 started. # mdadm --create /dev/md2 --level=1 --raid-disks=2 missing /dev/sdb3 mdadm: Note: this array has metadata at the start and may not be suitable as a boot device. If you plan to store '/boot' on this device please ensure that your boot-loader understands md/v1.x metadata, or use --metadata=0.90 Continue creating array? y mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md2 started.
- Далее:
# cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf_orig # mdadm --examine --scan >> /etc/mdadm/mdadm.conf
- Скопируем раздел /boot на массив:
# mkfs.ext3 /dev/md1 mke2fs 1.42.5 (29-Jul-2012) Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) Stride=0 blocks, Stripe width=0 blocks 130560 inodes, 521920 blocks 26096 blocks (5.00%) reserved for the super user First data block=1 Maximum filesystem blocks=67633152 64 block groups 8192 blocks per group, 8192 fragments per group 2040 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409 Allocating group tables: done Writing inode tables: done Creating journal (8192 blocks): done Writing superblocks and filesystem accounting information: done # mkdir /mnt/md1 # mount /dev/md1 /mnt/md1 # cp -ax /boot/* /mnt/md1
- Меняем монтирование boot раздела в /etc/fstab — теперь в /boot монтируем /dev/md1
# vi /etc/fstab
- Перезагружаем:
# reboot
- Настраиваем GRUB:
Для того, чтобы система загрузилась если рейд развалится, добавляем опцию bootdegraded=true в параметр GRUB_CMDLINE_LINUX_DEFAULT в файле /etc/default/grub.
Далее:# echo 'GRUB_DISABLE_LINUX_UUID=true' >> /etc/default/grub # echo 'GRUB_PRELOAD_MODULES="raid dmraid"' >> /etc/default/grub # echo 'GRUB_TERMINAL=console' >> /etc/default/grub # echo 'GRUB_CMDLINE_LINUX_DEFAULT="quiet bootdegraded=true"' >> /etc/default/grub # echo raid1 >> /etc/modules # echo raid1 >> /etc/initramfs-tools/modules
- Переустанавливаем GRUB:
# grub-install /dev/sda --recheck Installation finished. No error reported. # grub-install /dev/sdb --recheck Installation finished. No error reported. # update-grub Generating grub.cfg ... Found linux image: /boot/vmlinuz-2.6.32-34-pve Found initrd image: /boot/initrd.img-2.6.32-34-pve Found memtest86+ image: /memtest86+.bin Found memtest86+ multiboot image: /memtest86+_multiboot.bin done # update-initramfs -u update-initramfs: Generating /boot/initrd.img-2.6.32-34-pve
- Теперь добавляем раздел с первого диска:
# parted -s /dev/sda set 2 "raid" on # mdadm --add /dev/md1 /dev/sda2 mdadm: added /dev/sda2
- Переносим основной раздел:
# screen bash # pvcreate /dev/md2 Writing physical volume data to disk "/dev/md2" Physical volume "/dev/md2" successfully created # vgextend pve /dev/md2 Volume group "pve" successfully extended # pvmove /dev/sda3 /dev/md2 /dev/sda3: Moved: 2.0% ... /dev/sda3: Moved: 100.0% # vgreduce pve /dev/sda3 Removed "/dev/sda3" from volume group "pve" # parted -s /dev/sda set 3 "raid" on # mdadm --add /dev/md2 /dev/sda3 mdadm: added /dev/sda3
- После завершения синхронизации массива процесс переноса Proxmox под software raid 1 завершен. Посмотреть статус массива:
# cat /proc/mdstat
По материалом статьи: миграция PROXMOX в softRAID1
Спасибо, работает. Хотя тут не совсем 15 шагов )), но все равно быстро получилось
Зато звучит красиво — «RAID 1 за 15 шагов» )). Главное, что портянка помогает.
Можете что-то сказать по этой проблеме — http://forum.proxmox.com/threads/20063-PVE-3-3-does-not-boot-with-kernel-3-10-0-4
Как-то настораживает…
К сожалению пока нет возможности проверить, но буду иметь в виду и при случае посмотрю, проверю этот момент.
Неясно в чем там была необходимость менять ядро.
В стандартном варианте эта инструкция работает и проблем загрузки Proxmox 3.3 с software RAID 1 не наблюдается.
А как же быть с параметрами загрузки ядра на случай если RAID немного поломался, иначе не загрузится
добавляем bootdegraded=true в опцию ядра в файл /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT=»quiet bootdegraded=true»
и конечно update-grub
Спасибо за важное дополнение, внес в статью