MAAS upgrade in Ubuntu 20.04

In the upcoming Ubuntu 20.04 LTS release (Focal Fossa), MAAS is transitioning to use snaps as the primary delivery mechanism.

MAAS .deb packages are still provided in the archive, and automatically install the maas snap from the Snap Store.

Further updates to MAAS will be provided directly through the Snap Store. The current state of installed MAAS snap and available versions can be checked with the snap info maas command.

First time MAAS install on Ubuntu 20.04

If you’re installing MAAS for the first time, you can follow these instructions. It’s not necessary to install the maas package from the archive anymore, as it’s only provided as a transitional package and just installs the maas snap.

Upgrading from Ubuntu 18.04 LTS

When upgrading an existing 18.04 LTS (bionic) installation with MAAS installed, the standard upgrade process can be followed (using do-release-upgrade). As part of the upgrade of MAAS packages, the snap package will be installed and configuration and data from the current installation will be migrated to the snap setup.

Before performing the upgrade, please make sure that connectivity to the Snap Store is available. If you’re behind a restrictive proxy/firewall, ensure that URLs listed in this post are accessible.

The migration process will handle setting up the maas snap in the correct mode (rack, region or rack+region) matching the previous installation.

The PostgreSQL database used by MAAS will not be migrated inside the snap, so the installation will continue to use the previous (local or remote) service.

I like snaps, and think it is the right way forward. However, having apt install snaps instead of traditional packages is a cruel hoax and is exceedingly unhelpful for Enterprise customers (tooling, training, and etc.). It also has broken the 2.8 documentation and GUI is pervasive ways (e.g. user is told to apt install maas-rack-controller && maas-rack init no longer works, it should be maas init rack … ). This goes far beyond MAAS, this entire notion of “transitional apt” packaging should be tossed. Please restore the .deb packages to their original state … it’s one thing to abandon them (well, to restrict them to P1S1 bugs or security or some such) and another to break documentation and customer scripting and expectations.

1 Like

@khbkhb, thanks for being frank with us. Could you point out the specific URLs where the doc is incorrect? This would be very helpful to us.

Really too many to call out. Here’s an example The apt install maas-rack-controller will “work” but which maas-rack won’t find it. and maas-rack register has to be replaced with maas init rack (I haven’t tried to sleuth out precisely how it could all be done without interactivity, but I’m sure that’s just slogging through). bug has some background. The lxd section says to install via packages (but that seems suboptimal | pointless or actively harmful when apt really installs snaps. Instead we should have explicit snap instructions). Install from packages section, if we’re sticking with apt is snap, really should explicitly state what’s going to happen (and the distinctions it’s making about installing rack vs region are unhelpful. (btw: nit since apt-add-repository isn’t available by default it would be a kindness to footnote (or otherwise refer) to software-properties-common

I should make it explicit that I don’t believe this is fundamentally a Documentation flaw; the Engineering decision to force users to SNAP is the underlying issue. The consequences are high impact on Documentation and users … and seem to have been rolled out without sufficient soak time (that’s assuming there was an internal team to run automated tests of all the examples in the documentation and time to resolve issues)

1 Like

I’m seeing the below error while trying to upgrade MAAS 2.8 to 2.9 in Ubuntu 18.04. I tried executing “do-release-upgrade” and do the upgrade.

Errors were encountered while processing:

@shibayan could you please provide the exact steps you did?

Also, are you trying to upgrade just MAAS or the whole system (to 20.04) as well?

With so many moving parts to all of our systems, this change is yet another thing to keep track of. deb has worked well for years - there may be inefficiencies but they’re largely known and managed. The only snap I’ve used is terribly variable in speed, and when I went to read about caching locally (akin to apt-mirror, aptly) I got confused quickly. Maybe it’s better now.

Anyway, bah humbug. I guess it’ll be fine, but I am not happy about the change. Also, what @khbkhb said.

If you’d like to continue using the pure Debian package we still provide them, just not in the Ubuntu archives. We now create a PPA per release to allow you to lock to a release. The current stable is available at ppa:maas/2.8 and the RC is available at ppa:maas/2.9.

You’ll have to add the PPA right before you run do-release-upgrade and keep PPAs enabled during upgrade.

1 Like

Good news, thank you.