Ubuntu iSCSI 服务搭建

 

Ubuntu20.04 server 安装iSCSI_ubuntu安装iscsi客户端-CSDN博客

https://blog.csdn.net/beeworkshop/article/details/114523270

Linux下搭建iSCSI共享存储详细步骤 - jack_Meng - 博客园

https://www.cnblogs.com/mq0036/p/15514356.html

Linux环境下搭建iSCSI服务器的全面教程与步骤详解 - OSCHINA …

https://my.oschina.net/emacs_8564493/blog/16663566

在 Ubuntu 上搭建 iSCSI 服务可实现基于网络的块存储共享,常用于虚拟化、数据库及高可用集群环境。以下步骤涵盖 iSCSI Target(服务端) 与 iSCSI Initiator(客户端) 的配置。

服务端配置(iSCSI Target)

1. 安装与启动服务

sudo apt update
sudo apt install tgt -y
sudo systemctl enable --now tgt
 

2. 创建 Target 配置 编辑 /etc/tgt/conf.d/iscsi.conf:

<target iqn.2025-02.example.com:lun1>
backing-store /dev/sdb
initiator-address 192.168.100.0/24
incominguser iscsiuser 123456
</target>
 
 

3. 应用配置并验证

sudo systemctl restart tgt
sudo tgtadm --mode target --op show
 

客户端配置(iSCSI Initiator)

1. 安装 Initiator

sudo apt install open-iscsi -y
 

2. 发现并连接 Target

sudo iscsiadm -m discovery -t st -p 192.168.1.200
sudo iscsiadm -m node -T iqn.2025-02.example.com:lun1 -p 192.168.1.200 --login
 

3. 配置 CHAP 认证(可选) 编辑 /etc/iscsi/iscsid.conf:

node.session.auth.authmethod = CHAP
node.session.auth.username = iscsiuser
node.session.auth.password = 123456
node.startup = automatic
 

4. 检查连接与挂载

sudo iscsiadm -m session -o show
lsblk # 查看新磁盘
sudo mkfs.ext4 /dev/sdb && sudo mount /dev/sdb /mnt
 

确保 iscsid 服务已启用并开机自启动:

systemctl enable iscsid
systemctl start iscsid
 
 

2. 发现 iSCSI 目标

使用 sendtargets 方式发现目标:

iscsiadm -m discovery -t sendtargets -p 192.168.1.100
 

其中 192.168.1.100 为 iSCSI 服务器 IP。执行后会返回目标 IQN 名称。

3. 登录并设置自动启动

将节点设置为开机自动登录:

iscsiadm -m node -T iqn.2024-01.com.example:storage -p 192.168.1.100:3260 --op update -n node.startup -v automatic
 

立即登录目标:

iscsiadm -m node -T iqn.2024-01.com.example:storage -p 192.168.1.100:3260 --login
 

此时系统会在启动时自动连接该 iSCSI 设备。

4. 验证自动登录

重启系统后,可用以下命令确认连接状态:

iscsiadm -m session

 

验证与优化

  • 使用 fdisk -l 或 lsblk 确认 LUN 已映射。

  • 在生产环境建议开启 CHAP 双向认证 并限制 initiator-address 范围。

  • 网络建议使用 千兆或万兆以太网,并可启用 Jumbo Frames 提升性能。

这样即可在 Ubuntu 上完成 iSCSI 服务端与客户端的搭建,实现跨网络的块存储共享。

 

 

iscsi解决iscsiadm: No portals found-CSDN博客

https://blog.csdn.net/DONG999/article/details/124657319

Openfiler iscsiadm: No portals found 解决方法-CSDN博客

https://blog.csdn.net/baidu_32452525/article/details/54286808

iscsiadm: No portals found-CSDN博客

https://blog.csdn.net/w892824196/article/details/79550296

当你在使用 iscsiadm 命令时遇到 No portals found 错误,这通常意味着客户端无法找到任何可用的 iSCSI 目标端口。这个问题可能是由于配置错误或网络问题引起的。

示例

[root@Rac-two ~]# iscsiadm -m discovery -t sendtargets -p 192.168.2.11:3260
iscsiadm: No portals found
 

1. 检查配置文件

首先,检查 /etc/tgt/targets.conf 文件中的配置是否正确。例如,将 initiator-name 修改为 initiator-address。

vi /etc/tgt/targets.conf
# 将 initiator-name 192.168.10.0/24 修改为:
initiator-address 192.168.10.0/24
 

然后重启服务:

service tgt restart
 

2. 修改 iSNSAccessControl 设置

在某些情况下,你可能需要修改 /etc/tgt/targets.conf 文件中的 iSNSAccessControl 设置。

vi /etc/tgt/targets.conf
# 将 iSNSAccessControl On 修改为:
iSNSAccessControl Off
 

然后重启服务:

service tgt restart
 

3. 检查网络连接

确保客户端和服务器之间的网络连接正常。可以使用 ping 命令测试连接:

ping 192.168.2.11
posted @ 2025-12-11 16:18  技术颜良  阅读(9)  评论(0)    收藏  举报