Compute node HA - current upstream development

Embed Size (px)

Citation preview

SUSE_template Jan 2014 v2_ks

Compute node HA
a.k.a. can pets survive in OpenStack?

Adam SpiersSenior Software Engineer, Cloud & High [email protected]

OpenStack London Meetup, Wednesday 18th November

short update on upstream development

High Availability in
a typical OpenStack cloud today

Typical HA control plane in OpenStack

Pacemaker ClusterControl Node 1Node DRBDPostgreSQLRabbitMQKeystoneGlanceNovaDashboardCinderNeutronDatabase Cluster Node 1Node 2DRBD or shared storageDatabaseMessage QueueServices ClusterNode 1Node 2Node 3OrchestrationKeystoneGlanceNovaDashboardCinderTelemetryNeutronMaximises cloud uptime

Automatic restart of OpenStack controller services

Active/Active API services with load balancing

DB + MQ either Active/Active or Active/Passive

Under the covers

Services ClusterNode 1Node 2Node 3Recommended by
official HA guide

HAProxy distributes service requests

Pacemakermonitoring and control of nodes and services

Corosynccluster membership / messaging / quorum / leadership election

Corosync

PacemakerHAProxyBut what I really want to do is keep my workloads up!

Why do we need HA for compute nodes?

HA Cluster

Control node

OSMessage queueDatabaseIdentityImagesBlock storageNetworkingDashboardCompute

OSCompute node

nova-computelibvirt

HA only on control plane

OSCompute node

nova-computelibvirt

OSCompute node

nova-computelibvirt

HA Cluster

Control node

OSMessage queueDatabaseIdentityImagesBlock storageNetworkingDashboardCompute

OSCompute node

nova-computelibvirt

Can we simply extend the cluster?

OSCompute node

nova-computelibvirt

OSCompute node

nova-computelibvirt

Scaling up

Corosync requires