Seltsames Verhalten: Mehrere Instanzen?

0

Ich versuche, einem laufenden iSCSI-Ziel unter CentOS 6.5 eine LUN hinzuzufügen. Das iSCSI-Ziel ist tgtdaus dem scsi-target-utilsPaket. Ich sehe ein ziemlich seltsames Verhalten und bin ein bisschen ratlos, wie ich vorgehen soll.

Zunächst scheint es, als gäbe es mehrere tgtdlaufende Instanzen .

[eric@<host>]~% sudo service tgtd status
tgtd (pid 8713 8712) is running...
[eric@<host>]~% sudo service tgtd reload
Updating SCSI target daemon configuration: not running     [FAILED]

Ich habe jedoch mehrere virtuelle Maschinen, auf denen derzeit iSCSI-LUNs von diesem System ausgeführt werden. Daher weiß ich, dass diese tgtdausgeführt werden und zumindest einigermaßen normal funktionieren.

Ich habe den Exit-Status des fehlgeschlagenen Neuladens mit abgerufen echo $?und es ist zurückgekehrt 7.

Ich habe dann set -xdas Init-Skript oben eingefügt und es erneut ausgeführt, um zu sehen, wo es zurückkehrt 7.

[eric@<host>]~% sudo service tgtd reload   
+-zsh:19> sudo service tgtd reload
+ case "$1" in
++ id -u
+ '[' 0 = 0 ']'
+ rh_status_q
+ rh_status
+ reload
+ '[' -f /etc/sysconfig/tgtd ']'
+ . /etc/sysconfig/tgtd
+ echo -n 'Updating SCSI target daemon configuration: '
Updating SCSI target daemon configuration: + tgt-admin --update ALL -c /etc/tgt/targets.conf
+ retval=107
+ '[' 107 -eq 107 ']'
+ echo -n 'not running'
not running+ failure
+ local rc=0
+ '[' color '!=' verbose -a -z '' ']'
+ echo_failure
+ '[' color = color ']'
+ echo -en '\033[60G'
                                                           + echo -n '['
[+ '[' color = color ']'
+ echo -en '\033[0;31m'
+ echo -n FAILED
FAILED+ '[' color = color ']'
+ echo -en '\033[0;39m'
+ echo -n ']'
]+ echo -ne '\r'
+ return 1
+ '[' -x /bin/plymouth ']'
+ /bin/plymouth --details
+ return 0
+ echo

+ return 7
+ exit 7

Es sieht aus wie es in der reloadFunktion versagt . Wer hätte das gedacht? Insbesondere dieses Codebit.

TGTD_CONFIG=/etc/tgt/targets.conf
...
tgt-admin --update ALL -c $TGTD_CONFIG >/dev/null 2>&1
retval=$?
if [ "$retval" -eq 107 ] ; then
        echo -n $"not running"
        failure
        echo
        return 7

Ich habe dann diesen Befehl ausgeführt:

[eric@<host>]~% sudo tgt-admin --update ALL -c /etc/tgt/targets.conf
tgtadm: can't send the request to the tgt daemon, Transport endpoint is not connected
tgtadm: can't send the request to the tgt daemon, Transport endpoint is not connected
tgtadm: can't send the request to the tgt daemon, Transport endpoint is not connected
tgtadm: can't send the request to the tgt daemon, Transport endpoint is not connected
Command:
        tgtadm -C 0 --lld iscsi --op new --mode target --tid 1 -T <redacted iqn>
exited with code: 107.

Hier bin ich ratlos. Ich habe diesen Fehler ohne großen Erfolg gegoogelt - es sieht so aus, als müsste ich den Prozess abbrechen und neu starten. Weiß jemand, worauf dies hindeuten könnte, und warum tgtadmkein Prozess gefunden werden kann, der eindeutig ausgeführt wird? Und noch besser, weiß jemand, ob ich das Problem beheben kann, ohne den Prozess zu beenden, um eine Unterbrechung des Dienstes zu vermeiden?

Hier sind einige andere relevante Informationen:

[eric@<host>]~% sudo ps waux | grep tgt
root      8712  0.0  0.0 1163084 2648 ?        Ssl  Oct08   0:44 tgtd
root      8713  0.0  0.0  14888   500 ?        S    Oct08   0:03 tgtd
eric     20075  0.0  0.0 103244   900 pts/4    S+   14:09   0:00 grep tgt
[eric@<host>]~% uname -a
Linux <host> 2.6.32-431.29.2.el6.x86_64 #1 SMP Tue Sep 9 21:36:05 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Eric
quelle

Antworten:

0

Versuchen Sie, RPC auf Ihrem System zu aktualisieren, und starten Sie dann neu tgtd. In meinem Fall hat dies geholfen:

yum update libtirpc
Bel
quelle