公司 第一资本 地点 弗吉尼亚州麦克莱恩 行业 零售银行

挑战

该团队着手为部署在 AWS 上的第一资本应用程序构建一个配置平台,这些应用程序使用流式传输、大数据决策和机器学习。其中一个应用程序每天处理数百万笔交易;有些则处理诸如欺诈检测和信贷决策等关键功能。主要考虑因素:弹性和速度,以及从基础 AMI 完全重新水合集群。

解决方案

高级软件工程总监 John Swift 表示,运行 Kubernetes 的决定“对我们来说非常具有战略意义”。“我们将 Kubernetes 用作底层或操作系统。我们的产品开发中存在一定程度的亲和性。”

影响

首席软件工程师 Keith Gasser 说:“Kubernetes 是一个重要的生产力倍增器。”他补充说,如果没有 Kubernetes 运行该平台,“我们现在的纯 AWS 支出成本很容易增加三倍或四倍。”上市时间也得到了改善:“现在,一个团队可以来找我们,我们可以在两周内让他们启动并运行一个基本的决策应用程序,而以前这需要一个季度甚至更长的时间。” 部署增加了几个数量级。此外,以前需要花费一天大部分时间手动完成的重新水合/集群重建过程,现在通过 Kubernetes 自动化和声明式配置只需几个小时。

作为美国十大零售银行之一,第一资本拥有每天处理数百万笔交易的应用程序。大数据决策(用于欺诈检测、信贷审批等)是业务的核心。为了支持为银行构建具有这些功能的应用程序的团队,由高级软件工程总监 John Swift 领导的云团队采用了 Kubernetes 作为其配置平台。“Kubernetes 及其整个生态系统对我们来说非常具有战略意义,”Swift 说。“我们将 Kubernetes 用作底层或操作系统。我们的产品开发中存在一定程度的亲和性。”

大约两年前,该团队首先使用 Docker 开始了这一旅程。然后是 Kubernetes。“我们希望将流媒体服务放入 Kubernetes 中,作为快速决策工作负载的一项功能,并且能够同时进行批处理,”首席软件工程师 Keith Gasser 说。“一旦数据被流式传输和批处理,Flink 中有很多工具集供我们用于决策。我们希望以一致的方式在同一个生态系统中提供这些工具,而不是拥有一个大型的定制雪花生态系统,其中每个工具都需要自己的自定义部署。Kubernetes 使我们能够将所有这些工具整合在一起,从而可以控制开源的丰富性,甚至是可以处理大数据的许可社区。”

在第一年,其影响已经非常显著。“上市时间对我们来说非常重要,”Gasser 说。“尤其是在欺诈方面,您必须在应对市场中的威胁时非常灵活——能够添加和推送新规则,检测新的行为模式,检测帐户和交易流中的异常情况。”有了 Kubernetes,“一个团队可以来找我们,我们可以在两周内让他们启动并运行一个基本的决策应用程序,而以前这需要一个季度甚至更长的时间。Kubernetes 是一个多方面的生产力倍增器。”

现在,团队拥有了自主部署的工具,因此,部署量增加了两个数量级。“而且这只用了七个专用资源,而不需要整个团队坐在那里监视一切,”Scrum Master Jamil Jadallah 说。“这是一项巨大的成本节省。凭借可扩展性、管理和协调,Kubernetes 真正赋予了我们力量,并为我们节省了比以前更多的时间。”

对于第一资本要求的从基本 AMI“重新水合”集群的周期,Kubernetes 也节省了大量时间。为了最大限度地减少云中应用程序的攻击漏洞配置文件,“我们的整个集群会定期从头开始重建,使用新的、新鲜的实例和虚拟服务器映像,这些映像会使用最新最好的安全补丁进行修补,”Gasser 说。这个过程过去需要花费一天的大部分时间,并且需要人员来手动完成。现在,这只是一个快速的 Kubernetes 作业。

节省也扩展到了资本支出和运营支出。“进入 Kubernetes 所需的成本非常低,因为它都是开源的,”Gasser 指出。“我们自己动手构建集群,我们绝对喜欢能够立即采用社区的最新成果的灵活性,而无需等待下游公司来完成。对于我们不必支付的那些许可证,会有资本支出。此外,由于我们可以在特定领域淘汰一些专有软件,因此也为我们节省了资本支出。因此,这也对我们的账簿产生了积极的影响。”(其中一些开源技术包括 Prometheus、Fluentd、gRPC、Istio、CNI 和 Envoy。)

在运营支出方面,Gasser 说,节省的成本很高。“我们运行着数十种服务,拥有数十个 Pod,许多守护进程集,而且由于我们是数据驱动的,因此我们利用 EBS 支持的卷声明来满足我们所有有状态服务的需求。如果我们不得不脱离 Kubernetes,在底层云服务上完成所有这些工作,我可以很容易地看到我们的成本增加三倍或四倍,这仅仅是纯 AWS 支出的金额。这还不包括部署和维护所有额外基础设施的人员成本。”

该团队相信,这些好处将继续倍增,而工程师接触新技术的学习曲线不会很陡峭。“当我们在这个生态系统中加入更多租户时,我认为人们理解 Kubernetes 的需求可能不一定会增加。事实上,我认为它会下降,这是好事,”Gasser 说。“因为这真正展示了该技术的可扩展性。您开始收获好处,他们可以专注于为业务构建伟大的决策所需的所有功能(欺诈决策、信贷决策),而不必担心‘我的 AWS 服务器坏了吗?我的 Pod 没有运行吗?’。”