1号进程的挑战及sysMaster愿景¶
挑战¶
1 号进程处于系统关键位置,负责系统初始化和运行时服务管理,当前面临如下挑战:
- 可靠性差: 位置关键,自身故障时必须重启操作系统才能恢复
- 复杂性高: systemd 成为 1 号进程事实上的标准。它引入了许多新的概念和工具,依赖繁杂,难以针对实际使用场景进行裁剪
- 兼容性弱: 对云、边、嵌入式场景的支持差,不满足全场景的诉求
行业诉求
- 服务器、嵌入式场景对可靠性有极强诉求: 内存安全问题降至0:消减极难定位的内存问题,减少宕机影响
- 系统不宕机,业务无影响: 借助永不宕机特性追求极致可靠
- 高效智能运维成云场景痛点: 对HOST的运维缺乏高效手段:容器型OS对1号进程提出极简目标
- 国产化替代要求核心软件自主可控: 聚焦关键开源软件:敏感/竞争力根组件,实现根技术完全自主可控
愿景¶
短期竞争力: 极致的可靠性和系统启动速度
- 永不宕机: 通过状态外置、savepoint等技术实现故障秒级自愈,保障1号进程持续在线,业务不受影响
- 快速启动: 解耦去重、极简镜像,支撑服务器重启时间从3-5min优化到1min
长期竞争力:全场景应用、云平台运维效率提升
- 全场景应用:支持云边端等场景,统一init,支持裸机、虚机、容器
- 容器型OS:kernel+sysMaster=容器OS底座,通过对接k8s、openstack等,与KubeOS一起支撑云场景下运维效率X倍提升
整体策略:聚焦功能最小系统,采用核心自研与非核心社区方案替代并行的策略,独立组件抽屉式替换的策略,实现systemd自研替代
- 分场景:结合不同的使用场景,将systemd功能拆分多层,按照场景由易到难的方式,逐步完成功能开发验证及替代。
- 多方案:无社区替代方案的核心功能和组件,采用自研重写的替代,其他的采用无供应风险的社区软件替代。
- 有节奏:一年一个核心竞争力,至24年完成3个核心竞争力的发掘,按照开发-落地-替代三条线开展工作。
sysMaster:全新1号进程实现方案,秒级故障自愈,保障系统全天在线¶
sysMaster 旨在改进传统的init守护进程,1+1+N架构。
- init:新的1号进程,功能极简,代码千行,极致可靠
- core:承担systemd原有核心功能,引入可靠性框架、插件机制,使其具备崩溃快速自愈、热升级、灵活组装能力
- exts:使原本耦合的各组件功能独立,支持抽屉式替代systemd的对应组件,支持有节奏的分场景替换
极力构筑三大竞争力:
极致可靠 – 永不宕机
- 极简架构:1+1+N,简化init;非核心功能组件化提供
- 极致可靠:故障感知+秒级恢复, 根进程持续在线
- 内存安全:内存问题降至0,故障后自愈
极度轻量 – 快速启动
- 更少的资源:内存占用降低10%
- 更快的速度:启动速度提升15%
极优体验 – 极简镜像
- 易于运维:热升级、按需裁剪,方便的部署/运维
- 兼容生态:提供systemd生态兼容、转换工具
- 插件机制:支持灵活扩展多种服务类型
Last update:
August 16, 2023
Created: March 22, 2021
Created: March 22, 2021