挑战
速度(资产评估清洁能源)金融公司,Ygrene资助自2010年以来,超过10亿美元的贷款。为了批准和处理这些贷款,“我们有很多数据源被聚合,我们也有很多数据的系统,需要生产,”奥斯汀Ygrene开发经理亚当斯说。公司利用庞大的服务器上,“我们只是达到垂直规模的限制。我们有一个非常不稳定的系统,变得不知所措的请求只是为了做背景实时数据处理。用户看到的是非常贫穷的性能。我们需要一个解决方案,不需要我们做出巨大的重构代码。”一个s a finance company, Ygrene also needed to ensure that they were shipping their applications securely.
解决方案
从一个Engine Yard的平台和Amazon Elastic Beanstalk, Ygrene团队拥抱云本土技术和实践:Kubernetes帮助规模垂直和分发工作负载,公证将在构建时控制和信任所使用的码头工人图像与第三方依赖,和Fluentd“观察每个栈的一部分,”上运行Amazon EC2现货。
影响
部署之前,通常需要三到四个小时,和两三个月的工作将被部署在低流量的时间每周或两周。Kubernetes现在,他们花五分钟,一个小时与冒烟测试的总体部署。和“我们能够部署三或四次一个星期,只有一个星期或两天的工作价值,”亚当斯说。“我们在每周工作部署,在白天,没有任何停机时间。我们必须要求业务审批系统,即使是在半夜,因为人们可以做贷款。现在我们可以部署、船舶代码和数据库迁移,所有不系统。公司新特性而不用担心一些业务将丢失或延迟。”一个dditionally, by using the kops project, Ygrene can now run its Kubernetes clusters with AWS EC2 Spot, at a tenth of the previous cost. These cloud native technologies have "changed the game for scalability, observability, and security—we're adding new data sources that are very secure," says Adams. "Without Kubernetes, Notary, and Fluentd, we couldn't tell our investors and team members that we knew what was going on."
一个速度(资产评估清洁能源)融资公司,“我们把股票在一个家庭或一个商业建筑,并使用它为属性改进任何节省电,产生电能,节约水,或减少碳排放,”开发经理奥斯汀·亚当斯说。
为了批准这些贷款,该公司承销过程中大量的数据。“我们有大量的不同的点,我们必须验证的属性,对公司,还是对人,”亚当斯说。“我们有很多被聚合的数据源,我们也有很多的系统,需要生产实时数据。”
到2017年,部署和可伸缩性已成为难点。公司利用庞大的服务器上,“我们只是达到垂直规模的限制,”他说。迁移到AWS Elastic Beanstalk不解决这个问题:“Scala服务需要大量的数据从主Ruby on Rails服务和来自不同供应商的,所以他们要求信息从我们的Ruby服务,这些服务无法处理。我们有大量的配置与Elastic Beanstalk错过。它来到了一个头,我们意识到我们有一个非常不稳定的系统。”
亚当斯团队的其他成员一起出发去寻找一个解决方案,将转型,但“不需要我们做出巨大的重构代码库,”他说。作为一个金融公司,Ygrene需要安全的可伸缩性。他们发现答案通过拥抱云本地技术:Kubernetes帮助规模垂直和分发工作负载,公证各级实现可靠安全,Fluentd可观测性。“Kubernetes社区是要到哪里去,我们想要未来的证据,”亚当斯说。
Kubernetes,团队能够迅速和码头工人用集装箱装Ygrene应用程序。“我们不得不改变一些做法和代码,建造了事物,”亚当斯说,“但我们可以得到我们的主要系统到Kubernetes在一个月左右,然后在两个月内投入生产。非常快的金融公司”。
如何?原生云“改变了游戏规则的可伸缩性、可观测性和安全,我们正在添加新数据源非常安全,”亚当斯说。“没有Kubernetes,公证,Fluentd,我们不能告诉投资者和团队成员,我们知道发生了什么事情。”
公证,特别是“天赐之物,”亚当斯说。“我们需要知道我们的攻击表面第三方依赖很低,或者至少管理。我们使用它作为一个系统信任,我们也使用它作为一个分离,所以生产图片由公证人签署,但我们不签署一些开发图像。这是确保他们不能进入生产集群。我们一直使用它测试集群的感觉对我们构建更安全。”
通过使用散步流言项目,Ygrene能够从Elastic Beanstalk AWS上运行其Kubernetes集群EC2,在以前的成本的十分之一。“为了规模之前,我们需要实例大小,导致高成本低价值,”亚当斯说。“现在Kubernetes和散步流言,我们能够与多个实例组现场规模水平。”
这也帮助他们减轻风险,在公共云运行。”我们发现,从本质上说,如果我们能够选择使用EC2实例类现货的可能性极低的中断和零中断的历史,我们愿意支付足够高的价格,实际上,我们可以得到相同的保证使用Kubernetes,因为我们有足够的节点,“软件工程师说扎克•阿诺德领导Kubernetes迁移。“现在这些应用程序架构,我们不是生活在同一个服务器上,我们可以把许多不同的服务器和有一个更稳定的部署。”
因此,团队可以现在船代码一天的任何时候。“这是有风险的,因为它可以降低你的整个贷款管理软件,”阿诺德说。“但我们现在可以部署安全、可靠白天。”
部署之前,通常需要三到四个小时,和两三个月的工作将被部署在低流量的时间每周或两周。Kubernetes现在,他们花五分钟,一个小时一个总体部署冒烟测试。和“我们能够部署三或四次一个星期,只有一个星期或两天的工作价值,”亚当斯说。“我们在每周工作部署,在白天,没有任何停机时间。我们必须要求业务批准采取系统30分钟到一小时,甚至在半夜,因为人们可以做贷款。现在我们可以部署、船舶代码和数据库迁移,所有不系统。公司新特性而不用担心一些业务将丢失或延迟。”
原生云也影响了Ygrene 50 +开发商和承包商的工作。亚当斯和阿诺德花了相当长的时间“教导人们如何看待分布式开箱即用的,”阿诺德说。“我们最终选择我们所说的四个年代的运输:安全,安全,稳定,和迅速。”(For more on the security piece of it, see their文章“连续黑客”策略。)对于工程师,亚当斯说,“他们已经能够推进软件拥有先进。我认为在一天结束的时候,开发者对他们做什么,感觉更好,他们也感觉更连接到现代软件开发社区。”
展望未来,亚当斯兴奋地探索更多CNCF项目,包括SPIFFE和尖顶。“CNCF惊人的孵化器已经这么多项目,”他说。“现在我们看它的网页经常找出是否有任何新的、令人敬畏的,高质量的项目我们可以实现堆栈。实际上成为一个中心为我们了解软件我们需要看我们的系统更安全或更具有可伸缩性。