A few weeks ago, we released Ubuntu 14.04 LTS for servers and cloud, which included a beta version of Metal-As-A-Service (MAAS) 1.7. Today, we are delighted to release this version for general availability. The flagship new feature is that MAAS is now able to provision all major server operating systems. Together with its support for multiple hardware architectures, MAAS is now well and truly fulfilling the Canonical goal of being able to deploy any workload on any hardware.
Specifically, MAAS can now provision Windows Server 2012 RT/Hyper-V, CentOS, RHEL, SLES, and OpenSUSE. The installation is done using the same single-pass mechanism used to deploy Ubuntu, typically providing the user with a running system in under 8 minutes on an SSD (or around 25 minutes on an HDD).
Secure de-provisioning is another great feature. MAAS now includes a disk wiping option which ensures that any data written to its disk is purged.
Finally, this release features a tech Preview of IPv6 support. MAAS now allows the user to deploy systems with IPv6 addresses, and since most BMCs only support IPv4 today, it also includes a host-IPv6-only mode which configures deployed machines to only utilise IPv6 for host traffic. As this is a technical preview, we encourage further testing and feedback in your own IPv6 environments.
Under the hood, a lot of plumbing has been simplified and updated. A number of improvements were made to improve overall scalability and robustness; for instance, we now model the entire provisioning process and can tell whether a machine failed to complete any of its steps, such as a BMC crash leading to a failed power-on; to further provide transparency, there’s an event log displayed on each node’s page and also a new set of ‘Failed’ states to which MAAS transitions nodes if it identifies anything abnormal.
You can reference the complete release notes (including any known errata) here: http://maas.ubuntu.com/docs/changelog.html
What is MAAS?
MAAS, at its essence, provides a cloud style API for physical systems. It’s fundamentally a server provisioning system and supplies the basis for physical system workload provisioning. MAAS completely automates the lifecycle of a server, which spans across:
- discovering the system on the network;
- probing and recording its hardware configuration;
- allocating servers to specific users;
- deploying the desired operating system software to it; and
- releasing the system back to the pool of available hardware.
To achieve this, MAAS provides a collection of standard services, managed through a single API and web UI:
- A DHCP server, for address allocation & PXE network boot
- A TFTP server, which delivers the installer’s bootloader, kernel and ramdisk
- An iSCSI terminator, which provides ephemeral disk images
- A DNS server, ensuring resolvable names and addresses for provisioned servers
- A proxy server, optimizing content delivered during provisioning and update
- A web management UI & command-line client
- A fully documented RESTful API
The architecture incorporates the concept of a Cluster Controller, which controls the servers directly attached to its networks, and a Region Controller, which manages one or more Cluster Controllers, generally co-located in a data center. The Cluster Controller runs DHCP, TFTP and iSCSI; the Region Controller stores information on your hardware inventory in its own database and hosts DNS, our RESTful API and the MAAS Web UI. MAAS was built to address scale-out data center requirements, and we have running installations with thousands of machines — we’d love to be part of your next deployment project.
End-user input sessions
Outstanding products are built through effective user-to-developer communication. Open source projects generally benefit from end-user input delivered to mailing lists and bug trackers, and we actively track and discuss ideas and problems raised through the MAAS Launchpad bugtracker.
But we’ve also learned that the class of user that deploys MAAS into production is often unable to publicly disclose details of their deployment, and may find email discussion of requirements and issues encountered cumbersome. To accommodate wider input, therefore, we will also be hosting regular calls where will be discussing planned features and allowing for both identified and anonymous participation. Watch this space for details on the next call.
In the meantime, take a look at our cloud pages to learn more about MAAS and other parts of the Ubuntu cloud portfolio.