共计 2216 个字符,预计需要花费 6 分钟才能阅读完成。
文 / 周伟涛,Anolis 迁徙 SIG Owner
01 概述
操作系统迁徙是一个简单的工程,而在云原生时代,IaaS 与 PaaS 的迁徙复杂度更高,且相互影响。因此操作系统迁徙不再是一个单机维度的 OS 切换,而是系统性的迁徙工程。针对这一痛点,龙蜥社区在反对用户进行操作系统迁徙的过程中,逐渐积淀了一套卓有成效的迁徙方法论,并为 CentOS 用户提供了迁徙到 Anolis OS 的迁徙零碎 AOMS(Anolis OS Migration System)。
02 场景挑战
随着各种虚拟化技术,开发语言的凋敝倒退,在进行操作系统迁徙时会呈现多种开发语言,中间件,数据库,虚拟化伎俩混淆在一起的状况,而平台,业务,产品等不同纬度的诉求也会产生叠加。在这些场景下,操作系统迁徙不再是一个单机维度的 OS 切换,而是须要从集群迁徙视角来对待,做好全局评估与实施方案,做好灾备,灰度,回滚计划,并联合下层业务调度来进行迁徙的系统工程。
03 计划特色
迁徙方法论:评估、决策、施行、优化四步迁徙法。
迁徙评估的 5 个维度及其要害的决策信息:
迁徙施行也是业务迁徙实现安稳交付的关键环节,其阶段具体的流程要通过实施方案制订、基础设施筹备、业务适配革新、迁徙试点、迁徙批量施行、割接护航 6 大步骤,确保迁徙的交付环节牢靠和高效。
04 实际验证
AOMS 迁徙计划蕴含如下三个场景:
- CentOS 8 迁徙 Anolis OS 8
- CentOS 7 迁徙 Anolis OS 7
- CentOS 7 迁徙 Anolis OS 8
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
—— 完 ——