One of the key benefits of moving workloads to the cloud is the ability to rely on cloud providers to maintain underlying infrastructure. This helps you focus more resources on your specific business solutions. Occasionally, however, a maintenance event might affect the availability of your cloud resources, so it’s important you are not only informed of scheduled downtime, but also able to prepare for it according to your own business needs.
With the Oracle Cloud Infrastructure Compute service, you can control downtime associated with those rare hardware maintenance events by using Customer Managed VM Maintenance. When a maintenance event is planned for an underlying system that supports one of your VMs, you can migrate that VM to other cloud infrastructure by rebooting the instance any time before the scheduled maintenance event.
Approximately two weeks before an actual maintenance event is scheduled, you will receive an email notification from Oracle Cloud Infrastructure. It includes the date and duration of the downtime, a list of instances that are affected by the event, as well as clear instructions on how to move the instance(s) to different infrastructure at any time prior to the maintenance date. It is a good idea to set up the Oracle Cloud Infrastructure account with an email alias that will ensure this notification email will reach the right inboxes.
The same information is also available in the Oracle Cloud Infrastructure Console. Any VM instance to be affected by the scheduled downtime is marked with the Maintenance Reboot flag.
If you choose to ignore this information, the instances go through the planned maintenance process, including a reboot. However, you can improve the availability of your services by rebooting the instance at a more convenient time before the scheduled maintenance. You can perform the reboot through the Console, the API, or the CLI. When the instance restarts, it’s running on other infrastructure in the cloud, and the maintenance flag is cleared.
As part of your operational policies, you might want to regularly check for all instances that require a maintenance reboot. In the Console, you can use the following predefined query in the Advanced Search: "Query for all instances which have an upcoming scheduled maintenance reboot".
The Console displays resources from a single region at a time, so you must run the query in each region separately.
In the API or CLI, you can filter flagged instances by using the timeMaintenanceRebootDue property. You can use a script to list all such instances across all enabled regions of a tenancy. The script can be scheduled to run daily to ensure you have enough time to act on any flagged instances even in emergency situations.
This feature is currently limited to StandardVM shapes running a Linux OS, either from Oracle images or custom images. Any instances that have non-iSCSI block volume attachments or secondary VNICs require the block volumes and secondary VNICs to be detached before the instance is rebooted. After reboot, these can be reattached to resume normal operations.
In a future phase, the feature will support all VM shapes as well as instances that have non-iSCSI block volumes and secondary VNICs attached.
The Customer Managed VM Maintenance feature allows you to have control over downtime of VM instances running on top of infrastructure that requires maintenance. Once these instances are identified (either by email notification or by actively running a script) they can be migrated to new infrastructure by performing a reboot at a time that is convenient for you and your applications.