Heropa's macOS desktops on-demand capability makes it easy to launch macOS based environments.
We have leveraged AWS EC2 Mac instances and developed a solution which allows us to handle macOS VM images identically to Linux and Windows, using a dedicated host in AWS. Heropa handles all of the complexities relating to allocation and de-allocation of dedicated hosts.
There are a few things to be aware of when using macOS VM images:
Billing is based on the dedicated host, not the individual instance, with a 24 hour minimum.
Elsewhere in Heropa, usage is charged for running instances. Because macOS instances require dedicated hosts, the charge period starts at the allocation of the host, and ends at the de-allocation of the host.
The minimum period you're paying for when running a macOS instance is 24 hours, enforced by AWS. This means that even if the policy being used is for a short period, eg. 1 hour, the dedicated host associated with that instance will not be deleted for another 23 hours.
macOS VMs should be left running.
Since usage is charged against the dedicated host, there's no benefit to shutting down macOS VMs. However there's also an important operational reason to not do this. When a macOS VM is shut down, some back end processes are run on the dedicated host. These can often take between 30 minutes - 2 hours to complete, during which the macOS VM can not be started. macOS VMs can be rebooted without any issue, just don't shut them down.
To prevent this from occurring, it's important that you disable the auto-suspend capability for macOS VMs. To do this:
- Select Templates from the left hand navigation menu
- From the Templates list, select the required template
- In the VMs tab, locate the macOS VM
- From the row action arrow, select Disable auto-suspend.
How do I start working with macOS VM images in Heropa?
To avail of macOS VM images in your Heropa instance, please speak to your account manager. Once a macOS VM image is available in Heropa, it can be used the same as you would any other VM image, by being added to templates and then used in courses, environments and events.