LifeMiles:用 Kubernetes 创建敏捷的忠诚计划
挑战
LifeMiles 是拉丁美洲增长最快的忠诚计划之一,自2016年底开始创建独立于母公司的系统和基础架构。“这里全部是灵活性很弱的单体架构,要提供一项服务,系统就必须要在服务器上建一个完整的架构,”IT 总监 René Denis 说,“上市要很长时间,我们希望能改变这种工作方式。”
解决方案
首先,LifeMiles 决定从母公司的数据中心迁移到 Amazon Web Services。团队选择Kubernetes 进行编排,实现了微服务和持续交付。他们进行了应用程序的试点设置,随后在2017年7月发布了生产环境。
影响
“部署不再需要数小时、甚至数天之久,几分钟即可完成,”Denis 说。另外一个好处就是实现了忠诚计划促销管理的灵活性。总体来说,从内部环境转到公有云,用 Kubernetes 进行新应用部署,“已经把基础架构的开支降低了50%,”IT 基础架构经理 Francisco Maravilla 说,“我们的可用资源已经翻番,公有云提供的弹性基础架构大大提高了资源的可用性。”
一些数据
部署从数小时或数天减少到几分钟
基础架构开支
减少了50%
可用资源
翻番
LifeMiles 是拉丁美洲增长最快的忠诚计划之一,在该地区拥有数百万名会员。
2016年,为了更好地为顾客服务,该公司启动了一次技术转型。
“这里全部是灵活性很弱的单体架构,要提供一项服务,系统就必须要在服务器上建一个完整的架构,”IT 总监 René Denis 说,“上市要很长时间,我们希望能改变这种工作方式。”
Denis 和他的团队肩负着从母公司系统中把 LifeMiles 分离出来的任务,他们要采用不同的技术,在另一个架构里实施 LifeMiles。团队决定从母公司的数据中心迁移到 Amazon Web Services,他们选择 Kubernetes 进行编排,实现了微服务、容器化和持续交付。
“我们希望尽可能实现自动化,针对不同的客户使用不同的技术,” Denis 说,“Kubernetes 是编排效率最高的系统之一,也是开源系统,所以起步非常简单。因为很多公司在用,也因为系统最初是谷歌开发的,所以我们相信该系统是一个非常稳定的平台,在未来会持续发展。”
Denis 团队最初在 Kubernetes 集群上进行了几项内部服务的小规模试点。生产环境于2017年7月发布,为 LifeMiles 的订票引擎和一个新开发的促销运营产品提供服务。团队对最终的结果印象非常深刻,认为 Kubernetes 是实现新的持续交付系统的“关键要素”。
“应用部署的敏捷性真的是不同凡响,” Denis 说,“以前,审批和申请要花两周时间。现在,我们能在不同的环境里实现自动部署,在流水线中完成自动测试,验证简单了,审批也快了。部署不再需要数小时、甚至数天之久,几分钟即可完成。”
“新系统同时还增加了部署数量,提高了部署效率。“现在,我们每个实例有18个部署,以前在内部环境中,每个实例仅有7个部署,”开发运维工程师 René Benavides 说,“此外,Kubernetes 和 Docker 帮我们增加了非生产环境的数量,因为标记功能,我们能够优化实例利用,从而将成本保持在较低水平。”
“实施 Kubernetes 之后,应用部署的敏捷性真是不同凡响。部署不再需要数小时、甚至数天之久,几分钟即可完成。”
— LIFEMILES IT 总监 RENÉ DENIS
另一个好处就是灵活性。“以前,要更新基础架构或某些系统的能力,只能升级服务器,”云和基础架构管理员 René Cuchillas 说,“现在,我们可以依靠 Kubernetes 实现促销,管理所需的负载。促销可以日复一日地进行,按照需求持续下去。因此,上市时间也大大缩短了。”解除了负载局限,LifeMiles 的促销总量也得到释放,增加了三倍。
除此以外,其他方面的成本也能降低。“如果不使用容器平台、堆栈中没有 Kubernetes,基础架构管理团队就需要更多人手,” Denis 说。
总而言之,从内部环境迁移到公有云,使用 Kubernetes 部署新应用,“基础架构开支减少了50%,” IT 基础架构经理 Francisco Maravilla 说。“我们的可用资源已经翻番,公有云提供的弹性基础架构大大提高了资源的可用性。”
“以前,要更新基础架构或某些系统的能力,只能升级服务器。现在,我们可以依靠 Kubernetes 实现促销,管理所需的负载。”
— LIFEMILES 云和基础架构管理员 RENÉ CUCHILLAS
对于 LifeMiles 目前使用 Kubernetes 的50位开发者来说,“Kubernetes 真的是一个巨大的成功,在创建能力、容量管理、开发和QA环境的灵活度方面,都实现了极大的灵活性。”
现在,除订票引擎外, LifeMiles 网站和合作伙伴网站的积分兑换后台都在 Kubernetes 上运行。所有这些团队的最新内部开发都聚焦于 Kubernetes 上的微服务。这个团队目前使用的项目还有 Prometheus 和 CoreDNS,随着需求调整,还会在堆栈上增加项目。
“我们有非常进取的目标,”Denis 说,“能开拓新市场,我们期望获得更多的流量。我们也在发布新的系统,洽谈达成新的合作伙伴关系。没有 Kubernetes,我们无法实现这些目标。”