Prepare new disk devices for ASM with ASMLib (multipath) - denis-kol4ev/OraDBA GitHub Wiki
In order for multipath devices to be presented in asm when loading the OS, you need to check the following settings
$ ls -la /etc/sysconfig/oracleasm
lrwxrwxrwx. 1 root root 24 Mar 9 16:01 /etc/sysconfig/oracleasm -> oracleasm-_dev_oracleasm
$ cat /etc/sysconfig/oracleasm | egrep "ORACLEASM_SCANORDER|ORACLEASM_SCANEXCLUDE"
# ORACLEASM_SCANORDER: Matching patterns to order disk scanning
ORACLEASM_SCANORDER="mpath dm"
# ORACLEASM_SCANEXCLUDE: Matching patterns to exclude disks from scan
ORACLEASM_SCANEXCLUDE="sd"
More details here: How to Convert ASMLib Disks from SD Devices to Multipath Devices (Doc ID 1458768.1)
# lsblk | grep mpath | sort | uniq | sort -k 4
└─mpathc 252:2 0 500G 0 mpath
└─mpathd 252:4 0 500G 0 mpath
└─mpathe 252:5 0 500G 0 mpath
└─mpathf 252:14 0 500G 0 mpath
└─mpathi 252:7 0 500G 0 mpath
└─mpathj 252:15 0 500G 0 mpath
└─mpathk 252:13 0 500G 0 mpath
└─mpathl 252:8 0 500G 0 mpath
└─mpathm 252:16 0 500G 0 mpath
└─mpathn 252:6 0 500G 0 mpath
└─mpatho 252:11 0 500G 0 mpath
└─mpatha 252:3 0 50G 0 mpath
└─mpathb 252:10 0 50G 0 mpath
└─mpathg 252:12 0 50G 0 mpath
└─mpathh 252:9 0 50G 0 mpath
# lsblk -f /dev/mapper/mpathc
# lsblk -f /dev/mapper/mpathd
# lsblk -f /dev/mapper/mpathe
# lsblk -f /dev/mapper/mpathf
# lsblk -f /dev/mapper/mpathi
# lsblk -f /dev/mapper/mpathj
# lsblk -f /dev/mapper/mpathk
# lsblk -f /dev/mapper/mpathl
# lsblk -f /dev/mapper/mpathm
# lsblk -f /dev/mapper/mpathn
# lsblk -f /dev/mapper/mpatho
# lsblk -f /dev/mapper/mpatha
# lsblk -f /dev/mapper/mpathb
# lsblk -f /dev/mapper/mpathg
# lsblk -f /dev/mapper/mpathh
# parted -s -a optimal /dev/mapper/mpathc mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathd mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathe mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathf mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathi mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathj mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathk mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathl mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathm mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathn mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpatho mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpatha mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathb mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathg mklabel msdos mkpart primary 0% 100%
# parted -s -a optimal /dev/mapper/mpathh mklabel msdos mkpart primary 0% 100%
# partprobe /dev/mapper/mpathc1
# partprobe /dev/mapper/mpathd1
# partprobe /dev/mapper/mpathe1
# partprobe /dev/mapper/mpathf1
# partprobe /dev/mapper/mpathi1
# partprobe /dev/mapper/mpathj1
# partprobe /dev/mapper/mpathk1
# partprobe /dev/mapper/mpathl1
# partprobe /dev/mapper/mpathm1
# partprobe /dev/mapper/mpathn1
# partprobe /dev/mapper/mpatho1
# partprobe /dev/mapper/mpatha1
# partprobe /dev/mapper/mpathb1
# partprobe /dev/mapper/mpathg1
# partprobe /dev/mapper/mpathh1
# lsblk -f /dev/mapper/mpathc
# lsblk -f /dev/mapper/mpathd
# lsblk -f /dev/mapper/mpathe
# lsblk -f /dev/mapper/mpathf
# lsblk -f /dev/mapper/mpathi
# lsblk -f /dev/mapper/mpathj
# lsblk -f /dev/mapper/mpathk
# lsblk -f /dev/mapper/mpathl
# lsblk -f /dev/mapper/mpathm
# lsblk -f /dev/mapper/mpathn
# lsblk -f /dev/mapper/mpatho
# lsblk -f /dev/mapper/mpatha
# lsblk -f /dev/mapper/mpathb
# lsblk -f /dev/mapper/mpathg
# lsblk -f /dev/mapper/mpathh
# oracleasm listdisks
# oracleasm createdisk REDO01 /dev/mapper/mpatha1
# oracleasm createdisk REDO02 /dev/mapper/mpathb1
# oracleasm createdisk REDO03 /dev/mapper/mpathg1
# oracleasm createdisk REDO04 /dev/mapper/mpathh1
# oracleasm createdisk FRA01 /dev/mapper/mpathc1
# oracleasm createdisk FRA02 /dev/mapper/mpathd1
# oracleasm createdisk DATA01 /dev/mapper/mpathe1
# oracleasm createdisk DATA02 /dev/mapper/mpathf1
# oracleasm createdisk DATA03 /dev/mapper/mpathi1
# oracleasm createdisk DATA04 /dev/mapper/mpathj1
# oracleasm createdisk DATA05 /dev/mapper/mpathk1
# oracleasm createdisk DATA06 /dev/mapper/mpathl1
# oracleasm createdisk DATA07 /dev/mapper/mpathm1
# oracleasm createdisk DATA08 /dev/mapper/mpathn1
# oracleasm createdisk DATA09 /dev/mapper/mpatho1
# oracleasm listdisks
# oracleasm listdisks | xargs oracleasm querydisk -p | grep mpath
/dev/mapper/mpathe1: LABEL="DATA01" TYPE="oracleasm"
/dev/mapper/mpathf1: LABEL="DATA02" TYPE="oracleasm"
/dev/mapper/mpathi1: LABEL="DATA03" TYPE="oracleasm"
/dev/mapper/mpathj1: LABEL="DATA04" TYPE="oracleasm"
/dev/mapper/mpathk1: LABEL="DATA05" TYPE="oracleasm"
/dev/mapper/mpathl1: LABEL="DATA06" TYPE="oracleasm"
/dev/mapper/mpathm1: LABEL="DATA07" TYPE="oracleasm"
/dev/mapper/mpathn1: LABEL="DATA08" TYPE="oracleasm"
/dev/mapper/mpatho1: LABEL="DATA09" TYPE="oracleasm"
/dev/mapper/mpathc1: LABEL="FRA01" TYPE="oracleasm"
/dev/mapper/mpathd1: LABEL="FRA02" TYPE="oracleasm"
/dev/mapper/mpatha1: LABEL="REDO01" TYPE="oracleasm"
/dev/mapper/mpathb1: LABEL="REDO02" TYPE="oracleasm"
/dev/mapper/mpathg1: LABEL="REDO03" TYPE="oracleasm"
/dev/mapper/mpathh1: LABEL="REDO04" TYPE="oracleasm"