Home > Workload Solutions > SAP > Archive > SC Series Storage Configuration Best Practices for SAP HANA TDI > Setting up multipath I/O
Enable native Linux DM-MPIO to access the block devices from SAP HANA nodes:
The following example of a multipath.conf configuration file is for an eight-node SAP HANA solution. (The nodes are worker nodes.) Use the SC Series DSM Client UI to find the World Wide Identifiers (WWIDs).
user_friendly_names yes
find_multipaths yes
rr_min_io 10
no_path_retry fail
}
blacklist {
}
multipaths {
multipath {
wwid 36000d31000ec99000000000000000016
alias sapmnt
}
multipath {
wwid 36000d31000ec99000000000000000012
alias logvol1
}
multipath {
wwid 36000d31000ec99000000000000000013
alias logvol2
}
multipath {
wwid 36000d31000ec99000000000000000014
alias logvol3
}
multipath {
wwid 36000d31000ec99000000000000000015
alias logvol4
}
multipath {
wwid 36000d31000ec99000000000000000017
alias logvol5
}
multipath {
wwid 36000d31000ec99000000000000000018
alias logvol6
}
multipath {
wwid 36000d31000ec99000000000000000019
alias logvol7
}
multipath {
wwid 36000d31000ec9900000000000000001a
alias logvol8
}
multipath {
wwid 36000d31000ec9900000000000000000e
alias datavol1
}
multipath {
wwid 36000d31000ec9900000000000000000f
alias datavol2
}
multipath {
wwid 36000d31000ec99000000000000000010
alias datavol3
}
multipath {
wwid 36000d31000ec99000000000000000011
alias datavol4
}
multipath {
wwid 36000d31000ec9900000000000000001b
alias datavol5
}
multipath {
wwid 36000d31000ec9900000000000000001c
alias datavol6
}
multipath {
wwid 36000d31000ec9900000000000000001d
alias datavol7
}
multipath {
wwid 36000d31000ec9900000000000000001e
alias datavol8
}
devices {
device {
vendor "COMPELNT"
product "Compellent Vol"
features 0
no_path_retry fail
}
}
}
service multipathd restart
The volumes are now visible on each host.
dellhana1:/ # multipath -ll
datavol1 (36000d31000ec99000000000000000011) dm-12 COMPELNT,Compellent Vol
size=1.6T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active
|- 19:0:0:4 sdd 8:48 active ready running
|- 19:0:2:4 sdu 65:64 active ready running
|- 20:0:0:4 sdal 66:80 active ready running
`- 20:0:2:4 sdbc 67:96 active ready running
logvol1 (36000d31000ec99000000000000000015) dm-10 COMPELNT,Compellent Vol
size=512G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active
|- 19:0:0:8 sdf 8:80 active ready running
|- 19:0:2:8 sdw 65:96 active ready running
|- 20:0:0:8 sdan 66:112 active ready running
`- 20:0:2:8 sdbe 67:128 active ready running
datavol2 (36000d31000ec99000000000000000010) dm-21 COMPELNT,Compellent Vol
size=1.6T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active
|- 19:0:1:3 sdl 8:176 active ready running
|- 19:0:3:3 sdac 65:192 active ready running
|- 20:0:1:3 sdat 66:208 active ready running
`- 20:0:3:3 sdbk 67:224 active ready running
logvol2 (36000d31000ec99000000000000000014) dm-17 COMPELNT,Compellent Vol
size=512G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active
|- 19:0:1:7 sdn 8:208 active ready running
|- 19:0:3:7 sdae 65:224 active ready running
|- 20:0:1:7 sdav 66:240 active ready running
`- 20:0:3:7 sdbm 68:0 active ready running
datavol3 (36000d31000ec9900000000000000000f) dm-8 COMPELNT,Compellent Vol
size=1.6T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active
|- 19:0:0:2 sdc 8:32 active ready running
|- 19:0:2:2 sdt 65:48 active ready running
|- 20:0:0:2 sdak 66:64 active ready running
`- 20:0:2:2 sdbb 67:80 active ready running
logvol3 (36000d31000ec99000000000000000013) dm-11 COMPELNT,Compellent Vol
size=512G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active
|- 19:0:0:6 sde 8:64 active ready running
|- 19:0:2:6 sdv 65:80 active ready running
|- 20:0:0:6 sdam 66:96 active ready running
`- 20:0:2:6 sdbd 67:112 active ready running
datavol4 (36000d31000ec9900000000000000000e) dm-16 COMPELNT,Compellent Vol
size=1.6T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active
|- 19:0:1:1 sdk 8:160 active ready running
|- 19:0:3:1 sdab 65:176 active ready running
|- 20:0:1:1 sdas 66:192 active ready running
`- 20:0:3:1 sdbj 67:208 active ready running
logvol4 (36000d31000ec99000000000000000012) dm-20 COMPELNT,Compellent Vol
size=512G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active
|- 19:0:1:5 sdm 8:192 active ready running
|- 19:0:3:5 sdad 65:208 active ready running
|- 20:0:1:5 sdau 66:224 active ready running
`- 20:0:3:5 sdbl 67:240 active ready running
sapmnt (36000d31000ec99000000000000000016) dm-24 COMPELNT,Compellent Vol
size=8.0T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=active
|- 19:0:1:9 sdo 8:224 active ready running
|- 19:0:3:9 sdaf 65:240 active ready running
|- 20:0:1:9 sdaw 67:0 active ready running
`- 20:0:3:9 sdbn 68:16 active ready running
The XFS file system provides the best performance for both SAP HANA data and log block devices. To format a block device with the XFS file system, run the following command on the SAP HANA node:
mkfs.xfs /dev/mapper/DataVol1
mkfs.xfs /dev/mapper/LogVol1
Note: Run this command for all block devices.
If for any reason you must expand a file system, run the xfs_growfs command on the Linux host after you expand the volume on the Compellent storage.
Use the XFS file system for all data and log volumes. The SAP HANA Storage Connector API does not support partitioned devices, so the volumes must be unpartitioned.
For information about how to install and configure the SAP HANA environment, see the SAP HANA Server Installation and Update Guide.
In an SAP HANA scale-out environment with worker and standby nodes, the SAP HANA storage connector for FC (fcClient) mounts and unmounts the devices to the SAP HANA nodes. In addition to mounting the devices, the storage connector writes SCSI-3 persistent reservations (PRs) to the devices using the Linux sg_persist command. This operation, which is called I/O fencing, ensures that only one SAP HANA worker host has access to a set of data and log devices at a given time.