ISCSI网络存储服务
iscsi 实现网络存储,提供存储端叫 target,使用存储端叫 initiator。target 上可以提供存储空间, initiator负责连接 ISCSI设备,在ISCSI设备中创建文件系统,以及存取数据, 在 initiator上看上去是多了一块硬盘。
服务器端配置 target,准备做为LUN 发布的ISCSI 的存储设备(可以是一整块磁盘、一个分区、逻辑卷或RAID阵列)。
1.先安装好ssm系统存储管理器
2.本人事先准备好两个逻辑卷作为 ISCSI的存储设备。
3.首先安装target
4.启动服务并设为开机自启动
5.设置防火墙
6.执行targetcli工具
注:输入help可以查看 targetcli的帮助
基本思路
先把准备共享的块做出来,创建一个target,在target上创建lun,一个lun连接一个块
1、创建块即给要发布的逻辑卷起个名字
注:给/dev/vg00/lv00 逻辑卷起个名字叫server0.disk1;给/dev/mypool/lv01逻辑卷起个名字叫server0.disk2
查看块如下图所示:
2、创建 iqn 名字即创建ISCSI对象
查看ISCSI对象如下图所示:
3、设置ACL 即将ISCSI 对象与客户端IP或主机名绑定
注意:iqn.2015-06.com.benet:client1 是 initiator 的名字,需要在客户端中设置的
4、创建LUN 并绑定块
一个ISCSI对象可以创建多个LUN(LUN0、LUN1……)
启动监听程序 (要是往里面加端口就要把之前创建的监听端口删除掉)
删除最开始默认的
现在创建
查看结果
注:172.24.3.5是ISCSI 服务端网卡IP
可以查看/etc/target/saveconfig.json 配置文件,该配置文件保存着 ISCSI的配置。也可以在这里修改但是一般不常用
在initiator 端的配置:
1、安装软件
# yum install -y iscsi-initiator-utils
2、给 initiator 起个名字 (这个里面的名字只有改成服务端acls的名字、改成那个就可以连接到那个)
# vim /etc/iscsi/initiatorname.iscsi
内容如下:
3.启动服务并设置开机自启
# systemctl enable iscsi; systemctl start iscsi
4、发现存储
要是有数据库就打括号里的没有就打外边的
(iscsiadm --mode discoverydb --type sendtargets --portal 192.168.18.131 --discover)
iscsiadm --mode discovery --type sendtargets --portal 192.168.18.131 --discover
5、登录存储
iscsiadm --mode node --targetname iqn.2017-12.com.benet:disk2 --portal 192.168.18.131 3260 --login
注:-l表示连接ISCSI目标;-u表示断开和ISCSI目标的连接
验证客户端ISCSI连接
剩下来的操作就和管理本地磁盘一样了。
磁盘格式化是可能要-force 强制执行一下
注意挂载的时候不要多用户同时挂在一个 容易造成文件覆盖
挂载是要这种格式
UUID=xxxxxxx /data ext3 _netdev 0 0