在CentOS客户端安装iscsi-initiator-utils(包含iscsiadm等核心工具),用于发现和连接iSCSI Target:
sudo yum install iscsi-initiator-utils -y
编辑/etc/iscsi/initiatorname.iscsi文件,设置客户端的唯一IQN(iSCSI Qualified Name)。默认名称格式为iqn.1994-05.com.redhat:<随机字符串>,建议修改为易识别的名称(如主机SN):
sudo vi /etc/iscsi/initiatorname.iscsi
示例修改(将<随机字符串>替换为自定义名称):
InitiatorName=iqn.2025-09.com.example:centos-iscsi-client
保存后,重启iscsi服务使配置生效:
sudo systemctl restart iscsi
使用iscsiadm命令发现Target服务器上的可用LUN。将<target_IP>替换为Target服务器的IP地址:
sudo iscsiadm -m discovery -t sendtargets -p <target_IP>
示例输出(显示发现的Target IQN和Portal地址):
192.168.1.100:3260,1 iqn.2025-09.com.example:storage-disk1
这一步会将Target信息保存到/var/lib/iscsi/nodes/目录下。
使用iscsiadm命令登录到发现的Target(将<target_IQN>和<target_IP>替换为实际值):
sudo iscsiadm -m node -T <target_IQN> -p <target_IP> --login
示例:
sudo iscsiadm -m node -T iqn.2025-09.com.example:storage-disk1 -p 192.168.1.100 --login
登录成功后,系统会自动识别新的SCSI设备(可通过lsblk或fdisk -l查看)。
查看新设备:使用lsblk命令找到iSCSI设备(通常为/dev/sdX,如/dev/sdb):
lsblk
示例输出:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 99G 0 part /
sdb 8:16 0 50G 0 disk # 新识别的iSCSI设备
创建分区(可选):若设备未分区,使用fdisk创建分区(以/dev/sdb为例):
sudo fdisk /dev/sdb
操作步骤:按n创建新分区→选择p(主分区)→设置分区大小(如全部空间)→按w保存退出。
格式化分区:对新分区(如/dev/sdb1)创建文件系统(以ext4为例):
sudo mkfs.ext4 /dev/sdb1
创建挂载点:新建用于挂载iSCSI存储的目录(如/mnt/iscsi):
sudo mkdir -p /mnt/iscsi
临时挂载:将iSCSI分区挂载到挂载点:
sudo mount /dev/sdb1 /mnt/iscsi
验证挂载:使用df -h命令查看挂载状态,确认/mnt/iscsi已显示:
df -h
示例输出:
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 99G 10G 89G 10% /
/dev/sdb1 50G 20G 30G 40% /mnt/iscsi
编辑/etc/fstab文件,添加iSCSI设备的UUID和挂载信息(避免重启后手动挂载):
获取设备UUID:
sudo blkid /dev/sdb1
示例输出:
/dev/sdb1: UUID="1234abcd-5678-efgh-90ij-klmnopqrstuv" TYPE="ext4"
编辑/etc/fstab:
sudo vi /etc/fstab
在文件末尾添加以下行(替换<UUID>和挂载点):
UUID=1234abcd-5678-efgh-90ij-klmnopqrstuv /mnt/iscsi ext4 defaults,_netdev 0 0
注:_netdev选项表示该设备依赖网络,系统会在网络就绪后再挂载。
若希望系统启动时自动登录iSCSI Target,可修改/etc/iscsi/iscsid.conf文件,将node.startup设置为automatic:
sudo vi /etc/iscsi/iscsid.conf
找到node.startup = manual,将其修改为:
node.startup = automatic
保存后,重启iscsi服务:
sudo systemctl restart iscsi
重启系统,验证iSCSI存储是否自动挂载:
sudo reboot
重启后,使用df -h命令检查/mnt/iscsi是否已挂载。
若需要断开与Target的连接,可使用以下命令:
sudo iscsiadm -m node -T <target_IQN> -p <target_IP> --logout
示例:
sudo iscsiadm -m node -T iqn.2025-09.com.example:storage-disk1 -p 192.168.1.100 --logout
这将从系统中移除iSCSI设备,但不会删除本地挂载点或数据。