操作系统因生命周期、第三方支持、开源计划演进等原因将会停止技术支持,例如CentOS官方将停止维护CentOS 7/CentOS 8等Linux项目,这些进入到停止维护周期(EOL)的操作系统版本将面临更大的安全漏洞威胁。如果您的ECS实例操作系统满足SMC操作系统迁移条件,可通过SMC平滑迁移到新的操作系统版本,以得到更长的维护周期和技术支持。本文介绍如何通过SMC迁移操作系统。
通过SMC将CentOS 7/8迁移至RedHat 7/8目前仅对部分用户开放,如果您想体验此功能,可以提交工单进行申请。
前提条件
已完成迁移前准备工作。具体操作,请参见准备工作(迁移前必读)。
如果您需要迁移CentOS 7/8至RedHat 7/8,则需要确保源系统可访问以下公网:
https://www.redhat.com
https://ftp.redhat.com
https://cdn-public.redhat.com
https://developer.aliyun.com
http://developer.aliyun.com
迁移方案对比
操作系统迁移方案的对比如下表所示。
迁移方案 | 易用性 | 可靠性 | 服务 | 迁移后结果 |
SMC操作系统迁移(推荐) | ★★★★★
| ★★★★★ 无需手动快照,自动快照保障 | ★★★★★ 接入阿里云智能全球技术服务部GTS(Global Technology Services)服务体系,成熟流程帮助用户解决问题 | ★★★★★
|
★★★★ 白屏化操作 | ★★★★ 需手动创建快照 | ★★★★★ 接入阿里云智能全球技术服务部GTS(Global Technology Services)服务体系,成熟流程帮助用户解决问题 | ★★★
| |
★★★
| ★★★ 需手动创建快照 | ★★★ 迁移方案社区支持 | ★★★
|
迁移场景
支持将以下X86和ARM64架构的源操作系统迁移到目标操作系统:
操作系统架构 | 源操作系统 | 目标操作系统 |
X86 | CentOS 7 |
|
CentOS 8 |
| |
| Alibaba Cloud Linux 3 | |
Alibaba Cloud Linux 2 | Alibaba Cloud Linux 3 | |
ARM64 | CentOS 7 |
|
CentOS 8 |
|
待迁移的操作系统必须为当前阿里云账号下云服务器ECS中的操作系统。
迁移前须知
迁移过程中系统会对云服务器ECS执行创建普通云盘快照、重新安装软件包、创建系统盘自定义镜像、 更换系统盘 、停止、启动等操作。其中更换系统盘操作会重建系统盘云盘,原来随云盘释放的自动快照也会被删除且无法恢复。建议您对重要数据做好备份并合理安排迁移时间,避免因上述操作对业务造成影响。
迁移过程中请勿人工或通过运维脚本对ECS云服务器执行停止、重启、释放等操作。
迁移过程中对全部云盘创建快照以备份数据,快照以按量付费方式收取一定费用。关于快照计费的更多信息,请参见快照计费。
操作系统的迁移操作不可逆,其中涉及到重新安装系统内的软件包。因此您需要在迁移前为ECS实例创建快照备份数据。关于快照的更多信息,请参见快照概述。
迁移过程依赖于yum或者dnf,需确保这两个组件能够正常运行。
迁移限制
限制类别 | 限制说明 |
通用限制 |
|
CentOS 7迁移至Alibaba Cloud Linux 2 | Alibaba Cloud Linux 2使用4.19内核,CentOS 7使用3.10内核,两个版本的内核无法相互兼容。对于依赖于内核接口编程的业务,例如涉及内核OOT模块开发、硬件使能等,需要提前做好评估,明确是否适合直接迁移,以免操作系统迁移后业务无法运行。 |
CentOS 7迁移至Alibaba Cloud Linux 3 | CentOS 7使用3.10内核,Alibaba Cloud Linux 3选用Linux kernel 5.10 LTS作为Alibaba Cloud Linux 3的内核,并选用GCC 10.2、binutils 2.35、glibc 2.32作为基础工具链。两个版本的内核无法相互兼容,依赖于内核接口编程的业务,例如涉及内核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时,工具会对待迁移的操作系统进行基础判断。 |
操作步骤
(条件必选)如果您需要迁移CentOS 7/8至RedHat 7/8,则需要完成以下操作,否则请跳过此步骤。
如果源系统已安装云安全中心客户端,则需要先卸载。
说明迁移升级完成后可再安装。具体操作,请参见手动安装。
客户端卸载后会有一段保护期。如果您需要再次为服务器安装客户端,您必须在客户端卸载超过24小时后,重新安装客户端。如果您不想等待,可在服务器上重复执行3次以上安装命令才能重新安装成功(忽略其间的报错),否则重新安装的客户端会被自动卸载。
去阿里云云安全客户端卸载界面,选择实例进行卸载。具体操作,请参见卸载客户端。
使用远程连接工具连接服务器,执行以下命令。
wget "http://update2.aegis.aliyun.com/download/uninstall.sh" && chmod +x uninstall.sh && ./uninstall.sh if ! lsmod | grep AliSecGuard; then echo 'Uninstall Success'; else echo "Uninstall Failed"; fi
如果返回
Uninstall Success
,表示云安全中心客户端已成功卸载。
执行以下命令,将源系统升级至最新内核版本。
CentOS 7
#备份原yum软件源并更新为阿里云CentOS 7源 mv /etc/yum.repos.d/ /etc/yum.repos.d.backup/ mkdir -p /etc/yum.repos.d/ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo yum clean all yum makecache #更新系统并重启 yum -y update reboot
CentOS 8
#备份原yum软件源并更新为阿里云CentOS 8源 mv /etc/yum.repos.d/ /etc/yum.repos.d.backup/ mkdir -p /etc/yum.repos.d/ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.aliyuncs.com/repo/Centos-8.repo wget -O /etc/yum.repos.d/epel-archive-8.repo http://mirrors.cloud.aliyuncs.com/repo/epel-archive-8.repo yum clean all yum makecache #更新系统并重启 yum -y update reboot
导入迁移源。
您可以根据需求选择导入迁移源的方式:
(推荐)方式一:通过控制台自动导入迁移源。
方式二:通过命令行一键导入迁移源。
方式三:通过SMC客户端导入迁移源。
创建并启动迁移任务。
找到目标迁移源,单击对应操作列下的创建迁移任务。
在创建迁移任务对话框中,配置相关参数。
操作系统迁移参数配置说明如下表所示。
参数
说明
迁移任务类型
选中操作系统迁移。
当前操作系统
默认显示当前操作系统,不可修改。例如:CentOS 7。
目标操作系统
在下拉列表中选择目标操作系统。例如:Alibaba Cloud Linux 3。
迁移演练
迁移演练是在实际迁移前对迁移方案进行模拟和验证的过程。它可以帮助用户在实际迁移前充分了解迁移方案的可行性和风险,从而减少实际迁移中可能出现的问题和损失。
迁移演练可以能帮您快速发现迁移中存在的潜在问题,并提供修复方案,提升迁移成功率。
默认开启迁移演练,目前仅支持Linux操作系统迁移。更多信息,请参见配置迁移演练。
执行方式
选择迁移演练的执行方式,默认选择演练并迁移。
仅演练:仅创建迁移演练任务,迁移演练完成后,如果需要操作系统迁移,需要手动启动操作系统迁移任务。
演练并迁移:迁移演练完成后,如果不存在状态为严重的演练项,系统自动启动操作系统迁移任务。
配置相关参数后,单击创建。
在弹出的操作系统迁移请确认对话框中,仔细阅读注意信息后,单击我确认我已知晓。
在迁移任务页面的操作系统迁移页签下,等待迁移任务完成。
当迁移状态为已完成时,表示操作系统迁移成功。
您可以在目标迁移任务的实例ID/名称列,单击实例ID,在ECS实例的实例详情页签下的配置信息区域,查看操作系统已经迁移为目标系统。
当任务状态为出错(InError),表示操作系统迁移失败。您需要查看日志修复问题后,再次重启迁移任务。常见错误及修复方案的更多信息,请参见SMC FAQ和操作系统迁移故障(Linux)。
如果需要回滚源系统云盘数据,您可以在快照列表使用自动备份的快照进行恢复数据。操作步骤如下:
登录ECS管理控制台。
在左侧导航栏,选择
。在云盘快照页签下,在自动备份的快照操作列,单击回滚磁盘。
在弹出的回滚云盘对话框中,单击确定。
等待操作系统启动。
迁移任务完成后,ECS实例会自动重启,此时会在系统初始化阶段进行更新软件包等操作,请勿对ECS实例和系统内部进行操作,等待系统启动成功即可。
说明系统初始化阶段大约需要10分钟,具体时间与系统软件包数量有关。