I am looking for the recommended approach to setting up software RAID (using mdadm) on Centos 8 to provide redundancy.
In my setup I have 4 identical disks, but I assume the answer should also be relevant to 2 disk setups.
The primary requirement here is redundancy and no requirement for manual intervention for the system to boot if any one disk fails.
In short – I am looking for the simplest, most reliable solution.
Questions:
- What type of partition table is recommended (assuming Linux only, no dual boot)
- UEFI boot vs. BIOS boot (UEFI seems unnecessarily complex and there appears to be many issues with it still)
- fdisk/mdadm/lvm commands to setup both a /boot and a LVM volume that will contain the root and swap partitons
- Can this all be done from the anaconda installation GUI?
I have had some problems with EFI/GPT systems booting so I'm not convinced of the advantage (it appears that additional partitions are required when using GPT some of which it doesn't seem possible to use software RAID). So also looking for reasons to go down the EFI/GPT route, if this is indeed the recommended approach.
Best Answer
I ended up going with a GPT partition table, but sticking with the old Bios boot.
This was in-part due to some of the complexities surrounding using RAID for an EFI boot partition - https://unix.stackexchange.com/questions/265368/why-is-uefi-firmware-unable-to-access-a-software-raid-1-boot-efi-partition and partly because I was recovering from an unbootable system that used EFI (still not sure why, but after trying to fix for a day it was just easier to rebuild. This is exactly what I don't want)
Anyway it appears it is possible to install and set this up this via the Centos8 anaconda installer. To do this do the following:
I have tested this by pulling each HDD making sure the server could boot and then re-adding the "failed" drive back into the md arrays. All works as expected.
Below is the relevant parts for a kickstart config that was built from my install: