文|朵晓东(花名:奕杉 )
KusionStack 负责人、蚂蚁团体高级技术专家
在基础设施技术畛域深耕,专一云原生网络、运维及编程语言等技术工作
本文 2580 字 浏览 6 分钟
|前言|
本文撰写于 KusionStack 开源前夕,作者有感而发,回顾了团队从 Kusion 我的项目开发之初到现今胜利走上开源之路的艰苦历程。当中既形容了作者及其团队做 Kusion 我的项目的初心和我的项目倒退至今的成绩,也表白了作者本身对团队的由衷感谢,字里行间都散发着真情实感。
KusionStack 是什么?
KusionStack 是开源的可编程云原生协定栈!
Kusion 一词来源于 fusion (意为交融),心愿通过一站式的技术栈交融运维体系的多个角色,晋升运维基础设施的开放性、扩展性,从整体上降本增效。KusionStack 通过定义云原生可编程接入层,提供包含配置语言 KCL、模型界面、自动化工具、最佳实际在内的一整套解决方案,连通云原生基础设施与业务利用,连贯定义和应用基础设施的各个团队,串联利用生命周期的研发、测试、集成、公布各个阶段,服务于云原生自动化零碎建设,减速云原生落地。
PART. 1
为了一个现实的运维体系
2019 年秋,MOSN 的工作已继续了近两年,期间咱们逐渐实现了在支付宝外围链路的状态验证。整个过程中除了 MOSN 自身面对的种种技术挑战和艰难,所谓的云原生技术红利,实际上也曾经掣肘于运维零碎固化所造成的效率制约。
有一天主管找我吃饭 (下套),期间向我形容了他现实中的运维体系:
他心愿 SRE 能通过一种专用语言来编写需要,通过写代码来定义基础设施的状态,而不是破费极大的精力在查看、发现、修复的循环上。基础设施团队则通过提供凋谢的可编程语言和工具撑持不同诉求的 SRE 团队,达到更高的整体 ROI。
我立即意识到这和 Hashicorp 的 Terraform 神之类似 (起初 Hashicorp 在 2021 年底上市,以超过 150 亿美元的市值成为迄今为止市值最高的一次开源 IPO)。另一方面,不同于 IaaS 交付场景,蚂蚁面对着大量更规模化、复杂度更高的云原生 PaaS 场景,又让我想到了 Google 外部使用专用语言、工具等技术凋谢 Borg[1]运维能力的实际[2],过后感觉这是一个既有意思又有挑战的事[3]。
饭桌上咱们聊了一些思路以及一些还不太确定的挑战,他问我想不想搞一个试试,搞不成也没关系。过后没想太多,饭没吃完就许可了。
PART. 2
漫长的学习、摸索与实际
隔行如隔山。
没有过语言设计研发的教训,也没有过凋谢自动化零碎设计的教训,我的项目发展之初,咱们就陷入了举步维艰的窘境。
经验了一段漫长工夫的学习、摸索和实际的重复循环之后,我的项目仍旧没有大的起色,更艰难的是咱们岂但要面对蚂蚁外部简单又耦合的场景和问题,还要禁受「这种高度工程化的形式在蚂蚁是否有生存土壤」的质疑。
屋漏偏逢连夜雨,期间又令人可惜且无奈的经验了一些人事变动,同时因为种种原因,我的项目一度陷入了各种窘境。整个 2020 年,咱们在未知、纠结、无奈中度过……
感激瓴熙、庭坚和我的主管,感激你们过后没有放弃这个我的项目,仍然与我一起坚守。
PART. 3
痛并高兴的孵化之旅
通过继续地布道、交换和沟通,咱们逐渐在基础设施技术团队和 SRE 团队找到了更多有共识的敌人。
同时在技术上,咱们亦脱离了迷茫,真正意义上地启动了 Kusion 我的项目,也胜利地从 PoC 过渡到了 MVP 的阶段。
最终,咱们以“非标”利用为切入点,开始了痛并高兴着的孵化之旅。
感激零执、青河、子波、李丰、毋涯、向野、达远……在这里无奈一一列举,感激你们的保持让这个想法逐渐成为事实。
PART. 4
冲破与停顿
略过两头的种种摸索和实际,回顾这段历程,在这一年多的工夫里咱们联合了编译技术、运维及平台技术,胜利建设了一个基于 Kusion 可编程技术栈的运维体系。
在业务场景上,我的项目笼罩了从 IaaS 到 SaaS 的大量运维场景,截至目前共接入了 800+ 利用,笼罩 9 个 BG,21 个 BU,其中典型案例交付运维提效 90% 以上,这也是蚂蚁外部第一次将大量异构利用纳入到一整套运维技术栈。
在蚂蚁咱们基于云原生容器和微服务技术深刻摸索了 DevOps、CICD 实际,欠缺了蚂蚁的云原生技术体系,逐渐开释了云原生效率红利,同时造成了一个近 300 人的虚构运维研发团队。
不同职能不同团队的参与者凝聚在一起解决各自所面对的问题,奉献了 3W+ commit 和 35W+ 行代码,有一些参与者自发成为 Kusion 的研发者。我认为这些工程师文化理念和畛域常识的积攒带来了远超运维业务自身的价值。
此外,Kusion 也成为了可编程基线产品、云原生运维产品、多云交付产品等新一代运维产品的根底技术,成为蚂蚁运维体系架构降级的一部分。
不忘初心,咱们心愿通过技术手段促成与运维参与方的单干关系的合理化、基于凋谢技术栈的自动化,以及运维数据与常识的积淀积攒,以达到整体合作运维效率的一直晋升。
同时,因蚂蚁外部运维场景较多且链路简单,每个环节都须要最懂运维业务的 SRE 亲密参加,与平台、利用研发协同工作,最终各环节联结在一起造成了一套残缺的运维体系,在这样的思路下凋谢技术也会越来越重要。
平台研发、SRE、利用研发等多种角色协同编写的代码是一种数据的积淀,亦是一种业务知识的积淀,基于这些数据和常识,将来会有更多的可能性。
PART. 5
走上开源之路
在历经了一段外部摸索之后,咱们心愿把 KusionStack 开源到技术社区。因为咱们意识到本身面对的问题,其余公司、团队其实也同样正在面对。借助开源这件事,咱们心愿团队的这些工作成绩能对更多人有所帮忙。
当然,也受限于本身能力以及精力和资源的投入,咱们心愿能有更多敌人参加进来,与咱们独特去欠缺 KusionStack,不管你是工作在云原生、运维自动化、编程语言或者是编译器中的哪一个畛域,咱们都十分期待和欢送你的退出。
PART. 6
期待与你共成长
这段经验对我来说异样贵重,不仅仅是在于本身再一次在新的技术畛域和蚂蚁的技术升级方面尝试了新的摸索并实现了冲破,更贵重的是,本人还领有了一段与一群人均 95 后的小伙伴一起将想法落地实现的奇幻历程。
在将来,Kusion 的朋友圈不再局限于蚂蚁外部,面向开源,咱们期待着能有更多的社区敌人在 KusionStack 与咱们独特成长!
理解更多 …
KusionStack Star 一下✨:
https://github.com/KusionStack
KusionStack 的开源,心愿能对大家有所帮忙,也心愿能跟更多敌人独特欠缺 KusionStack。欢送对云原生、运维自动化、编程语言、编译器感兴趣的同学一起参加社区共建,在新的技术畛域降级方面进行摸索和冲破,实现更多新的想法。
点击文末 浏览原文 中转我的项目地址。
【参考链接】
[1]《Large-scale cluster management at Google with Borg》:https://pdos.csail.mit.edu/6.824/papers/borg.pdf
[2]Configuration Specifics:https://sre.google/workbook/configuration-specifics/
[3]《Borg, Omega, and Kubernetes》:https://queue.acm.org/detail.cfm?id=2898444
【本周举荐浏览】
KCL:申明式的云原生配置策略语言
精彩回顾|KusionStack 开源啦~
【GLCC】编程夏令营 高校学生报名正式开始!
蚂蚁团体 Service Mesh 停顿回顾与瞻望|SOFAStack 周围年