Установка Proxmox на RAID1 через DebianProxmox можно установить через официальный образ, однако в этом случае у нас нет возможности самостоятельного создания RAID массива, мы можем выбирать массив на основе ZFS или Btrfs:

Нам нужен RAID1 массив с произвольной файловой системой, например ext4.
Однако, Proxmox можно установить не только из образа Proxmox, но и через установку пакетов в Debian, и здесь мы уже можем вручную создать нужный нам RAID массив.
Ранее мы уже рассматривали создание RAID1 массива из дисков для хранения данных, понимание прошлого материала значительно облегчит применение нового.
Скачиваем образ Debian здесь.
Далее мы будем реализовывать примерно такую схему разметки на дисках, только swap раздел делать не будем:

UEFI вымещает старый BIOS, поэтому будем говорить только про установку в режиме UEFI и создавать отдельный EFI раздел в 500МБ. Загрузиться с флешки в режиме UEFI можно намерено указав это в загрузчике BIOS:

Загружаемся в установщик Debian и доходим до этапа Partition disks, который очень похож на fdisk в том плане что все изменения накапливаюется и только при подтверждении применяются к диску.
В разделе Partition disks выбираем Manual (ручное разделение):

Здесь мы видим 2 наших диска одинакового объема:

Заходим в первый диск и создаем пустую таблицу раздедлов выбирая Yes:

Во всех диалогах по умолчанию выбраны отрицательные ответы, которые приведут к отмене запрашиваемого действия - нужно обдуманно подходить к выбору ответа.
В итоге на первом диске будет пустая таблица разделов:

Заходим в нее и выбираем Create a new partition:

Для EFI раздела необходимо выделить 500мб с самого начала диска (а вот и вот ссылки обсуждений на форумах):


После создания раздела, по умолчанию у него будут такие настройки:

Нужно сменить Use as на EFI System Partition:

После нажатия на Done settings up the partition мы должны увидеть примерно такую картину:

Выбираем неразмеченное пространство и создаем новый раздел на весь объем Create a new partition:

Use as меняем на RAID:

Применяем изменения. В конечном итоге наш первый диск должен иметь 2 раздела EFI и RAID:

Проделываем тоже самое со вторым диском и получаем такую картину:

Выбираем Configure software RAID (на предыдущем скрине) и подтверждаем (Yes):

Выбираем Create MD Device:

Выбираем RAID1, указываем количество дисков 2, а номер MD устройства 0 чтобы в системе это устрйоство было доступно как /dev/md0. Затем выбираем разделы на дисках которые хотим поместить в RAID:

Выбираем Finish и в итоге получаем такую структуру разделов на наших дисках:

Теперь нужно создать файловую систему на RAID диске, выбираем ext4 (или другую подходящуюю) и обязательно указываем Mount point в корень (/). Должно получиться примерно так:

Все конфигурация дисков у нас должна быть примерно такой:

Теперь нужно выбрать Finish partitioning and write changes to disk и мы получим такое сообщение:

Дело в том что мы не создали swap раздел. В моем случае достаточно ОЗУ, чтобы игнорировать swap, однако его можно создать также как мы создавали разделы выше, только в Use as нужно выбрать swap.
Выбираем No и получаем финальный вопрос о подтверждении, выбираем Yes и стартует установка ОС:

