iSCSI:Internet 小型计算机系统接口 (iSCSI:Internet Small Computer System Interface)。
iSCSI是一种基于 TCP/IP的协议,用来建立和管理 IP 存储设备、主机和客户机等之间的相互连接,并创建存储区域网络(SAN)。SAN 使得 SCSI 协议应用于高速数据传输网络成为可能,这种传输以数据块级别(block-level)在多个数据存储网络间进行。
SCSI 结构基于客户/服务器模式,iSCSI 的主要功能是在 TCP/IP 网络上的主机系统(启动器 initiator)和存储设备(目标器 target)之间进行大量数据的封装和可靠传输过程。此外,iSCSI 提供了在 IP 网络封装 SCSI 命令,且运行在 TCP 上。
iSCSI技术在工作形式上分为服务端(target)与客户端(initiator)。iSCSI服务端即用于存放硬盘存储资源的服务器,它可以作为磁盘阵列的存储端,能够为用户提供可用的存储资源。iSCSI客户端则是用户使用的软件,用于访问远程服务端的存储资源
结合下面的简单拓扑图介绍如何在CentOS服务器中配置iSCSI网络存储服务
一、服务端192.168.31.211上的操作
1、yum安装scsi-target-utils服务包
[root@localhost ~]# yum install scsi-target-utils
2、data目录下创建iscsi_disk.img磁盘映像
[root@localhost data]# dd if=/dev/zero of=/data/iscsi_disk.img count=0 bs=1 seek=10G
3、创建targets.conf配置文件并将 /data/iscsi_disk.img设置为共享磁盘
[root@localhost ~]# mv /etc/tgt/targets.conf /etc/tgt/targets.conf_default
[root@localhost ~]# vi /etc/tgt/targets.conf
<target iqn.2019-02.dev.iscsi-target:iscsidisk>
backing-store /data/iscsi_disk.img
</target>
4、设置iscsi服务端服务tgtd开机自启动,并启动服务
[root@localhost ~]# service tgtd start
[root@localhost ~]# chkconfig tgtd on
[root@localhost ~]# chkconfig tgtd --list
[root@localhost ~]# tgtadm --mode target --op show #查看iSCSI target
或者tgt-admin --show
二、客户端192.168.31.212上的操作步骤
1、安装iscsi-initiator-utils客户端服务包
[root@Client ~]# yum install iscsi-initiator-utils -y
2、先进行侦测目标主机,获取target名称
[root@Client ~]# iscsiadm -m discovery -t sendtargets -p 192.168.31.211
[root@Client ~]# iscsiadm -m node -o show
3、iscsiadm -m node --login进行登录
[root@Client ~]# iscsiadm -m node --login
[root@Client ~]# iscsiadm -m session -o show
4、登录成功后fdisk -l可以看到挂载上来的盘
或者cat /proc/partitions查看是否挂载上来了
(对磁盘的分区操作及创建挂载目录的操作就不介绍了)
5、设置开机自启动iscsid服务
[root@Client ~]# chkconfig iscsid on
[root@Client ~]# service iscsid status
iscsid (pid 2242) is running...
[root@Client ~]# chkconfig iscsid --list
iscsiadm 侦测到的结果会写入/var/lib/iscsi/nodes/ 中,因此iscsid服务开机自启动就能够在下次开机时,自动连接到正确的target了