执行概要
- 移动fintech供应商JUMO使用现货的全套NetApp的DevOps提供AWS Kubernetes环境履行他们的使命:提供一流的低成本金融服务非洲的方式个人和小企业。
- 自2020年以来,现货已启用JUMO拯救50 - 70%他们的主要平台的Kubernetes计算成本——多亏一致获得AWS实例。
- 2022年,JUMO现货推出的最新解决方案,海洋CD,自动化Kubernetes部署管道:逐步部署,不断验证和自动回滚。
- 因此,工程团队大大卸载,大大降低和生产错误,提高开发人员和DevOps生产力以及服务质量。
概述
JUMO成立于2015年的伦敦,是一个全球性的B2B fintech供应商,提供消费者,企业,银行与移动banking-as-a-service平台。融入JUMO的平台允许银行向他们的客户提供贷款,储蓄,和广泛的金融选择一个新的、通常方式,细分市场。
JUMO运作在撒哈拉以南非洲地区,银行业是移动的未来。在这个地区,45%的成年人是方式,这意味着它们不是由银行或其他金融机构,和移动钱包被广泛用作另一种。2022年,该地区的注册手机用户和交易价值600美元,占全球60%的1美元t移动货币市场。这些数字逐年快速增长,JUMO的技术中扮演越来越重要的角色促进金融包容和经济可持续发展,特别是在新兴市场。
使用Kubernetes保持高标准
JUMO AWS-native公司有现代化的建筑从第一天起。起初,他们使用码头工人群部署容器。当他们了,他们搬到了Kubernetes。
fintech部门的一部分,鉴于其终端用户概要,JUMO致力于维护他们后端云环境的一些标准:
1。可用性:JUMO的方式最终用户极大地取决于JUMO在他们的日常生活。服务中断由于部署失败会导致他们大量经济损失(例如,一个失败的事务,不能重做)。因此,JUMO必须最小化停机时间来自部署错误。
2。数据安全与隐私:处理大量的金融和个人资料,JUMO选择符合ISO27001:2013安全框架。这个规定严格治理有关:
- 基础设施:JUMO Kubernetes集群有很多的安全策略。这个复杂和延长一些流程,比如新员工培训第三方SaaS解决方案。
- 第三方供应商:需要一个坚实的审计跟踪演示合规和促进取证调查。这使得配置代码任何第三方解决方案的一个必要特征。管理解决方案通过起程拓殖,甚至是一个自定义的API,确保所有更改记录(与web UI)。
- 数据存储:政策和控制来保护金融用户数据丢失或未经授权的访问必须设置之后,十分重视云存储安全性和弹性。
3所示。基础设施的效率:JUMO渴望保持云房地产尽可能精简,以帮助保持低终端用户的费用。因此,FinOps不仅仅是一个想法,但一个公司的政策。
JUMO的云管理特点和挑战
JUMO的独立开发人员和产品团队管理基础设施,所以大部分日常DevOps任务是由开发人员自己完成。这包括保持低计算花费。然而,他们不是基础设施专家,他们的一些并不是最佳的选择。
出于这个原因,他们的努力支持系统开发工程团队,实现了全公司的云计算项目,如CI / CD管道和大型FinOps计划。这支球队的六个支持共有90名开发人员,80 microservices和400庞然大物豆荚——所以他们长期劳累。
将自己和实践团队,系统开发团队想要实现优化。这导致JUMO NetApp的第一次接触点。
长期合作伙伴关系
JUMO-Spot故事非常JUMO的基础设施和FinOps进化的故事。
引入点发生在2月/ 2020年3月与现货NetApp的FinOps工具,环保。生态JUMO的一部分获得AWS花控制的过程。
“我们实质上Eco帮助我们抓住我们所有低挂水果时AWS法案——例如,使用保留能力。我们有一些伟大的结果。Eco帮助我们实现全面减少50%云法案。”
马修•安东尼员工系统开发工程师,JUMO
在2020年晚些时候,JUMO完全重写的Kubernetes平台。这种改进的核心平台,JUMO推出现货NetApp的serverless Kubernetes经理,现货的海洋。
在此之前重写,JUMO使用k8 cluster-autoscaler,缺乏紧密集成与AWS JUMO寻求。并行,JUMO也大规模underprovisioned随需应变的实例。
“海洋帮助我们实现全面优化。它为我们提供了无缝的扩展我们的主要计算平台。我们能够将我们大部分的工作负载迁移到现货实例,因此在很大程度上节省我们的运营成本。将海洋,我们的返工Kubernetes带来成本下降70%。最重要的是,它允许我们工程师的失败,带来更多的弹性系统。”
马修•安东尼员工系统开发工程师,JUMO
在基础设施水平,实现连续优化JUMO着手优化DevOps管道,从简化CI过程。在这里,NetApp的VM自动定量Elastigroup是去工作。Elastigroup一体化启用了詹金斯JUMO CI工人现场实例的自动定量,所以简化是双重的:操作和金融。
现在JUMO是准备最后的举动:现代化他们的CD的过程。
JUMO CD的挑战
JUMO最初管理Kubernetes CD在他们七大三角帆的集群。管道监控,他们选择了Datadog。
JUMO正在寻求替代大三角帆克服其主要限制:
- 大三角帆没有简单的方法来创建新的管道新用例(可重用的实体模型)
- 大三角帆整体很难管理,特别是通过配置代码。有两个主要的“引擎盖下”的原因:
- 它使用JSON模式管道模板。
- 它使用随机对资源的ID,所以当你想要改变一个管雷竞技rabet官网道,你只能找到资源ID通过UI。当你想要一些管道的变化,这使得别无选择,只能做这些改变手动界面,不记录。
- 大三角帆功能非常丰富,大多数特性与团队只部署Kubernetes无关。推荐的架构大三角帆有着丰富的资源需求导致高成本,其中只有一小部分Kubernetes-only团队的是合理的。小DevOps团队不仅仅是负责CD,大三角帆是过火了。
- 大三角帆不提供积分金丝雀部署容器,只为/ vm实例。这使它完全无关的团队Kubernetes-only管道。
“感觉操作一个野兽,为我们的需求太大了。从效率的角度看,我们想要一个苗条的解决方案更好的适合我们的用例,”安东尼说。
这些缺点导致一些日常问题,任何DevOps,行为,或系统工程团队会畏缩:
- 失败的部署是浪费宝贵的工程时间。工程师花了40 - 60分钟研究部署失败的原因和如何使它成功。
- 开发人员没有可靠的自动化。政策没有auto-enforced由于缺乏信心,他们将如何表现。这导致更多的手动步骤手动监控新部署,包括代理在Datadog警报。
- 大三角帆的设置出现严重的界面问题。修改大管道时,UI通常会冻结几分钟——拖延或冒着整个过程。
- 由于缺乏配置代码支持,工程师操作他们的服务没有注意到有人改变部署管道。所以他们通常部署和无法预测或理解失败。
- 没有配置代码,更新部署管道全线非常费力,而且容易出错。一个很好的例子是Kubernetes版本更新现有的集群。理想情况下,人会创建新集群的新版本开发人员迁移到一旦准备好了,而不需要做任何事。由于大三角帆,开发商被迫手动更新部署管道本身。这需要很多时间点击在大三角帆UI——特别是对于开发人员拥有多个服务,每个都有成百上千的部署。在每一个这样的更新一轮,每个JUMO的大约90开发人员最终将至少有一个或两个错误。虽然大多数错误没有后果除了浪费时间,只需要一个结果打破生产,造成实际经济损失。
举个例子,有一次,这些问题导致了临时码头工人图像和分期价值生产和打破它。JUMO的工程师,这是最后一根稻草。
技术和监管要求
JUMO正在寻求一个解决方案来简化他们的CD错误和时间将是最小的。适合他们的技术、管理和文化环境中,解决方案必须满足几个要求:
- 功能:自动化逐步部署和回滚,并减少所需的时间来检测和调试失败的部署。
- 兼容性:Kubernetes-native。
- 卸载潜力:可靠的、可伸缩的、容易理解,高度自动化。
- 审计跟踪通过配置代码。
- 用户体验:JUMO只采用一个SaaS解决方案是否有实质性的优势开源替代方案。在CD的背景下,他们希望开发人员喜欢使用它,是很好奇它是如何工作的,以及它如何帮助他们创新。这是相对于开源选项(包括大三角帆),用户体验不是主焦点的地方。
NetApp的新开发海洋CD似乎是唯一的SaaS解决方案,满足上述要求。
被NetApp非常满意点的价值开发人员(自动定量和节约成本),JUMO很高兴成为首批公司试试。

