Comment 6 for bug 1739761

Revision history for this message
Scott Moser (smoser) wrote :

The reason that maas 2.3 cannot already deploy precise is because of changes
in how the ephemeral environment (used for installation) is booted.
MAAS now provides kernel and initramfs over pxe and the root filesystem
over http ('root=http://....' via the cloud-initramfs-rooturl package).
Previously maas used iscsi root for providing the root filesystem.

When installing an ubuntu release, MAAS boots the system into the same
release's ephemeral environment for the installation.

Support for 'rooturl' and some other changes were never backported to
precise. So MAAS is not able to boot an ephemeral environment for precise.
Typica

The solution that is agreed upon is to make MAAS utilize the ephemeral
environment of 16.04 or 14.04 when installing precise.

The changes that needed to be done to accomplish this are:
a.) the maas v3 stream [1] needs to have some deployable filesystem.
A root tarball would have been required no changes to curtin.
We chose to provide a squashfs image though for consistency, so that
all Ubuntu releases in the v3 stream would have a squashfs filesystem.

    [1] http://images.maas.io/ephemeral-v3/daily/precise/

b.) MAAS will have to change to boot 16.04 or 14.04 to install precise.
c.) MAAS will have to provide the installation source to curtin as
http://.../path/to/precise.squashfs rather than 'cp://media/root-ro'
as it uses in other releases.

d.) Curtin will have to add support for installing using a filesystem
image as an installation source as it did previously witih root tarball.

There is one known caveat to this approach that I hit during development
of the curtin code [2]. I hit an issue where mkfs.xfs from the
installation environment chose some default values that were not supported
by the older kernel that would be booted into after installation.
This is a known class of problem. We are sheileded from such mismatch
issues currently as we booting and installing the same release,
so the default mkfs options match.

The problem I found specifically was with xenial's mkfs and trusty's kernel.
I just used those for testing as there is no precise image yet.
Similar problems could occur in any filesystem.

  [2] https://code.launchpad.net/~smoser/curtin/+git/curtin/+merge/336872