Errors or typos? Topics missing? Hard to read? Let us know.
Custom Ubuntu images can be created with Packer. This page explains the essentials.
Prerequisites
First, ensure your system can use packer:
- Install packer:
sudo apt install packer
- Gather the dependencies:
sudo apt install qemu-utils qemu-system ovmf cloud-image-utils
Clone your templates
Get the essential Packer templates for MAAS:
git clone https://github.com/canonical/packer-maas.git
Craft your image
Create the desired image:
- Navigate to the template directory:
cd packer-maas/ubuntu
- Start the build:
make custom-ubuntu-lvm.dd.gz
This process will take a few moments.
Push to MAAS
With your image built, make it accessible to MAAS:
maas $MAAS_USER boot-resources create name=custom/ubuntu architecture=amd64/generic filetype=ddgz content@=custom-ubuntu-lvm.dd.gz
Deploy your image
Finally, deploy your custom image onto a node in MAAS:
- Deploy the image to a node:
maas $MAAS_USER machine deploy $SYSTEM_ID osystem=$OS [$distro_series=$DISTRO]
- Confirm it’s really yours:
maas $MAAS_USER machines read | jq '.[] | {hostname, osystem}'
For further information, consult the Packer MAAS documentation^ for advanced practices.
Last updated 3 months ago.