[Pacemaker] Suggestions for managing HA of containers from within a Pacemaker container?

Steven Dake (stdake) stdake at cisco.com
Sat Feb 7 15:09:45 EST 2015


I am working on Containerizing OpenStack in the Kolla project (http://launchpad.net/kolla).  One of the key things we want to do over the next few months is add H/A support to our container tech.  David Vossel had suggested using systemctl to monitor the containers themselves by running healthchecking scripts within the containers.  That idea is sound.

There is another technology called “super-privileged containers”.  Essentially it allows more host access for the container, allowing the treatment of Pacemaker as a container rather than a RPM or DEB file.  I’d like corosync to run in a separate container.  These containers will communicate using their normal mechanisms in a super-privileged mode.  We will implement this in Kolla.

Where I am stuck is how does Pacemaker within a container control other containers  in the host os.  One way I have considered is using the docker —pid=host flag, allowing pacemaker to communicate directly with the host systemctl process.  Where I am stuck is our containers don’t run via systemctl, but instead via shell scripts that are executed by third party deployment software.

An example:
Lets say a rabbitmq container wants to run:

The user would run
kolla-mgr deploy messaging

This would run a small bit of code to launch the docker container set for messaging.

Could pacemaker run something like

Kolla-mgr status messaging

To control the lifecycle of the processes?

Or would we be better off with some systemd integration with kolla-mgr?

Thoughts welcome

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.clusterlabs.org/pipermail/pacemaker/attachments/20150207/c8573589/attachment-0002.html>

More information about the Pacemaker mailing list