iSCSI技术是一种由IBM公司研究开发的,是一个供硬件设备使用的可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速千兆以太网上进行路由选择。iSCSI的最大好处是能提供快速的网络环境,虽然其性能和带宽跟光纤网络还有一些差距,但能节省企业约30-40%的成本。
一、ISCSI(RHEL6)
服务端操作(RHEL6)
1、安装iscsi server软件包。
用RPM的方式安装。
rpm -ivh scsi-target-utils-1.0.242.el6.x86_64.rpm
1.1、用yum命令安装
yum -y install scsi-target-utils
1.2、启动服务并且添加到开机自启动
/etc/init.d/tgtd start
chkconfig tgtd on
2、新加一块硬盘
pvcreate /dev/sdb
vgcreate vg0 /dev/sdb
lvcreate -L 6G -n lv0 vg0
3、编辑配置文件/etc/tgt/targets.conf
vim /etc/tgt/targets.conf
<target iqn.2008-09.com.example:target2>
backing-store /dev/vg0/lv0
initiator-address 192.168.10.0/24 #允许访问的ip
</target>
4、/etc/init.d/tgtd restart
查看存储
tgt-admin --show
tgt-admin-s
5、放火墙允许tcp下3260端口
iptables -I INPUT -p tcp --dport 3260 -j ACCEPT
客户端挂载(RHEL6)
1、客户端需安装的包iscsi-initiator-utils
rpm -ivh iscsi-initiator-utils-6.2.0.872-41.el6.x86_64.rpm
1.1、用yum命令安装(需自己配置YUM源)
yum -y install iscsi-initiator-utils
启动服务并且添加到开机启动。
1.2、/etc/init.d/iscsid start
chkconfig iscsid on
2.发现服务器端iscsi server的共享分区。
iscsiadm -m discovery -t st -p 192.168.10.220
3.登陆到iscsi server共享的分区
iscsiadm -m node -T iqn.2008-09.com.example:target2
4.再使用fdisk -l命令查看分区,发现共享出来的分区都已经挂过来了
fdisk -l
fdisk /dev/sdb
partprobe
mkfs.ext4 /dev/sdb1
mount /dev/sdb1 /iscsi/
最后你可以格式化分区,挂载在本地相应目录。如果要实现开机自动挂载,要在fstab文件添加记录。注意添加_netdev参数,要不你在重启iscsi server后,启动时会报错。
示例: /dev/sdb /crs ext4 default,_netdev 0 0
补充:
如果在服务端/etc/tgt/targets.conf文件配置了用户名密码,比如
<target iqn.2008-09.com.example:server.target3>
backing-store /dev/sdb
initiator-address 192.168.10.0/24
incoming grid 123@passwd
write-cacheoff
</target>
则在客户端/etc/iscsi/iscsid.conf配置文件
需要添加相应的账号和密码
node.session.auth.username = grid
node.session.auth.password = 123@passwd
discovery.sendtargets.auth.username = grid
discovery.sendtargets.auth.password = 123@passwd
二、ISCSI(RHEL7)
服务端操作(RHEL7)
1.添加一块硬盘
pvcreate /dev/sdb
vgcreate vg0 /dev/sdb
lvcreate -L 6G -n lv0 vg0
2.umount /dev/cdrom
mount /dev/cdrom /media
yum install -y targetcli
3.targetcli
//backstores (共享的设备) block(硬盘) filelo(把文件共享为一个磁盘)//
3.1.建立新的block
/backstores/block create block1 /dev/vg0/lv0
3.2.建立新的iscsi
/iscsi create iqn.2015-08.com.nice:target1
日期 域名的反写 描述
tpg1中:acls 可以访问的用户
luns 设置block硬盘
portals 监听的端口
3.3.iqn标识符号名为iqn.2015-08.com.nice:client可以访问
/iscsi/iqn.2015-08.com.nice:target1/tpg1/acls create iqn.2015-08.com.nice:client
3.4.硬盘设为block1
/iscsi/iqn.2015-08.com.nice:target1/tpg1/luns create /backstores/block/block1
3.5.默认为3260端口
/iscsi/iqn.2015-08.com.nice:target1/tpg1/portals create 192.168.44.10
3.6.保存到/etc/target/saveconfig.json
saveconfig
3.7退出targetcli
exit
4.启动服务
systemctl start target
enable
5.允许通过3260端口
firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reload
客户端挂载(RHEL7)
1.yum install -y iscsi-initiator-utils
2.查看标识符,修改为允许的iqn标识符
vim /etc/iscsi/initiatorname.iscsi
iqn.2015-08.com.nice:client
3.systemctl restart iscsi iscsid重启生效
enable
4.扫描共享
iscsiadm -m (工作模式) discovery -t st -p server.nice.com
5.挂在共享到本地
iscsiadm -m node -T iqn.2015-08.com.nice:target1 -l
iscsiadm -m node -T iqn.2015-08.com.nice:target1 -u 卸载
6.fdisk -l查看
fdisk /dev/sdb
mkfs.xfs /dev/sdb1
7.删除ISCSI共享存储设备
配置文件:/var/lib/iscsi/nodes/iqn.2015-08.com.nice 删掉
命令删:iscsiadm -m node -T iqn.2015-08.com.nice:target1 -o delete
8、永久挂载
/dev/sdb1 /mnt/sdb1 xfs _netdev 0 0
mount -a