鏡像檢測功能用於檢測鏡像是否為有效鏡像、鏡像是否可以建立出功能齊全的ECS執行個體等。您可以在建立鏡像、匯入鏡像等環節使用鏡像檢測功能,檢測完成後,您可以在鏡像控制台查看鏡像檢測結果並針對檢測結果中的修複建議進行修複,提升鏡像品質,從而保證基於這些鏡像部署的ECS執行個體能夠穩定高效地運行。
鏡像檢測會在建立鏡像、匯入鏡像完成後觸發,不會對建立鏡像、匯入鏡像的流程產生任何影響(即使檢測失敗)。
鏡像檢測功能本身不會收取任何費用。
鏡像通過檢測功能後,會攜帶作業系統版本(
acs:ecs:image:osVersion
)和核心版本acs:ecs:image:kernelVersion
標籤。
功能優勢
強烈建議您在建立鏡像、匯入鏡像時配置鏡像檢測。配置鏡像檢測有如下優勢:
使用限制
鏡像檢測當前支援絕大多數的作業系統,但仍有部分作業系統不支援,請在使用鏡像檢測功能時選擇適用的作業系統版本。不支援的作業系統列表請參見鏡像檢測作業系統限制。
配置鏡像檢測
建立鏡像時配置檢測
ECS控制台方式
目前,在ECS控制台上建立自訂鏡像時已預設選擇執行鏡像檢測,保持不變即可。更多資訊,請參見使用執行個體建立自訂鏡像和使用快照建立自訂鏡像。
OpenAPI方式
通過CreateImage介面設定入參DetectionStrategy=Standard
即可。可通過OpenAPI Explorer運行該介面,免去您計算簽名的困擾,也可以自動產生SDK程式碼範例。
匯入鏡像時配置檢測
ECS控制台方式
目前,在控制台上匯入自訂鏡像時已預設選擇執行鏡像檢測,保持不變即可。更多資訊,請參見匯入自訂鏡像。
OpenAPI方式
通過ImportImage介面設定入參DetectionStrategy=Standard
即可。可通過OpenAPI Explorer運行該介面,免去您計算簽名的困擾,也可以自動產生SDK程式碼範例。
查看鏡像檢測結果
ECS控制台方式
在自訂鏡像頁面找到已建立的鏡像,等待鏡像狀態為可用之後,會自動執行鏡像檢測任務。當鏡像檢測結果列為檢測完成時,表示鏡像檢測完成。
將滑鼠懸浮至檢測完成,然後單擊查看詳情即可查看詳細的鏡像檢測結果。
(條件必選)如果有待修複項,按照建議進行修複。
(僅適用於Linux)您可以單擊一鍵修複通過CloudOps Orchestration Service (OOS)的公用模板ACS-ECS-RepairImage進行修複。
也可以根據鏡像詳情中的修複建議手動修複,鏡像檢測項的詳細說明及修複建議請參見檢測項說明。
OpenAPI方式
通過DescribeImages根據檢測鏡像的鏡像ID查詢即可。可通過OpenAPI Explorer運行該介面,即可免去您計算簽名的困擾,也可以自動產生SDK程式碼範例。
傳回值中DetectionOptions
即為檢測結果,其中Status
為檢測任務狀態,Item
是每個檢測項結果。
檢測項說明
Linux檢測項
Linux作業系統鏡像檢測項的詳細說明及修複建議如下表所示。
檢測項 | 檢測說明 | 修複建議 |
GUESTOS.Platform | 系統平台,只能是Linux作業系統。 | 不涉及 |
GUESTOS.OSVersion | 系統版本。 | 不涉及 |
GUESTOS.Architecture | 系統架構。 | 不涉及 |
GUESTOS.RtcTimeMode | 鏡像硬體時鐘時區RTC (Real Time Clock) ,包括UTC和local。建議設定為標準的UTC模式。 | 如何設定硬體時鐘的時間標準為UTC,請參見Linux時間和時區說明。 |
GUESTOS.BootMode | 鏡像啟動模式,包括LEGACY和UEFI。 | 不涉及 |
GUESTOS.KernelVersion | 核心版本。 | 不涉及 |
GUESTOS.Virtio | 鏡像是否安裝virtio驅動。ECS執行個體運行需要相關虛擬化裝置驅動支援,未安裝該驅動會導致執行個體啟動異常。 | 如何為鏡像安裝virtio驅動,請參見安裝virtio驅動。 |
GUESTOS.Nvme | 鏡像是否安裝NVMe驅動。部分ECS規格,例如ecs.g7se使用基於NVMe協議掛載的雲端硬碟,鏡像中需要安裝相關驅動。 | 如何為鏡像安裝NVMe驅動,請參見如何為已有自訂鏡像安裝NVMe驅動?。 |
GUESTOS.Fstab | 鏡像中/etc/fstab檔案配置了系統磁碟裝置掛載資訊,錯誤的配置會導致系統啟動異常,例如配置的掛載裝置資訊不存在、裝置UUID錯誤等。 | 如何正確配置/etc/fstab,請參見在fstab檔案中配置UUID方式自動掛載資料盤。 |
GUESTOS.Grub | 鏡像中grub引導檔案是否正常。例如device裝置配置異常、相關裝置不存在、UUID錯誤等,會導致系統啟動異常。 | 無 |
GUESTOS.Dhcp | 鏡像中網路設定檔是否設定為DHCP模式,如果鏡像中設定為靜態模式,會導致執行個體啟動後網路設定異常。 | 如何設定鏡像網路設定模式為DHCP,請參見如何在Linux鏡像中配置網路為DHCP。 |
GUESTOS.Selinux | 鏡像是否關閉SELinux。雲上鏡像不建議開啟SELinux,有可能會導致系統啟動異常。 | 如何關閉SELinux,請參見開啟或關閉SELinux。 |
GUESTOS.OnlineResizeFS | 鏡像是否支援根分區自動擴容。鏡像中安裝有cloud-init、growpart命令等,使用鏡像建立執行個體後,根分區會自動擴容。例如您的鏡像空間大小是20 GB,建立執行個體時系統硬碟大小為100 GB,則執行個體建立後,根分區會自動擴容至100 GB。 | 如何配置鏡像支援自動擴容,請參見安裝cloud-init。 |
GUESTOS.SystemImage | 鏡像是否是有效系統硬碟鏡像,請不要匯入ISO鏡像、空鏡像等無效鏡像。 | 不涉及 |
GUESTOS.CloudAssistant | 鏡像是否安裝雲助手。雲助手是為ECS打造的原生自動化營運工具,通過免密碼、免登入、無需使用跳板機的形式,在ECS執行個體上實現批量營運、執行命令(Shell、PowerShell和Bat等)和傳送檔案等操作。建議您在鏡像中安裝雲助手,協助您高效營運ECS。 | 如何安裝雲助手,請參見安裝雲助手Agent。 |
GUESTOS.CloudInit | 鏡像中是否安裝cloud-init。cloud-init是標準的雲端服務器初始化佈建服務,為執行個體配置hostname、密鑰、根分區擴容等。 | 如何為鏡像安裝cloud-init,請參見安裝cloud-init。 |
GUESTOS.SecurityCenterAgent | 鏡像是否安裝Security CenterAgent。Security Center作為一個即時識別、分析和預警安全威脅的統一安全管理系統,為您提供安全態勢總覽、防勒索、防病毒、防篡改、合規檢查等安全能力,全方位檢測和防護您的伺服器和Web應用安全。 | 如何為鏡像安裝Security CenterAgent,請參見安裝用戶端。 |
GUESTOS.SupportMocInstanceTypes | 檢測鏡像是否支援阿里雲ECS神龍規格。 阿里雲最新的ECS執行個體通常為神龍規格,例如ecs.g6、ecs.g7等。如果鏡像的系統和核心版本過低,在相關規格上啟動會有異常。具體的執行個體規格資訊,請參見執行個體規格類型系列。 |
|
Windows檢測項
Windows作業系統鏡像檢測項的詳細說明及修複建議如下表所示。
檢測項 | 檢測說明 | 修複建議 |
GUESTOS.Platform | 系統平台,只能是Windows作業系統。 | 不涉及 |
GUESTOS.OSVersion | 系統版本。 | 不涉及 |
GUESTOS.Architecture | 系統架構。 | 不涉及 |
GUESTOS.KernelVersion | 核心版本。 | 不涉及 |
GUESTOS.Virtio | 鏡像中是否安裝了virtio驅動。ECS執行個體運行依賴相關虛擬化裝置驅動,未安裝該驅動會導致執行個體啟動異常。 | 如何為鏡像安裝virtio 驅動,請參見安裝virtio驅動。 |
GUESTOS.BCD | 鏡像中的BCD檔案是否正確。BCD檔案丟失或者損壞會導致執行個體無法啟動。 | 請使用正確的BCD檔案。 |
GUESTOS.Registry | 鏡像中的註冊表檔案是否正確。註冊表檔案丟失或者損壞會導致執行個體啟動異常。 | 請使用正確的註冊表檔案。 |
GUESTOS.Hotfix | 鏡像中的補丁是否正確。缺少必要的補丁或者安裝了有問題的補丁,會導致執行個體啟動異常。 |
|
GUESTOS.Disk | 鏡像中的磁碟設定是否正確。如果在磁碟上有殘留的驅動項,可能會導致執行個體啟動異常。 | |
GUESTOS.Sysprep | 檢測鏡像製作時Sysprep進程是否完成。如果在製作過程中,強制系統關機等操作導致Sysprep進程中止,可能會導致執行個體啟動異常。 | 請重新製作鏡像,注意不要中斷系統的Sysprep進程。具體操作,請參見建立虛擬機器並安裝作業系統。 |
GUESTOS.Update | 檢測鏡像製作時Update進程是否完成。如果在製作過程中,強制系統關機等操作導致Update進程中止,可能會導致執行個體啟動異常。 | 請重新製作鏡像,注意不要中斷系統的更新進程。具體操作,請參見建立虛擬機器並安裝作業系統。 |
GUESTOS.Xen | 存在殘留的Xen驅動,可能會導致系統無法正常啟動。 | |
GUESTOS.CloudAssistant | 鏡像是否安裝雲助手。雲助手是為ECS打造的原生自動化營運工具,通過免密碼、免登入、無需使用跳板機的形式,在ECS執行個體上實現批量營運、執行命令(Shell、PowerShell和Bat等)和傳送檔案等操作。建議您在鏡像中安裝雲助手,協助您高效營運ECS。 | 如何安裝雲助手,請參見安裝雲助手Agent。 |
GUESTOS.Server | 鏡像中的服務配置是否正確。如果配置了不允許安裝驅動,會導致執行個體更新驅動失敗。 | |
GUESTOS.DesktopConfig | 檢測案頭設定檔(desktop.ini)是否缺失。如果缺失,將導致案頭配置失效。 | 請配置正確的desktop.ini。 |
GUESTOS.BootMgr | 檢測系統引導管理器(BootMgr)是否缺失。如果缺失,將導致系統無法啟動。 | 請配置正確的BootMgr。 |
相關文檔
CloudOps Orchestration Service (OOS)是全面、免費的雲上自動化營運平台,通過模板來定義所需要編排的營運操作。OOS提供的公用模板供您直接使用和參考,您也可以編寫自訂模板來實現您所需要的營運操作。更多資訊,請參見模板概述。
鏡像服務商在雲市場發布鏡像前或在本地自行製作自訂鏡像過程中,鏡像也是需要滿足與ECS執行個體規格適配的一些規範要求,以便與多種ECS執行個體規格良好適配。更多資訊,請參見阿里雲鏡像規範(Linux)和阿里雲鏡像規範(Windows)。