ISCSI服务端与客户端配置

配置ISCSI服务端(target)

环境准备

操作系统:Centos7

ip:192.168.0.45

开始配置

  1. 准备存储空间
    在这里我们添加两个不同类型的:以硬盘形式存在的(/dev/sdb)、以文件形式存在的(dd if=/dev/zero of=/opt/disk.img bs=1024k count=512)
  1. 安装ISCSI服务端:targetd(服务端程序)、targetcli(服务端管理程序)
 yum -y install targetd targetcli
  1. 使用targetcli进入管理程序交互式命令行,使用ls查看当前ISCSI配置
targetcli
image-20211123170458481.png
backstores/block: 块设备形式的ISCSI存储 
backstores/fileio: 文件形式存在的ISCSI存储   
backstores/pscsi: 物理的ISCSI设备的ISCSI存储(使用比较少)    
backstores/ramdisk: 基于内存的ISCSI存储(重启后数据会丢失)  
  1. 创建块设备的ISCSI存储
    image-20211123175900089.png
/backstores/block create idisk1 /dev/sdb

/backstores/block:指定在此目录下创建
idisk:ISCSI存储名称
/dev/sdb: 块设备路径

  1. 创建文件形式的ISCSI存储
image-20211123180007319.png
/backstores/fileio create idisk2 /opt/disk.img

同上,只是这里最后一个参数为文件(已创建)的路径

创建好后使用 ls 命令,可以看到如下界面

image-20211123180028938.png
  1. 创建服务端程序
    我们在 /iscsi 这个路径(这个路径是在targetcli交互命令行下,而非系统路径)下创建一个服务端程序
image-20211123180121634.png
/iscsi create iqn.2021-11.mulang.com:server
命名规则:**iqn.yyyy-mm.naming-authority:unique name**
“**iqn**”指定使用 iSCSI 限定名称作为机构。  
“**YYYY-MM**”是命名机构获取此 iSCSI 名称中使用的域名的年份和月份。  
“**naming-authority** ” 通常是命名机构的 Internet 域名的反向语法。
“**unique name**”是要使用的任何名称,例如,主机名。 命名机构必须确保在冒号后面分配的任何名称都是唯一的

通过ls查看,可以看到如下目录结构    
![image-20211123180333732.png](https://upload-images.jianshu.io/upload_images/14074996-09a9ad488b75d932.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)



我们可以看到创建好的服务端程序下tpg1下有三个目录:


1.  acls:此目录下创建客户端连接器
    
    
2.  luns:创建服务卷
    
    
3.  portals:客户端访问的端口
  1. 创建服务卷

    image-20211123181119931.png
/iscsi/iqn.2021-11.mulang.com:server/tpg1/luns/ create /backstores/block/idisk1
 
```bash
/iscsi/iqn.2021-11.mulang.com:server/tpg1/luns/ create /backstores/fileio/idisk2
在/iscsi/iqn.2021-11.mulang.com:server/tpg1/luns目录下创建服务卷
 
后面的参数为之前添加的ISCSI存储。
成功创建后,我们通过ls查看
image-20211123181318572.png
  1. 创建客户端连接器(启用chap认证)

    chap认证:可以对客户端连接的身份进行验证

    /iscsi/iqn.2021-11.mulang.com:server/tpg1/acls create iqn.2021-11.mulang.com:client
    
创建客户端连接器
然后我们进入刚刚创建的客户端连接器目录下
cd /iscsi/iqn.2021-11.mulang.com:server/tpg1/acls/iqn.2021-11.mulang.com:client/
设置账户名密码
set auth userid=test
set auth password=123456654321
image-20211123182817385.png
然后执行exit退出并保存target设置
  1. 启动target服务,并设置为开机自启
systemctl start targetd
systemctl enable targetd
成功启动后,我们可以通过命令查看3260的监听情况查看服务状态  
ss -napt | grep 3260
image-20211123183357618.png

配置客户端(initiator)

  1. 安装iscsi客户端程序:iscsi-initiator-utils
yum -y install iscsi-initiator-utils
  1. 修改isics配置文件

在/etc/iscsi/下有两个配置文件,分别是:

initiatorname.iscsi:定义客户端连接器的名称,这里不是随便填写,而是填写上述服务器配置步骤8中创建的客户端连接器名

vim /etc/iscsi/initiatorname.iscsi
image-20211124105726201.png

iscsid.conf:客户端配置文件,配置账户,密码,对应上述服务器配置步骤8中定义的authid、password

vim /etc/iscsi/iscsid.conf
image-20211124105653421.png
  1. 启动客户端程序
systemctl start iscsid

启动成功后,我们可以通过命令查看客户端程序状态

systemctl status iscsid
image-20211124110216653.png
  1. 发现iscsi存储服务器
iscsiadm -m discovery -t st -p 192.168.0.45

如果显示出服务端定义的发起名,则表示配置正确

image-20211124110543175.png
  1. 登录iscsi存储服务器
iscsiadm -m node -T iqn.2021-11.mulang.com:server -p 192.168.0.45 --login
  1. 查看iscsi块设备
lsblk
image-20211124112402693.png

参考资料

Chapter 7. Configuring an iSCSI target Red Hat Enterprise Linux 8 | Red Hat Customer Portal

你可能感兴趣的:(ISCSI服务端与客户端配置)