表17-1 iSCSI服务端和客户端的操作系统以及IP地址

    第1步:配置好Yum软件仓库后安装iSCSI服务端程序以及配置命令工具。通过在yum命令的后面添加-y参数,在安装过程中就不需要再进行手动确认了:

    1. [root@linuxprobe ~]# systemctl start targetd
    2. [root@linuxprobe ~]# systemctl enable targetd
    3. ln -s '/usr/lib/systemd/system/targetd.service' '/etc/systemd/system/multi-user.target.wants/targetd.service'

    第2步:配置iSCSI服务端共享资源。targetcli是用于管理iSCSI服务端存储资源的专用配置命令,它能够提供类似于fdisk命令的交互式配置功能,将iSCSI共享资源的配置内容抽象成“目录”的形式,我们只需将各类配置信息填入到相应的“目录”中即可。这里的难点主要在于认识每个“参数目录”的作用。当把配置参数正确地填写到“目录”中后,iSCSI服务端也可以提供共享资源服务了。

    在执行targetcli命令后就能看到交互式的配置界面了。在该界面中可以使用很多Linux命令,比如利用ls查看目录参数的结构,使用cd切换到不同的目录中。/backstores/block是iSCSI服务端配置共享设备的位置。我们需要把刚刚创建的RAID 5磁盘阵列md0文件加入到配置共享设备的“资源池”中,并将该文件重新命名为disk0,这样用户就不会知道是由服务器中的哪块硬盘来提供共享存储资源,而只会看到一个名为disk0的存储设备。

    1. /> cd iscsi
    2. /iscsi>
    3. /iscsi> create
    4. Created target iqn.2003-01.org.linux-iscsi.linuxprobe.x8664:sn.d497c356ad80.
    5. /iscsi> cd iqn.2003-01.org.linux-iscsi.linuxprobe.x8664:sn.d497c356ad80/
    6. /iscsi/iqn.20....d497c356ad80> ls
    7. o- iqn.2003-01.org.linux-iscsi.linuxprobe.x8664:sn.d497c356ad80 ...... [TPGs: 1]
    8. o- tpg1 ............................................... [no-gen-acls, no-auth]
    9. o- acls .......................................................... [ACLs: 0]
    10. o- luns .......................................................... [LUNs: 0]
    11. o- portals .................................................... [Portals: 0]
    12. /iscsi/iqn.20...d80/tpg1/luns> create /backstores/block/disk0
    13. Created LUN 0.

    第4步:设置访问控制列表(ACL)。iSCSI协议是通过客户端名称进行验证的,也就是说,用户在访问存储共享资源时不需要输入密码,只要iSCSI客户端的名称与服务端中设置的访问控制列表中某一名称条目一致即可,因此需要在iSCSI服务端的配置文件中写入一串能够验证用户信息的名称。acls参数目录用于存放能够访问iSCSI服务端共享存储资源的客户端名称。老师推荐在刚刚系统生成的iSCSI target后面追加上类似于:client的参数,这样既能保证客户端的名称具有唯一性,又非常便于管理和阅读:

    第5步:设置iSCSI服务端的监听IP地址和端口号。位于生产环境中的服务器上可能有多块网卡,那么到底是由哪个网卡或IP地址对外提供共享存储资源呢?这就需要我们在配置文件中手动定义iSCSI服务端的信息,即在portals参数目录中写上服务器的IP地址。接下来将由系统自动开启服务器192.168.10.10的3260端口将向外提供iSCSI共享存储资源服务:

    1. /iscsi/iqn.20...d80/tpg1/acls> cd ..
    2. /iscsi/iqn.20...c356ad80/tpg1> cd portals
    3. /iscsi/iqn.20.../tpg1/portals> create 192.168.10.10
    4. Using default IP port 3260
    5. Created network portal 192.168.10.10:3260.