[Linux-cluster] Fencing Hardware

James Parsons jparsons at redhat.com
Wed Oct 25 14:57:45 UTC 2006


isplist at logicore.net wrote:

>>Yup. I went to their web page - the only management controller for their
>>product line was the one mentioned above.
>>    
>>
>
>Pretty incredible considering their gear. 
>
>Mike
>
>  
>
So, Mike - I am pursuing this a bit farther for you because I know how 
much pain you have been going through with your cluster. When the cubix 
web page said their blade management controller worked only with IE, I 
figured it had activeX features built inti it, but I took a chance and 
wrote the customer support people at cubix...I hope you don't mind. I 
asked the following:

>>Hi,

>>Is a web browser the *only* way to access the management controller's 
>>power up/down capability?

>>Is it possible to telnet to it, or to snmp interface with it? I am 
>>seeking a way to power blades up or down from an automated script.

>>Perhaps you do such a thing in your testing lab...

>>Thanks,

>>-Jim

They replied in less than 24 hours with the following:


>Hi Jim,

>It is possible to control the power on/off functionality using http posts
>embedded in a script (possibly cURL) but could also be accomplished by using
>simple HTML. The following post string would power on or off a blade located
>at the CMC 2 IP address "Whatever" chassis 1, Blade 1. 

>Port = Enclosure
>Channel = Blade

>Ports are enumerated from bottom to top on the back of the CMC 2 blade
>Channels from left to right facing the front of the enclosure.

>http://192.168.10.127/control?port=1&channel=1&pwrbtn=press

>Stephen McGowan
>Cubix Technical Support / 800-953-0204

So, that is helpful! The cubix management appears to be a card that will work across their product line -- I cannot be sure as I did not know your exact system description when I wrote cubix, but I would expect it is very likely that it does work with your blade enclosure.

So, if you had this management controller, you could write a simple python or perl script called fence_cubix that would take as args on stdin the addr of the controller card, the port and the channel values that map to the blade you wish to fence. You would put these args in the cluster.conf file like so:
<xml snip 8< >
  <clusternode name="node1" nodeid="1">
   <method name="1">
    <device name="my_cubix_card" port="1" channel="3"/>
   </method>
  </clusternode>
<more xml snipping 8< >
  <fencedevice name="my_cubix_card" agent="fence_cubix" ipaddr="192.168.10.127"/>

So, now inside your python script called fence_cubix, all of the args from the cluster.cong file will be passed to it as key-value pairs when a node needs to be fenced...just sort them out with simple string manipulations, and build the query string to send to the ipaddr as an http request.  Then drop you script in /sbin with the other fence agent scripts.

Look at the other fence agents for hints - most of then also support a command line interface that is handy for testing.

I hope this is helpful to you.

_j






More information about the Linux-cluster mailing list