1.LVM创建
详情见https://blog.csdn.net/weixin_43241054/article/details/89680390
2.服务端配置
首先,关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
在Linux6中是scsi-target-utils-1.0.24-2.el6.x86_64.rpm,perl-Config-General-2.44-1.el6.noarch.rpm。
在Linux7中是targetcli-2.1.fb46-1.el7.noarch.rpm , targetd-0.8.6-1.el7.noarch.rpm
2.1 使用yum安装targetd和targetcli
2.2 使用targetcli创建设备
targetcli进入命令行,cd到/backstores/block 目录下,创建设备:
/> cd /backstores/block
/backstores/block> create disk1 /dev/sdb1
/backstores/block> ls
o- block .............................................. [Storage Objects: 11]
o- disk1 ..................... [/dev/sdb1 (0 bytes) write-thru deactivated]
| o- alua ................................................ [ALUA Groups: 1]
| o- default_tg_pt_gp .................... [ALUA state: Active/optimized]
o- disk2 ..................... [/dev/sdb2 (0 bytes) write-thru deactivated]
| o- alua ................................................ [ALUA Groups: 1]
| o- default_tg_pt_gp .................... [ALUA state: Active/optimized]
o- disk3 ..................... [/dev/sdb3 (0 bytes) write-thru deactivated]
2.3 使用targetcli创建iqn和LUN
cd到/iscsi目录下,创建iqn;
cd到/iscsi/iqn.20...0be/tpg1/luns下创建LUN
/backstores> cd /iscsi
/iscsi> create
Created target iqn.2003-01.org.linux-iscsi.storage.x8664:sn.3d7bbcc7d71b.
Created TPG 1.
Global pref auto_add_default_portal=true
Created default portal listening on all IPs (0.0.0.0), port 3260.
/iscsi> cd iqn.2003-01.org.linux-iscsi.storage.x8664:sn.3d7bbcc7d71b/tpg1/luns
/iscsi/iqn.20...71b/tpg1/luns> create /backstores/block/disk1
Created LUN 0.
/iscsi/iqn.20...71b/tpg1/luns> create /backstores/block/disk2
Created LUN 1.
2.4 使用targetcli创建acls
cd到/iscsi/iqn.2003-01.org.linux-iscsi.storage.x8664:sn.3d7bbcc7d71b/tpg1/acls目录下,创建client;然后cd到portals目录下创建portals
/iscsi/iqn.20...71b/tpg1/acls> create iqn.2003-01.org.linux-iscsi.storage.x8664:sn.3d7bbcc7d71b:client
cd到目录/iscsi/iqn.2003-01.org.linux-iscsi.storage.x8664:sn.3d7bbcc7d71b/tpg1/portals
/iscsi/iqn.20.../tpg1/portals> delete 0.0.0.0 3260
/iscsi/iqn.20.../tpg1/portals> create 10.10.10.3
/iscsi/iqn.20.../tpg1/portals> create 192.168.159.63
2.5 使用targetcli查看当前配置信息
在根目录下使用ls命令查看
在根目录下,saveconfig保存
target服务启动systemctl start target.service
target服务开机启动systectl enable target.service
3.客户端配置
3.1 使用yum安装iscsi-initiator-utils-iscsiuio-6.2.0.874-7.0.1.el7.x86_64.rpm
3.2 编辑/etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2003-01.org.linux-iscsi.storage.x8664:sn.3d7bbcc7d71b:client
#client与服务器端创建的一致
3.3 使用iscsiadm探测可用存储设备并登陆连接
iscsiadm -m discovery -t st -p 10.10.10.3
iscsiadm -m node -T iqn.2003-01.org.linux-iscsi.storage.x8664:sn.3d7bbcc7d71b -p 10.10.10.3 --login
或者直接使用iscsiadm -m discovery -t st -p 10.10.10.3 -l
若退出连接,则
iscsiadm -m node -T iqn.2003-01.org.linux-iscsi.storage.x8664:sn.3d7bbcc7d71b -p 10.10.10.3 --logout
iscsi客户端启动systemctl start iscsid
iscsi客户端开机启动systemctl enable iscsid
iscsi多路径
1. 安装软件包
yum install -y device-mapper device-mapper-multipath
2. 生成多路径配置文件
#!/bin/bash
for i in `cat /proc/partitions | awk {'print $4'} | grep sd`
do
val=`/sbin/blockdev --getsize64 /dev/$i`
val2=`/usr/bin/expr $val / 1024 / 1024 / 1024`
echo "/dev/$i $val2 `/usr/lib/udev/scsi_id -gud /dev/$i`"
done
mpathconf --enable
说明:生成配置文件是/etc/multipath.conf
共享盘的scsi_id
vi /etc/multipath.conf
blacklist {
devnode "^sda"
}
defaults {
user_friendly_names yes
path_grouping_policy multibus
failback immediate
no_path_retry fail
}
#multipath.conf主要包括blacklist、multipaths、devices三部份的配置
#blacklist配置
blacklist {
devnode "^sda"
}
#Multipaths部分配置multipaths和devices两部份的配置。
multipaths {
multipath {
wwid **************** #此值multipath -v3可以看到
alias iscsi-dm0 #映射后的别名,可以随便取
path_grouping_policy multibus #路径组策略
path_checker tur #决定路径状态的方法
path_selector "round-robin 0" #选择那条路径进行下一个IO操作的方法
}
}
Devices部分配置
devices {
device {
vendor "iSCSI-Enterprise" #厂商名称
product "Virtual disk" #产品型号
path_grouping_policy multibus #默认的路径组策略
getuid_callout "/sbin/scsi_id -g -u -s /block/%n" #获得唯一设备号使用的默认程序
prio_callout "/sbin/acs_prio_alua%d" #获取有限级数值使用的默认程序
path_checker readsector0 #决定路径状态的方法
path_selector "round-robin 0" #选择那条路径进行下一个IO操作的方法
failback immediate #故障恢复的模式
no_path_retry queue #在disable queue之前系统尝试使用失效路径的次数的数值
rr_min_io 100 #在当前的用户组中,在切换到另外一条路径之前的IO请求的数目
}
}
3.查看服务状态,启动服务
systemctl status multipathd.service
systemctl start multipathd.service
systemctl enable multipathd.service
4. 查看多路径中磁盘状态
multipath -ll
multipath -F 清空记录
multipath -v 2 扫描磁盘
multipath -v 3查看磁盘uuid
相关内容请参考:https://www.cnblogs.com/happy1983/p/9218290.html
使用udev修改磁盘权限
发现/dev/mapper目录下生成了指定的设备名称,但是真正的设备在/dev/dm-*。/dev/mapper是安装ASM时指定的路径。但是发现这些设备名称的权限都是root(不需要更改),且/dev/dm-*读写权限设定是无效的(需要更改)。
虽然ASM中使用的/dev/mapper/下的设备,但是这些设备最终还是连接到/dev/dm-*这些设备。所以如果需要使用/dev/mapper/下的设备,必须udev修改/dev/dm-*这些设备读写权限。虽然/dev/dm-*这些设备读写权限能够通过chmod更改,但是一定重启存储或者重启服务器之后之前更改的权限又变回来了。所以必须使用udev修改这些设备权限。
1. 使用udev规则修改设备读写权限
vi /etc/udev/rules.d/99-vmware-scsi-timeout.rules
KERNEL=="dm-0", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="dm-1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="dm-2", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="dm-3", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="dm-4", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="dm-5", OWNER="grid", GROUP="asmadmin", MODE="0660"
注意:
/dev/目录下有多少个dm-*就写多少个,OWNER和asmadmin可以不用这么严格,但是MODE权限必须设置成0660。比如dm-1现在对应的是data11这个设备,但是如果其中一台存储宕机,dm-1对应的一定不是data11了。
2. 加载设备
[root@node1 mapper]# partprobe /dev/sdb
[root@node1 mapper]# partprobe /dev/sdc
[root@node1 mapper]# partprobe /dev/sdd
[root@node1 mapper]# partprobe /dev/sde
[root@node1 mapper]# partprobe /dev/sdf
[root@node1 mapper]# partprobe /dev/sdg
3.加载udev规则并启动udev
[root@node1 mapper]# /sbin/udevadm control --reload-rules
[root@node1 mapper]# /sbin/start_udev(Linux7不用)
4. 查看权限情况
ll /dev/dm*
brw-rw---- 1 grid asmadmin 249, 10 Aug 12 01:10 dm-10
brw-rw---- 1 grid asmadmin 249, 11 Aug 12 01:10 dm-11
brw-rw---- 1 grid asmadmin 249, 2 Aug 12 01:10 dm-2
brw-rw---- 1 grid asmadmin 249, 3 Aug 12 01:10 dm-3
brw-rw---- 1 grid asmadmin 249, 4 Aug 12 01:10 dm-4
brw-rw---- 1 grid asmadmin 249, 5 Aug 12 01:10 dm-5
brw-rw---- 1 grid asmadmin 249, 6 Aug 12 01:10 dm-6
brw-rw---- 1 grid asmadmin 249, 7 Aug 12 01:10 dm-7
brw-rw---- 1 grid asmadmin 249, 8 Aug 12 01:10 dm-8
brw-rw---- 1 grid asmadmin 249, 9 Aug 12 01:10 dm-9
注意:如果权限未修改过来 ,执行下面命令
multipath -F 清空记录
multipath -v 2 扫描磁盘