CentOS官方已计划停止维护CentOS 7、CentOS 8等Linux项目,如果您的操作系统后续想得到维护和技术支持,可通过SMC将CentOS操作系统迁移到其他Linux LTS发行版。SMC还支持将Alibaba Cloud Linux 2升级至Alibaba Cloud Linux 3。本文介绍如何通过SMC迁移操作系统。
前提条件
已完成迁移前准备工作。具体操作,请参见准备工作(迁移前必读)。
已导入迁移源。您可以根据需求选择导入迁移源的方式:
方式一:通过控制台自动导入迁移源
方式二:通过命令行一键导入迁移源
方式三:通过SMC客户端导入迁移源
迁移源为在线状态。如果迁移源为其他状态,将无法新建迁移任务。修复迁移源状态,请参见迁移源为非在线状态时,无法创建迁移任务怎么办。
迁移方案对比
操作系统迁移方案的对比如下表所示。
迁移方案 | 易用性 | 可靠性 | 服务 | 迁移后结果 |
SMC操作系统迁移(推荐) | ★★★★★
| ★★★★★ 无需手动快照,自动快照保障 | ★★★★★ 接入阿里云智能全球技术服务部GTS(Global Technology Services)服务体系,成熟流程帮助用户解决问题 | ★★★★★
|
★★★★ 白屏化操作 | ★★★★ 需手动创建快照 | ★★★★★ 接入阿里云智能全球技术服务部GTS(Global Technology Services)服务体系,成熟流程帮助用户解决问题 | ★★★
| |
★★★
| ★★★ 需手动创建快照 | ★★★ 迁移方案社区支持 | ★★★
|
迁移场景
支持将以下X86和ARM64架构的源操作系统迁移到目标操作系统:
操作系统架构 | 源操作系统 | 目标操作系统 |
X86 | CentOS 7 |
|
CentOS 8 |
| |
Alibaba Cloud Linux 2 | Alibaba Cloud Linux 3 | |
ARM64 | CentOS 7 |
|
CentOS 8 |
|
待迁移的操作系统必须为当前阿里云账号下云服务器ECS中的操作系统。
迁移前须知
迁移过程中系统会对云服务器ECS执行创建普通云盘快照、重新安装软件包、创建系统盘自定义镜像、 更换系统盘 、停止、启动等操作。其中更换系统盘操作会重建系统盘云盘,原来随云盘释放的自动快照也会被删除且无法恢复。建议您对重要数据做好备份并合理安排迁移时间,避免因上述操作对业务造成影响。
迁移过程中请勿人工或通过运维脚本对ECS云服务器执行停止、重启、释放等操作。
迁移过程中对全部云盘创建快照以备份数据,快照以按量付费方式收取一定费用。关于快照计费的更多信息,请参见快照计费。
操作系统的迁移操作不可逆,其中涉及到重新安装系统内的软件包。因此您需要在迁移前为ECS实例创建快照备份数据。关于快照的更多信息,请参见快照概述。
迁移过程依赖于yum或者dnf,需确保这两个组件能够正常运行。
迁移限制
Anolis OS和Alibaba Cloud Linux系统不提供i686架构的软件包,如您系统上安装了CentOS的i386(包括i686)架构的软件包,则无法正常迁移。
如果云服务器ECS通过自定义镜像创建,则不支持操作系统迁移。
CentOS 7迁移至Alibaba Cloud Linux 2限制说明
Alibaba Cloud Linux 2使用4.19内核,CentOS 7使用3.10内核,两个版本的内核无法相互兼容,依赖于内核接口编程的业务,例如涉及内核OOT模块开发、硬件使能等,需提前做好评估,明确是否适合直接迁移,以免操作系统迁移后业务无法运行。
CentOS 8迁移至Alibaba Cloud Linux 3限制说明
Alibaba Cloud Linux 3选用Linux kernel 5.10 LTS作为Alibaba Cloud Linux 3的内核,并选用GCC 10.2、binutils 2.35、glibc 2.32作为基础工具链。在软件包生态上与CentOS 8兼容。当您在使用本文介绍的操作系统迁移工具将CentOS 8迁移为Alibaba Cloud Linux 3时,工具会对待迁移的操作系统进行基础判断。因此您需要注意以下操作系统相关特性或软件的迁移限制:
特性或软件
支持情况
是否影响操作系统迁移流程
说明
i386架构的软件包
不支持
是
Alibaba Cloud Linux 3不提供i386架构的软件包。如果您当前使用的CentOS 8系统内带有i386架构的软件包,则不支持使用迁移工具迁移操作系统。您需要先删除这些软件包,然后再进行迁移操作,以免迁移时系统发生异常。
epel-modular
不支持
否
CentOS 8中EPEL源所依赖的platform与Alibaba Cloud Linux 3不同。因此,您可以迁移操作系统,但需要注意迁移后无法安装基于epel-modular的软件包。
C/C++语言程序兼容性
不保证
否
Alibaba Cloud Linux 3选用GCC 10.2、binutils 2.35、glibc 2.32作为基础工具链,且系统自身的软件包已经做了兼容性处理。操作系统迁移后,建议您基于新的基础工具链重新对您的C/C++语言程序进行编译验证,避免出现兼容性问题。
内核模块兼容性
不支持
否
Alibaba Cloud Linux 3选用Linux kernel 5.10 LTS作为内核,在软件包生态上与CentOS 8兼容,但您需要注意,Alibaba Cloud Linux 3无法完全兼容CentOS 8的4.18内核。因此,依赖于内核接口编程的业务(例如内核OOT模块开发、硬件使能等业务场景),您需要在迁移前自行做好迁移评估,避免迁移后业务无法正常运行。
MySQL数据库
仅支持向同版本或更高版本的MySQL迁移
如果向同版本或更高版本的MySQL迁移则不影响
如果向低版本的MySQL迁移则影响
Alibaba Cloud Linux 3支持MySQL数据库,但您需要注意,由于MySQL不支持降低版本,当Alibaba Cloud Linux 3提供的MySQL版本低于待迁移的CentOS 8内的MySQL版本时,不支持使用迁移工具完成操作系统迁移。
操作系统热迁移
不支持
否
使用操作系统工具迁移操作系统时涉及软件包的重新安装,会引起系统内服务重启,进而造成业务中断。因此,您在迁移前需要做好数据备份(具体操作,请参见快照概述)并隔离待迁移的操作系统环境,避免影响正常业务。
操作系统迁移工具在迁移过程中涉及软件包的下载与安装,会产生一定的资源消耗。因此,迁移前您需要确保实例内保留了以下可用的资源容量:- 内存大小:300 MiB
- 云盘容量:
- /usr目录需要250 MiB
- /var目录需要1.5 GiB
- /boot目录需要50 MiB
说明 如果您的实例对应的计算资源(vCPU与内存)、存储资源(系统盘与数据盘)较小,建议您停止实例内的业务再进行操作系统迁移,避免因资源不足而迁移失败。
操作步骤
登录SMC控制台。
在左侧导航栏,单击迁移源。
找到目标迁移源,单击对应操作列下的创建迁移任务。
在创建迁移任务对话框中,配置相关参数。
操作系统迁移参数配置说明如下所示:
迁移任务类型:选择操作系统迁移。
当前操作系统:默认显示当前操作系统,不可修改。例如:CentOS 7。
目标操作系统:在下拉列表中选择目标操作系统。例如:Alibaba Cloud Linux 3。
配置相关参数后,单击创建。
在弹出的操作系统迁移请确认对话框中,仔细阅读注意信息后,单击我确认我已知晓。
在迁移任务页面的操作系统迁移页签下,等待迁移任务完成。