Configure host storage
You must allocate block storage volumes to each host.
You have reviewed the following topics, which provide information you need to accomplish this task:
When allocating block storage volumes (LUNs) to hosts, use the tables in "Storage requirements" to determine the following:
-
Number of volumes required for each host (based on the number and types of nodes that will be deployed on that host)
-
Storage category for each volume (that is, System Data or Object Data)
-
Size of each volume
You will use this information as well as the persistent name assigned by Linux to each physical volume when you deploy StorageGRID nodes on the host.
You don't need to partition, format, or mount any of these volumes; you just need to ensure they are visible to the hosts. |
Only one object-data LUN is required for metadata-only Storage Nodes. |
Avoid using "raw" special device files (/dev/sdb
, for example) as you compose your list of volume names. These files can change across reboots of the host, which will impact proper operation of the system. If you are using iSCSI LUNs and Device Mapper Multipathing, consider using multipath aliases in the /dev/mapper
directory, especially if your SAN topology includes redundant network paths to the shared storage. Alternatively, you can use the system-created softlinks under /dev/disk/by-path/
for your persistent device names.
For example:
ls -l $ ls -l /dev/disk/by-path/ total 0 lrwxrwxrwx 1 root root 9 Sep 19 18:53 pci-0000:00:07.1-ata-2 -> ../../sr0 lrwxrwxrwx 1 root root 9 Sep 19 18:53 pci-0000:03:00.0-scsi-0:0:0:0 -> ../../sda lrwxrwxrwx 1 root root 10 Sep 19 18:53 pci-0000:03:00.0-scsi-0:0:0:0-part1 -> ../../sda1 lrwxrwxrwx 1 root root 10 Sep 19 18:53 pci-0000:03:00.0-scsi-0:0:0:0-part2 -> ../../sda2 lrwxrwxrwx 1 root root 9 Sep 19 18:53 pci-0000:03:00.0-scsi-0:0:1:0 -> ../../sdb lrwxrwxrwx 1 root root 9 Sep 19 18:53 pci-0000:03:00.0-scsi-0:0:2:0 -> ../../sdc lrwxrwxrwx 1 root root 9 Sep 19 18:53 pci-0000:03:00.0-scsi-0:0:3:0 -> ../../sdd
Results will differ for each installation.
Assign friendly names to each of these block storage volumes to simplify the initial StorageGRID installation and future maintenance procedures. If you are using the device mapper multipath driver for redundant access to shared storage volumes, you can use the alias
field in your /etc/multipath.conf
file.
For example:
multipaths { multipath { wwid 3600a09800059d6df00005df2573c2c30 alias docker-storage-volume-hostA } multipath { wwid 3600a09800059d6df00005df3573c2c30 alias sgws-adm1-var-local } multipath { wwid 3600a09800059d6df00005df4573c2c30 alias sgws-adm1-audit-logs } multipath { wwid 3600a09800059d6df00005df5573c2c30 alias sgws-adm1-tables } multipath { wwid 3600a09800059d6df00005df6573c2c30 alias sgws-gw1-var-local } multipath { wwid 3600a09800059d6df00005df7573c2c30 alias sgws-sn1-var-local } multipath { wwid 3600a09800059d6df00005df7573c2c30 alias sgws-sn1-rangedb-0 } …
This will cause the aliases to appear as block devices in the /dev/mapper
directory on the host, allowing you to specify a friendly, easily-validated name whenever a configuration or maintenance operation requires specifying a block storage volume.
If you are setting up shared storage to support StorageGRID node migration and using Device Mapper Multipathing, you can create and install a common /etc/multipath.conf on all co-located hosts. Just make sure to use a different Docker storage volume on each host. Using aliases and including the target hostname in the alias for each Docker storage volume LUN will make this easy to remember and is recommended.
|