[Openstack] HA inside VMs (via Corosync/Pacemaker)

Steven Dake sdake at redhat.com
Sat Jun 30 19:29:27 UTC 2012


On 06/30/2012 06:32 AM, Christian Parpart wrote:
> On Sat, Jun 30, 2012 at 1:51 PM, Narayan Desai <narayan.desai at gmail.com
> <mailto:narayan.desai at gmail.com>> wrote:
> 
>     On Sat, Jun 30, 2012 at 3:06 AM, Christian Parpart <trapni at gmail.com
>     <mailto:trapni at gmail.com>> wrote:
>     > Hm, Pacemaker/Corosync *inside* the VM will add the Service-IP to
>     the local
>     > ethernet
>     > interface, and thus, the outside OpenStack components do not know
>     about.
>     >
>     > Using a dedicated floating IP pool for service IPs might feel like
>     a great
>     > solution, but
>     > OpenStack is not the one to manage who gets what IP - but
>     Corosync/Pacemaker
>     > inside
>     > the KVM instances. :-)
>     >
>     > Anyone an idea how to solve this?
> 
>     It sounds like you want to add explicit support to pacemaker to deal
>     with openstack fixed addresses. Then you could run with rfc1918
>     floating addresses, and then have pacemaker/corosync reassign the
>     (external) fixed address when consensus changes.
> 
>     Think of the openstack fixed address control plane in a similar way to
>     ifconfig. You should even be able to script it up yourself; you'd need
>     to add your openstack creds to the HA images though.
> 
> 
> Hey,
> 
> that's a really great idea, and IMHO apparently the only way to not
> interfere with OpenStack internals too much.
> 
> So I need to create a new resource agent that represents a floating IP.
> If I succeed, I'll share that script then. :)
> 
> Cheers,
> Christian Parpart.
> 
> 

Another option is to give Heat's High Availability a spin.  Heat is made
specifically for OpenStack cloud environments (vs corosync/pacemaker
being specifically made for bare metal Linux environments).

See
http://www.heat-api.org

Heat originates from the same authors as Corosync and much of the
cluster stack internals on Linux - so the high availability developer
experience that went into creating the software is equivalent.

For more details on Heat's HA see:

https://github.com/heat-api/heat/wiki/Using-HA

An example VM image template that describes HA:

https://github.com/heat-api/heat/blob/master/templates/WordPress_Single_Instance_With_HA.template


> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack at lists.launchpad.net
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
> 






More information about the Openstack mailing list