导读
近几年云计算的发展如火箭般迅猛,异构变革日新月异,这是基础设施层明确的发展趋势。值得关注的是,随着基础设施的复杂度越来越高,也为整个基础设施的统一资源调度带来了极大挑战。在越来越复杂的异构基础设施上,存量应用和增量应用应该如何上云?面对大量异构基础设施带来的挑战,企业如何最大化上云价值?12月15日,在以“引领分布式云变革 助力湾区数字经济”为主题的全球分布式云大会上,蚂蚁集团数字科技事业部产品总监马振雄分享了在分布式云异构基础设施之上,蚂蚁集团在构建分布式云PaaS平台SOFAStack背后的实践和思考。以下内容整理自马振雄的分享。
服务网格定义新的应用上云路径
随着云原生的发展,企业在技术升级的过程中伴随着大量的历史包袱,这些历史包袱是所有存量的异构功能,这些异构功能有以下几个特征:技术架构异构、通信协议异构、开发框架异构,这些存量的应用如何在异构的基础设施上统一纳管,背后就涉及到了应用的全生命周期,从研发时的应用改造成本,到运行时如何对异构应用做统一服务治理,再到运维时如何对基础设施进行统一元数据管理、统一变更、统一容灾、统一应急以及资金安全,这些都是存在于PaaS层的挑战。
如果说IaaS层的统一资源调度以资源为视角和出发点,那么在上层PaaS则需要以应用为视角思考整个分布式基础设施的复杂度到底会带来哪些挑战,以及企业应该如何应对。
企业存在大量的历史包袱,历史包袱五花八门,如果要把这些历史包袱全部改造成分布式应用或者云原生应用,背后需要的代价非常昂贵,很难有一家企业在短时间内愿意负担起这样的时间和成本,彻底将所有的历史包袱云原生化。
相比于其他上云方式,Service Mesh能够实现跨平台、跨协议,并且业务代码无侵入改造,从而快速地将应用植入sidecar完成mesh化,获得分布式红利、安全可观测,并且整个架构平滑演进。企业在架构升级过程中可以按部就班、循序渐进,并且实现端到端的安全可信以及全链路可观测能力。
总体来说网格服务首先降低了传统应用改造成分布式、云原生应用的成本问题;其次是解决了所有企业新老系统的互联互通和统一纳管的问题;第三是让企业应用架构在升级过程变得更平滑;第四是让所有企业保留自己存量系统的技术栈,且保留了企业自身自主可控性要求。
Forrester长期以来对蚂蚁集团的创新技术保持关注,Forrester首席分析师、Serving Technology Executives服务技术决策者戴鲲发布《蚂蚁集团服务网格总体经济影响》,并分享了他对于Mesh的研究。
戴鲲认为,未来要实现开发的智能化,需要通过微服务来进行智能化进程,不再像以前一样零敲碎打。对传统应用进行定制化,要通过网格服务动态地组装,实现云上开发。
通过对蚂蚁集团客户的访谈,Forrester发现无论是传统金融机构还是互联网金融机构,都面临在混合架构下存在的共性挑战,包括基础设施升级换代、应用开发升级、云上云下交互等方方面面。Forrester发现网格服务从单体应用改造成本节省到运维安全管理效率提升等方面都有明显的收益,通过研究三年数据测算,使用蚂蚁服务网格产品后,客户的投资回报率达到99%。
SOFAStack:实现异构统一运维与弹性容灾
基于自身的技术积累和场景打磨,蚂蚁数字科技定义了分布式云PaaS平台在运维态的六大能力,包括统一元数据管理、统一集群资源管理、统一变更能力、统一应急能力、统一容灾能力,和统一端到端从业务、应用到基础设施的可观测能力。在此基础上,蚂蚁数字科技重新定义SRE,实现统一应用运维能力。
行业一般认为SRE中的“R(Reliability)”是可靠性,蚂蚁数字科技结合自身十几年来对业务可用性和连续性的极致追求,经历了十多次双十一大规模验证,对SRE进行重新定义,将SRE里的R从Reliability转变为Risk,意味着蚂蚁自身的保障体系是以风险为核心。最终通过十几年来的技术沉淀,打造了自己的技术风险保障平台TRaaS。也正是因为这十几年沉淀的精华,才能让蚂蚁做到业务、应用、基础设施的运维无人值守,运维“自动驾驶”。
蚂蚁的技术风险防控体系从上到下分别代表了三个目标:高可用、资金安全、低成本,三个组织保障:团队、文化、制度,再到需求、研发、发布以及监控的四条防线,最终沉淀出一套完整的技术风险保障体系的平台能力,整个平台由四个能力板块组成,包括了从应急、变更到容量、资金安全。
应急平台建立起了以风险为核心的事前、事中、事后的故障风险保障体系,分别对应故障风险检测能力、故障定位能力、故障应急和自愈能力,以及故障的回溯能力。变更平台建立起了以变更为核心的事前、事中、事后的变更风险自动分析、防御、阻断能力。容量平台建立起了对于全局数据中心和系统整体瓶颈的自动探测、容量规划和容量保鲜能力。最后的资金平台,通过对业务应用无侵入地建立起了资金核对第二道防线,帮助企业彻底规避资金安全风险,减少资损。
如果说第一个核心的挑战解决的是研发态和运行态的问题,第二个核心挑战解决运维态问题,第三个核心挑战,要解决的是从整体架构上解决容灾态的问题。
随着分布式云基础设施的蓬勃发展,企业数据中心从集中化走向离散化,这意味着企业任何一个应用随时随地可以跑在全国的任何一家数据中心机房的任何一个节点上,这种变化背后,从应用视角来看,迫切需要整体的系统应用架构,支撑业务突破地域和城市级别的无限可扩展能力。基于蚂蚁对于业务连续性的极致追求,蚂蚁在支撑业务发展过程中,建立起了金融行业超大规模的三地五中心,并沉淀了一套异地多活单元化架构,解决企业在容灾、弹性、灰度方面的三大痛点。
容灾方面,可以支撑企业的数据中心架构彻底从单活走向同城双活、两地三中心、再走向多地多活。一个业务单元发生故障不会影响到另外一个业务单元,从架构本身原生保障了业务的可靠性和连续性。
弹性方面,由于灵活部署和快速扩容机制,能够结合灵活的流量调拨机制,支撑企业的数据中心突破城市和地域级别的扩展,做到真正意义上的无限可扩展。
灰度,结合跨单元的路由分发,可以轻易地做到蓝绿单元这样具有创新的业务灰度方式。
多地多活的架构非常复杂,从上至下包含了四层,从接入层做路由规则和路由分发,到应用层的中间件路由,再到数据层的数据分片和数据路由,最后到运维层的统一容灾、统一监控、单元拓扑。
以金融行业为例,大型银行在主机下移过程中,需要面临的重要课题就是如何将核心系统下沉到分布式集群,在分布式集群下移过程中如何匹配主机系统性能和稳定性,背后很重要的能力就是多地多活架构。
最终,蚂蚁在以上三个核心挑战的实践过程中,沉淀出新一代分布式云PaaS平台SOFAStack。平台在金融行业有非常多的头部客户案例,从原生能力就满足了金融行业远高于其他行业在容量、性能、规模、高可用、合规、降本提效等方面的高标准要求。更重要的是SOFAStack来源于金融行业,但不止于金融行业,蚂蚁希望通过SOFAStack赋能到更多的行业,完成更多企业的数字化转型。
SOFAStack未来演进方向
Mesh的未来会经历三个重要的发展阶段:第一个阶段,不止是Service Mesh,还有更多Mesh产品形态出现,包括消息mesh、缓存mesh、db mesh等;在这个阶段,将会帮助企业更轻松地自主掌控异构运行时基础设施;
第二个阶段,在兼容异构运行时基础设施之上,尝试定义社区或者事实的API标准,这个标准能让企业拥有统一的编程界面;当企业开发完一个应用,底层的基础设施发生任何变更,对于应用来说都是无感的。在这个阶段的愿景是让应用build once,run anywhere,一旦应用开发完成,就不再需要做任何变更,可以随时跑在全国任何一个机房的数据中心节点,并且这个节点向上承载的运行时基础设施是可变的;
第三个阶段,如果说前两个阶段是把基础服务范畴端到端下沉到基础设施,在第三个阶段更多要看到的是横向能力的下沉,包括资源调用和系统调用;在这个阶段,将会尝试尽可能把业务应用里更多和业务本身不相关的逻辑下沉到Sidecar,彻底解放业务开发,让业务开发者关注能力编程,而不需要关注底层,回归业务本位,聚焦业务本身。
最后,蚂蚁集团一直致力于技术架构前瞻性布局和持续创新,会继续在异构基础设施上打磨端到端的可信原生能力,未来,蚂蚁希望将SOFAStack打造成各行各业数字化转型的跨云操作系统。