I have seen Wendell’s videos on LVM and how powerful it can be to create a large pool of storage. In my job we are currently running proprietary NetBackup appliances for storage. They have something called a media server, which is the software where all the backup and deduplication magic happens. This software has the option to backup to multiple targets, like S3, NFS, SMB, …etc, but the fastest one is called PureDisk. The PureDisk option is nothing but a filesystem that you mount locally on the media server for it to store backup on.
Long story short we want to build our own backup servers rather than get ripped off by Veritas. We will purchase DELL Powervault ME484 JBODs which hold 84 disk and populate them with 16TB or 12TB SATA drives. We will then connect the JBOD into two Red Hat physical servers and install Netbackup media servers on it. We will use software raid (most probably LVM) to create a large pool of storage and mount it to a 500TB file system (maximum recommended limit from veritas). if we want to scale out our backup, we will just build more of those media server boxes.
now for my question…
I am trying to find some best practices on building large storage boxes with LVM, but I can’t seem to find any. How should I partition my LVM volumes? if let’s say I want to use raid 5. Should I create an LVM volume of five disks then join the filesystems with fuse to create the large filesystem? or should I just put all the disks into one LVM group and create the large filesystem from that?
Help me out if you got experience with large LVM storage boxes. Only thing I can do now is experiment since I can’t find many resources. I will write the whole configuration with ansible, so that I can build it and destroy it as much as I want for experimenting.
Why not use ZFS?
We want Red Hat support, and ZFS isn’t supported with NetBackup or Red Hat.
Why not use hardware raid?
The whole idea is to not be dependent on hardware. We are using dell for now, but we want the option to purchase any commodity hardware, run few ansible jobs, and scale our backup that way.