[Linux-cluster] New APC agent
James Parsons
jparsons at redhat.com
Wed May 17 13:19:14 UTC 2006
Hi Eric - thanks for testing and the patches.
-J
Eric Kerin wrote:
>On Thu, 2006-04-20 at 17:16 -0400, James Parsons wrote:
>
>
>>Hello all,
>>
>>This is an snmp based fence agent for APC power switches to be used
>>with RHEL4 Red Hat Cluster Suite.
>>
>>
>>
><SNIP>
>
>
>>Please let me know how this agent works.
>>
>>
>>
>I finally got around to trying it out with my hardware, and wasn't able
>to get it working as a fence agent. I tracked it down to two problems
>in the script when reading the commands from stdin.
>
>1. Never parses the port parameter
>2. Needs to trim the newline from each parameter read from stdin for the
>snmpset command to work properly.
>
>The attached patch cleared it up for me (please excuse any coding or
>style mistakes, first time coding in Python) I've also included the
>relevant sections of my cluster.conf, just for completeness sake.
>
>Once I made these changes it worked quite well on my APC 7900's. And
>now I can rename the outlets to descriptive names instead of "outlet
>1".
>
>
>Now on to comments:
>It would be nice to be able to set the community via the cluster.conf
>file, right now it's hard coded in the fence agent to private.
>
>
>Thanks,
>Eric Kerin
>eric at bootseg.com
>
>
>
>
>------------------------------------------------------------------------
>
>--- fence_apc_snmp 2006-04-20 16:28:18.000000000 -0400
>+++ fence_apc_snmp.new 2006-05-16 14:07:37.000000000 -0400
>@@ -117,7 +117,7 @@
> #place params in dict
> for line in sys.stdin:
> val = line.split("=")
>- params[val[0]] = val[1]
>+ params[val[0]] = val[1][:-1]
>
> try:
> address = params["ipaddr"]
>@@ -137,6 +137,12 @@
> sys.exit(1)
>
> try:
>+ port = params["port"]
>+ except KeyError, e:
>+ os.write(standard_err, "FENCE: Missing port param for fence_apc...exiting")
>+ sys.exit(1)
>+
>+ try:
> a = params["option"]
> if a == "Off" or a == "OFF" or a == "off":
> action = POWER_OFF
>
>
>------------------------------------------------------------------------
>
> <clusternode name="auhjpsn01a" votes="1">
> <fence>
> <method name="1">
> <device name="AUHAPC01a" port="1" option="off"/>
> <device name="AUHAPC01b" port="1" option="off"/>
> <device name="AUHAPC01a" port="1" option="on"/>
> <device name="AUHAPC01b" port="1" option="on"/>
> </method>
> </fence>
> </clusternode>
> <clusternode name="auhjpsn01b" votes="1">
> <fence>
> <method name="1">
> <device name="AUHAPC01a" port="2" option="off"/>
> <device name="AUHAPC01b" port="2" option="off"/>
> <device name="AUHAPC01a" port="2" option="on"/>
> <device name="AUHAPC01b" port="2" option="on"/>
> </method>
> </fence>
> </clusternode>
> </clusternodes>
> <cman expected_votes="1" two_node="1"/>
> <fencedevices>
> <fencedevice agent="fence_apc_snmp" ipaddr="XXX.XXX.XXX.205" login="" name="AUHAPC01a" passwd=""/>
> <fencedevice agent="fence_apc_snmp" ipaddr="XXX.XXX.XXX.206" login="" name="AUHAPC01b" passwd=""/>
> </fencedevices>
>
>
More information about the Linux-cluster
mailing list