English
« Back to projectatomic.io
Ask Your Question
0

How to achieve High Availability for Containers on Atomic Hosts

asked 2014-05-01 22:12:47 +0000

cloudssky gravatar image

What is the best way to achieve HA for docker containers on atomic hosts?

To be more precise, let's say we have 2 (bare metal) atomic hosts and we are running our apache container app on the first host and due to some reasons the host crashes, how could I achieve a service discovery mechanism to find out, that my container is not accessible any more and run my container on the second atomic host?

So I guess someone might say I'd need to build an atomic cluster with heartbeat, pacemaker, GlusterFS or Ceph, etc. support, right?

Or if I use OpenStack to run my Atomic hosts, it would be sufficient to use an HA architecture for my OpenStack deployment and I don't need to deal with the cluster headache?

One other question which comes just in my mind is about live migration for containers, which I asked on ask.openstack.org sometimes ago (to be honest I googled and found my own question, I couldn't remember it anymore ;-):

https://ask.openstack.org/en/question/12147/live-migration-with-docker/

Does atomic project help with live migration?

Thanks in advance for any hints and advice!

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted
2

answered 2014-07-11 19:54:25 +0000

Stephen gravatar image

We plan on using Consul service discovery to monitor docker containers for start and stop events via docker0, this registers each container in the Consul DNS so other services know how to connect to it. consul-docker is a docker image running consul that is currently having this ability developed into it. https://github.com/progrium/docker-consul

You can then build a service that performs health checks against the registered services in the Consul DNS which will remove them if failed and can respond by using geard to spin up another instance of the container on another atomic host.

edit flag offensive delete link more

Comments

Thanks very much for the clear answer and advice!

cloudssky ( 2014-08-30 17:06:52 +0000 )edit
1

answered 2014-05-06 01:50:38 +0000

jzb gravatar image

This is a lot of questions, some are a bit beyond the scope of this forum. (You could achieve failover in a number of ways, we don't have a recommended method.)

At the moment, we don't have any features related to live migration. Ideally, any apps you were deploying in containers at the moment would be written in such a way that live migration would not be necessary. You really want redundancy that doesn't depend on something running continuously while moving from host to host. I'd point you toCheckpoint/Restore In Userspace (CRUI), but it looks like you were already pointed there in the question on ask.openstack.org .

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

[hide preview]

Question Tools

Follow
1 follower

Stats

Asked: 2014-05-01 22:12:47 +0000

Seen: 11,614 times

Last updated: Jul 11 '14