挑战
蚂蚁集团正式成立于 2014 年 10 月,源自全球最大的在线支付平台支付宝,支付宝于 2004 年推出。公司还利用技术创新提供许多其他服务。考虑到支付宝通过其本地和全球合作伙伴为全球 9 亿多用户处理的海量交易(2017 年双 11 峰值每秒 25.6 万笔交易,2018 年双 11 商品交易总额达 310 亿美元)以及其其他服务的交易量,蚂蚁集团正面临着“全新的数据处理挑战”,存储与计算部产品管理负责人杭浩杰表示。“我们看到在这种规模下运营存在三个主要问题:如何提供实时计算、存储和处理能力,例如为欺诈检测提供实时推荐;如何在此数据之上提供智能,因为数据太多,我们获得的洞察不够;以及如何在应用层、中间件层、系统层甚至芯片层应用安全性。”为了向客户提供可靠且一致的服务,蚂蚁集团在 2014 年初采用了容器技术,并很快需要一个编排解决方案来管理其数据中心数万个节点的集群。
解决方案
在调研了几种技术后,团队选择了 Kubernetes 作为编排技术,以及其他一些 CNCF 项目,包括 Prometheus、OpenTracing、etcd 和 CoreDNS。杭浩杰表示:“在 2016 年底,我们决定将 Kubernetes 作为事实上的标准。”“回过头来看,我们在正确的技术上下对了赌注。但随后我们需要将生产工作负载从传统基础设施迁移到最新的支持 Kubernetes 的平台,这花了一些时间,因为我们在可靠性和一致性方面非常谨慎。”所有核心金融系统都在 2017 年 11 月前完成了容器化,向 Kubernetes 的迁移仍在进行中。
成效
杭浩杰表示:“我们看到,通过云原生技术,运营效率至少提升了十倍,这意味着你的产出可以提升十倍。”蚂蚁集团还将其完全集成的金融云平台提供给全球商业伙伴,并希望凭借在服务创新和技术专长方面的深厚经验,为下一代数字银行提供动力。杭浩杰表示,团队尚未开始专注于优化 Kubernetes 平台:“因为我们仍处于超速增长阶段,我们还没有进入降本增效模式。”
而支付宝通过其本地和全球合作伙伴为全球 9 亿多用户处理的交易量令人震惊:2017 年双 11 峰值每秒 25.6 万笔交易,2018 年双 11 商品交易总额达 310 亿美元。秉持“为世界带来平等的机会”的使命,蚂蚁集团致力于通过技术创新构建一个开放、共享的信用体系和金融服务平台。
再结合其其他业务(如花呗在线信用系统、借呗贷款服务和拥有 3.5 亿用户的蚂蚁森林绿色能量移动应用)的运营,蚂蚁集团正面临着“全新的数据处理挑战”,存储与计算部产品管理负责人杭浩杰表示。“我们看到在这种规模下运营存在三个主要问题:如何提供实时计算、存储和处理能力,例如为欺诈检测提供实时推荐;如何在此数据之上提供智能,因为数据太多,我们获得的洞察不够;以及如何在应用层、中间件层、系统层甚至芯片层应用安全性。”
为应对这些挑战并向客户提供可靠且一致的服务,蚂蚁集团于 2014 年采用了 Docker 容器化技术。但他们很快意识到需要一个编排解决方案来管理公司数据中心数万个节点的集群。
团队调研了几种技术,包括 Docker Swarm 和 Mesos。杭浩杰表示:“我们做了很多 POC(概念验证),但在生产系统方面非常小心,因为我们要确保不丢失任何数据。服务不能中断一分钟;甚至一秒钟的中断都会产生非常巨大的影响。我们每天都在压力下运营,为中国和全球的消费者和企业提供可靠且一致的服务。”
最终,杭浩杰表示,蚂蚁集团选择 Kubernetes 是因为它满足了所有要求:活跃的社区、在“未来三到五年内仍具相关性”的技术,以及与公司工程人才的高度契合。“在 2016 年底,我们决定将 Kubernetes 作为事实上的标准,”杭浩杰说。“回过头来看,我们在正确的技术上下对了赌注。但随后我们需要将生产工作负载从传统基础设施迁移到最新的支持 Kubernetes 的平台。我们花了大量时间学习,然后培训我们的人员,以便在 Kubernetes 上更好地构建应用。”
所有核心金融系统都在 2017 年 11 月前完成了容器化,向 Kubernetes 的迁移仍在进行中。蚂蚁集团的平台还利用了其他一些 CNCF 项目,包括 Prometheus、OpenTracing、etcd 和 CoreDNS。全球技术合作与发展部的俞立表示:“今年双 11,我们在 Kubernetes 上运行了大量节点,但与整个基础设施的规模相比,这仍在进行中。”
尽管如此,成效已经显现。杭浩杰表示:“云原生技术极大地提升了我们的效率。总的来说,我们希望确保我们的基础设施足够敏捷和灵活,以应对未来可能出现的工作。这就是目标。有了云原生技术,我们看到运营效率至少提升了十倍,这意味着你的产出可以提升十倍。比方说,你一个人运营 10 个节点。有了云原生,明天你就可以运营 100 个节点。”
蚂蚁集团还将其金融云平台提供给全球合作伙伴,并希望凭借在服务创新和技术专长方面的深厚经验,为下一代数字银行提供动力。杭浩杰表示,团队尚未开始专注于优化 Kubernetes 平台:“因为我们仍处于超速增长阶段,我们还没有进入降本增效模式。”
在蚂蚁集团向云原生转型过程中,CNCF 社区也成为了宝贵的财富。杭浩杰表示:“如果你正在应用一项新技术,有一个社区可以与其他用户讨论技术问题,这是非常有益的。我们非常感谢 CNCF 和这项出色的技术,我们在持续的全球化扩展中需要它。未来我们肯定会更加拥抱社区和开源。”
事实上,公司已经开始将其部分云原生中间件开源。俞立表示:“我们在这方面会非常积极。CNCF 提供了一个平台,让每个人都可以接入或贡献组件。这是一种非常好的开源治理模式。”
展望未来,蚂蚁团队将继续评估许多其他 CNCF 项目。通过在中国构建服务网格社区,团队汇聚了许多中国本土企业和开发者,共同探讨该技术的潜力。杭浩杰表示:“服务网格对中国的开发者和最终用户非常有吸引力,因为我们目前运行着很多传统系统,而服务网格是一个理想的中间层,可以将所有东西(包括新旧系统)粘合在一起。对于新技术,我们会非常仔细地评估它们是否会持久。”
在蚂蚁集团,Kubernetes 以优异的表现通过了考验,团队希望其他公司也能效仿。杭浩杰表示:“在中国,我们在金融及其他相关服务领域的创新方面是北极星。我们绝对要确保凭借我们在技术上的投入,未来 5 到 10 年内仍保持领先地位。”