Hello Ferenc, Just want to communicate thoughts, AFAIC.
I've ment to explore this connection for long, but never found much useful material on the subject. How does DLM fencing fit into the modern Pacemaker architecture? Fencing is a confusing topic in itself
Yes, unfortunately, maybe the best material is source code so far, such as resource agent(ocf:pacemaker:controld) scripts (/usr/lib/ocf/resource.d/pacemaker/controld), and libdlm/dlm_controld/, etc.
already (fence_legacy, fence_pcmk, stonith, stonithd, stonith_admin), then dlm_controld can use dlm_stonith to proxy fencing requests to Pacemaker, and it becomes hopeless... :)
What you said about dlm_stonith is true. It just invoke an API of pcmk to tell pacemaker who and when should be fenced. Pacemaker do the horse work, according to what fencing method is used, I guess the fencing request will finally reach its destination - a resource agent for fencing.
I'm just starting learning about the way these components cooperate together. Could you share any updates if you've learn something? I would be grateful;-)
I'd be grateful for a pointer to a good overview document, or a quick sketch if you can spare the time. To invoke some concrete questions: When does DLM fence a node? Is it necessary only when there's no
When fencing here is limited within DLM, the time DLM will actively make request to fence is when uncontrolled lockspace has been found in kernel. Only a rebooting can make that node clean.
resource manager running on the cluster? Does it matter whether dlm_controld is run as a standalone daemon or as a controld resource?
According DLM's man pages and codes I've read, DLM provide us two options: daemon(I guess it's short of dlm_daemon) fence, and dlm_stonith. Daemon fencing is with DLM itself, which have configuration(man dlm.conf) and lots of code(dlm/dlm_controld/{fence*|daemon_cpg.c}) to handle fencing. But I never configured DLM fencing stuff, as defalt, it (may) use dlm_stonith as proxy, then pacemaker things...
So I think corosync that provide membership knowledge is a must for DLM, but pacemaker is optional if DLM fencing has been configured and you don't want other RA, which I also never tried;-)
Wouldn't Pacemaker fence a failing node itself all the same? Or is dlm_stonith for the case when only the stonithd component of Pacemaker is active somehow?
Please correct me if there's any problem. Eric _______________________________________________ Users mailing list: Users@clusterlabs.org http://clusterlabs.org/mailman/listinfo/users Project Home: http://www.clusterlabs.org Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf Bugs: http://bugs.clusterlabs.org