Hi,
On Fri, Jun 27, 2008 at 02:48:30PM +0200, Ruben de Groot wrote:
>
> Hello,
>
> Working with heartbeat 2.1.3.
> I've had some problems getting the external/ibmrsa-telnet stonith device to
> work.
> In my logs I found the following:
>
> Jun 27 10:42:58 log1 stonithd: [24079]: info: external_run_cmd: Calling
> '/usr/lib/stonith/plugins/external/ibmrsa-telnet reset log2' returned 256
> Jun 27 10:42:58 log1 stonithd: [24079]: CRIT: external_reset_req:
> 'ibmrsa-telnet reset' for host log2 failed with rc 256
>
> And after turning on debugging in the ibmrsa-telnet script:
>
> 2008-06-27 11:17:32,599: ibmrsa-telnet: ========== Start =============
> 2008-06-27 11:17:32,599: ibmrsa-telnet: STDOUT: ERROR: ibmrsa-telnet: Exactly
> one commandline argument required.
> 2008-06-27 11:17:32,599: ibmrsa-telnet: ERROR: ibmrsa-telnet: Exactly one
> commandline argument required.
> 2008-06-27 11:17:32,599: ibmrsa-telnet: STDOUT: Call me with one of the
> allowed commands: reset, gethosts, status, getconfignames, getinfo-devid,
> getinfo-devname, getinfo-devdescr, getinfo-devurl, getinfo-xml, on, off
>
> Clearly, stonith is sending 2 arguments to the script; the reset command and
> the
> nodename, where ibmrsa-telnet accepts only one argument.
Hmm, can't recall this happening to people using ibmrsa-telnet.
Did you check the example CIB snippet which is at the end of the
ibmrsa-telnet script?
Thanks,
Dejan
>
> I made a quick'n dirty patch to the script (see below) which works for me, but
> now I wonder if anyone else is using this and if maybe there's a cleaner way
> to
> do this.
>
> regards,
> Ruben
>
> --- /usr/lib/stonith/plugins/external/ibmrsa-telnet.orig 2008-06-27
> 11:26:21.000000000 +0200
> +++ /usr/lib/stonith/plugins/external/ibmrsa-telnet 2008-06-27
> 11:32:16.000000000 +0200
> @@ -314,10 +314,13 @@
>
> def process(self, argv):
> self._echo_debug("========== Start =============")
> - if len(argv) <> 1:
> - self.echo_log("ERROR", 'Exactly one commandline argument
> required.')
> + if len(argv) < 1:
> + self.echo_log("ERROR", 'No commandline argument specified.')
> self.echo(self.usage())
> return(1)
> + if len(argv) > 1:
> + self.echo_log("WARN", 'Too many commandline arguments
> specified.')
> + self.echo(self.usage())
> cmd = argv[0]
> self._echo_debug("cmd:", cmd)
> if cmd not in self._required_cmds_list and \
>
>
> _______________________________________________
> Linux-HA mailing list
> [email protected]
> http://lists.linux-ha.org/mailman/listinfo/linux-ha
> See also: http://linux-ha.org/ReportingProblems
_______________________________________________
Linux-HA mailing list
[email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha
See also: http://linux-ha.org/ReportingProblems