部署 iSCSI 共享存储服务、配置Udev、多路径配置(实验)

一、搭建iSCSI 共享存储
iSCSI技术在工作形式上分为服务端(target)与客户端(initiator)。 iSCSI服务端即用于存放硬盘存储资源的服务器,它作为前面创建的RAID磁盘阵列的存储端,能够为用户提供可用的存储资源。iSCSI客户端则是用户使用的软件,用于访问远程服务端的存储资源。
环境:iSCSI 服务端:172.25.0.11
iSCSI 客户端 :172.25.0.10
关闭防火墙,selinux 设为宽松模式
知识点:ISCSi Qualified Name 命名规范:——iqn.yyyy-mm.倒序域名:自定义标识
软件:服务端:targetcli ;客户端:iscsi-initiator-utils.i686
——配置服务端,搭建iSCSI
]# setenforce 0
]# systemctl stop firewalld.service

1)安装软件:]# yum -y install targetd targetcli
2)创建后端存储
]# targetcli
/> backstores/block create iscsi_store /dev/vdb1
3)创建iqn对象
/> iscsi/ create iqn.2019-05.com.example:server0
磁盘组绑定后端存储luns
/> iscsi/iqn.2019-05.com.example:server0/tpg1/luns create /backstores/block/iscsi_store
4)授权客户端的iqn,设置ACL访问控制
/> iscsi/iqn.2019-05.com.example:server0/tpg1/acls create iqn.2019-05.com.example:desktop0
5)指定监听地址及本机端口
/> iscsi/iqn.2019-05.com.example:server0/tpg1/portals create 0.0.0.0 3260
/> exit
6)重启服务,设置开机自启
]# systemctl restart target
]# systemctl enable target

——配置客户端
]# setenforce 0
]# systemctl stop firewalld.service
1)安装软件
]# yum -y install iscsi-initiator-utils.i686

2)设置客户端iqn
]# vim /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.2019-05.com.example:desktop0

3)重启iscsi服务刷新客户端iqn
]# systemctl daemon-reload
]# systemctl restart iscsid
]# systemctl enable iscsid
]# man iscsiadm (/EXAMPLE)

4)发现服务端iSCSI网络磁盘
]# iscsiadm --mode discoverydb --type sendtargets --portal 172.25.0.11 --discover
172.25.0.11:3260,1 iqn.2019-05.com.example:server0
连接iscsi磁盘:
——iscsiadm -m node -L all
查看磁盘记录:#iscsiadm -m node -T target 名称

5)使用iSCSI共享磁盘空间
]# systemctl restart iscsi
]# systemctl enable iscsi
]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 2.8G 0 disk

6)分区、格式化、挂载
]# parted /dev/sda
(parted) mktable gpt
(parted) mkpart primary ext4 0 2100M
Ignore
(parted) print
(parted) quit
]# partprobe /dev/sda 刷新分区
]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 2.8G 0 disk
└─sda1 8:1 0 2G 0 part
]# mkfs.ext4 /dev/sda1 //格式化
]# blkid /dev/sda1
/dev/sda1: UUID=“6f38094a-f5a9-4c9b-b3d4-f20c0d6ba84b” TYPE=“ext4” PARTLABEL=“primary” PARTUUID=“cc542fb8-3911-4d94-9f7c-6c36784b9f9c”
]# vim /etc/fstab //设置自动挂载
UUID=6f38094a-f5a9-4c9b-b3d4-f20c0d6ba84b /mnt/data ext4 defaults 0 0
]# mkdir /mnt/data
]# mount -a
]# df -hT
]# ls /mnt/data
]# echo “hahha” > /mnt/data/test.txt
]# cat /mnt/data/test.txt
hahha

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
二、部署iSCSI共享存储服务
要求:把主机的/dev/vdb 和/dev/vdc 两块盘共享给网站服务器103/104主机。
A 配置后端存储105
]# setenforce 0
]# service iptables stop
1.准备磁盘
]# fdisk -l /dev/vdb
]# fdisk -l /dev/vdc
2.装包
]# yum list | grep -i scsi
]# yum -y install scsi-target-utils.x86_64
]# rpm -ql scsi-target-utils

3.修改配置文件
]# rpm -qc scsi-target-utils
/etc/sysconfig/tgtd
/etc/tgt/targets.conf
]# cp /etc/tgt/targets.conf /etc/tgt/targets.conf.bak
]# cp /etc/tgt/conf.d/sample.conf  /etc/tgt/targets.conf
]# vim /etc/tgt/targets.conf

 62          
 63     backing-store /dev/vdb
 64     write-cache off     //写时缓存
 65     #initiator-address 192.168.4.103     可以访问的ip地址
 66     #initiator-address 192.168.4.104
 67     vendor_id Tarena       厂商名
 68     product_id  disktwo    型号名
 69     
 70    
 71     backing-store /dev/vdc      
 72     write-cache off
 73     #initiator-address 192.168.4.103
 74     #initiator-address 192.168.4.104
 75     vendor_id Tarena  
 76     product_id  diskthr
 77 

