The image check feature helps you identify potential issues in images or Elastic Compute Service (ECS) instances after migration jobs are complete, and provides solutions to the identified issues. This helps you improve the success rate of starting ECS instances. This topic describes the check items supported by the image check feature and provides solutions to the identified issues.
Check items for Linux images
The following table describes the check items for Linux images and provides solutions to the identified issues.
Check item | Description | Recommended solution |
GUESTOS.Platform | Checks the type of the operating system. The operating system must be Linux. | N/A |
GUESTOS.OSVersion | Checks the version of the operating system. Example: CentOS 7.9. | N/A |
GUESTOS.Architecture | Checks the architecture of the operating system. Examples: x86_64, arm64, and i386. | N/A |
GUESTOS.RtcTimeMode | Checks the time standard of the real-time clock (RTC). The time standard can be local time or UTC. We recommend that you set the time standard of the RTC to UTC. | For more information about how to set the time standard of the RTC to UTC, see Linux time and time zones. |
GUESTOS.BootMode | Checks the boot mode of the image. The boot mode can be legacy or Unified Extensible Firmware Interface (UEFI). | N/A |
GUESTOS.KernelVersion | Checks the kernel version. Example: 3.10.0-1160.21.1.el7.x86_64. | N/A |
GUESTOS.Virtio | Checks whether the virtio driver is installed in the image. ECS instances depend on virtualized device drivers to run. If no virtio driver is installed in an image, startup exceptions may occur on the instances that use the image. | For more information about how to install the virtio driver in an image, see Install the virtio driver. |
GUESTOS.Nvme | Checks whether the Non-Volatile Memory Express (NVMe) driver is installed in the image. If you want to attach disks based on the NVMe protocol to ECS instances of specific instance types such as ecs.g7se, make sure that the NVMe driver is installed in the images of the instances. | For more information about how to install the NVMe driver in an image, see Adapt Linux custom images to NVMe-based system disks. |
GUESTOS.Fstab | Checks the mount information about file systems that is specified in the /etc/fstab file of the image. The mount information errors of file systems may cause system startup exceptions. Examples of the errors: The mount information of file systems is not included in the /etc/fstab file, and the UUIDs of file systems are invalid. | For more information about how to correctly configure the /etc/fstab file, see How to Configure File Disk Identification Mode to UUID in fstab File. |
GUESTOS.Grub | Checks whether the GRand Unified Bootloader (GRUB) file is correctly configured in the image. Issues such as device configuration exceptions, absent devices, and invalid UUIDs may cause system startup exceptions. | For more information about how to correctly configure the GRUB configuration file in an image, see How to Modify the File Disk Identifier to UUID in a Linux Image Grub File. |
GUESTOS.Selinux | Checks whether Security-Enhanced Linux (SELinux) is disabled in the image. We recommend that you disable SELinux in images in the cloud. If you enable SELinux in an image in the cloud, system startup exceptions may occur. | For more information about how to disable SELinux, see Enable or disable SELinux. |
GUESTOS.OnlineResizeFS | Checks whether the image supports auto scaling of the root partition. If an ECS instance is created from an image in which commands such as cloud-init and growpart are installed, the root partition of the instance can be automatically scaled. For example, if you use an image that is 20 GB in size and specify a system disk size of 100 GB to create an ECS instance, the root partition is automatically scaled up to 100 GB when the instance is created. | For more information about how to configure an image to support auto scaling, see Install cloud-init. |
GUESTOS.SystemImage | Checks whether the image is a valid system disk image. Images such as ISO images and empty images are invalid. | N/A |
GUESTOS.CloudInit | Checks whether cloud-init is installed in the image. cloud-init is the standard tool that can be used by cloud servers to initialize system configurations. You can use the tool to configure hostnames and keys for ECS instances, and configure root partitions to be automatically scaled. | For more information about how to install cloud-init, see Install cloud-init. |
GUESTOS.SupportMocInstanceTypes | Checks whether the image supports instance types that are based on the SHENLONG architecture. In most cases, the instance types of the latest ECS instances, such as ecs.g6 and ecs.g7, are based on the SHENLONG architecture. If the operating system version and kernel version of an image are earlier versions that do not support the SHENLONG architecture, exceptions may occur on the instances that use the image. For more information about instance types, see Overview of instance families. |
|
Check items for Windows images
The following table describes the check items for Windows images and provides solutions to the identified issues.
Check item | Description | Recommended solution |
GUESTOS.Platform | Checks the type of the operating system. The operating system must be Windows. | N/A |
GUESTOS.OSVersion | Checks the version of the operating system. Example: Windows Server 2016 Datacenter. | N/A |
GUESTOS.Architecture | Checks the architecture of the operating system. Example: amd64. | N/A |
GUESTOS.KernelVersion | Checks the kernel version. | N/A |
GUESTOS.BCD | Checks whether the Boot Configuration Data (BCD) file in the image is correct. If the BCD file is missing or damaged, the ECS instances that use the image may fail to start. | Use the correct BCD file. |
GUESTOS.Registry | Checks whether the registry file in the image is correct. If the registry file is missing or damaged, the ECS instances that use the image may fail to start. | Use the correct registry file. |
GUESTOS.Hotfix | Checks whether the patches in the image are correct. If a required patch is missing or an invalid patch is installed, the ECS instances that use the image may fail to start. |
|
GUESTOS.Disk | Checks whether the disk configurations in the image are correct. If a residual driver is retained on a disk, the ECS instances that use the image may fail to start. | |
GUESTOS.Sysprep | Checks whether the Sysprep process is complete during migration. If the Sysprep process is terminated during migration, the ECS instances that use the image may fail to start. | Do not perform migration before the Sysprep process is complete. |
GUESTOS.Update | Checks whether the Update process is complete during migration. If the Update process is terminated during migration, the ECS instances that use the image may fail to start. | Do not perform migration before the Update process is complete. |
GUESTOS.Xen | Checks whether a residual Xen driver exists. If a residual Xen driver is retained on a disk, the ECS instances that use the image may fail to start. | |
GUESTOS.Server | Checks whether the service configurations in the image are correct. If the image is configured to prevent drivers from being installed, the ECS instances that use the image cannot update the drivers. | |
GUESTOS.DesktopConfig | Checks whether the desktop configuration file desktop.ini is missing. If the desktop.ini file is missing, the desktop configurations become invalid. | Configure a correct desktop.ini file. |
GUESTOS.BootMgr | Checks whether Windows Boot Manager (BootMgr) is missing. If BootMgr is missing, the ECS instances that use the image may fail to start. | Correctly configure BootMgr. |