因Xen環境裁撤項目、ECS過保遷移、經典網絡遷移到VPC等涉及虛擬化環境遷移需求,可能會導致一部分實例系統在遷移后出現kernel panic宕機、藍屏、找不到引導設備(INACCESSIBLE_BOOT_DEVICE)等問題。本文主要為您介紹這些問題的解決方案。
背景信息
阿里云為您提供了豐富的實例規格族以及主流操作系統鏡像。不同實例規格實現的虛擬化技術不同:
以已經停售的ecs.t1和ecs.s1規格族為例,該規格族基于Xen虛擬化技術,需要操作系統鏡像內有Xen等相關驅動。
以ecs.g5規格為例,該規格基于KVM虛擬化技術,需要操作系統鏡像有virtio驅動。
以ecs.g7規格為例,該規格基于神龍架構的虛擬化技術,該規格實例同樣需要操作系統鏡像有virtio驅動。
這些驅動是由ECS鏡像中的內核提供的,內核版本不同,驅動支持的ECS規格也不同。一些比較舊版本系統中的內核默認沒有相關驅動,需要用戶自行安裝,或者版本較低的內核的驅動不支持一些新版本的實例規格。
遷移前注意事項
如果您的實例系統環境有異常,Xen遷移到KVM環境后實例可能會運行異常,例如注冊表損壞、文件系統損壞、系統啟動異常等。因此建議您在遷移前做一些準備工作,確保遷移正常。
建議您在遷移前重啟實例,檢查系統是否正常重啟,確保系統和業務在遷移前狀態正常。
建議您在遷移前對實例創建快照,對重要數據備份。具體操作,請參見創建快照。
除了現有的遷移方案,您也可以對原有實例創建自定義鏡像,然后使用自定義鏡像創建KVM規格的實例。具體操作,請參見使用實例創建自定義鏡像和使用自定義鏡像創建實例。
神龍環境不兼容部分舊版本操作系統
已知舊版本操作系統列表如下:
Windows Server 2003及以下版本(Windows Server 2008 標準版本支持,但是需要清理Xen注冊表信息)
CentOS/RedHat 5.8及以下版本,包括基于CentOS/RedHat 5內核系統(內核版本2.6.18-348及以下)
Debian 6.09以下版本(6.09以下版本對KVM支持也存在一定問題,建議升級到6.09以上版本)
FreeBSD 11以下版本(FreeBSD 11/12版本需要安裝對應的阿里云補丁。具體操作,請參見使用實例時鏡像相關問題。)
Ubuntu 10及以下版本(Ubuntu 12基于內核3.2可以正常啟動,官方鏡像未提供過低于Ubuntu 12的版本)
SUSE Linux Enterprise Server 10及以下版本(官方鏡像未提供過低于SUSE Linux Enterprise Server 11的版本)
OpenSUSE 13以下版本(官方鏡像未提供過低于OpenSUSE 13的版本)
Gentoo(阿里云提供的Gentoo只支持Xen版本,如果需要支持KVM,建議升級到最新版本,阿里云于2016年后未再提供Gentoo操作系統)
上述僅是6代實例規格的神龍環境不兼容情況,對于7代及以上版本實例規格的約束會更高一些。
解決方案一:更換系統盤升級系統
以上涉及的舊版本操作系統很早就已經停止維護更新。更多信息,請參見操作系統維護周期。停止維護更新的系統面臨各種功能和安全風險、系統安全漏洞無法更新等問題,因此阿里云建議您盡快升級操作系統版本。
阿里云官方提供的公共鏡像覆蓋了主流Linux和Windows操作系統 。更多信息,請參見公共鏡像概述。
ECS支持更換系統盤操作,您可以一鍵更換實例的系統盤,完成系統升級。具體操作,請參見更換操作系統(系統盤)。
原系統盤數據如何拷貝出來?
您可以通過卸載系統盤并將其掛載為數據盤的方式將原實例系統盤內容拷貝出來。具體操作,請參見卸載或掛載系統盤。
原系統盤中部署的服務應用怎么遷移出來?
在新的系統盤中重新部署服務。
遷移數據庫等應用。
采用方案一的優點和缺點如下:
優點:方便易操作,阿里云有豐富的公共鏡像可以選擇,一鍵切換到新版本操作系統。
缺點:原系統盤中的數據需要客戶自行備份處理, 一些應用服務可能需要重新部署。
解決方案二:升級系統到OS的最高版本
您可以進行系統升級,將系統版本升級到該OS的最高版本。例如,可以將CentOS 5升級到CentOS 5的最高版本CentOS 5.11。更多信息,請參見:
采用方案二的優點和缺點如下:
優點:原系統中的數據及服務不受影響。
缺點:即使升級到OS的最高版本(例如CentOS 5升級到CentOS 5.11),該版本仍然是不再維護更新的版本,系統漏洞風險依然存在,無法使用新OS發行版(例如CentOS 7/8)上的新特性和功能。
解決方案三:使用舊版本的實例規格
您可以嘗試非神龍MOC環境的5代舊版本實例規格,例如ecs.n、ecs.xn、ecs.c5系列。更多信息,請參見實例規格族。
虛擬化virtio驅動安裝配置不成功
系統在遷移后,發生了虛擬化環境從Xen到KVM的變化,如果系統內部虛擬化驅動沒有安裝或者配置好KVM virtio驅動,就會發生系統宕機、藍屏等問題。可能有以下原因:
Linux系統未安裝配置virtio驅動
Windows ISO階段驅動安裝失敗
Windows系統注冊表損壞
Windows安裝有360軟件等安全軟件限制
解決方案
如果檢查Linux系統是內核損壞,請下載安裝官方內核再次嘗試
Windows請聯系售后技術支持掛載Winpe 3.0 ISO,并用內置工具修復virtio驅動
Windows建議遷移前用SFC(System File Checker)檢查系統的完整性,包括注冊表等,并卸載類似360等安全軟件