kevin
kevin copied to clipboard
Management Mode Lock
Currently, when a machine is being managed, it is still used as template for started machines.
Possible improvements:
- Perform management on a copy of the image, and overwrite the old image afterwards.
- Perform management on a copy-on-write image like the temporary machines, but meld the cow-image back into the original image after management is done
- Add a lock to prevent spawns of machines that use the image while it's being managed. This could be reported as "pending: waiting for management mode"
Those ideas can be combined, but each one would be an improvement already. The easiest one is the last one, I guess.
The second option might be best. We should check if it is possible to have multiple layers of copy-on-write images. Then we could just base new VM spawns on the changes fo a while and meld later, either after set time when no build is runnning or with a command that waits for all copies of the VM to terminate while delaying new VM spawns until the meld can be done.
In our own deployment, there is quite a lot of idle time, so fancy meld scheduling is not that important for us, but we should at least keep that in mind for later.