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

Andrew Beekhof andrew at beekhof.net
Mon Feb 23 19:20:03 EST 2015


> On 10 Feb 2015, at 1:45 pm, Serge Dubrouski <sergeyfd at gmail.com> wrote:
> 
> Hello Steve,
> 
> Are you sure that Pacemaker is the right product for your project? Have you checked Mesos/Marathon or Kubernates? Those are frameworks being developed for managing containers.

And in a few years they'll work out that they need some HA features and try to retrofit them :-)
In the meantime pacemaker is actually rather good at managing containers already and knows a thing or two about HA and how to bring up a complex stack of services.

The one thing that would be really interesting in this area is using the our policy engine as the kubernates scheduler.
So many ideas and so little time.

> 
> On Sat Feb 07 2015 at 1:19:15 PM Steven Dake (stdake) <stdake at cisco.com> wrote:
> Hi,
> 
> 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
> 
> Regards,
> -steve
> _______________________________________________
> Pacemaker mailing list: Pacemaker at oss.clusterlabs.org
> http://oss.clusterlabs.org/mailman/listinfo/pacemaker
> 
> Project Home: http://www.clusterlabs.org
> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
> Bugs: http://bugs.clusterlabs.org
> _______________________________________________
> Pacemaker mailing list: Pacemaker at oss.clusterlabs.org
> http://oss.clusterlabs.org/mailman/listinfo/pacemaker
> 
> Project Home: http://www.clusterlabs.org
> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
> Bugs: http://bugs.clusterlabs.org





More information about the Pacemaker mailing list