3个有关容器和Kubernetes的成功转型案例

云计算
人们发现了容器和Kubernetes是在多云或混合云环境中实现工作负载可移植性的一个强大组合。而下面则是三个实际应用的技术示例。

各行各业的公司都在推动将数据和工作负载转移到云上,无论是作为数字化转型的一部分,还是为了避免为应对日益增长的需求而建造的成本高昂的新基础设施。

对于许多组织来说,这一转变的关键是容器和Kubernetes--尤其是当涉及到多个云服务时的时候。

[[320755]]

容器是独立的软件包,它能够将应用程序的所有代码和依赖项捆绑在一起,以确保无论其计算环境如何,应用程序都能可靠地运行。因此,容器促进了应用程序从例如开发人员的笔记本电脑到测试环境的移动,从测试环境移动到生产环境,或者从数据中心的物理机器移动到私有云或公共云中的虚拟机。

但是,尽管容器简化了环境之间的工作负载转移,但它们仍然需要被维护。这就是Kubernetes的用武之地。Kubernetes是一个开源的容器编排系统,旨在自动化容器化应用程序的部署、扩展和管理。Kubernetes最初是由谷歌开发的,目前由云原生计算基金会进行维护。

人们发现了容器和Kubernetes是在多云或混合云环境中实现工作负载可移植性的一个强大组合。而下面则是三个实际应用的技术示例。

Expedia集团:提升在线旅游体验

在线旅游服务提供商Expedia集团于2013年开始使用Amazon Web services(AWS)的微服务架构和公共云服务。但该公司是在2015年通过Amazon EC2 Container Service (ECS)来部署容器,以运行这些微服务,并能够在AWS云环境中运行应用程序时,才加快了它的使用速度。

部署这些技术的主要业务和技术驱动因素包括了跨多个环境的应用程序的更大可移植性,以及新产品和服务推向市场的更快速度。

“随着容器在几秒钟内就能开始运转,我们向客户交付新功能所需的时间大大缩短了,因而能够加快产品推向市场的速度,”Expedia Group旗下的Vrbo公司的杰出工程师Kuldeep Chowhan说,该公司正在为旅客提供住宿服务。

容器在工作环境之间的可移植性和容器的部署速度加快了公司向微服务的转变,Chowhan说。如今,有数以千计的应用程序在多个AWS云区域的ECS上运行,这使得Expedia能够为旅行者和合作伙伴提供更强大的服务,他说。

2015年,Vrbo采用了Apache Mesos,这是一个管理计算机集群的开源平台,可以跨本地数据中心和AWS云环境来运行容器的工作负载。这使得Vrbo的开发人员能够在两种环境中运行相同的工作负载,从而加速了从Expedia的内部数据中心到云的迁移,Chowhan说。

Expedia还利用了Kubernetes的强大功能,因为该技术在近年来越来越受到欢迎了。Chowhan表示,该公司旗下的Hotels.com目前在AWS云上的Kubernetes上运行着数百个应用程序,帮助为客户提供酒店预订等服务。

在亚马逊于2019年推出弹性Kubernetes服务(EKS)之后,Expedia集团的许多团队,包括数据科学、在线体验、流媒体,以及其他的一些团队,也开始利用它来运行容器工作负载了。

“长期来看,Expedia正计划朝着满足容器运行时和编排需求的方向发展,”Chowhan说。

Expedia集团向微服务体系结构和容器的转型为该公司在快速推出新服务方面提供了显著的优势。在过去,开发新应用程序往往需要几个月的时间,而现在,它每天都能开发大量的新功能。

“通过我们对应用程序架构和DevOps实践进行的现代化的投资,我们看到交付给客户的功能又增加了一个数量级,”Chowhan说。“Vrbo品牌在过去三年里的发布速度增长了12倍。”

由于容器的可移植性,Expedia的应用程序可以在多个AWS区域以分布式的方式运行,从而提供了高可用性,这样全球的客户都可以使用Expedia的旅游网站,而不会受到任何影响了。

Chowhan说,容器还支持进行“有针对性的扩展”。“早些时候,当我们有一个整体的应用程序时,我们将不得不扩展整个基础设施来支持额外的流量,”他表示。“而有了容器和微服务,现在我们将能够更智能地扩展我们网站中有更高客户需求的特定部分--并实现基础设施成本的节约了。”

但容器仍然需要一些基础设施管理,Chowhan说:“为了能够部署和运行容器,您需要一个容器运行时和编排平台。与任何软件解决方案一样,也会需要发布更新,这些更新需要部署到运行容器平台的现有服务器之上。”

围绕容器和微服务的开发过程是不断发展的,从源代码到运行时,Chowhan说。“我们必须进行重组,以适应我们整个旅游平台的新生态系统,同时还要培训我们的工程师,让他们了解容器生态系统的演变,”他说。

Primerica:确保高质量、现代化的代码

Finserv和保险公司Primerica已经创建了一个新的Kubernetes环境,用来帮助IBM在Nutanix硬件上的私有云产品中扩展应用程序。Docker的容器也帮助Primerica提供了一个环境之间的应用程序一致性。

“这是我们从传统技术栈向现代混合云迁移的关键战略组成部分,”公司首席技术官兼应用程序开发和交付执行副总裁Barry Pellas说。

