Image Management enables users to upload, store, and manage Virtual Machine Images to StackPath and deploy a custom image to the Edge.
What is Image Management?
An image is an immutable capture of a Virtual Machine's disk. Package installs, hardware updates, and application data diverge a Virtual Machine's disk from its parent image. Capturing these changes into a custom image enables rapid deployment and scalability for applications that run on StackPath's Edge Compute.
Stackpath's Image Management allows for versioning images - a critical strategy to roll back unwanted changes and maintains backward compatibility. If a new image update crashes or degrades performance on your application, reverting to the previous versioned image may prevent additional downtime.
Create an Image
Images are created as captures from the root volume of an existing Virtual Machine instance. Any Virtual Machine workload instance can be captured. Creation of an image occurs any time an update must be made to the contents of an Image, or when an image is first created.
The capture process begins by marking the image as processing and powering off the virtual machine if it is on.
When the image capture process begins, the host Virtual Machine will shutdown, and an image capture will enter the
PROCESSING state. The image is then captured and stored encrypted (the encryption keys are per image). Once complete, the image is marked ready and the Virtual Machine is powered back on if it had been explicitly powered off by the capture process in the beginning. The captured image will be ready for deployment to a new Compute Workload.
Managing an Image
Image Management has 4 core functions - Update, Deprecate, Obsolete, and Delete. These features lay the groundwork for responsible maintenance and upkeep of system images.
Update an Image
Users can update an image's description and its metadata at any time. All other properties of an image cannot be changed by users after image creation.
Since images are immutable, their content cannot be updated directly. Instead, when issuing a new version of an image, a new image is created and the version should be incremented.
Deprecate an Image
Images may have deprecation settings applied which include a deprecation date, obsoletion date, and/or a deletion date. Dates in the past mean the effect is in place.
Obsolete an Image
Image obsoletion is the midpoint between deprecation and deletion. To obsolete an image, a depreciation date must be scheduled and occur prior to obsoletion. An obsolete image cannot be the target image of a new workload.
Delete an Image
Users can delete an image at any time when it is not actively "capturing", i.e. has a status of
READY. The delete takes effect immediately and cannot be undone. Note, direct deletion is considered a bad practice and deprecation settings should be used instead.
Pull an Image
Any image that was created on your Stack can be used to deploy a new Compute Workload. During Virtual Machine workload creation, an image can be pulled by the Stack, family, and optional tag.
Images may only be used if the user creating the virtual machine has access to the image.
When captured, all images are stored and encrypted with unique keys per image. Permissions are managed on a per Stack basis - any account that does not have permissions to your Control Panel, can not view or deploy a Virtual machine with your custom image.
If you have any questions about the content of this article, please feel free to reach out to the Support Team for assistance, we're available 24/7 for your convenience.