全部产品
Search
文档中心

服务器迁移中心:操作系统迁移

更新时间:Sep 20, 2023

CentOS官方已计划停止维护CentOS 7、CentOS 8等Linux项目,如果您的操作系统后续想得到维护和技术支持,可通过SMC将CentOS操作系统迁移到其他Linux LTS发行版。SMC还支持将Alibaba Cloud Linux 2升级至Alibaba Cloud Linux 3。本文介绍如何通过SMC迁移操作系统。

前提条件

迁移方案对比

操作系统迁移方案的对比如下表所示。

迁移方案

易用性

可靠性

服务

迁移后结果

SMC操作系统迁移(推荐)

★★★★★

  • 白屏化操作,有迁移进度展示

  • 控制台日志展示

★★★★★

无需手动快照,自动快照保障

★★★★★

接入阿里云智能全球技术服务部GTS(Global Technology Services)服务体系,成熟流程帮助用户解决问题

★★★★★

  • 控制台和目标操作系统显示一致

  • 同版本应用直接继承、跨版本需做部分适配

  • 系统盘数据保留

ECS控制台更换操作系统(系统盘)

★★★★

白屏化操作

★★★★

需手动创建快照

★★★★★

接入阿里云智能全球技术服务部GTS(Global Technology Services)服务体系,成熟流程帮助用户解决问题

★★★

  • 控制台和目标操作系统显示一致

  • 应用需要重新部署

  • 系统盘数据不保留

ECS内执行迁移脚本

★★★

  • 脚本操作,纯脚本日志

  • ECS内操作,有操作风险

★★★

需手动创建快照

★★★

迁移方案社区支持

★★★

  • 控制台不感知ECS内部变化,控制台和目标操作系统显示不一致

  • 同版本应用直接继承、跨版本需做部分适配

迁移场景

支持将以下X86和ARM64架构的源操作系统迁移到目标操作系统:

操作系统架构

源操作系统

目标操作系统

X86

CentOS 7

  • AnolisOS 7

  • AnolisOS 8

  • Alibaba Cloud Linux 2

  • Alibaba Cloud Linux 3

CentOS 8

  • AnolisOS 8

  • Alibaba Cloud Linux 3

Alibaba Cloud Linux 2

Alibaba Cloud Linux 3

ARM64

CentOS 7

  • AnolisOS 7

  • AnolisOS 8

  • Alibaba Cloud Linux 3

CentOS 8

  • AnolisOS 8

  • Alibaba Cloud Linux 3

重要

待迁移的操作系统必须为当前阿里云账号下云服务器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与内存)、存储资源(系统盘与数据盘)较小,建议您停止实例内的业务再进行操作系统迁移,避免因资源不足而迁移失败。

操作步骤

  1. 登录SMC控制台

  2. 在左侧导航栏,单击迁移源

  3. 找到目标迁移源,单击对应操作列下的创建迁移任务

  4. 创建迁移任务对话框中,配置相关参数。

    操作系统迁移参数配置说明如下所示:

    • 迁移任务类型:选择操作系统迁移

    • 当前操作系统:默认显示当前操作系统,不可修改。例如:CentOS 7。

    • 目标操作系统:在下拉列表中选择目标操作系统。例如:Alibaba Cloud Linux 3。

    image..png
  5. 配置相关参数后,单击创建

  6. 在弹出的操作系统迁移请确认对话框中,仔细阅读注意信息后,单击我确认我已知晓

  7. 迁移任务页面的操作系统迁移页签下,等待迁移任务完成。

    • 当迁移状态为已完成时,表示操作系统迁移成功。image..png您可以在目标迁移任务的操作列下,单击查看目标实例,在ECS实例的实例详情页签下,查看操作系统已经迁移为目标系统。addad56

    • 当任务状态为出错(InError),表示操作系统迁移失败。您需要查看日志修复问题后,再次重启迁移任务。常见错误及修复方案的更多信息,请参见SMC FAQ故障排除

      如果需要回滚源系统云盘数据,您可以在快照列表使用自动备份的快照进行恢复数据。操作步骤如下:

      1. 登录ECS管理控制台

      2. 在左侧导航栏,选择存储与快照 > 快照

      3. 云盘快照页签下,在自动备份的快照操作列,单击回滚磁盘adada56

      4. 在弹出的回滚云盘对话框中,单击确定