How to employ VMware images
MAAS 2.5 and above can deploy VMware ESXi as a custom image. MAAS cannot directly deploy the VMware ESXi ISO; you must create a specialised image from an official VMWare ISO. To automate the image creation process, Canonical hosts a repository↗
with community-contributed packer↗
templates.
This article will tell you:
- About the prerequisites for creating a VMWare image
- About the features and limitations of VMWare images in MAAS
- How to customise VMWare images
- How to build a VMWare image
- How to upload a VMWare image
VMware does not support cloning boot devices - you may run into issues triggered by non-unique UUID. One such issue↗
may lead to data corruption on VMFS datastores when using cloned boot devices.
About the prerequisites for creating a VMWare image
The following are required in order to create and deploy a VMWare image:
- MAAS 2.5.0+
- A physical machine running Ubuntu 18.04+
- CPU: 4 2GHz cores
- Memory: 8 GB RAM (16 GB RAM recommended)
- Disk space: 11 GB
-
The VMWare ESXi ISO
↗
-
Packer - https://www.packer.io/intro/getting-started/install.html
↗
- Procedure was tested with precompiled 64-bit Packer 1.3.4 Linux binaries
-
Packer template
↗
for MAAS custom image
About the features and limitations of VMWare images in MAAS
About cloning VMWare images
VMware does not support cloning boot devices↗
- you may run into issues triggered by non-unique UUID. One such issue↗
may lead to data corruption on VMFS datastores when using cloned boot devices.
About VMWare images and MAAS networking
The following apply to VMWare image creation, with respect to MAAS networking:
- VMware ESXi does not support Linux bridges
- Bonds - MAAS maps the following bond modes to VMware ESXi NIC team sharing with load balancing as follows:
- balance-rr - portid
- active-backup - explicit
- 802.3ad - iphash, LACP rate and XMIT hash policy settings are ignored.
- No other bond modes are currently supported.
- VMware ESXi does not allow VMs to use a PortGroup that has a VMK attached to it. All configured devices will have a VMK attached. To use a vSwitch with VMs, you must leave a device or alias unconfigured in MAAS.
About VMWare images and MAAS storage
Custom storage configuration is not supported because VMware ESXi expects specific disk formats. MAAS will extend datastore1 to the full size of the deployment disk. After deployment, VMware tools may be used to access the other disks.
About ESXi Hardware Support
VMware has very specific hardware requirements↗
. In particular, running VMware ESXi is not supported in a virtual machine or MAAS virsh Pod.
How to customise VMWare images
The image may be customize by modifying packer-maas/vmware-esxi/http/vmware-esxi-ks.cfg see Installation and Upgrade Scripts in the VMware ESXi installation and Setup manual↗
for more information.
How to build a VMWare image
Before an image is built the nbd kernel module must be loaded
sudo modprobe nbd
Once the nbd kernel module is loaded your current working directory must be in the packer-maas/vmware-esxi directory
cd /path/to/packer-maas/vmware-esxi
You can now start the image building process using packer with the following command:
sudo packer build -var
'vmware_esxi_iso_path=/path/to/VMware-VMvisor-Installer-6.7.0-8169922.x86_64.iso'
vmware-esxi.json
How to upload a VMWare image
Once you have created the image, upload it to MAAS, using the CLI, with the following command:
maas $PROFILE boot-resources create name='esxi/6.7' title='VMware ESXi 6.7'
architecture='amd64/generic' filetype='ddgz' content@=vmware-esxi.dd.gz
Last updated 2 months ago.