跳转至

1号进程的挑战及sysMaster愿景

挑战

1 号进程处于系统关键位置,负责系统初始化和运行时服务管理,当前面临如下挑战:

  1. 可靠性差: 位置关键,自身故障时必须重启操作系统才能恢复
  2. 复杂性高: systemd 成为 1 号进程事实上的标准。它引入了许多新的概念和工具,依赖繁杂,难以针对实际使用场景进行裁剪
  3. 兼容性弱: 对云、边、嵌入式场景的支持差,不满足全场景的诉求

行业诉求

  1. 服务器、嵌入式场景对可靠性有极强诉求: 内存安全问题降至0:消减极难定位的内存问题,减少宕机影响
  2. 系统不宕机,业务无影响: 借助永不宕机特性追求极致可靠
  3. 高效智能运维成云场景痛点: 对HOST的运维缺乏高效手段:容器型OS对1号进程提出极简目标
  4. 国产化替代要求核心软件自主可控: 聚焦关键开源软件:敏感/竞争力根组件,实现根技术完全自主可控

愿景

短期竞争力: 极致的可靠性和系统启动速度

  • 永不宕机: 通过状态外置、savepoint等技术实现故障秒级自愈,保障1号进程持续在线,业务不受影响
  • 快速启动: 解耦去重、极简镜像,支撑服务器重启时间从3-5min优化到1min

长期竞争力:全场景应用、云平台运维效率提升

  • 全场景应用:支持云边端等场景,统一init,支持裸机、虚机、容器
  • 容器型OS:kernel+sysMaster=容器OS底座,通过对接k8s、openstack等,与KubeOS一起支撑云场景下运维效率X倍提升

整体策略:聚焦功能最小系统,采用核心自研与非核心社区方案替代并行的策略,独立组件抽屉式替换的策略,实现systemd自研替代

  1. 分场景:结合不同的使用场景,将systemd功能拆分多层,按照场景由易到难的方式,逐步完成功能开发验证及替代。
  2. 多方案:无社区替代方案的核心功能和组件,采用自研重写的替代,其他的采用无供应风险的社区软件替代。
  3. 有节奏:一年一个核心竞争力,至24年完成3个核心竞争力的发掘,按照开发-落地-替代三条线开展工作。

sysMaster:全新1号进程实现方案,秒级故障自愈,保障系统全天在线

sysMaster 旨在改进传统的init守护进程,1+1+N架构。

  • init:新的1号进程,功能极简,代码千行,极致可靠
  • core:承担systemd原有核心功能,引入可靠性框架、插件机制,使其具备崩溃快速自愈、热升级、灵活组装能力
  • exts:使原本耦合的各组件功能独立,支持抽屉式替代systemd的对应组件,支持有节奏的分场景替换

极力构筑三大竞争力

极致可靠 – 永不宕机

  • 极简架构:1+1+N,简化init;非核心功能组件化提供
  • 极致可靠:故障感知+秒级恢复, 根进程持续在线
  • 内存安全:内存问题降至0,故障后自愈

极度轻量 – 快速启动

  • 更少的资源:内存占用降低10%
  • 更快的速度:启动速度提升15%

极优体验 – 极简镜像

  • 易于运维:热升级、按需裁剪,方便的部署/运维
  • 兼容生态:提供systemd生态兼容、转换工具
  • 插件机制:支持灵活扩展多种服务类型

最后更新: August 16, 2023
创建日期: March 22, 2021