iSCSI网络磁盘
客户端
划分分区
需要一个磁盘或者一个分区(以另一台服务器的分区/dev/vdb1为例子)(先不用做文件系统)
把其他服务器的磁盘或者分区拿来当自己的磁盘用
-
Internet SCSI,网际SCSI接口
一种基于C/S架构的虚拟磁盘技术
服务器提供磁盘空间,客户机连接并当成本地磁盘使用
-
backstore,后端存储(/dev/vdb1)
对应到服务端提供实际存储空间的设备,需要起一个管理名称
-
target,磁盘组(木质的箱子)
是客户端的访问目标,作为一个框架,由多个Lun组成
-
lun,逻辑单元(将冰箱放入木质箱子过程)
每一个Lun男要关联到某一个后端存储设备在客户端会视为一块虚拟硬盘
冰箱(/dev/vdb1)----->纸质的包装 木质箱子(磁盘组)
将冰箱放入箱子的过程叫做lun(将/dev/vdb1与磁盘组关联)
安装软件
安装targetcli软件
yum -y install targetcli
配置
运行命令进行配置
]# targetcli
# 进入一个容器
/> ls
设置后端存储
/> backstores/block create name=nsd dev=/dev/vdb1
name=随便起 dev=自己的分区或者磁盘
设置磁盘组的IQN名称
名字必须要符合IQN规范:即iqn.年-月.网站名倒序:服务名称
/>iscsi/ create iqn.2023-05.com.example:server
使用luns 关联两者
/> iscsi/iqn.2019-06.example.com:server/tpg1/lunscreate /backstores/block/nsd
# /tpg1/lunscreate 进行lun关联
建议用tab补全,太长了 nsd就是自己起的后端存储名字
设置ACL验证,设置客户端生成的名字,符合iqn名称规范
# 这个设置是用来让客户端连接本机的 客户端要起和这个名字一样的名字才可以连接 ign.2019-06.example.com: abc
#只要符合iqn命名规范 可以自己起 abc可以改个好记一点的名字
/> iscsi/iqn.2019-06.example.com: server/tpg1/aclscreate ign.2019-06.example.com: abc
# iqn.2019-06.example.com: server 本机的磁盘组名字
# ign.2019-06.example.com: abc 想要访问本机的客户端的名字
# /tpg1/aclscreate 设置acl验证
指定本机提供服务的IP和端口号
这个是假如本机有多张网卡,就会有多个ip地址,指定一下ip,使得客户端只能通过访问这个ip进来,而不是其他ip,没有特殊要求可以不设置,默认端口是3260
/> iscsi/iqn.2019-06.example.com:server/tpg1/portalscreate ip address=172.25.0.11
退出保存
退出后自动保存
/> exit
重启服务
systemctl restart target
systemctl enabletarget
# 开机自启
服务端
安装软件
服务器上应该安装了
可以rpm -q iscsi
…看一下
设置客户端名字
位置:/etc/iscsi/initiatorname.iscsi
vim /etc/iscsi/initiatorname.iscsi
InitiatorName=客户端名字(这一个名字是在服务端时候就起名的,为了保证一致性,建议去targetcli里面复制,敲ls就可以显示出来)
保存退出(:wq)
客户端刷新生成名称的服务
systemctl restart iscsid
发现共享存储
iscsiadm -m discovery -t st -p 服务器地址[:端口]
如果记不住可以man iscsiadm
全文查找/example 按n匹配下一个 , 找到EXAMPLES,复制里面的例子
加载使用共享存储
lsblk
systenctl restart iscsi #重启服务
lsblk
systenctl enable iscsi # 开机自启
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JDA6CBVa-1685096306966)(E:\ccstudy\markdown\img\iSCSI客户端配置.png)]
面的例子
加载使用共享存储
lsblk
systenctl restart iscsi #重启服务
lsblk
systenctl enable iscsi # 开机自启