ISCSI服务介绍
- 全称:Internet Small Computer System Interface——互联网小型计算机接口
- 通过网络获取磁盘设备在本地进行存储使用。
- iscsi是基于TCP/IP和scsi协议的一项技术,任一主机通过iscsi target功能成为iscsi存储空间的共享者/服务端;同样的,任一主机通过iscsi initiator(初始化用户)功能可以成为iscsi存储空间的使用者/客户端;限制iscsi的相互之间的联系需要配置规则,在无规则情况下,双方是可以建立联系的
- 由于iscsi和scsi差的是一个internet(tcp/ip协议),大同小异,所以阅读本文时可以将iscsi和scsi视为同一物。(虽然严格来说不一样)
服务器配置(IP:192.168.155.28)
- 为服务器添加硬盘
[root@server ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk
sr0 11:0 1 7.9G 0 rom /mnt
nvme0n1 259:0 0 20G 0 disk
├─nvme0n1p1 259:1 0 500M 0 part /boot
├─nvme0n1p2 259:2 0 10G 0 part /
└─nvme0n1p3 259:3 0 2G 0 part [SWAP]
//通过查看硬盘大小和可以得知sda是新添的硬盘
- 装包
//装包前注意挂载光盘,配置yum.repo.d的文件
[root@server ~]# yum install targetcli.noarch -y
- 配置
[root@server ~]# targetcli
/> cd /backstores/block
/backstores/block> create dev=/dev/sda name=disk0 //定义一个本地的块设备disk0:Created block storage object disk0 using /dev/sda.有这种显示格式则为成功
/backstores/block> cd /iscsi
/iscsi> create //定义一个target(target可自定义,也可默认定义:Created target iqn.2003-01.org.linuxiscsi.server.x8664:sn.11eaf3e646d3.
//target名字示例如下:iqn.yyyy-mm.网络名的反转写法:这个共享的target名称。
//网络名的反转写法如org.linux-iscsi.localhost或org.linux-iscsi.www)
//Created TPG 1.Global pref auto_add_default_portal=true
// Created default portal listening on all IPs (0.0.0.0), port 3260.定义 target 的入口(客户使用什么 IP 和端口访问) 默认定义了0.0.0.0 3260
//可以通过在/iscsi/iqn识别码/tpg1/portals/ create 192.168.155.28 3260(允许iscsi服务在本机192.168.155.28 3260端口开放,这里的ip可以指定本机内提供iscsi服务的IP地址,端口只要不冲突随意填,默认服务开放端口3260)
/iscsi> cd iqn.2003-01.org.linux-iscsi.server.x8664:sn.11eaf3e646d3/tpg1/
/iscsi/iqn.20...f3e646d3/tpg1> set attribute authentication=0 //关闭属性认证(安全认证/账号认证)
demo_mode_write_protect=0 //关闭写保护
generate_node_acls=1 // 使用自定义的 acl 实现节点访问限制
cache_dynamic_acls=1 // 缓存动态ACL
/iscsi/iqn.20...f3e646d3/tpg1> cd luns
/iscsi/iqn.20...6d3/tpg1/luns> create /backstores/block/disk0 //Created LUN 0.
/exit //退出iscsi的服务面板
[root@server ~]# systemctl restart target //重启target服务
[root@server ~]# systemctl stop firewalld //记得关闭防火墙或者配置防火墙规则也可以
[root@server ~]# setenforce 0 //暂时关闭selinux
客户端配置
Linux(IP:192.168.155.30)
[root@server_3 ~]# yum install iscsi-initiator-utils //装包
[root@server_3 ~]# iscsiadm -m discovery -t sendtargets -p 192.168.155.28 //发现目标
[root@server_3 ~]# iscsiadm -m node -T iqn.2003-01.org.linux-iscsi.server.x8664:sn.11eaf3e646d3 -p 192.168.155.28 -l //指定iqn连接
//[root@server_3 ~]# iscsiadm -m node -l 短命令连接iscsi服务端
[root@server_3 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk //显示服务端的scsi硬盘成功来到本地端
sr0 11:0 1 7.9G 0 rom /mnt
nvme0n1 259:0 0 20G 0 disk
├─nvme0n1p1 259:1 0 500M 0 part /boot
├─nvme0n1p2 259:2 0 10G 0 part /
└─nvme0n1p3 259:3 0 2G 0 part [SWAP]
[root@server_3 ~]# iscsiadm -m node -u -p 192.168.155.28 //断开iscsi服务端
从lsblk查询磁盘指令中,可以看出linux测试成功
Windows配置(192.168.155.200)
在发现目标门户中填写提供scsi服务的ip地址
填写后在下图会出现相应的选项,选中链接即可。
最后要是想要使用的话,可以在磁盘管理处格式化后投入使用