Proxmox VE 4.0 установка корневого раздела на неподдерживаемый установщиком soft raid1

Начиная с версии 3.6 в установщике Proxmox появилась опция установки на различные варианты ZFS Raid, но так и не появилась, используемая многими, конфигурация с расположением корня и области хранения дисков виртуальных машин на программном рейд массиве.
На хабре и в сети есть множество аналогичных статей, но они актуальны для версии 3,6, а в версии 4.0 появилось несколько интересных нюансов. Кроме это в данной инструкции я подойду к решению этой задачи совершенно другим путем.

Нюансы

1.Установщик Proxmox 4-й версии ставит нам efi загрузчик и я не вижу способа как его резервировать при помощи софт рейда — если кто-то знает — поделитесь.
2.Proxmox 4.0 собран на Debian 8, а в нем есть известный баг — при старте системы не собираются массивы если в нем вылетел один из дисков. Совсем не собираются и не действует опция «bootdegraded=1»
3.Рассмотрев пункты 1 и 2 мне подумалось, а зачем нам править что-то за инстялляторм Proxmox, когда мы можем спокойно поставить Debian 8 так как нам надо, а уже поверх установить Proxmox. Вот этот расклад и будет рассмотрен в инструкции.

Ставим Debian 8

Я думаю с установкой Debian 8 minimal с neinst диска вы справитесь.
Все настройки делаем как вам надо, рассмотрим только разбивку дисков:
— диски у меня с таблицей разделов в GPT
— выделяем раздел 1 Мб и отмечаем его как bios boot
— выделяем оставшееся место в раздел под массив
— собираем массив md0
— поверх массива пускаем LVM
— создаем LV под корень и своп

Проверяем баг — выдергиваем любой из дисков, членов массива, и загружаемся. Вернее не загружаемся, потому-как загрузчик не может найти LVM с корневым разделом, потому что не собрался массив на котором этот самый LVM и лежит.

Чиним сборку массива при загрузке

Я ставил grub на оба раздела при установке, если вы этого не сделали:

# dpkg-reconfigure grub-pc

Накладываем патч:

cd /etc/initramfs-tools/scripts/local-top
cp /usr/share/initramfs-tools/scripts/local-top/mdadm .
patch --verbose --ignore-whitespace <<'EndOfPatch'
--- mdadm
+++ mdadm
@@ -76,7 +76,15 @@
if $MDADM --assemble --scan --run --auto=yes${extra_args:+ $extra_args}; then
verbose && log_success_msg "assembled all arrays."
else
- log_failure_msg "failed to assemble all arrays."
+ log_warning_msg "failed to assemble all arrays...attempting individual starts"
+ for dev in $(cat /proc/mdstat | grep md | cut -d ' ' -f 1); do
+ log_begin_msg "attempting mdadm --run $dev"
+ if $MDADM --run $dev; then
+ verbose && log_success_msg "started $dev"
+ else
+ log_failure_msg "failed to start $dev"
+ fi
+ done
fi
verbose && log_end_msg

EndOfPatch

Обновляем конфиг:

update-initramfs -u

Внимание: если вы будете проверять как работает патч и загружаться с выдернутым диском — на забудьте потом его вернуть обратно в массив:

# mdadm --add /dev/md0 /dev/sda2

Ставим Proxmox

Приводим /etc/hosts к виду:

127.0.0.1 localhost.localdomain localhost
123.456.789.1 myproxmox.mydomain.ru myproxmox pvelocalhost

Добавляем в /etc/apt/sources.list

deb http://download.proxmox.com/debian jessie pve-no-subscription

Добавляем цифровую подпись:

# wget -O- "http://download.proxmox.com/debian/key.asc" | apt-key add -

Обновляемся:

# apt-get update && apt-get dist-upgrade

Устанавливаем Proxmox:

# apt-get install proxmox-ve ntp ssh postfix ksm-control-daemon open-iscsi

Перезагружаемся и пользуемся.

Полностью:
http://habrahabr.ru/post/273391/

style="display:inline-block;width:728px;height:15px"
data-ad-client="ca-pub-4493870272388852"
data-ad-slot="6622567932">