Image management is concerned with the lifecycle of creation, management, and retirement for Virtual Machine images. There form the initial virtual disk of a virtual machine deployed as a Compute node in an IaaS Building Block. An Image management stack is responsible for:
- Creation of images with appropriate pre-requisites.
- Making base images available to virtual machines.
- Retirement of (and migration from) outdated base images.
There are three different approaches to image management. These are not mutually exclusive. Tagging standards support tracing the origins of a given disk to assist in retirement processes.
Cloud vendors provide a public gallery of base images which are typically optimised for use in their cloud environment and which include components to facilitate communication with the cloud fabric of each vendor, tracing things like CPU and memory usage.
- Quick and easy to deploy.
- No need to manage an image library (images managed by cloud vendor).
- No customisation: all configuration must be done after provisioning the VM.
Dynamic images are built from a base image at deployment time. After a VM starts up, an extension invokes a script which installs any additional OS components, middleware, or apps and performs additional configuration steps such as domain joining, security hardening, and optimisation.
- New VMs are always up-to-date with dependent software.
- No need to manage an image library.
- Forces adoption of scripting processes to provision and configure VMs.
- Installation and configuration time means a longer wait before the VM is in a usable state.
- Increased load on network and media storage if many VMs start together and begin installation processes.
- Without careful versioning procedures, it can be hard to replicate a specific image build as dynamically installed apps are retrieved from artifact repositories.
A “golden image” is a saved VM image that is reused for other VM instances. This can be created manually by starting up a base image from a cloud vendor, installing and configuring the machine, and then saving the state to produce a reusable image (on a Windows machine, the final step would be to run the sysprep tool).
- New VMs are usable more quickly after startup.
- There can be significant overhead dealing with management and versioning of images.
- Where the golden image build is not automated, there can be difficulties delivering new images with consistent timeliness and quality.
Edit this page on GitHub
The content on this page is published under Open Source licenses via GitHub. To submit issues or provide feedback please visit the repository.Visit