设计阶段和新员工培训过程
2022年4月,JUMO加入海洋CD产品团队作为一个设计的合作伙伴。这给了他们一个机会来塑造产品兑现所有的成功标准。
设计阶段
JUMO多次特性请求被开发作为海洋CD的公共beta版本的一部分。其中:
- 重用推出规范文件在不同的服务,所以他们都推出以同样的方式和环境:这是一个开发人员提出的一个想法当他们看到海洋CD能做什么。
- 自动验证使用Datadog指标:JUMO提前被问到他们如何想执行自动验证。满足Datadog用户,他们要求海洋CD金丝雀支持Datadog集成部署策略。这帮助开发者获得信心在底层指标的部署代码。
- 高级支持Kubernetes滚动更新:JUMO使用滚动更新策略的很大一部分工作负载。现货产品团队被要求使它除了“金丝雀”战略和海洋一起CD价值层(例如,验证,UI开发人员,支持多种微服务集群,等等)。,更多的开发人员可以利用海洋CD功能作为软件交付生命周期的一部分。
“海洋CD团队是开放的和渴望的反馈,并且非常足智多谋在解决它,即使在小的用例。作为一个日益增长的公司我们高度赞赏它。”
马修•安东尼员工系统开发工程师,JUMO
新员工培训
海洋CD推出由JUMO的系统开发工程团队,建立了组织知识的地方。一个开发团队开发一种新的服务选择亲自测试它。海洋开发人员被训练使用CD,其中一个“冠军”监督并提供反馈。
“新员工培训很容易因为海洋CD拥有一切关于部署管道存储在文件和配置代码。因此,我们可以很容易地使用这些文件在不同的服务和项目。[客户]花了一个小时的会议。今天随着海洋CD的发展,我相信它会花30分钟上一个新的服务新客户。”
马修•安东尼员工系统开发工程师,JUMO
结果
一旦海洋CD公测启动,JUMO从零到金丝雀部署在生产在两安排会议。
海洋CD帮助JUMO金丝雀自动化部署,监控和验证所有选定的服务的环境(开发、分期和生产)。
安东尼解释道:“CI / CD是一个非常复杂的过程,组织之间变化很大。但可能适用于所有的一条建议是:寻求一个解决方案,让您自动化事情容易。”

