iscsi挂载

iSCSI 服务器端(目标端)配置

以下步骤均以 root 权限操作

1. 安装 targetcli 工具

yum install -y targetcli

2. 启动 targetcli 交互管理

targetcli

3. 在服务器端先分区(可选)

parted /dev/sdb mklabel gpt
parted /dev/sdb mkpart primary 0% 100%

4. 创建后端存储(以 block 设备方式,假设设备为 /dev/sdb)

/backstores/block create name=iscsi_disk dev=/dev/sdb

这一步将 /dev/sdb 作为 iSCSI 的后端存储对象。

5. 创建 iSCSI 目标

创建目标时使用设定的 IQN,例如:

/iscsi create iqn.2025-03.com.example:server

6. 为目标添加 LUN 映射

/iscsi/iqn.2025-03.com.example:server/tpg1/luns create /backstores/block/iscsi_disk

7. 配置 ACL(访问控制)

允许客户端(IQN 为 iqn.2025-03.com.example:client)访问此目标:

/iscsi/iqn.2025-03.com.example:server/tpg1/acls create iqn.2025-03.com.example:client

8. 配置网络访问

确保目标的 tpg1 处于启用状态,并设置允许的 IP 访问(如仅允许内网访问)。

9. 保存配置并退出

exit

确保 target 服务随系统启动:

systemctl enable target
systemctl start target

10. 防火墙配置

firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reload

iSCSI 客户端(发起端)配置

1. 安装 iSCSI 发起工具

yum install -y iscsi-initiator-utils

2. 修改 initiator 名称

编辑 /etc/iscsi/initiatorname.iscsi,确保 InitiatorName 为:

InitiatorName=iqn.2025-03.com.example:client

3. 探测目标

iscsiadm -m discovery -t sendtargets -p 192.168.60.151

4. 登录目标

iscsiadm -m node -T iqn.2025-03.com.example:server -p 192.168.60.151 --login

5. 设置开机自动登录

iscsiadm -m node -T iqn.2025-03.com.example:server -p 192.168.60.151 --op update -n node.startup -v automatic

6.配置超时参数,减少掉线风险(自选)

iscsiadm -m node -T iqn.2025-03.com.example:server -p 192.168.60.151 --op update -n node.conn[0].timeo.replacement_timeout -v 10
#-v 10 是指10s,该句意思为如果连接断开,10 秒内尝试重连。
iscsiadm -m node -T iqn.2025-03.com.example:server -p 192.168.60.151 --op update -n node.conn[0].timeo.retry_count -v 5
#-v 5是指5次,该句意思为iSCSI 连接的最大重试次数为5次。此句和上句强烈推荐搭配使用否则可能出现不断重连然后拖垮系统的情况

7. 配置 /etc/fstab 自动挂载 iSCSI 设备

名称挂载

/dev/sdc   /mnt/iscsi_backup   ext4   defaults,nofail,_netdev,x-systemd.device-timeout=30   0 0

UUID挂载

blkid /dev/sdc
#查看uuid
UUID=********   /mnt/iscsi_backup   ext4   defaults,nofail,_netdev,x-systemd.device-timeout=30   0 0
#使用uuid可以防止服务器端或客户端变动导致硬盘名称变动

8. 验证设备

fdisk -l

9. 挂载设备

mkfs.ext4 /dev/sdc
mkdir -p /mnt/iscsi_backup
mount /dev/sdc /mnt/iscsi_backup

验证数据是否写入原盘

方法一:断开挂载后从服务器端读取

1. 在客户端创建测试文件

echo "TestData_$(date +%s)" > /mnt/iscsi_backup/testfile.txt
md5sum /mnt/iscsi_backup/testfile.txt

2. 卸载 iSCSI 设备

umount /mnt/iscsi_backup

3. 服务器端验证,同时确认前后hash一致

systemctl stop target
mkdir /mnt/tmp_verify
mount /dev/sdb /mnt/tmp_verify
cat /mnt/tmp_verify/testfile.txt
md5sum /mnt/tmp_verify/testfile.txt

验证完记得恢复原状


方法二:利用快照或第三方工具验证数据变化

1. 使用 LVM 快照(若存储使用 LVM)

创建快照并挂载进行数据验证。

2. 监控 I/O 日志

检查 /var/log/messages 确保写入正常。


注意事项

  • 数据一致性风险:避免多系统同时访问 iSCSI 设备。
  • 测试环境建议:先在测试环境中验证流程。
  • 工具选择:若不熟悉 LVM 快照或日志分析,建议采用方法一。
posted @ 2025-03-13 17:21  MiyauchiRenge  阅读(188)  评论(0)    收藏  举报