Upgrading (CLI)

How to upgrade the Anka Virtualization package

Pre-upgrade Considerations

Existing VersionTarget VersionRecommendation
3.x3.3.9Please kill -9 the ankanetd process after upgrading to 3.3.9. Older 3.x versions had a bug that kept ankanetd running indefinitely and will cause 3.3.9 to have networking issues trying to use the older ankanetd.
< 3.33.3Optional (ARM ONLY): Delete and re-pull VM templates to host machines to take advantage of new performance and smaller disk usage changes.
< 3.x3.x
  • External volumes must be mounted as APFS in order to use them for `img_lib_dir`, etc.
< 3.x3.x (intel)
  • VMs suspended on Anka 2.x will need to be re-suspended on 3.x.
  • The Controller Agent version that comes with Anka will start at 1.30.1. Older versions of the Controller do not support Anka 3. You will need to upgrade your controller to at least 1.30.1.
  • Previously, anka create would create a suspended VM. Starting in this version, VMs are stopped.
  • GUI (Anka.app) VM creation will produce a VM without macOS set up.
  • anka --machine-readable registry list has a key name change from id to uuid
  • modify set commands will continue to work, but not show in the anka modify --help output.
  • Only macOS 10.15 and above are supported by Veertu. If you're using an older version, do not upgrade addons to 3.x and they should continue to function.
Existing VM macOS VersionTarget VersionRecommendation
<= Big SurMontereyYou will need to change your VM template: anka modify {vmName} set hard-drive -c sata, anka modify {vmName} set network-card -c virtio-net
<= Big SurVenturaYou will need to change your VM template: anka modify {vmName} set hard-drive -c sata, anka modify {vmName} set network-card -c virtio-net, and anka modify {vmName} set custom-variable hw.x2apic 1
MontereyVenturaYou will need to change your VM template: anka modify {vmName} set custom-variable hw.x2apic 1
<= VenturaVentura(Intel only + 3.3.x) You will need to resuspend your Templates and push them to the registry.

Upgrade Procedure

1. Download and install the latest version

Upgrading the Build Cloud too? Check out our upgrade procedure for the Anka Build Cloud Controller & Registry
We do not follow strict semantic versioning; minor and major version increases can have significant changes
Upgrading Anka Virtualization software while VMs are running is NOT safe.
If you have the node joined to your Anka Build Cloud, the agent will restart itself in order to ensure it loads necessary components to support the new Anka version. You will see a message like Version change detected! Stopping runner in the logs. Do not interrupt this processes as it is expected. Nodes may go offline temporarily.

2. Upgrade VM addons

If your existing version is noted in the Pre-Upgrade Considerations as requiring an addons upgrade, or, if you’re going between major/minor versions of Anka:

  1. Upgrade the guest addons inside existing VM Templates anka start -u.
  2. Push the newly upgraded VM templates to registry with anka registry push {vmNameOrUUID} --tag <newTag>