iscsiadm 命令

半兽人 发表于: 2025-09-25   最后更新时间: 2025-10-14 14:47:23  
{{totalSubscript}} 订阅, 20 游览

iscsiadm 是 Linux 系统中用于管理 iSCSI Initiator 的主要命令行工具,属于 iscsi-initiator-utils 软件包。它用于发现、登录、管理和配置 iSCSI 目标(Target),以及处理 iSCSI 会话和节点的设置。以下是对 iscsiadm 命令的详细介绍,包括常用模式、选项和示例,适用于 CentOS 或其他 Linux 发行版。

基本语法

iscsiadm [选项] [模式] [参数]

常用模式

iscsiadm 运行在以下主要模式下:

  1. discovery:发现 iSCSI 目标(Target)。
  2. node:管理 iSCSI 节点(如登录、注销、配置)。
  3. session:管理当前活跃的 iSCSI 会话。
  4. iface:管理 iSCSI 接口(网络接口配置)。
  5. host:管理 iSCSI 主机信息。
  6. fw:使用固件发现目标(若硬件支持)。

常用选项

选项 描述
-m 指定操作模式(如 discoverynodesession)。
-p 指定目标 IP 地址和端口(默认 3260)。格式:IP:PORT
-t 指定发现类型(如 sendtargets)。
-T 指定目标 IQN(如 iqn.2025-09.com.example:iscsi-target)。
-n 指定节点属性名称(用于更新配置)。
-v 指定节点属性值(与 -n 配合)。
-l 登录目标。
-u 注销目标。
-P 设置输出级别(0-3,数字越大越详细)。
--op 指定操作类型(如 newdeleteupdate)。
-d 调试级别(0-8,数字越大日志越详细)。

配置文件

iscsiadm 的配置通常存储在以下文件中:

  • /etc/iscsi/initiatorname.iscsi:定义 Initiator IQN。
  • /etc/iscsi/iscsid.conf:全局 iSCSI 配置(如 CHAP 认证)。
  • /var/lib/iscsi/nodes/:存储发现的节点信息。
  • /var/lib/iscsi/send_targets/:存储发现的目标信息。

常用命令示例

以下以连接 Ceph iSCSI Target 为例,展示 iscsiadm 的典型用法。

1. 发现 iSCSI 目标

发现指定 IP 上的目标:

iscsiadm -m discovery -t sendtargets -p 192.168.1.10:3260
  • -t sendtargets:使用 SendTargets 协议发现目标。
  • 输出示例:
    192.168.1.10:3260,1 iqn.2025-09.com.example:iscsi-target
    
2. 列出发现的节点

查看发现的节点信息:

iscsiadm -m node
  • 输出示例:
    192.168.1.10:3260,1 iqn.2025-09.com.example:iscsi-target
    
3. 登录目标

登录特定目标:

iscsiadm -m node -T iqn.2025-09.com.example:iscsi-target -p 192.168.1.10:3260 -l
  • -l:执行登录操作。
  • 如果有多个目标,需为每个目标单独登录(无多路径时)。
4. 查看活跃会话

检查当前 iSCSI 会话:

iscsiadm -m session
  • 输出示例:
    tcp: [1] 192.168.1.10:3260,1 iqn.2025-09.com.example:iscsi-target
    
  • 更详细输出:
    iscsiadm -m session -P 3
    
    显示会话详细信息,如 SID、状态和 CHAP 配置。
5. 注销目标

注销特定目标:

iscsiadm -m node -T iqn.2025-09.com.example:iscsi-target -p 192.168.1.10:3260 -u
  • -u:执行注销操作。

注销所有目标:

iscsiadm -m node -u
6. 配置自动登录

设置节点在系统启动时自动登录:

iscsiadm -m node -T iqn.2025-09.com.example:iscsi-target -p 192.168.1.10:3260 --op update -n node.startup -v automatic
7. 删除节点记录

删除特定节点记录(清理不再使用的目标):

iscsiadm -m node -T iqn.2025-09.com.example:iscsi-target -p 192.168.1.10:3260 --op delete
8. 更新节点配置

例如,设置 CHAP 用户名和密码:

iscsiadm -m node -T iqn.2025-09.com.example:iscsi-target -p 192.168.1.10:3260 --op update -n node.session.auth.authmethod -v CHAP
iscsiadm -m node -T iqn.2025-09.com.example:iscsi-target -p 192.168.1.10:3260 --op update -n node.session.auth.username -v mychapuser
iscsiadm -m node -T iqn.2025-09.com.example:iscsi-target -p 192.168.1.10:3260 --op update -n node.session.auth.password -v mychappass
9. 查看接口信息

列出 iSCSI 网络接口:

iscsiadm -m iface

绑定特定接口(高级用法):

iscsiadm -m node -T iqn.2025-09.com.example:iscsi-target -p 192.168.1.10:3260 -I eth0
10. 调试模式

启用详细调试输出:

iscsiadm -m discovery -t sendtargets -p 192.168.1.10:3260 -d 8
  • -d 8:最高调试级别,显示详细日志。

常见问题与故障排除

问题 可能原因 解决方案
发现失败(No targets found) 防火墙或网络问题 检查 firewall-cmd --list-portsping 192.168.1.10;确保目标端口 3260 开放。
登录失败(Authentication failure) CHAP 配置错误 验证 /etc/iscsi/iscsid.conf 或节点配置中的用户名/密码;检查 Target 的 CHAP 设置。
会话丢失 网络中断或目标不可用 检查 iscsiadm -m sessiondmesg;尝试重新登录。
节点记录错误 手动修改配置文件 使用 iscsiadm --op delete 清理并重新发现。

注意事项

  • 配置文件优先级:节点配置(/var/lib/iscsi/nodes)优先于全局配置(/etc/iscsi/iscsid.conf)。
  • 持久化:发现和登录的节点信息存储在 /var/lib/iscsi/,重启后保留。
  • 安全性:建议启用 CHAP 认证,避免明文传输。
  • Ceph 特定:确保 Initiator IQN 与 Ceph iSCSI Gateway 的 Client IQN 匹配(可通过 gwcli 检查)。
  • 日志:查看 /var/log/messagesjournalctl -u iscsid 获取错误详情。
更新于 2025-10-14
在线,3小时前登录

查看ceph更多相关的文章或提一个关于ceph的问题,也可以与我们一起分享文章