使用iscsi服务部署网络存储 Internet small computer system interface
1 介绍
Iscsi技术就是用网络来将其他位置共享的硬盘挂载到本机来和本机硬盘一样使用,且不限平台(windows linux),基础硬盘也不限接口(IDE SATA SCSI),便于集中管理和调配资源,实现夸区域存储资源共享,还可以在不停机的状态下扩展存储
缺点就是必然他要受到网络速度和稳定性的制约,也会有iscsi-HBA 卡来连接硬盘接口和光纤来提高稳定性和效率。
2 部署
2.1 为了提供共享硬盘稳定性,我们提供一块raid10而且实际情况一般也都是需要raid否则出现问题会导致很难排查
>>>mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde
-Cv 创建并显示过程 -n 指定磁盘个数 -l raid级别 -x 备份盘个数 最后的指定磁盘也可以使用通配符,我们有个现成的10,就用他
/dev/md10 10G 105M 9.9G 2% /media/raid10
2.2 查询到创建raid的UUID配置在fstab里,因为挂载到其他人机器上就不一定是sd几了,识别到的顺序不同则会名称不同,
服务端配置:服务名字和技术名字一点不沾边
安装管理工具 :yum install targetcli
服务名称是:服务端target 客户端 iscsi-initiator-utils.i686 在rhel8默认安装过,如果没有安装则需要去安装
[root@bogon ~]# systemctl start target
配置:
然后就可以直接使用[root@bogon ~]# targetcli 进行交互式的配置了基本命令和linux几乎一样,这个命令将iscsi管理映射到了一些目录中,将配置参数配置到目录最后生成一个配置的json比直接写json要容易的多
硬盘不能正在被占用,所以先去释放出来
[root@bogon ~]# vim /etc/fstab 注释掉挂载raid的配置
[root@bogon ~]# umount /dev/md10 卸载掉当前
第一步:创建资源池。 相当于给硬件设备做一个链接
第二步,创建一个用来共享的唯一标识符。他是随机的,唯一的字符串,标识符比较长,要复制名字的时候不要复制最后那个句号,他不是名称的一部分真实的名称其实就是地下这个文件夹的名字
第三步:进入tpg1/luns 将创建的资源池设备disk0设备和系统分配的名称进行绑定
第四步:通过portals设置服务网卡;portals下默认允许所有网卡都可以用3260来提供共享,如果需要则可以指定具体ip来限制网卡,我们这里有内外两个网卡,所以只在内网提供
第五步通过 acl来指定将共享设备给那个主机使用,设备名称:自己指定的变量名称 关键字还是create即可 提示创建节点成功,并且和luns里的映射对照成功
iqn.2003-01.org.linux-iscsi.bogon.x8664:sn.e09c99930a8c: studyiscsi
第六步,exit保存退出,会将上面的设置信息保存到一个json中,有兴趣可以看看json的格式
target 因为要常用,所以进行一个三连,还有防火墙放行,如果涉及到selinux那还需要四连
systemctl restart target
[root@bogon ~]# systemctl enable target
[root@bogon ~]# firewall-cmd --permanent --add-port=3260/tcp
[root@bogon ~]# firewall-cmd –reload
========== linux客户端的配置
客户端我们使用7来感受下,也是需要安装一下命令行工具
第一步:yum install iscsi-initiator-utils
第二步:服务已经默认安装好了[root@ogg_src1 ~]# systemctl status iscsid 编辑服务配置文件
>> [root@ogg_src1 ~]# vim /etc/iscsi/initiatorname.iscsi 把上面定义好的名字拿过来
>> InitiatorName= iqn.2003-01.org.linux-iscsi.bogon.x8664:sn.e09c99930a8c:studyiscsi
第三步启动服务
[root@ogg_src1 ~]# systemctl start iscsid
[root@ogg_src1 ~]# systemctl enable iscsid
=========== 挂载使用,需要用到iscsiadm 管理工具 发现-登陆-挂载
发现登陆之后,那就是正常的格式化mkfs.xfs /dev/sdf 挂载这里值得要说一下:由于下次识别的时候不一定还是sdf 我们挂载这类设备需要使用他的uuid blkid这个命令用来查看设备的名称文件系统和uuid
如果需要设置到/etc/fstab 格式就是:
UUID="840ab621-7f43-421f-b245-4affd38e6ecc" /iscsi xfs default,_netdev 0 0
需要说明的是:这是网络设备,需要增加_netdev来提示系统联网后在加载,否则容易造成开机时间过长和开机失败的情况
====== 不在使用的时候卸载 -u
[root@ogg_src1 ~]# iscsiadm -m node -T iqn.2003-01.org.linux-iscsi.bogon.x8664:sn.e09c99930a8c -u
===== windows 客户端设置
系统默认已经安装了iscsi发起程序
第 1 步:运行 iSCSI 发起程序。在 Windows 7 操作系统中已经默认安装了 iSCSI 客户端程序,我们只需在控制面板中找到“系统和安全”标签,然后单击“管理工具”(见图 17-3),进入到“管理工具” 页面后即可看到“iSCSI 发起程序” 图标。 上面这一大堆直接搜索哪里输入就行,双击该图标。 在第一次运行 iSCSI发起程序时,提示“Microsoft iSCSI 服务端未运行”,单击“是”需要等一会 iSCSI 发起程序自动打开
第二步,在目标输入服务端地址点击快速链接,选中需要链接的设备点击完成
第三,需要将发起程序的名称修改未和acl设置的名称相同才可以使用
然后返回目标页面点击连接,状态就会变成已连接,对于多路径感兴趣可以看下这个
https://blog.csdn.net/panfelix/article/details/39318675
第四,进入磁盘管理就会提示发现新硬盘
然后就是正常格式化,新建简单卷,操作完成就可以使用了