14
MAAS 2.0 High Availability Architectural overview and scenarios

MAAS High Availability Overview

Embed Size (px)

Citation preview

Page 1: MAAS High Availability Overview

MAAS 2.0 High Availability

Architectural overview and scenarios

Page 2: MAAS High Availability Overview

MAASArchitecture

Primer

Page 3: MAAS High Availability Overview

Region & Rack

○ MAAS consists of two high-level components: Region and Rack

○ In the simplest possible deployment, both components can run on a single system(That's what you get when you simply do apt-get install maas)

Page 4: MAAS High Availability Overview

Region & Rack

The Region is what the sysadmin directly interacts with:

○ Delivers Web interface and REST API

○ Services DNS requests via BIND

○ Provides an HTTP proxy via SQUID

○ Provides API endpoints used by curtin and cloud-init during node lifecycle

○ Stores deployment metadata and downloaded images in PostgreSQL

Page 5: MAAS High Availability Overview

Region & Rack

The Rack directly manages nodes in order to inventory and deploy:

○ Provides DHCP services via dhcpd

○ Provides TFTP (built-in)

○ Delivers an ephemeral environment via PXE and iSCSI which is used for commissioning and deployment

Page 6: MAAS High Availability Overview

Region

Rack 1

○ MAAS can be easily scaled out by separating the Region and Rack onto separate machines(Separate VMs on different hosts are OK too)

○ The Rack controller can manage a rack (or more) directly

○ The Region can manage multiple Rack controllers

Page 7: MAAS High Availability Overview

High AvailabilityRegion and Rack-level scenarios

Page 8: MAAS High Availability Overview

HA Region(2+ servers)

HA Rack Controller

* ideally on switch* typically in-rack or row-level* cache of images* provides backup services for adjacent racks/rows

HA Rack Controller

HA Overview

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

Rack Server

HA PostgreSQL(2+ servers)

Managed VIP or haproxy

Page 9: MAAS High Availability Overview

Region

Rack 1 Rack 2 Rack 3

○ Single MAAS region

○ No HA configured

○ Region & Rack-level SPOFs

Page 10: MAAS High Availability Overview

Region

Rack 1 Rack 2 Rack 3

Region○ Region HA

○ Region controllers share DB

DB Cluster

Page 11: MAAS High Availability Overview

Region

Rack 1 Rack 2 Rack 3

Region○ Region HA

○ Master dies

○ No problem!

○ Spare region controller takes over

DB Cluster

Page 12: MAAS High Availability Overview

Region

Rack 1 Rack 2 Rack 3

Region○ Region HA

○ Rack HA

○ Each rack controller can manage multiple networks

DB Cluster

Page 13: MAAS High Availability Overview

Region

Rack 1 Rack 2 Rack 3

Region○ Region HA

○ Rack HA

○ Rack 1 dies

○ No problem!

○ Rack 2 takes over

DB Cluster

Page 14: MAAS High Availability Overview

maas.io