In certain scenarios, users automatically provision and de-provision virtual machines (i.e. VMs) from an image as part of their build process. In these cases, the IncrediBuild core package or solutions that are consumed by such a VM are not automatically released to the license pool once the VM is destroyed, resulting in IncrediBuild allocating core packages and solutions to VM instances that will no longer be used.
The "Single-use VM Image" feature addresses this scenario exactly by offering a mechanism that will automatically de-allocate the license core package and solutions assigned to such a VM once the VM is destroyed.
In order to achieve this behavior, the image from which the above mentioned VMs are to be provisioned, needs to be pre-installed with an IncrediBuild Agent using a special IncrediBuild install option. Once such an image is installed using a special install option named "Single-use VM Image", any VM that will be provisioned based on this image will automatically be assigned by the Coordinator with an appropriate core package (according to the amount of logical cores this VM reports to the Coordinator) and the IncrediBuild solutions available in the IncrediBuild license that is loaded in the Coordinator. Consequentially, once this VM will go offline with the Coordinator, the core package and solutions consumed by it will be automatically de-allocated and return to the license pool.
It's important to note that once a VM provisioned from such an image is destroyed, i.e., becomes offline to the Coordinator, this specific VM instance will no longer be permitted to connect to the IncrediBuild infrastructure.
New VM instances provisioned from the image will of course have no problem connecting to the IncrediBuild infrastructure and consume core packages and solutions. It is possible to change the default timeout after which a single-use VM that is offline to the Coordinator will be considered as de-provisioned. This can be helpful if your network has disconnections that may cause single-use VMs to drop the connection with the Coordinator and you want to make sure the Coordinator won't free their allocated core packages and solutions by mistake.
It is possible to instruct to Coordinator to only automatically allocate core packages to single-use VMs and not solutions under the Coordinator Settings
* The "Single-use Virtual Machine Image" feature is only available as part of IncrediBuild Enterprise Edition.
IBSetupConsole.exe /Install /Components=Agent,oneuse /Coordinator=YourCoordHostname
When changes in the image configuration are required, such as Windows updates or installation of an additional software, the image needs to be re-saved in order to apply the new changes. Saving an image after the IncrediBuild Agent service was run and has connected to the Coordinator will cause the Coordinator to unsubscribe any new instance that would be provisioned from this image.
In order to prevent this, a reset of the Single-Use VM image is needed before saving the image. The setting 'Reset Single-Use VM' in the Coordinator monitor allows the Coordinator to "forget" the image and allows saving the image in a state that instances provisioned from it would be able to connect to the Coordinator.
After resetting the Single-Use VM, the IncrediBuild Agent service on the VM will be stopped. In this stage, the image can be saved. Note that activating the Agent service again before saving the image, will render it incapable to connect once again.
In order to activate the reset Single Use VM setting, please follow these steps: