zl程序教程

您现在的位置是:首页 >  IT要闻

当前栏目

富达投资如何利用云原生技术实施多云战略

2023-04-18 15:33:55 时间

作为全球最大的金融服务公司之一,富达投资为超过 3500 万投资者提供服务,拥有超过 7600 万个投资账户。几年前,该公司启动了数字化转型,重点是“利用下一代平台和技术来提高业务价值、加快产品上市速度并利用创新的力量,”云平台负责人高级副总裁 Amr Abdelhalem 说。

这项工作包括实施多云战略,这意味着在几年内将数千个关键的、高度监管的、低延迟的应用程序迁移到多个云提供商平台上。多云战略的实施以 Kubernetes 和其他 CNCF 技术为基础。

多云环境多版本Kubernetes的挑战

富达投资的云原生之旅始于 2018 年,当时云平台团队开始采用 Kubernetes 作为平台,由多个托管云 Kubernetes 服务为目标应用团队提供支持。“我们研究了应用团队在采用全新技术时普遍存在的问题,”云平台架构师 Rajarajan Pudupatti 说。

比较关键的一个问题是富达投资在本地以及其他云提供商上都部署了 Kubernetes 的发行版,这造成了多云环境、多版本 Kubernetes 的复杂情况,也给后续的管理带来了挑战,比如,如何同时在 1,000 个分布式应用程序中引入新的安全流程?

依靠与开发人员焦点小组的积极反馈循环,该团队致力于创建一个平台,能够实现多云环境下的一致性,该平台还考需要虑富达投资的特定要求,主要是信息安全和数据保护。

基于Kubernets实施多云战略

“我们真正开始致力于在业务部门可能使用的所有平台之间建立一致性,以实现一致的开发人员体验,”云平台架构师 Niraj Amin 说。“如果有一种平台能够实现这个目标,那一定是Kubernetes。在此基础上,我们还要努力消除在本地运行与托管在特定云提供商平台上的 Kubernetes 之间的一些复杂性或差异。”

所以现在,Pudupatti 补充道,“Kubernetes成为了我们的基础架构。我们可以轻松地在特定版本中推出特定的附加组件,它将以统一的方式改变数百个 Kubernetes 集群。即便有数以千计的微服务在特定集群中运行,只需要一个简单的更改,所有微服务都将符合特定的安全流程。这对于处于云原生起步阶段的我们来说是很重要的一点。”

富达通过创建符合自身金融服务行业属性的运营和自动化流程,能够满足其一些最紧迫的监管和安全要求。“由于 Kubernetes 的可扩展特性,实际上我们可以在其中插入自己的逻辑,”Pudupatti 说。“任何时候出现问题,我们都可以回过头来审视 Kubernetes 的设计,我们总能找到可以解决问题的方法。”

例如,该团队构建并开源了KConnect,这是一个 CLI,允许用户接入平台,发现并安全连接到他们可以跨多个运营环境访问的 Kubernetes 集群。它还支持用户创建规则,来限制谁可以创建命名空间,并且一旦规则被创建,就能确保用户行为符合既定的要求。“整个过程都是自动化的,”Amin说。“我们现在正在利用这一点,通过使用Open Policy Agent围绕治理做一些东西,并融入我们在内部构建并在此基础上构建的架构。”

Pudupatti 指出,当他们构建平台时,“我们做的第一件事就是查看 CNCF 工具包和正在进行的项目。我们将尽最大努力重用任何可能的东西。但是同时还有一点对我们来说很重要:我们很看重社区的发展方向,所以即使有简单的方法,但我们认为社区实际上由于某些原因而朝着与这个方法不同的方向发展,我们也会放弃这种没有长远发展潜力的方法,以使我们能够努力与社区保持一致。”

所有这些工作的最终成果是在 Fidelity Cloud Fabric 之上建立了一个多层平台。“富达投资正在利用多个 CNCF 项目来支持我们的下一代云原生平台,”Pudupatti 说。“我们使用 CoreDNS 进行服务发现,使用 etcd 作为键值存储,使用 Fluentd 进行日志记录,使用 Helm 作为包管理器,使用 Kubernetes 进行容器编排,依据 CNI 进行网络 API开发,并使用 Open Policy Agent 进行策略管理。我们还利用了 CNCF 的沙箱项目,例如用于证书管理的 cert-manager 和用于 GitOps 的 Flux。”

对于富达投资的数千个应用程序团队来说,“Fabric 本身是一种在多云、混合云模型中进行开发和创新的方式,”Abdelhalem 说。“我们的生态系统本身、我们所有的应用程序生命周期管理工具、我们的可观察性层、我们的缓存层、我们的安全和治理层、我们的 AI 和机器学习层都是在多云环境之上进行管理的。然后我们的业务平台也是运行在此之上。目标是有朝一日,我们能够实现负载在云服务商之间流动,并能够将工作负载移动到全球各地。”

富达团队承认,在公司的“云化之旅”中还有很多工作要做。Amin 说:“我们仍然有某些业务单元在调用本地服务,有的还需要其他帐户和其他已经在云中的服务的支持,甚至与 SaaS 解决方案协作。” “将所有内容都放到云端会很复杂,但我希望这个平台能够在开发人员踏上这段旅程时缓解其中的一些困难。Kubernetes 为我们的平台中提供了一个基础平台方案,使得我们可以轻松地在其上构建所需要的平台组件。”

基于云原生的多云战略收益

到目前为止,收益已经很明显:“CNCF 的技术广度对富达投资产生了重大影响,因为我们加速了应用程序向云的无缝迁移,”Pudupatti 说。“在很短的时间内,我们已经在云中实现了近 3,000 个 Kubernetes 服务、近 200 个 Kubernetes 集群、1,000 多个命名空间和 10,000 个容器。”

“创新的速度对于富达产品的未来非常重要。由于采用了这些 CNCF 技术,开发人员的产品发布频率是以前的 20 倍,同时,开发人员在将产品部署到生产环境上所花费的时间也显著减少。以前需要数天(涉及大量人工干预)的工作现在已减少到几分钟。当你有成千上万的开发人员在一个组织中工作时,影响会成倍增加。”

—— 富达投资云平台架构师 Rajarajan Pudupatti

考虑到富达的数据中心迁移以及许多应用程序最终迁移到云中,可移植性也是一个很大的收获。“应用迁移到不同的云提供商只需几个小时,而在某些情况下,这种迁移过程可能达到几个月甚至无法迁移。如果你在本地运行一些应用,而这些应用刚好在 Kubernetes 平台上,很大改了这些应用可以迁移到在任何云平台上运行,”Amin 说。

长远来看,云原生将在未来几年对富达投资产生影响。“我们从首席技术官那里得到的指示是,在几年内积极完成云化之旅,同时避免供应商锁定、技术锁定和云锁定,”Pudupatti 说, “主要驱动力是 Kubernetes。这就是我们现在实现云可移植性的方式。”