JUMO指出一些立即的好处有海洋CD到位:
- 完整的效率:Datadog集成和海洋CD上清晰可见的UI提供了一个水平的信心JUMO的开发人员还没有经历过。这种信心是双重的:
- 信任自动化来管理他们的CD管道在生产中——从pre-detection错误,通过逐步部署,持续的监控。
- 信任自己的能力快,明智的决定如果部署代码不按预期执行。
- 透明的部署管道开发人员:JUMO开发人员现在可以更多涉及到在验证和不依赖于系统工程团队通知他们关于错误。这使得开发人员更独立和富有成效的在部署他们的服务。
- 删除维护瓶颈:“海洋CD支持自动化Kubernetes集群迁移,”安东尼说。“过去这可能需要我们每次一到两个月,所以我们不经常。海洋CD删除此类瓶颈的方式让我们是最好的,我们可以在我们的CD环境中。”
“现货海洋CD的最大特点之一是完美与像Datadog Kubernetes和第三方工具的集成。对我们来说,这有助于完成产品生命周期”。
马修•安东尼员工系统开发工程师,JUMO
业务影响
一旦部署在所有海洋CD JUMO的开发团队,他们期望它感到无处不在:从终端用户体验到公司的业务kpi。
”减少生产错误意味着改善终端用户可用性,它取决于我们。当然,这支持终端用户保持和增长。这是我们的方式兑现JUMO的大使命:提供可靠的金融服务,到目前为止没有人获得这样的服务。”
马修•安东尼员工系统开发工程师,JUMO
开发人员使用海洋CD实际上解除“保姆”他们的部署管道:他们相信任何错误将自动回滚,没有他们Datadog焦急地观察和分析指标。这意味着,首先,更多的时间来创新和代码。
“海洋CD将使我们能够创建一个无缝的CD的过程可以自动化,因此开发人员花尽可能少的时间围绕它。这是符合我的团队的核心使命,给我们的工程师的手段使他们的工作更快,更容易。”
马修•安东尼员工系统开发工程师,JUMO
JUMO的工程团队也希望节省时间编排复杂的过程,目前需要大量的人追逐的,“像Kubernetes集群迁移到新版本。再次,这意味着更多的时间质量、跨公司云计算项目。
无忧无虑的操作
现在用户现货NetApp的DevOps堆栈,JUMO享受基础设施和管道效率的一个新的水平。这将保持增加点云业务进一步发展我们的整个范围之间的集成产品。
“现货NetApp堆栈以最好的方式是看不见的。它总是像预期的那样工作,整合完美所以我们别惹配置更改,和不需要的想法或者担忧。”
马修•安东尼员工系统开发工程师,JUMO
JUMO成立于2015年的伦敦,是一个全球性的B2B fintech供应商,提供消费者,企业,银行与移动banking-as-a-service平台。融入JUMO的平台允许银行向他们的客户提供贷款,储蓄,和广泛的金融选择一个新的、通常方式,细分市场。