What is new with MAAS 3.0

We are happy to announce the release of MAAS 3.0. This release provides new features, along with critical and high-priority bug fixes.

Cumulative summary of new features in MAAS 3.0

MAAS 3.0 can be installed fresh (recommended) with:

sudo snap install --channel=3.0/stable maas

MAAS 3.0 can be installed from packages by adding the 3.0 PPA:

sudo add-apt-repository ppa:maas/3.0
sudo apt update
sudo apt install maas

You can then either install MAAS 3.0 fresh (recommended) with:

sudo apt-get -y install maas

Or, if you prefer to upgrade, you can do so with:

sudo apt upgrade maas

At this point, you may proceed with a normal installation.

Significant changes

With the advent of MAAS 3.0, we are removing support for RSD pods. Registered pods and their machines will be removed by MAAS upon upgrading to MAAS 3.0.

Note that new features are categorised by the level of release at which they became accessible to users.

New features in MAAS 3.0 RC1

Consolidation of logs and events

The logs and events tabs have combined and now live under “Logs”. In addition to a number of small improvements, navigating and displaying events has been made easier.

Downloading logs

A helpful new feature is the ability to download the machine and installation output, and if a machine has failed deployment you can now download a full tar of the curtain logs.

Disabling boot methods

Individual boot methods may now be disabled. When a boot method is disabled MAAS will configure MAAS controlled isc-dhcpd to not respond to the associated boot architecture code^. External DHCP servers must be configured manually.

To allow different boot methods to be in different states on separate physical networks using the same VLAN ID configuration is done on the subnet in the UI or API. When using the API boot methods to be disabled may be specified using the MAAS internal name or boot architecture code^ in octet or hex form. For example the following disabled i386/AMD64 PXE, AMD64 UEFI TFTP, and AMD64 UEFI HTTP

maas $PROFILE subnet update $SUBNET disabled_boot_architectures="0x00 uefi_amd64_tftp 00:10"

GRUB

  • UEFI AMD64 HTTP(00:10) has been re-enabled.
  • UEFI ARM64 HTTP(00:13) has been enabled.
  • UEFI ARM64 TFTP(00:0B) and UEFI ARM64 HTTP(00:13) will now provide a shim and GRUB signed with the Microsoft boot loader keys.
  • grub.cfg for all UEFI platforms has been updated to replace the deprecated linuxefi and initrdefi commands with the standard linux and initrd commands.
  • GRUB debug may now be enabled by enabling rackd debug logging^.

New feature in MAAS 3.0 Beta 4

Improvements to MAAS CLI help UX

The MAAS CLI will now give you help in more places, supporting a more exploration-based interaction. Specifically, we now show help for cases where the required arguments are not met.

Say you’re trying to find out how to list the details of a machine in MAAS e.g.

$ PROFILE=foo
$ maas login $PROFILE http://$MY_MAAS:5240/MAAS/ $APIKEY
$ maas $PROFILE
usage: maas $PROFILE [-h] COMMAND ...

Issue commands to the MAAS region controller at http://$MY_MAAS:5240/MAAS/api/2.0/.

optional arguments:
 -h, --help            show this help message and exit

drill down:
 COMMAND
   account             Manage the current logged-in user.
   bcache-cache-set    Manage bcache cache set on a machine.
   bcache-cache-sets   Manage bcache cache sets on a machine.

✂️--cut for brevity--✂️
   machine             Manage an individual machine.
   machines            Manage the collection of all the machines in the MAAS.
   node                Manage an individual Node.
   nodes               Manage the collection of all the nodes in the MAAS.
✂️--cut for brevity--✂️

too few arguments
$ maas $PROFILE node 
usage: maas $PROFILE node [-h] COMMAND ...

Manage an individual Node.

optional arguments:
 -h, --help        show this help message and exit

drill down:
 COMMAND
   details         Get system details
   power-parameters
                   Get power parameters
   read            Read a node
   delete          Delete a node

The Node is identified by its system_id.

too few arguments

$ maas $PROFILE node read
usage: maas $PROFILE node read [--help] [-d] [-k] system_id [data [data ...]]

Read a node

positional arguments:
 system_id
 data

optional arguments:
 --help, -h      Show this help message and exit.
 -d, --debug     Display more information about API responses.
 -k, --insecure  Disable SSL certificate check

Reads a node with the given system_id.