“这种环境使我们能够继续看到我们几十年来的持续以一种新的、现代的方式开发应用程序的价值,”Pellas说。“它还在我们的API(应用程序编程接口)和微服务战略中扮演着关键角色”,因为它促进了我们向业务应用程序交付新功能,他说。

容器和Kubernetes的组合使Primerica不仅能够托管应用程序,而且能够监视它们并在容器发生任何情况时快速恢复。

“我们提供了端到端的基础设施即代码,这使我们能够始终如一地构建可预测的环境,并消除人为错误的可能性,”Pellas说。“我们的持续集成和交付能力确保了产品团队能够随时掌握最新的更改,他们可以自信地认为环境和应用程序的验证已经作为部署过程本身的一部分被完成了。”

使用容器和Kubernetes的主要目的是为团队提供一个更快交付应用程序的机会,从而提高应用程序的质量,Pellas说。它们还提供了一个安全、稳定的工作环境,并在高可用时间内提供了可伸缩性。

“我们还希望获得各种环境之间的可预测性和一致性,以帮助进行调试和解决问题,”Pellas说。

虽然Primerica最近才开始利用容器和Kubernetes,但它已经看到了团队生产率的提高,以及为用户开发的新功能,这些功能可以以增量的、敏捷的方式进行交付。

“通过在开发过程的早期捕获问题,我们将能够提供更安全、更可预测的应用程序,”Pellas说。“随着我们将越来越多的应用程序迁移到了平台上,我们希望这可以提高我们的应用程序质量,并在整个产品团队中带来一致的开发体验。”

与任何技术一样,对于希望采用容器和Kubernetes的组织来说,都会有一个学习曲线。“让拥有正确技能的团队在环境中得到适当的发展是很有挑战性的,”Pellas说。

Primerica正在通过向其产品团队提供培训,并为商业领袖提供最佳实践来应对这些挑战。

克莱姆森大学:争夺大量的计算资源

克莱姆森大学遗传与生物化学系的Feltus实验室是一个由遗传学家、计算机科学家、计算机工程师和生物工程师组成的跨学科团队,他们将软件工程和计算生物学技术相结合,试图在人类和植物生物系统中做出有用的分子发现。

该实验室使用了生物信息学、统计学和数据科学方法来发现新的模式,系教授Alex Feltus说。“我们分析的生物数据集在万亿到千兆位的范围内,我们设计了优化了的数据密集型计算工作流,使的数据能够适合于各种不同的计算平台”,也包括一些商业云提供商的计算平台。

近年来,实验室一直致力于Kubernetes系统上运行的工作流开发工作。“我们相信Kubernetes将在未来的许多年内成为数据密集型计算的通用标准平台,这将使得我们能够将软件工程的努力集中在一个架构上面,”Feltus说。

Feltus说,生物数据库正在呈几何级数的规模增长,我们可以挖掘数据集,从生物学角度深入了解一些最大的医疗和粮食安全挑战。“即使是小型的生物实验室也经常需要大量的计算资源。,”他说。“研究人员很快就会想要提出千兆级别的生物学问题,这将会需要访问目前商业云中的大型计算机。而Kubernetes集群是进行大规模计算的优秀平台。”

在完全转向云计算之前,“生物学研究人员需要民主化的、免信贷的云沙箱,在那里人们可以大规模地设计和测试工作流,”Feltus说。“这些沙盒是至关重要的,因为90%的科学实验都会走向死胡同,这会导致在发现问题之前就耗尽了云信贷的预算。”

Feltus实验室正在与许多其他的研究团队合作,尝试将可扩展的资源融合到本地和云服务当中,而Kubernetes和容器将发挥巨大的作用。

“Kubernetes和容器是计算生物学工作流工程的首选平台,”Feltus说。“这些系统让我的学生绕过了许多难以捉摸的HPC(高性能计算)环境配置。”

该实验室已经部署了Cisco的容器平台,它可以帮助团队在一个平台下管理来自不同云提供商的多个集群。

一旦实验室在Kubernetes集群中测试了它的工作流,它就可以在多个商业云中运行容器化的工作流。“这将简化最终用户的培训,让用户能够专注于科学本身,”Feltus说。

 

责任编辑:赵宁宁 来源: 企业网D1Net
相关推荐

2020-09-11 10:14:40

数字化转型首席信息官数字化

2018-02-24 10:15:30

2020-02-18 10:23:53

CIO数字化转型IT

2023-12-06 16:09:59

数字化转型

2018-07-24 11:35:29

2018-03-19 08:22:40

Kubernetes秘诀容器

2018-11-27 09:00:53

DockerKubernetes容器

2020-08-21 10:35:17

机器学习IT领导者人工智能

2020-11-27 11:07:29

人工智能

2020-03-06 05:21:26

物联网营销IOT

2023-05-15 11:07:45

数字化转型

2015-08-12 14:07:20

创业成功心态

2023-10-16 11:27:43

2021-10-18 08:00:00

数字化转型IT技术

2016-01-11 10:07:27

容器Kubernetes

2022-10-28 13:30:08

2021-08-30 10:14:48

数字孪生数字化CIO

2021-08-24 08:00:00

人工智能数字孪生技术

2020-05-15 10:28:04

实时分析客户需求CIO

2021-07-12 10:38:51

预测分析数据分析大数据
点赞
收藏

51CTO技术栈公众号