jump to navigation

CentOS 7 – Installing 2 x 4TB Software RAID LVM GPT BIOSBOOT 20 August 2017

Posted by Maulvi Bakar in : Linux,System,Work , trackback

Recently, I have an interesting challenge – Installing CentOS 7 on a physical server with 2 x 4TB HDDs!  :-

Anytime you’re playing HDDs larger than 2TBs, you’ll need GPT and  BIOSBOOT is needed. Unless you have deep pockets to pay for hardware RAID, which can simplify your configuration, the poor man’s software RAIID is the way to go.  The catch is that you have to configure almost every aspect of the system with it.

On hardware RAID, once configured in the background, the OS will see only a single HDD Volume for which the OS will be installed onto.  The software RAID depends on the OS. The OS will see all the HDDs and will have to consider them all before Software RAID can be configured.

GPT BIOSBOOT partitions does not work on Software RAID.

It has to be installed in a standard partition – eg. /dev/sda1 – 1MB Size

Consider this scenario – 2 x HDDs, the first HDD will have the following –

/dev/sda1 – BIOSBOOT
/dev/sda2 – MD0 – /boot
/dev/sda3 – MD1 – LVM – swap, /

/dev/sdb1 – MD0 – /boot
/dev/sdb2 – MD1 – LVM – swap, /

Because, the above scenario is what the CentOS 7 GUI Installer allows you to configure.  The obvious solution to this is to have another BIOSBOOT partition on /dev/sdb but the GUI Installer logic (dessign flaw?) won’t allow you to do so.

Obvious weakness will be – what if /dev/sda fails and since only /dev/sdb exists in the RAID Array, without a BIOSBOOT partition, the system will not be bootable.

To overcome this, you’ll need to force the system into having a BIOSBOOT partitions on all HDDs, to ensure the system will bootable, regardless which device go missing. Consider the following –

/dev/sda1 – BIOSBOOT
/dev/sda2 – MD0 – /boot
/dev/sda3 – MD1 – LVM – swap, /

/dev/sdb1 – BIOSBOOT
/dev/sdb2 – MD0 – /boot
/dev/sdb3 – MD1 – LVM – swap, /

To achieve the above ideal layout, you will need to do the following –

  1. Boot from CentOS 7/RHEL 7 Installer
  2. Prep your installation – Date & Time Timezone, Network & Hostname, etc.
  3. Select Installation Detination
  4. Ensure both both disks are selected and Other Storage Options – “I will configure partitioning” radio button is selected
  5. Temporarily go to shell prompt by pressing -> Ctrl + Alt + F2
  6. Execute “gdisk /dev/sda”. I GPT is not available, create it.
  7. Create the BIOSBOOT partition on /dev/sda
  8. n (new) -> Partition = 1 -> Start = Enter -> End = +1M ->Type: EF02 -> w (write)
  9. Repeat the last three steps for /dev/sdb
  10. Once done, return back to GUI Installer by pressing -> Ctrl + Alt + F6
  11. Click the refresh button – Observe that the two Bios Boot partitions will be under ‘Unknown’
  12. You can now proceed with the rest of the partition configuration –
  13. Create the /boot RAID Partition, once created, you will notice one of the BIOSBOOT partition create earlier will appearon the main System partitions list.
  14. Create the swap and “/” LVM partitions, click the “modify” button to RAID it.
  15. Click Done.

Your installation should proceed and BIOSBOOT partitions will be on both disks!


no comments yet - be the first?

Challenge *