出现connection9060:0: detected conn error信息时的问题定位分析

来源:互联网 发布:女性假两性畸形 知乎 编辑:程序博客网 时间:2024/06/04 22:25

    在使用iscsi设备时(open-iscsi+iscsitarget),在kern.log内核日志中发现了大量的conn error信息:

Jan 13 10:20:47 localhost kernel: [11724968.627194]  connection9060:0: detected conn error (1020)Jan 13 10:20:50 localhost kernel: [11724971.630087]  connection9060:0: detected conn error (1020)Jan 13 10:20:53 localhost kernel: [11724974.632964]  connection9060:0: detected conn error (1020)Jan 13 10:20:56 localhost kernel: [11724977.636364]  connection9060:0: detected conn error (1020)Jan 13 10:20:59 localhost kernel: [11724980.639286]  connection9060:0: detected conn error (1020)Jan 13 10:21:02 localhost kernel: [11724983.642603]  connection9060:0: detected conn error (1020)Jan 13 10:21:05 localhost kernel: [11724986.645804]  connection9060:0: detected conn error (1020)Jan 13 10:21:08 localhost kernel: [11724989.649207]  connection9060:0: detected conn error (1020)Jan 13 10:21:11 localhost kernel: [11724992.652387]  connection9060:0: detected conn error (1020)Jan 13 10:21:14 localhost kernel: [11724995.655345]  connection9060:0: detected conn error (1020)Jan 13 10:21:17 localhost kernel: [11724998.658605]  connection9060:0: detected conn error (1020)

如果量大一直不处理,很有可能会造成日志把空间撑满的情况。

上述日志是在/var/log/kern.log中看到的,这是内核的日志,现在查看/var/log/syslog信息,发现里有iscsid的用户态的错误信息:

Jan 13 10:35:10 localhost kernel: [11725831.173647]  connection9060:0: detected conn error (1020)Jan 13 10:35:10 localhost iscsid: conn 0 login rejected: initiator error - target not found (02/03)

既然是报的target not found,就是表示open-iscsi去连接一个不存在的的target。

通过sudo iscsiadm -m session -P3查看现在有哪些target,但是有可能得到的target比较多,怎么能够快速的找出是那个target不存在呢?

    观察kern.log中的内核出错日志发现,“connection9060:0: detected conn error (1020)”这条信息一直在重复,而且数字一直是9060没有改变,
说明有可能是个什么id,直接从sudo iscsiadm -m session -P3的输出信息中搜9060这个数字,发现

Target: iqn.com.test.1    Current Portal: 192.168.9.10:3260,1    Persistent Portal: 192.168.9.10:3260,1        **********        Interface:        **********        Iface Name: default        Iface Transport: tcp        Iface Initiatorname: iqn.1993-08.org.debian:01:627d92f42f40        Iface IPaddress: <empty>        Iface HWaddress: <empty>        Iface Netdev: <empty>        SID: 9060        iSCSI Connection State: TRANSPORT WAIT        iSCSI Session State: FREE        Internal iscsid Session State: REOPEN
这个target里有9060,是SID,会不会是巧合呢?直接去192.168.9.10上通过cat /proc/net/iet/volume查看
发现确实没有这个target,通过查看open-iscsi的源代码,得知
9060是session id,0是connection id,
从iscsid中的“conn 0 login rejected: initiator error - target not found”可以看出确实conn id是0。

解决办法:

把这个不存在的target给logout掉,内核就不会再一直输出错误日志了。

sudo iscsiadm -m node -T iqn.com.test.1 --logout

0 0
原创粉丝点击