4.启动服务
]# service tgtd status
]# service tgtd start
]# chkconfig tgtd on
]# ps -C tgtd
PID TTY TIME CMD
1981 ? 00:00:00 tgtd
1984 ? 00:00:00 tgtd
]# netstat -antulp | grep :3260
]# tgt ()两次Tab键
tgtadm tgt-admin tgtd tgtimg tgt-setup-lun

5.查看共享信息
]# tgt-admin - -show


B 配置前端应用103/104
]# yum -y install iscsi-initiator-utils.x86_64
]# rpm -qc iscsi-initiator-utils.x86_64
/etc/iscsi/iscsid.conf
/etc/logrotate.d/iscsiuiolog
]# /etc/init.d/iscsid status
]# chkconfig iscsid on //开机自启
2、发现设备
]# man iscsiadm (输入/EXAMPLE 找到例子)
格式: iscsiadm -m discoverydb -t sendtargets -p 后端设备ip地址 --discover
]# iscsiadm -m discoverydb -t sendtargets -p 192.168.4.105 --discover
192.168.4.105:3260,1 iqn.2019-05.cn.tedu:storage105:diskb
192.168.4.105:3260,1 iqn.2019-05.cn.tedu:storage105:diskc

3、登入设备 ()
103]# ls /dev/vd*
103]# man iscsiadm (/Login)
格式简写**: iscsiadm -m node -T iqn.名称 -p 存储服务器ip地址:3260 -l**
全写:iscsiadm --mode node --targetname iqn.2019-05.com.doe:test --portal 192.168.4.105:3260 --login
]# iscsiadm -m node -T iqn.2019-05.cn.tedu:storage105:diskb -p192.168.4.105:3260 -l
]# fdisk -l
Disk /dev/sda: 32.2 GB, 32212254720 bytes (多出来的scsi 磁盘)
]# iscsiadm -m node -T iqn.2019-05.cn.tedu:storage105:diskc -p 192.168.4.105:3260 -l
]# fdisk -l //在本机查看是否多出新的磁盘
Disk /dev/sdb: 21.5 GB, 21474836480 bytes
]# ls /dev/sd* (登入的后端设备)
/dev/sda /dev/sdb

【登出设备:
格式简写: iscsiadm -m node -T iqn.名称 -p 存储服务器ip地址:3260 -u
格式 :iscsiadm --mode node --targetname iqn.2001-05.com.doe:test --portal 192.168.4.105:3260 --logout
]#iscsiadm -m node -T iqn.2019-05.cn.tedu:storage105:diskb -p 192.168.4.105:3260 -u
]# iscsiadm -m node -T iqn.2019-05.cn.tedu:storage105:diskc -p 192.168.4.105:3260 -u 】
]# ls /dev/sd*
++++++++++++++++++++++++++++++++++++++++++++++++++++
三、配置udev
2.1 获取内核识别的硬件设备的参数信息;
]# ls /dev/sd*
]# udevadm --help
]# udevadm info --help
]# udevadm info --query=path --name=磁盘名
]# udevadm info --query=path --name=/dev/sda
/devices/platform/host4/session3/target4:0:0/4:0:0:1/block/sda //系统生成的 路径名
]# udevadm info --attribute-walk --path=路径名
]# udevadm info --attribute-walk --path=/devices/platform/host4/session3/target4:0:0/4:0:0:1/block/sda
]# udevadm info --query=path --name=/dev/sdb
/devices/platform/host5/session4/target5:0:0/5:0:0:1/block/sdb
]# udevadm info --attribute-walk --path=/devices/platform/host5/session4/target5:0:0/5:0:0:1/block/sdb

2.2 编写udev 配置文件 (数字开头+设备描述.rules)
]# ls /etc/udev/rules.d/
]# vim /etc/udev/rules.d/70-iscsi.rules
SUBSYSTEM==“block”, ATTR{size}“62914560” , ATTRS{vendor}"Tarena “,
ATTRS{model}"disktwo " ,SYMLINK+=“iscsi/diskb”
SUBSYSTEM
"block” , ATTR{size}“41943040” , ATTRS{vendor}"Tarena " ,
ATTRS{model}=="diskthr " , SYMLINK+=“iscsi/diskc”
设备类型=块设备 , 大小= ,厂商= ,型号= ,SYMLINK+=别名
】# scp 70-iscsi.rules [email protected]:/etc/udev/rules.d/ (文件拷贝给104)

2.3 测试配置
103]# start_udev //启动udev,重新加载目录下的文件
103]# ls /dev/iscsi/disk* -l
lrwxrwxrwx. 1 root root 6 5月 21 12:17 /dev/iscsi/diskb -> …/sda
lrwxrwxrwx. 1 root root 6 5月 21 12:17 /dev/iscsi/diskc -> …/sdb
104]# start_udev
104]# ls /dev/iscsi/disk* -l
lrwxrwxrwx. 1 root root 6 5月 21 12:21 /dev/iscsi/diskb -> …/sda (l :链接文件)
lrwxrwxrwx. 1 root root 6 5月 21 12:21 /dev/iscsi/diskc -> …/sdb