Позже я еще раз решил повторить действия из этой инструкции и у меня перестала загружаться ОС Debian. Почему-то установщик не устанавливал загрузчик GRUB на EFI-разделы.
В этой статье я подробно разбираю как установить GRUB и настроить загрузку Debian.
На сайте Proxmox есть исчерпывающая статья по установке Proxmox на Debian 12.
Некоторые утилиты будут недоступны, несмотря на то что они уже установленны, проблемы в переменной PATH, в ней нет пути /usr/sbin. Например при update-grub будет получена ошибка что такой пакет не найден.
Исправить проблему просто:
export PATH=$PATH:/usr/sbin
А еще лучше поместить эту строку в конец ~/.bashrc чтобы не вводить эту команду каждый раз при входе под root.
Раз уж создаем отказоустойчивую систему, то хочется чтобы она автоматически загружалась если один из дисков выходит из строя.
На хосте у нас уже смонтирована директория /boot/efi/, это и есть тот самый EFI раздел на первом диске, который мы делали в самом начале.
В директории
EFIесть файл./EFI/debian/grub.cfgкоторый отсылает на конкретный диск за настройкамиgrub. Ссылка на тему на форуме.
Нам нужно смонтировать EFI раздел второго диска и скопировать на него все содержимое EFI раздела первого диска.
Посмотрим вывод lsblk:
$ sudo lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 21.5G 0 disk
├─sda1 8:1 0 476M 0 part /boot/efi
└─sda2 8:2 0 21.0G 0 part
└─md1 9:1 0 19.95G 0 raid1 /
sdb 8:16 0 21.5G 0 disk
├─sdb1 8:17 0 476M 0 part
└─sdb2 8:18 0 21.0G 0 part
└─md1 9:1 0 19.95G 0 raid1 /
Видно что sda1 и sdb1 одно размера, первый монтируется в /boot/efi, а второй никуда не монтируется. Монтируем sdb1 и копируем в него EFI из первого диска:
$ sudo mkdir /mnt/sdb1
$ sudo mount /dev/sdb1 /mnt/sdb1
$ sudo cp -r /boot/efi/* /mnt/sdb1/
Отмонтируем /dev/sdb1:
$ sudo umount /mnt/sdb1
Есть другие способы сделать почти то же самое, например вот, здесь и там.
Если сейчас мы попытаемся убрать диск sda, то к сожалению автоматической загрузки может не произойти. По крайней мере у меня не произошло: boot настройки BIOS слетели, пришлось выставить руками очередность загрузки.
Но даже теперь не получиться нормально загрузить ОС:

В настройках
/etc/fstabуказано автоматическое монтирование/dev/sda1(EFIраздела) при старте системы, а этот диск мы убрали.
Для исправления проблемы нужно добавить опцию nofail:

При замене первого диска, с которого монтируется
/boot/efi, нужно поменять/etc/fstabчтобыEFIраздел монтировался при старте системы с другого диска.UUIDдиска можно узнать так:lsblk -o +uuid,name.
Дополнительно почитать про fstab можно на вики arch или на wiki debian. Разницу между опциями nobootwait и nofail можно узнать здесь.
На сайте Proxmox есть инструкция по настройке сети. В Proxmox 7 это сработало, но на Proxmox 8 упорно не хотело работать. К слову каждая новая инсталяция Proxmox вызывает у меня пробелмы с сетью, которые приходится как-то решать.
Нам нужна простая конфигурация с использованием bridge, при этом хост и VPS будут доступны из Интернета.
В нашем распоряжении роутер, который доступ из Интернета по публичному IP, и который имеет локальный IP. Его локальный IP будет являться gateway для vmbr0:

IP адреса раздает DHCP роутера, и за хостом Proxmox закреплен статичный адрес в локальной сети 192.168.0.100, это позволит прокинуть хост в интернет по некоторым портам через роутер.
Указываем статичный IP адрес для нашей bridge сети и адрес gateway (роутера) в локальнйо сети:
auto lo
iface lo inet loopback
iface eno1 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.168.0.100/24
gateway 192.168.0.1
bridge-ports eno1
bridge-stp off
bridge-fd 0
Предыдущий способ на Proxmox 8 не заработал. Можно указать в eno1 dhcp, и в vmbr0 тоже dhcp со ссылкой на eno1, и это сработает:
auto lo
iface lo inet loopback
auto eno1
iface eno1 inet dhcp
auto vmbr0
iface vmbr0 inet dhcp
bridge-ports eno1
bridge-stp off
bridge-fd 0
Можно к старому Proxmox подключить новую директорию на отдельном смонтированном диске (не зря же мы в прошлый раз делали RAID1 массив на NVME дисках):

Выбрав сущности для хранения в этой диреткории:

Теперь можно забэкапить нужные VPS в новую директорию хранения:

Таким же образом подключаем этот смонтированный диск к новому Proxmox и разворачиваем VPS из бэкапа.
Для первой инсталяции процедура достаточно утомительная, но последующие уже идут как по шаблону.
RAID1 желательно протестировать на работоспособность, например вынимая диски и проверяя загрузку ОС и ее работоспособность. Как минимум нужно проверить созданный RAID1 массив инстурментами мониторинга из этой статьи.