the following arguments are required: system_id, data
$ maas $PROFILE node read $SYSTEM_ID
{
   "system_id": "$SYSTEM_ID",
   "domain": {
       "authoritative": true,
       "ttl": null,
       "is_default": true,
       "id": 0,
       "name": "maas",
       "resource_record_count": 200,
       "resource_uri": "/MAAS/api/2.0/domains/0/"
✂️--cut for brevity--✂️

We can see at each stage help which gives us clues as to what the next step is, finally arriving at a complete CLI command.

New feature in MAAS 3.0 Beta 2

Registering a machine as a VM host during deployment

When deploying a machine through the API, it’s now possible to specify register_vmhost=True to have LXD configured on the machine and registered as a VM host in MAAS (similar to what happens with virsh if install_kvm=True is provided).

New features in MAAS 3.0 Beta 1

PCI and USB devices are now modelled in MAAS

MAAS 3.0 models all PCI and USB devices detected during commissioning:

  • Existing machines will have to be recommissioned to have PCI and USB devices modelled
  • PCI and USB devices are shown in the UI and on the API using the node-devices endpoint
  • Node devices may be deleted on the API only

On the API using the allocate operation on the machines endpoint a machine may allocated by a device vendor_id, product_id, vendor_name, product_name, or commissioning_driver.

IBM Z DPM partition support

IBM Z14 GA2 (LinuxOne II) and above mainframe partitions are supported in MAAS 3.0. Note that partitions (LPARS) must pre-configured and use qeth-based network devices (use HyperV sockets and properly-defined storage groups like Hipersockets or OSA adaptors) and properly-defined (FCP) storage groups… IBM Z DPM Partitions can be added as a chassis, which allows you to add all partitions at once.

Proxmox support

MAAS 3.0 supports Proxmox as a power driver:

  • Only Proxmox VMs are supported
  • You may authenticate with Proxmox using a username and password or a username and API token
  • If an API token is used, it must be given permission to query, start and stop VMs.
  • Proxmox VMs can be added as a chassis; this allows you to add all VMs in Proxmox at once.

Note that proxmox support has also been back-ported to MAAS 2.9

LXD projects support

MAAS 3.0 supports the use of LXD projects:

  • LXD VM hosts registered in MAAS are now tied to a specific LXD project which MAAS uses to manage VMs
  • MAAS doesn’t create or manage machines for VMs in other projects
  • MAAS creates the specified project when the VM host is registered, if it doesn’t exist
  • All existing VMs in the specified project are commissioned on registration
  • Resource usage is reported at both project and global levels

PCI and USB device tabs in UI machine details

Tables for detected PCI and USB devices have been added to the machine details page for MAAS 3.0:

These tables include a new skeleton loading state while node devices are being fetched:

The user is prompted to commission the machine if no devices are detected.

Workload annotations

Workload annotations have been added to the machine summary page in MAAS 3.0. These allow you to apply owner_data to a machine and make it visible while the machine is in allocated or deployed state:

This data is cleared once the machine state changes to something other than “allocated” or “deployed.” The machine list can be filtered by these workload annotations. MAAS will warn you on the release page to remind you that workload annotations will be cleared upon releasing the machine.

Fixed status bar

In MAAS 3.0, a fixed status bar has been added to the bottom of the screen, which will always display the MAAS name and version on the left. The right side of the status bar is intended to show contextual data, depending on the UI panel currently displayed. For now, the only data shown is a “last commissioned” timestamp when the user is on a machine details page:

MAAS 3.0 bug fixes

MAAS 3.0 incorporates a large number of bug fixes, summarised in the sections below. Please feel free to validate these fixes at your convenience and give us feedback if anything doesn’t seem to work as presented in the bug request.

One particular bug, #1916860^, involves failures in the IPMI cipher suite in MAAS 2.9.2 and up, on the Lenovo x3650 M5 (and others). This particular bug is a not a MAAS bug, but a firmware issue with the subject machines. While the MAAS team can’t fix this (hence the assignment of “Won’t Fix”), the team did provide a easy workaround^ which helps circumvent this issue.

MAAS 3.0 bug fixes

Here are the bugs that were ‘Fix Released’ for the MAAS 3.0 release:

Number Description Importance
#1932136^ interface with a warning is not configured properly Critical
#1896771^ interfaces that are not connected are detected as ‘connected to slow interface’ Medium

MAAS 3.0 RC2 bug fixes

Here are the bugs that have been ‘Fix Released’ in MAAS 3.0 RC2:

Number Description Importance
#1929552^ Deb-based controller fails to run machine-resources Critical
#1929576^ Machines fail to commission using the 3.0 snap due to possible? DNS issue Critical
#1930227^ Failure to commission when interfaces has a /32 IP Critical
#1930554^ vm-host CLI command is now named vmhosts Critical
#1930587^ Different disks with same LUN detected as multipath Critical
#1931215^ [.0~rc2-10023 testing] two IPs assigned to one interface Critical
#1931838^ Reverse DNS lookup fails for subnets smaller than /24 Critical
#1835292^ UI should add button to download curtin-logs.tar on deployment failure MAAS High
#1908552^ maas init fails; ‘relation “maasserver_routable_pairs” does not exist’ High
#1929086^ LXD VM hosts can’t be refreshed if VLANs interfaces aren’t named $parent.$vid High
#1929643^ MAAS often fails and and returns a Pickled object if request header is set to Accept: / Medium
#1924820^ Trying to edit a disconnected NIC, then cancelling the edit and connecting the NIC via its drop-down menu, many drop-down menu options then disappear Undecided

MAAS 3.0 RC1 bug fixes

Here are the bugs that have been ‘Fix Released’ in MAAS 3.0 RC1:

Number Description Importance
#1774529^ Cannot delete some instances of model ‘Domain’ because they are referenced through a protected foreign key High
#1919001^ Unable to network boot VM on IBM Z DPM Partition High
#1925249^ MAAS detects 0 cores, RAM available for KVM host, reports negative availability on pod compose High
#1927292^ Updating controller has vlan_ids error High
#1927657^ Global kernel command line options not passed with tags High
#1928098^ If a workload annotation has a key with spaces in it, filtering doesn’t work High
#1926140^ maas_url not returned to the UI Medium
#1926171^ Failure processing network information when adding a rack Medium
#1927036^ Incorrect value “accept_ra” in interface definition Medium
#1927340^ Deb to snap migration script should support remote Postgres Medium
#1928104^ New workload annotations don’t show up without a reload Medium
#1928115^ API still refers to “owner data” rather than “workload annotations” Medium
#1922891^ MAAS configures nodes with incorrect DNS server addresses when using multiple IP addresses Undecided
#1923268^ grubnet default grub.cfg should try /grub/grub.cfg-${net_default_mac} before /grub/grub.cfg Undecided
#1926164^ VLAN page shows odd “Rack controllers” value Undecided
#1926510^ dhcp subnet snippets are NOT inside the pool block Undecided
#1927559^ Default logical volume size too big in UI Undecided
#1928024^ UI states commissioning/testing scripts were never uploaded Undecided
#1928226^ Information “not available” indicates that it’'s an error of some sort Undecided
#1928235^ notes field won’t update properly: MAAS 3.0 RC]()^ Undecided
#1928324^ updating a machine zone or resource pool doesn’t refresh details Undecided

MAAS 3.0 Beta 5 bug fixes

Here are the bugs that have been Fix Released in MAAS 3.0 Beta 5:

Number Description Importance
#1925784^ Processing LXD results failure with loopback Critical
#1923871^ LXD vmhost project usage includes usage for other projects High
#1815084^ MAAS web ui should perform Save action when Enter/Return is pressed Medium
#1923867^ Commissioning fails if NIC gets different PCI address Medium

MAAS 3.0 Beta 4 bug fixes

Here are the bugs that have been Fix Released in MAAS 3.0 Beta 4:

Number Description Importance
#1923246^ Unable to compose LXD VM with multiple NICs High
#1918963^ Controllers page out of sync with nodes Undecided
#1923685^ Unable to deploy LXD VM host on S390X Undecided
#1923687^ LXD VM host refresh failure is ignored Undecided
#1774529^ Cannot delete some instances of model ‘Domain’ because they are referenced through a protected foreign key High
#1914762^ test network configuration broken with openvswitch bridge High
#1919001^ Unable to network boot VM on IBM Z DPM Partition High
#1917963^ Add chassis lowers the case of added machines Low
#1915087^ 2.9 UI is broken, seems to loop between user intro and machines pages endlessly High
#1923842^ Can’t use action menu on machine details page High
#1917667^ Commissioning/testing scripts no longer show ETA or progress Undecided
#1917669^ No way to view previous commissioning or testing script results Undecided
#1917670^ Storage and interface tests not assoicated with a device Undecided
#1917671^ Commissioning/testing scripts not updated after starting commissioning or testing Undecided
#1917794^ Unable to view full history of events in UI Undecided
#1918964^ UI shows action unavailable after performing action Undecided
#1918966^ Tabs aren’t always underscorred Undecided
#1918971^ UI does not autofill size on storage tab Undecided
#1923524^ Unable to delete LXD composed machine on KVM page Undecided

MAAS 3.0 Beta 3 bug fixes

Here are the bugs that have been Fix Released in MAAS 3.0 Beta 3:

Number Description Importance
#1922569^ Create KVM fails in MAAS 3.0 Beta with a project error High
#1923251^ Creating an LXD VM host now requires a project name High
#1809939^ dhcp snippet create fail when dhcp subnet is relayed Medium
#1913460^ Add option to pick whether to keep or decompose machines in a VM host Undecided
#1922787^ make “LXD” the default VM host in MAAS UI (rather than virsh) Undecided
#1922876^ Deploy KVM hosts with LXD by default Undecided
#1922972^ MAAS 3.0 Beta2 UI says “machine cannot be deployed” while successfully deploying machine Undecided
#1923719^ MAAS 3.0 : snap refresh maas from 3.0.0~beta2-9826-g.13cc184d5 Undecided

MAAS 3.0 Beta 2 bug fixes

Here are the bugs that have been Fix Released in MAAS 3.0 Beta 2:

Number Description Importance
#1922107^ Hugepages/pinning available for virsh and lack validation High
#1922433^ Machine resources path set incorrectly in rackd when using snap High

MAAS 3.0 Beta 1 bug fixes

Here are the bugs that have been Fix Released in MAAS 3.0 Beta 1:

Number Description Importance
#1896199^ API docs link is not offline Critical
#1904245^ MAAS Snap fails to build on PPC64 on Launchpad Critical
#1912727^ KVM Page Fails to load with error “An unexpected error has occurred, please try refreshing your browser window.” Critical
#1915869^ maas snap cli renders SyntaxWarning in the stderr Critical
#1916093^ Unable to add more than 3 Promox VMs Critical
#1883824^ Support LXD projects in power control High
#1884276^ Terrible user experience adding existing LXD host High
#1902425^ Failed to allocate the required AUTO IP addresses after 2 retries High
#1908087^ Reverse DNS for non-maas RFC1918 zones fails inside maas High
#1908356^ Owner data websocket methods are not working High
#1908434^ Can’t delete LXD VM in offline state High
#1913323^ /MAAS/docs/ leads to 404 page High
#1914588^ Enabling debug from snap traceback High
#1915021^ Mapping subnet doesn’t work from the MAAS snap High
#1915022^ The MAAS snap doesn’t include nmap High
#1915715^ LXD VM additional disks all show 10Gb size High
#1915970^ Facebook Wedge BMC detection fails on non-x86 architectures High
#1918997^ MAAS does not set snap proxy High
#1919000^ Unable to connect MAAS to an LXD VM host High
#1887797^ Impossible to delete zombie LXD VM Medium
#1894116^ Machines can’t be deployed after deselecting all archs in the “Ubuntu extra architectures” package repo Medium
#1897946^ hi1620-based ARM Servers are shown as “Unknown model” Medium
#1906212^ timeout in testing scripts ignores the days if set to greater than 24 hours Medium
#1911825^ Unable to use FQDN as power_address Medium
#1914165^ Proxmox does not allow custom port Medium
#1917652^ 30-maas-01-bmc-config failing on commissioning Cisco UCSC-C220-M4L Medium
#1335175^ maas does not combine kernel_opts when nodes have multiple tags with kernel options Low
#1915359^ make sampledata can’t find machine-resources Low
#1916844^ Removing a machine that is a vm host tells you to remove the “pod” Low
#1920019^ maas_remote_syslog_compress is unnecessarily chatty Low
#1887558^ Multipath JBOD storage devices are not shown via /dev/mapper but each path as a single device. Wishlist
#1901944^ tags field in machine edit page overtakes other fields Undecided
#1909985^ Add commission timestamp to machine websocket api Undecided
#1913464^ Drop RSD pods UI Undecided
#1914590^ Support composing LXD VMs with multiple disks in the UI Undecided
#1915970^ Facebook Wedge BMC detection fails on non-x86 architectures Undecided
#1916073^ MAAS should install qemu-efi-aarch64 on arm64 KVM pods Undecided
#1916317^ UI is using API to request scripts with full content Undecided
#1919381^ typo “veryiying” in info message in smartctl-validate Undecided

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.