Controllers: Understanding region and rack
Unveiling the backbone of MAAS: controllers
Understanding how controllers fit into the MAAS ecosystem is crucial to your success in managing your metal infrastructure. You may find it useful to tweak your controller settings based on your specific network and machine count. Even consider opting for a high availability setup for robustness.
At the core of MAAS are its controllers, which come in two flavours: region controllers and rack controllers. While the region controller is the interaction hub for operators, the rack controller focuses on delivering high-bandwidth services to the machines.
Diving into region controllers
A region controller is a multifaceted component comprising:
- REST API server (TCP port 5240)
- PostgreSQL database
- DNS
- caching HTTP proxy
- Web UI
It manages either an entire data centre or a specific region and orchestrates a myriad of tasks from API request routing to keeping DNS and RBAC up to date.
Exploring rack controllers
Your rack controller is the workhorse of each ‘fabric,’ offering four key services:
- DHCP
- TFTP
- HTTP (for images)
- Power management
Positioned strategically in each data centre rack, it caches essential resources like OS install images for optimal performance.
Unravelling the fabric concept
Think of a fabric as a digital loom that interlinks VLANs. It allows VLANs, which are ordinarily isolated, to communicate under specific conditions. This comes in handy when different departments in an organisation, like accounting and facilities in a hospital, need to share data.
Navigating controller communication
The hierarchy of communication in MAAS flows from the UI/API to the region controller, then to the rack controller, and finally to the machines. High availability (HA) setups introduce redundancy but don’t alter this fundamental flow.
The rack-controller-to-machine dialogue
All communications from machines route through rack controllers. This includes everything from DNS lookups to APT cache-and-forward proxies via Squid. A unique DNS resource is created for each subnet, which machines use to find an available rack controller.
Interplay between region and rack controllers
The dance between the region and rack controllers is a nuanced one. It involves multiple steps, from initial operator requests to the final storage of machine data in a PostgreSQL database. This multi-step process underpins tasks like commissioning machines and demonstrates the intricate communications within MAAS.
Tell me about the DHCP "next-server" statement
The next-server
directive specifies the host from which a machine should load its initial boot file. In the context of MAAS, the rack controller serving DHCP roles as this host, acting as a broker for boot file delivery.
Last updated a month ago.