龙蜥白皮书精选:CentOS 迁移场景的平滑迁移方案

简介: 龙蜥社区AOMS迁移工具,帮助用户快速完成操作系统迁移。

文/周伟涛,Anolis 迁移 SIG Owner

01 概述

操作系统迁移是一个复杂的工程,而在云原生时代,IaaS 与 PaaS 的迁移复杂度更高,且相互影响。因而操作系统迁移不再是一个单机维度的 OS 切换,而是系统性的迁移工程。针对这一痛点,龙蜥社区在支持用户进行操作系统迁移的过程中,逐步沉淀了一套行之有效的迁移方法论,并为 CentOS 用户提供了迁移到 Anolis OS 的迁移系统 AOMS(Anolis OS Migration System)。

02 场景挑战

随着各种虚拟化技术,开发语言的繁荣发展,在进行操作系统迁移时会出现多种开发语言,中间件,数据库,虚拟化手段混杂在一起的情况,而平台,业务,产品等不同纬度的诉求也会产生叠加。在这些场景下,操作系统迁移不再是一个单机维度的 OS 切换,而是需要从集群迁移视角来看待,做好全局评估与实施方案,做好灾备,灰度,回滚方案,并结合上层业务调度来进行迁移的系统工程。

03 方案特色

迁移方法论:评估、决策、实施、优化四步迁移法

7.png

迁移评估的 5 个维度及其关键的决策信息:

8.png

迁移实施也是业务迁移实现平稳交付的关键环节,其阶段详细的流程要经过实施方案制定、基础设施准备、业务适配改造、迁移试点、迁移批量实施、割接护航 6 大步骤,确保迁移的交付环节可靠和高效。

04 实践验证

AOMS 迁移方案包含如下三个场景:

CentOS 8 迁移 Anolis OS 8 及 CentOS 7 迁移 Anolis OS 7 场景

Anolis OS 8 在做出差异性开发的同时,在生态上和依赖管理上保持与 CentOS 8 的兼容,AOMS 充分利用了兼容的特性,提供了一键式迁移工具:centos2anolis.py。

CentOS 8 迁移使用 Anolis release 相关的包替代 CentOS release ,通过 yum distro-sync 重装当前系统中所有的系统软件包。软件重装的过程并不会修改当前系统基础配置,所以系统配置,业务配置,业务数据都不会被清除,迁移完成后这些数据无需重新设置。

使用迁移脚本前需要注意如下事项:

  • 迁移过程涉及到访问 Anolis OS 的官方 repo ,需要确保待迁移环境网络能够正常访问 Anolis OS repo。
  • 需要使用 root 用户执行,当前只支持 CentOS 8 系统的迁移,不支持 CentOS stream系统迁移。
  • 迁移过程依赖于 yum/dnf ,需要确保组件能够正常运行。迁移脚本提供了 Anolis OS repo 访问加速的功能,如果访问 Anolis OS 官方 repo 速度较慢,可以通过 -s 选项进行加速访问。
  • 迁移日志保存在 /var/log/centos2anolis.log。

CentOS 7 迁移 Anolis OS 8 场景

CentOS 7 到 Anolis OS 8,无论是内核,基础软件包,工具链都发生了较大的变化。迁移工具需要考虑这些变化带来的兼容性问题。AOMS 提供的迁移工具 leapp 包含了迁移评估,迁移实施,配置还原等步骤,用于实现 CentOS 7 到 Anolis OS 8 的就地迁移。

1、 迁移评估

leapp 扫描待迁移系统,搜集内核,软件包,系统配置基础信息,同时与目标系统( Anolis OS 8 )进行对比分析,对于不兼容项给 出影响分析和解决方案。

  • 内核角度:给出 Anolis OS 8 中不再支持的内核特性,硬件驱动。
  • 软件角度:给出系统命令的变更项,提示用户适配业务程序。

迁移评估报告会给出当前系统中所有可能影响到迁移的影响项目,当这些影响项目都被解决后,用户才能够继续做迁移实施。同时 业务程序可根据评估报告中的兼容性提示来适配迁移业务程序。

2、迁移实施

leapp首先搜集当前的系统信息,记录需要在重启后恢复的配置(如 selinux 状态)。迁移实施过程中,工具首先按照当前系统安装 的软件包列表,并根据 CentOS 7 到 Anolis OS 8 的软件包映射关系,从 Anolis OS repo上提前下载迁移所需要的软件包,并基于 Anolis OS 8 的软件包制作 upgrade-initramfs ,在下一次重启后,系统自动进入 upgrade-initramfs,并触发所有软件包的就地升级。在所有的软件包就地升级完成后,自动重启进入系统配置还原阶段,待所有信息完成配置,系统重启进入新的 OS ,完成 OS 的就地迁移。

05 总结

基于龙蜥社区 AOMS 迁移工具,用户可以解决由于 CentOS 停服带来的软件供应链风险,同时大大降低由于操作系统迁移带来的高技术要求、高复杂操作的工程难度,帮助用户快速完成操作系统迁移。

更多龙蜥白皮书精选内容:

【1】面向 DPU 场景的软硬协同协议栈

【2】敏捷开发场景下的调度器热升级 SDK

【3】跨云-边-端的只读文件系统 EROFS

【4】龙蜥全面支持 Intel 第四代可扩展处理器 SPR 平台

【5】面向异构计算的加速器 SDK

【6】基于 SM4 算法的文件加密(fscrypt)实践


相关链接:

Anolis 迁移 SIG 主页:

https://openanolis.cn/sig/migration

更多龙蜥技术特性解析可移步《龙蜥特性百科》:

https://anolis.gitee.io/anolis_features/

2022 龙蜥社区全景白皮书(或公众号【OpenAnolis龙蜥】回复关键字“白皮书”获取)

https://openanolis.cn/openanoliswhitepaper

—— 完 ——

加入龙蜥社群

加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。

5.png

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
3月前
|
安全 Linux Anolis
不容错过的 CentOS 迁移替换专场!围绕安全保障、最佳案例等分享 | 龙蜥大讲堂
如何借助龙蜥社区成熟的迁移案例,一站式解决CentOS迁移替换的问题?
|
3月前
|
人工智能 Oracle 安全
CentOS“平替”方案问题之CentOS用户迁移到RHEL的优势定义如何解决
CentOS“平替”方案问题之CentOS用户迁移到RHEL的优势定义如何解决
40 0
|
3月前
|
存储 Cloud Native Linux
CentOS“平替”方案问题之Fedora Linux的定义如何解决
CentOS“平替”方案问题之Fedora Linux的定义如何解决
36 0
|
6月前
|
Linux Anolis
报名倒计时!「飞天技术沙龙-CentOS 迁移替换专场」参会指南
硬核技术分享+畅所欲言互动+甜美可口茶歇已就位,就等你来~
|
6月前
|
弹性计算 安全 Linux
|
14天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
15天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
91 1
Linux系统之Centos7安装cockpit图形管理界面
下一篇
无影云桌面