作者:黄韶宇、初扬
审核&校对:溪洋、海珠
编辑&排版:雯燕
LifseaOS
在刚刚过去的云栖大会上,一款新的 Linux Base 操作系统悄悄发布,它就是 LifseaOS(Lightweight, Fast, Secure, Atomic Operating System)。
LifseaOS 是专门为容器场景而特别优化的 OS,即业界统称的 ContainerOS。它具有以下几个突出的特点:
轻量(Lightweight):LifseaOS 默认集成 Containerd、Kubernetes 组件,仅仅保留 Kubernetes Pods 运行所需的系统服务与软件包,相比传统操作系统(Alibaba Cloud Linux 2/3、CentOS)软件包数量减少 60%,镜像大小减少70%。
快速(Fast):LifseaOS 裁剪掉了大量云上场景无需的硬件驱动,必要的内核驱动模块修改为 built-in 模式,去除了 initramfs,udev 规则也被大大简化,大大提升了启动时间,OS 首次启动从传统 OS 的 1min 以上下降到了 2s 左右。
安全(Secure):LifseaOS 根文件系统为只读权限,只有 /etc 和 /var 目录可以满足基础的系统配置需求。去除了 sshd 服务与 python 支持,减少 sshd CVE 漏洞带来的威胁。同时将 OS 的常规运维 API 化,减少用户直接登录系统进行一些可能无法追溯的黑屏操作而带来的稳定性、安全性风险。不过,LifseaOS 仍然提供一个专用的运维容器用以登录系统,满足紧急的运维需求,运维容器需要通过 API 按需拉起,默认不开启。
镜像原子管理(Atomic):LifseaOS 不支持单个 rpm 包的安装、升级和卸载,通过 ostree 技术,将 OS 镜像版本化管理,更新操作系统上的软件包、或者固化的配置时,需要以整个镜像为粒度进行更新(或回滚),尽可能保证集群中各个节点的软件包版本与系统配置的一致性。
通过以上针对性的优化,LifseaOS 可以在基于 Kubernetes 的云原生集群中保证大规模集群内宿主机的版本一致性,在针对 OS 进行运维时,以不可变基础设施的思维对整个集群的 OS 进行滚动升级、滚动回退,将 OS 运维“云原生化”。同时,通过与 ACK 的深度集成,用户可以实现开箱即用,集群内实现快速的弹性扩容,扩容效率相比传统 OS 提升 100%。
OpenAnolis龙蜥社区已经成立了ContainerOS的特别兴趣小组,LifseaOS相关代码也将贡献到龙蜥社区,敬请大家期待,更多信息请前往下方链接查看:https://openanolis.cn/sig/container-os
在容器服务 ACK 节点池中使用 LifseaOS
阿里云容器服务 ACK 为用户提供了企业级 Kubernetes 容器化应用生命周期管理服务。容器服务 ACK 节点池为用户提供了一组同质节点(同一个节点池内的节点具有相同的配置)的管理能力,具有配置一致性,运维一致性的特点,可以大大降低节点的批量运维与管理成本。
在 ACK 节点池中可以使用 ContainerOS(基于 LifseaOS),相比传统的 Linux OS 而言,ContainerOS 为容器场景深度优化,具备更加安全、轻量、启动快速、不可变镜像等优点。ContainerOS 结合 ACK 托管节点池的自动化管理能力,包括节点快速 CVE 修复、节点自愈、镜像自动升级等,能够进一步降低用户在 OS 运维方面的管理负担,让用户更加关注上层应用。
目前 ContainerOS 已在 ACK Pro 1.20.4 及以上版本集群的托管节点池中开放,您可以前往【ACK 产品控制台】创建基于 ContainerOS 的托管节点池,参考下图:
现在开始玩转 ContainerOS 吧。
相关链接:
1)ACK 产品控制台创建链接:
https://cs.console.aliyun.com/#/authorize
2)ContainerOS SIG组链接:
https://openanolis.cn/sig/container-os
点击此处,即可查看阿里云容器服务 ACK 产品详情!