From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Teigland Date: Mon, 23 Feb 2009 12:15:30 -0600 Subject: [Cluster-devel] unfencing In-Reply-To: <1235370440.7816.209.camel@cerberus.int.fabbione.net> References: <20090220214431.GC23911@redhat.com> <1235370440.7816.209.camel@cerberus.int.fabbione.net> Message-ID: <20090223181530.GB12791@redhat.com> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit On Mon, Feb 23, 2009 at 07:27:20AM +0100, Fabio M. Di Nitto wrote: > > libfence:fence_node_undo(node_name) logic: > > for each device_name under given node_name, > > if an unfencedevice exists with name=device_name, then > > run the unfencedevice agent with first arg of "undo" > > and other args the normal combination of node and device args > > (any agent used with unfencing must recognize/support "undo") > > All our agents already support on/off enable/disable operations. It's > probably best to align them to have the same config options rather than > adding a new one across the board. Yes, I have those options in mind, and would prefer to use them as well. We'll have to wait and see during the implementation phase; for the time being they complicate things, so I'm using "undo" to avoid those details. (I did reuse those options back in my first unfencing attempt which I eventually removed: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=c781fbb6df57f9780cdadf42126cdcc9a2ff3878) > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > I think that we can avoid the whole overriding the default action="" for that fence method or possibly > consider unfencing a special case method. The idea is to contain the > whole fence config for the node within the object rather > than spreading it even more. > > For e.g.: > > > > > > ... > > > OR > > > > > > ... > > > (clearly names and format are up for discussion) The meanings of those fencing structures have never changed since being introduced many years ago, and both of those fundamentally change it. It would be very unfortunate to redefine them. A good alternative to would be an section within the node setions (it would not require a method level).... Now that I've thought more about it, it seems a better choice than "unfencedevices". It defines explicitly what should be done, rather than depending on the implicit effects of matching names between fencedevice/unfencedevice. and The key thing I've realized since the previous attempt in 2004, is that we need to explicitly configure what unfencing should happen, rather than just trying to apply the normal fencing config in reverse. Dave