Right now, gce-backend is the sole provider of VMs for machine-provider. We'd want the same automatic VM recycling for our non-GCE VMs.
Configuring self-hosted VMs has different challenges than on GCE;
- The list of hosts is fixed and should be stored in a DB, e.g. crimson.
- Hosts are not internet accessible, so an agent is needed.
- Authentication is completely different.
- The VMs must be allocated on the hosts based on the available disk/CPU/RAM.
- Overprovisioning must be planned explicitly.
- The number of images will be much larger, which makes automatic image regeneration non trivial.
- macOS is its own little star.
AI:
- Create a new agent that would bridge communication with the VMWare ESX / vSphere / Fusion hosts and the backend.
- Create a new backend as the luci-config managed layer that the agent talks to.
I'm filing this issue for feature tracking, as this is something we've discussed for a long time but never prioritized. VMWare has been working recently on a native Go package, which would make this project likely easier to implement: https://godoc.org/github.com/vmware/govmomi
Comment 1 by mar...@chromium.org
, Jun 22 2018