Kubernetes如何实现宜信金融科技服务的快速迭代

挑战

作为中国领先的金融科技企业集团,宜信在过去12年里实现了增长,而其建立在VMWare Vsphere基础上的传统业务却难以跟上。应用程序在线花费的时间太长,而且很难确保环境的一致性。应用程序具有复杂的生命周期管理,具有多个生产和构建环境。自动缩放和快速开发是不可能的。拥抱微服务、容器化和持续交付帮助了我们,但是在生产环境中有成千上万个容器,宜信需要一个管理系统。

解决方案

宜信团队选择Kubernetes进行编排。“Kubernetes在整体架构、设计理念和社区活动方面都是最好的,”容器云架构师陈晓宇表示。此外,“Kubernetes由CNCF托管是非常重要的,CNCF保证了Kubernetes的中立性,这意味着它不与商业供应商绑定。”

影响

“通过将微服务打包到容器中并使用Kubernetes,可以更快地完成应用程序更新和回滚,”晓宇说。“因为不同的团队可以负责不同的服务,他们可以更快地完成产品的迭代和更新,而无需等待整个项目的发布。”

挑战:
行业:
地点:
云类型:
产品类型:
出版:
January 29, 2019

使用的项目

Harbor
Helm
Kubernetes
Prometheus

一些数据

开发和交付效率提高

节省了商用硬件的成本

生产环境中有成千上万个容

宜信是中国领先的金融科技企业集团,为个人客户、企业和初创企业提供多种贷款和理财服务。

公司以“宜人宜己,美好生活”为使命,致力于利用大数据金融云、物联网等技术,快速开发创新产品和服务。

在过去的12年里,随着公司的成长,它建立在VMWare Vsphere之上的传统大块头正在艰难地追赶。该公司想要解决的挑战有很多:应用程序在线花费的时间太长,而且很难确保环境的一致性。应用程序具有复杂的生命周期管理,具有多个生产和构建环境。自动缩放和快速开发是不可能的。最重要的是,使用的商业软件非常昂贵。容器云架构师陈晓宇表示:“在当前的互联网环境下,开发和交付的长周期是不合适的。”

拥抱微服务、容器化和持续交付使得“更快地完成产品迭代、发现问题和更早地解决问题成为可能,”晓宇说。但是,由于生产环境中有成千上万个容器,宜信需要一个管理系统,该系统还提供应用程序监视服务,如调用链跟踪和网络监视,以及一组支持多种语言的CI/CD系统。

在考虑了许多技术之后,宜信团队选择Kubernetes进行编排。“Kubernetes在整体架构、设计理念和社区活动方面是最好的,”晓宇说。另外,“Kubernetes由CNCF托管是非常重要的,CNCF保证了Kubernetes的中立性,这意味着它不与商业供应商绑定。对Kubernetes的跨行业投资促进了该技术的发展。”

宜信团队在迁移微服务运行在Kubernetes,已经节省了大量时间。“通过将微服务打包到容器中并使用Kubernetes,可以更快地完成应用程序更新和回滚,”晓宇说。在整个大型应用程序中,不再存在由一小段错误代码引起停机的风险。

“目前的产品迭代越来越快,因为在线交付在最短的时间内完成。”

— 陈晓宇,宜信容器云架构师

“因为不同的团队可以负责不同的服务,他们可以更快地完成产品的迭代和更新,而不需要等待整个项目的发布,”晓宇补充道:“容器集群支持公司的大部分业务场景,因此,一方面,提高了开发和交付效率,另一方面,节省了商业软件的成本。”

除了Kubernetes,宜信平台还使用其它CNCF技术,包括Prometheus、Helm和Harbor。“我们使用容器镜像存储库Harbor,它在clair中执行镜像扫描,Helm作容器部署,Docker作运行时,Flannel作网络插件以及NFS作共享存储。”晓宇说。

“因为不同的团队可以负责不同的服务,他们更快地完成产品的迭代和更新,而不是等待整个项目的发布。”

— 陈晓宇,宜信容器云架构师

对于其他考虑云原生架构和实践的公司,晓宇有这样的建议:“他们需要相关技术人员的参与,他们应该使用社区活动最高的项目,这样任何问题都可以及时得到解决。”

有了这两件事,宜信已经成功地过渡到云原生。“当前的产品迭代越来越快,因为在线交付在最短的时间内完成,”晓宇说:“Kubernetes将继续推动和支持公司未来更多的业务场景。”