Kubernetes 多集群管理项目 Clusternet 正式开源
11 月 4 日,在2021腾讯数字生态大会上,腾讯宣布了云原生领域一项重磅开源进展—— Kubernetes 多集群管理项目 Clusternet 正式开源。
据了解,Clusternet 由腾讯联合多点生活、QQ 音乐、富途证券、微众银行、酷狗音乐、三七互娱等共同发起,专注 Kubernetes 多集群管理和应用治理方向。作为未来分布式云的技术基石,Clusternet 通过组件化方式扩展 Kubernetes,将 Kubernetes 强大的集群、应用和服务能力扩展至分布式云,兼容所有 Kubernetes 生态资源和软件。腾讯在本次大会中发布的腾讯云原生分布式云中心 TDCC 产品正是以 Clusternet 作为核心技术。
通过 Clusternet,无论集群是运行在公有云、私有云、混合云还是边缘云上,都可以获得统一的管理和一致的访问体验,实现 Kubernetes API 集中部署和多集群的应用程序和服务的协同调度。
具体来说,Clusternet 具备以下特点:
最轻量化架构。采用了 Kubernetes AA (Aggregated APIServer)方式部署,不依赖额外的存储和端口,无需额外学习和维护不同平台软件和系统的差异,大大降低了运维复杂度。
一站式连接各类集群。同时支持 Pull 和 Push 模式管理 Kubernetes 集群,首创 Dual 模式自动化一站式管理海量集群。即使在无专网通道的情况下,仍可实现跨集群路由访问。
零成本升级多云架构。原有单云单集群架构业务,可以零学习和改造成本升级至多云多集群架构,完全兼容 Kubernetes 的标准 API、Helm Chart 以及自定义的 CRD,无需额外学习复杂的多集群 API。
丰富、灵活的策略配置。提供了多种类型的配置策略,包括分发策略、差异化策略等,通过灵活的搭配即可满足复杂的业务场景,减少人工干预和重复劳动。
便捷接入。Clusternet 提供了完善的对接能力,支持 kubectl plugin 以及 client-go,方便业务一键接入,具备管理多集群的能力。
大数据全场景在离线混部系统 Caelus 正式开源
在 2021 腾讯数字生态大会上,腾讯还正式开源了全场景在离线混部系统Caelus。
Caelus 由腾讯大数据团队联合腾讯多个业务部门共同研发,旨在解决大数据资源缺口问题,通过 Caelus 在离线混部,扩充大数据任务可用资源,发挥空闲资源更大价值。据介绍,在腾讯内部,Caelus 混部方案已经被大规模应用到广告、存储、大数据、机器学习等多个业务,平均提升 30% 资源利用率,节省了上亿成本。
目前,在线作业容器化已成为主流,但绝大公司的在线业务还有相当大未容器化的存量,或有些业务(如存储类服务)不适合容器化,这些没有经过容器化的在线应用,没有很好的资源隔离方式,但资源却非常可观,因此 Caelus 通过以后置容器的方式来管理在线应用,将这部分资源也充分利用起来,也减少了混部在很多公司、很多场景的限制。
对于离线任务,Caelus 可以支持大数据任务,也可以支持任何非大数据类的任务。但由于大数据任务占到了离线任务的极高比例,并且离线大数据任务资源碎片化特点比较明显,而大数据又有很多是 Hadoop 的生态,因此腾讯做了很多的兼容工作。同时,也看到有很多公司已经在云原生大数据领域有了比较不错的进展,对于使用 Caelus 来做混部更加自然。
Caelus 挖掘的是在线业务的空闲资源,混部要优先保障在线服务的正常运行,当在线业务需要资源时,大数据业务要及时归还资源。Caelus 内部集成了指标收集、资源画像、资源隔离、干扰检测、离线驱逐等模块,从调度、隔离、检测等方面全方位保障在线的服务质量。
对于资源隔离,Caelus 采用全维度弹性资源隔离,包括 CPU、内存、磁盘 IO、磁盘空间、网络 IO 等。同时可以配合腾讯 OS 版本,进一步提升资源隔离效果。在干扰检测方面,通过 RDT、perf、eBPF 等技术深度采集硬件、内核及业务相关指标数据,通过丰富的异常检测算法,判断在线服务是否受到干扰。
目前,Caelus 已经在腾讯内部经过长时间规模化的考验,未来还将在更多网络模式下的容器热迁移、对机器学习等长时间运行的离线任务混部质量提升等方面进行持续迭代优化。
腾讯公司副总裁王巨宏表示,随着云计算和云原生的发展,也逐渐形成了云开源生态,云则为开源的发展提供了最佳的载体。腾讯云也致力于通过云原生开源项目,与行业共同探索开源的社会价值和商业价值。“我们希望未来不管是一个人,还是三五个人的小团队,或者是大多数中小企业,都能用上和大厂一样的框架和技术,进而助力整个行业技术的创新和进步。”
评论