ISCSI客户机及多路径的设置
安装必要的软件包
yum install -y iscsi-initiator-utils
yum install -y device-mapper-multipath
发现ISCSI存储服务器
运行如下命令发现存储设备,-p参数后的IP地址为存储设备的接口IP。每一条命令相当于添加一条到存储的路径,可以根据实际情况决定添加哪几条路径。
iscsiadm -m discovery -t sendtargets -p 192.168.11.251
iscsiadm -m discovery -t sendtargets -p 192.168.11.252
iscsiadm -m discovery -t sendtargets -p 192.168.11.253
iscsiadm -m discovery -t sendtargets -p 192.168.11.254
运行上述命令后,可运行iscsiadm -m node查看已发现的存储服务器,示例如下:
[root@db01 ~]# iscsiadm -m node
192.168.11.251:3260,21 iqn.2000-05.com.3pardata:20210002ac020254
192.168.11.252:3260,22 iqn.2000-05.com.3pardata:20220002ac020254
192.168.11.253:3260,121 iqn.2000-05.com.3pardata:21210002ac020254
192.168.11.254:3260,122 iqn.2000-05.com.3pardata:21220002ac020254
#上面的结果中,192.168.11.254:3260是存储服务器的接口的IP:端口,122是接口编号,通常服务器显示为1:2:2,iqn.2000-05.com.3pardata:21220002ac020254是LUN的名称。
连接到存储服务器
运行iscsiadm -m node –login可以连接到存储服务器,命令运行后结果中显示successful即表示连接成功。
配置客户端开机自动登录到存储的命令示例如下,可以根据实际情况设置多条路径的自动登录:
# 命令样式:iscsiadm -m node –T LUN_NAME -p ISCSI_IP_PORT --op update -n node.startup -v automatic
iscsiadm -m node –T iqn.2000-05.com.3pardata:20210002ac020254 -p 192.168.11.251:3260 --op update -n node.startup -v automatic
在存储服务器上关联客户机和虚拟卷
如果您用的是iscsi target软件实现的存储服务器,可参考这个链接进行配置:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/storage_administration_guide/ch-iscsi#iscsi-target-setup
如果您用的是存储设备(磁盘阵列),就需要参考厂商的操作手册。大部分的中低端存储设备都能自动识别到客户机,有些存储服务器例外,比如我用的HPE 3PAR CF8820,就需要在客户机执行登录操作后重启,然后手动添加客户机。
在存储设备上划分虚拟卷,然后将其与客户机进行关联。
在客户机上查看存储卷
如果在服务器上刚刚进行了关联客户机和虚拟卷的操作,那么可能需要重启客户机才能看到改变。
客户机登录到存储服务器后,使用lsblk可以看到已识别的块设备,示例如下:
[root@db01 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 1000G 0 disk
sdb 8:16 0 1000G 0 disk
sdc 8:32 0 1000G 0 disk
sdd 8:48 0 1000G 0 disk
sr0 11:0 1 1024M 0 rom
vda 252:0 0 40G 0 disk
├─vda1 252:1 0 1G 0 part /boot
└─vda2 252:2 0 19G 0 part
上面结果中的sda、sdb、sdc、sdd即为已识别到的存储服务器块设备。
配置多路径软件
运行如下命令启动multipathd服务及生成multipath的配置文件/etc/multipath.conf
[root@db01 ~]# systemctl enable multipathd
[root@db01 ~]# systemctl start multipathd
[root@db01 ~]# mpathconf --enable
如果使用的是iscsi target软件实现的存储服务器,通常不需要修改/etc/multipath.conf。如果使用的是存储设备(磁盘阵列),就需要参考厂商的操作手册,我针对3PAR存储设备的配置文件内容如下:
defaults {
user_friendly_names yes
find_multipaths yes
polling_interval 5
max_fds 8192
}
devices {
device {
vendor "3PARdata"
product "VV"
no_path_retry 12
features "0"
hardware_handler "0"
path_grouping_policy multibus
path_selector "round-robin 0"
rr_weight uniform
rr_min_io 100
path_checker tur
failback immediate
}
}
blacklist {
devnode "vda"
}
配置完成后使用systemctl restart multipathd命令重启multipathd服务。再使用lsblk和fdisk -l命令即可看到变化,示例如下:
[root@db01 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 1000G 0 disk
└─mpatha 253:2 0 1000G 0 mpath
sdb 8:16 0 1000G 0 disk
└─mpatha 253:2 0 1000G 0 mpath
sdc 8:32 0 1000G 0 disk
└─mpatha 253:2 0 1000G 0 mpath
sdd 8:48 0 1000G 0 disk
└─mpatha 253:2 0 1000G 0 mpath
sr0 11:0 1 1024M 0 rom
vda 252:0 0 40G 0 disk
├─vda1 252:1 0 1G 0 part /boot
└─vda2 252:2 0 19G 0 part
[root@db01 ~]# fdisk -l
磁盘 /dev/mapper/mpatha:1073.7 GB, 1073741824000 字节,2097152000 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):16384 字节 / 16777216 字节
磁盘标签类型:gpt
Disk identifier: D0B496B6-CA71-4D09-8E1D-2B4A9E0FCD04
# Start End Size Type Name
上面结果中的mpatha即为多路径块设备的名称。
常用的多路径命令有 multipath -ll和 multipath -rr