在CentOS 7上配置ISCSI服务器,可以为企业提供一种高效、可靠的存储解决方案,以下是详细的配置步骤:
一、安装与启动ISCSI服务
1、安装ISCSI软件:需要在CentOS 7服务器上安装ISCSI相关软件包,包括targetd
和targetcli
,这两个包可以通过YUM仓库直接安装:
yum -y install targetd targetcli
2、启动并启用ISCSI服务:安装完成后,需要启动ISCSI服务,并设置其开机自启:
systemctl start target systemctl enable target
3、检查服务状态:通过以下命令检查ISCSI服务是否正常运行:
systemctl status target
二、配置ISCSI目标(Target)
1、创建ISCSI目标:使用targetcli
工具进入ISCSI配置模式,并创建一个ISCSI目标,创建一个名为iqn.2022-05.com.iscsi:ss01
的目标:
targetcli /iscsi create iqn.2022-05.com.iscsi:ss01
2、配置访问控制列表(ACL):为了限制哪些客户端可以访问该ISCSI目标,需要配置ACL,允许名为iqn.2022-05.com.iscsi:j-dtc-01-p
的客户端访问:
/iscsi/iqn.2022-05.com.iscsi:ss01/tpg1/acls create iqn.2022-05.com.iscsi:j-dtc-01-p
3、关联逻辑单元(LUN):将ISCSI目标与实际的存储设备关联,将名为ss01.lun01
的逻辑单元与前面创建的目标关联:
/iscsi/iqn.2022-05.com.iscsi:ss01/tpg1/luns create /backstores/block/ss01.lun01
4、配置监听端口:指定ISCSI服务监听的IP地址和端口,监听所有IP上的3260端口:
/iscsi/iqn.2022-05.com.iscsi:ss01/tpg1/portals create 0.0.0.0 3260
5、保存配置并退出:完成配置后,保存并退出targetcli
:
saveconfig exit
三、客户端配置与连接测试
1、安装客户端软件:在客户端计算机上安装ISCSI Initiator软件,以便能够发现并连接到ISCSI目标,对于CentOS 7客户端,可以使用以下命令安装:
yum install iscsi-initiator-utils
2、配置Initiator名称:编辑/etc/iscsi/initiatorname.iscsi
文件,设置客户端的Initiator名称,确保该名称与服务器端的ACL配置一致。
InitiatorName=iqn.2022-05.com.iscsi:j-dtc-01-p
3、启动并启用Initiator服务:启动ISCSI Initiator服务,并设置其开机自启:
systemctl start iscsid systemctl enable iscsid
4、发现并登录ISCSI目标:使用iscsiadm
命令发现并登录到ISCSI目标,发现服务器上的所有ISCSI目标:
iscsiadm -m discovery -t sendtargets -p <server_ip>
登录到指定的ISCSI目标:
iscsiadm -m node --login
5、验证连接:使用lsblk
或fdisk -l
等命令查看是否成功挂载了ISCSI共享存储,如果一切正常,你应该能看到新的磁盘设备出现在系统中。
四、常见问题与解答
Q1:如何更改ISCSI服务的监听端口数?
A1:在ISCSI配置文件中,通常可以指定多个监听端口,你可以通过编辑ISCSI配置文件或使用管理工具(如targetcli
)来添加或修改监听端口,具体步骤可能因ISCSI实现而异,但通常涉及编辑配置文件并重新启动ISCSI服务。
Q2:为何无法发现ISCSI目标?
A2:无法发现ISCSI目标可能由多种原因造成,包括但不限于网络问题、防火墙设置、ISCSI服务未运行、Initiator名称不匹配等,检查客户端和服务器之间的网络连接是否正常;确认ISCSI服务已在服务器上运行;检查防火墙设置是否允许ISCSI流量;确保客户端的Initiator名称与服务器端的ACL配置一致。