C 前端应用使用共享存储介质
4、分区、格式化 、挂载 (在103上格式化后,104可以直接挂载)
103]# fdisk /dev/iscsi/diskb (默认分区1)
103:]# fdisk -l
Device Boot Start End Blocks Id System
/dev/sda1 1 30720 31457264 83 Linux
103]# mkfs.ext3 /dev/sda1 //格式化
]# blkid /dev/sda1
/dev/sda1: UUID=“3c349c72-249d-4b62-bdec-0b30bc6648a8” SEC_TYPE=“ext2” TYPE=“ext3”
]# rm -rf /var/www/html/*
]# vim /etc/fstab
UUID=3c349c72-249d-4b62-bdec-0b30bc6648a8 /var/www/html/ ext4 defaults 0 0
]# mount -a
]# mount | grep /var/www/html
/dev/sda1 on /var/www/html type ext4 (rw)
]# echo 123qwe > /var/www/html/test.html

104:
]# ls /dev/sd*
若没有看到分区信息,把登入设备全部登出一下,再重新登录
]# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sdb
]# blkid /dev/sda1
/dev/sda1: UUID=“3c349c72-249d-4b62-bdec-0b30bc6648a8” TYPE=“ext3”
]# rm -rf /var/www/html/*
]# vim /etc/fstab
UUID=3c349c72-249d-4b62-bdec-0b30bc6648a8 /var/www/html/ ext4 defaults 0 0
]# mount -a
]# mount | grep /var/www/html
/dev/sda1 on /var/www/html type ext3 (rw)
]# cat /var/www/html/test.html
123qwe
验证:
客户端250】]# elinks --dump http://192.168.4.252/test.html
123qwe


缺点:
iSCSI 设备不能够同时挂载,同时挂载时,在自己主机上写的文件别的主机看不到。
想要解决该问题,可以格式化成gfs全局文件系统,但是这个需要额外的设备。
因此,使用iSCSI时,谁是主服务器谁才可以挂载设备。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
四、配置多路径(配置在前端应用服务器上)
106 存储服务器 把本机/dev/vdb 3G 空间的裸盘只共享给前端web应用服务器107
eth0 192.168.4.106
eth1 192.168.2.106
web应用服务器107 :
eth0 192.168.4.107
eth1 192.168.2.107
发现并登录192.168.4.107/192.168.2.107
]# iscsiadm -m discoverydb -t sendtargets -p 192.168.4.106 --discover
192.168.2.106:3260,1 iqn.2008-09.cn.tedu:storage106:diskb
]# iscsiadm -m discoverydb -t sendtargets -p 192.168.2.106 --discover
192.168.2.106:3260,1 iqn.2008-09.cn.tedu:storage106:diskb
]# iscsiadm -m node -T iqn.2008-09.cn.tedu:storage106:diskb -p192.168.4.106:3260 -l
]# iscsiadm -m node -T iqn.2008-09.cn.tedu:storage106:diskb -p192.168.2.106:3260 -l
]# ls -l /dev/sd*
brw-rw----. 1 root disk 8, 0 5月 22 01:34 /dev/sda
brw-rw----. 1 root disk 8, 16 5月 22 01:42 /dev/sdb

web107装包、修改配置文件、启动服务、验证配置
]# yum list | grep path
]# yum -y install device-mapper-multipath.x86_64

获取wwid 全球识别符,全球唯一
]# which scsi_id
/sbin/scsi_id
]# scsi_id --whitelisted --device=/dev/sdb
1IET 00010001
]# scsi_id --whitelisted --device=/dev/sda
1IET 00010001

使用命令生成配置文件:
]# mpathconf --user_friendly_names n
]# ls /etc/multipath.conf 多路径配置文件
]# vim /etc/multipath.conf
25 defaults {
26 user_friendly_names no //不用友好名称识别
27 getuid_callout "/lib/udev/scsi_id --whitelisted --device=/dev/%n (从37行复制,获取wwid的方式)
28 }
在末尾添加下面内容:添加wwid 和别名
101 multipaths {
102 multipath{
103 wwid “1IET 00010001”
104 alias mpatha //别名名称,自定义
105 }
106 }
]# /etc/init.d/multipathd start //启动服务
]# chkconfig multipathd on //设置开机自启
]# ls /dev/mapper/mpatha
/dev/mapper/mpatha //设备路径

使用共享存储介质:分区、挂载

107验证多路径配置
107]查看多路径信息:]# multipath -ll
ifdown eth1
重载多路径信息:]# multipath -rr
]# multipath -ll


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

你可能感兴趣的:(ISCSI)