计算节点作为云原生架构的关键组成部分,节点的管理直接影响着整个云原生应用的成本和稳定性。然而,现有的基础架构管理方法更偏向于传统的虚拟机管理理念,缺乏对工作负载的深度感知,无法适应大规模集群的节点管理要求。龙蜥社区云原生 SIG 与容器优化 OS SIG 多年来致力于探索大规模集群的高效管理手段,经过数月精心编写,将多年技术探索与应用案例总结沉淀成为《云原生节点管理最佳实践白皮书》(以下简称“白皮书”),于 2023 云栖大会龙蜥操作系统专场重磅发布并做了深度解读。
随着云计算和云原生技术的广泛应用,越来越多的应用程序在诞生初期就成为云的原著民。在云原生的浪潮下, Kubernetes 集群在规模和数量上快速增长,进而使得在大规模集群中,节点管理的重要性日益突出。在这样的环境下,高效的节点管理成为确保集群稳定性、性能优化和资源利用率最大化的关键因素。

内容概览
核心技术概览

01
大规模集群节点管理的挑战
Kubernetes 作为一个分布式系统,自然而然拥有分布式系统的复杂性。除此之外,当集群规模足够大时,批量的、自动化的运维会变得更加困难。降低大规模集群的节点管理成本有助于节约计算资源成本、提升运维效率、提高可用性与安全性。
02
专注于容器负载的ContainerOS
实践发现,当集群中的节点使用面向通用场景的传统 OS 时,会有一系列不适,比如体积臃肿、版本零散、安全风险等。为了解决这些问题,专为容器负载而设计的容器优化操作系统应运而生,也就是我们通称的 ContainerOS。顾名思义,ContainerOS 聚焦在云上容器场景的功能与业务需求,这样得以摒弃传统操作系统大而全的设计理念和历史包袱。基于如下一些原则,我们实现了一款 ContainerOS 针对性地解决前面提到的问题:
小型化
镜像版本化
安全增强
云场景开箱即用
03
节点全生命周期的自动化管理
如果说 Pod 是 Kubernetes 最小的调度单元,那么节点就是集群最小的组成单位。随着工作负载和节点不停地变化,集群始终在变化中动态平衡。从集群的层面看来,节点和节点上的工作负载并没有本质差异,只不过是被控制平面统筹管理的、具备不同能力的资源:同样具备创建、运行、销毁的生命周期,同样可能会因状态异常需要外部控制器介入协调。当前,Kubernetes 对节点的管控其实是有些脱节的,使用 Kubernetes,我们可以很方便地创建、重启、销毁 Pod、可以对 Pod 进行声明式的配置。但是对节点(Node)的管理,运维人员还是倾向于使用一些传统的手段去管理。如果让 Kubernetes 可以像管理 Pod 一样管理 Node,对于整体集群的运维效率将会有极大的提升。
未来展望
1.欢迎关注龙蜥社区公众号【OpenAnolis 龙蜥】,后台回复关键字“白皮书”,即可获得龙蜥社区系列白皮书下载链接。
2.下载链接:
https://openanolis.cn/assets/static/Cloud_Native_Node_Management.pdf
加入龙蜥社群
加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。
关于龙蜥
加入我们,一起打造面向云时代的操作系统!

本文分享自微信公众号 - OpenAnolis龙蜥(OpenAnolis)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。