乐趣区

CNCF案例研究:京东

京东如何在超大规模的电子商务中率先采用 Kubernetes

公司:京东地点:中国北京行业:电子商务
挑战
京东有超过 3 亿活跃用户,2017 年总收入超过 550 亿美元,是中国最大的零售商,其业务是超大规模的缩影。例如,京东的产品数据库中有超过一万亿个图像 – 每天增加 1 亿个图像 – 这些大量数据需要能被立即访问。2014 年,京东将其应用程序迁移到使用 OpenStack 和 Docker 在裸机上运行的容器,以“加快计算资源的交付,使操作更加简单”,京东首席架构师刘海锋表示。但到 2015 年底,有数万个节点在多个数据中心运行,“我们遇到了很多问题,因为我们的平台不够强大。我们遇到了瓶颈和可扩展性问题,”刘说。“我们现在就需要未来五年发展的基础设施。”
解决方法
京东转向 Kubernetes 以管理其集群。2016 年初,公司开始从 OpenStack 过渡到 Kubernetes,今天,京东运营着世界上最大的 Kubernetes 集群。“Kubernetes 提供了坚实的基础,我们作为中国最大的零售商根据自己的需求定制了解决方案。”
影响
“通过 Kubernetes 平台,我们拥有更高的数据中心效率,更好的托管资源和更智能的部署,”刘说。部署时间从几个小时降到几十秒。以 IT 成本衡量,效率提高了 20-30%。随着团队的进一步优化,刘认为每年可节省数亿美元。但也许最好的成功标志是年度 11.11 购物活动,该活动于 2018 年首次在 Kubernetes 平台上运行。超过 11 天,京东的交易量为 230 亿美元,“我们的电子商务平台做得很好,”刘说。“基础设施领先于准备 11.11。我们采用预测量的方法,模拟客户的行为以事先准备,并钻取故障。由于 Kubernetes 的可扩展性,我们能够处理极高的需求。“
“Kubernetes 帮助我们降低了操作的复杂性,使分布式系统稳定可扩展。最重要的是,我们可以利用 Kubernetes 来调度资源以降低硬件成本。那是个大好处。“– 京东首席架构师刘海锋
京东去年拥有超过 3 亿活跃用户和 557 亿美元的年收入,是中国最大的零售商,其业务是超大规模的缩影。
例如,京东的产品数据库中有超过一万亿个图像供客户使用,每天增加 1 亿个图像。这些大量数据需要能被立即访问,以实现顺畅的在线客户体验。
2014 年,京东将其应用程序迁移到使用 OpenStack 和 Docker 在裸机上运行的容器,以“加快计算资源的交付,使操作更加简单”,京东首席架构师刘海锋表示。但到 2015 年底,有数万个节点在多个数据中心运行,“我们遇到了很多问题,因为我们的平台不够强大。我们遇到了瓶颈和可扩展性问题,”刘说。“我们现在就需要未来五年发展的基础设施。”
在考虑了一些编排技术后,京东决定采用 Kubernetes 来管理其不断增长的集群。“主要原因是因为 Kubernetes 可以为我们提供更高效,可扩展和更简单的应用程序部署,而且我们可以利用它来进行灵活的平台调度。”刘说。
“我们定制了 Kubernetes,并在其上建立了一个现代化的系统。整个 Kubernetes 生态系统加上我们自己的优化帮助我们节省了成本和时间。”– 京东首席架构师刘海锋
Kubernetes 基于谷歌博格(Borg)的事实也给了公司信心。团队喜欢 Kubernetes 有一个清晰简单的架构,并且它主要是使用 Go 开发,这是京东中的流行语言。虽然他认为当时 Kubernetes“还不够成熟”,刘说,“我们也采用了它。”
该团队花了一年时间开发基于 Kubernetes 的新容器引擎平台,并于 2016 年底开始在公司内推广。“我们希望集群成为创建服务的默认方式,让可扩展性更容易。”刘说。“我们与开发者交谈,使兴趣增长,我们也一起解决问题。”其中一些问题包括网络性能和 etcd 可扩展性。“但在过去的两年里,Kubernetes 已经变得更加成熟和稳定。”他补充道。
如今,该公司运营着世界上最大的 Kubernetes 集群。“我们定制了 Kubernetes,并在其上建立了一个现代化的系统,”刘说。“整个 Kubernetes 生态系统加上我们自己的优化帮助我们节省了成本和时间。通过 Kubernetes 平台,我们拥有更高的数据中心效率,更好的托管资源和更智能的部署。”
“我的建议是,首先你需要将此技术与你自己的业务相结合,其次是你需要明确的目标。你不能仅仅使用该技术,因为其他人正在使用它。你需要考虑自己的目标。”– 京东首席架构师刘海锋
结果很清楚:部署时间从几个小时降到几十秒。以 IT 成本衡量,效率提高了 20-30%。随着团队的进一步优化,刘认为每年可节省数亿美元。但也许最好的成功标志是年度 11.11 购物活动,该活动于 2018 年首次在 Kubernetes 平台上运行。超过 11 天,京东的交易量为 230 亿美元,“我们的电子商务平台做得很好,”刘说。“基础设施领先于准备 11.11。我们采用预测量的方法,模拟客户的行为以事先准备,并钻取故障。由于 Kubernetes 的可扩展性,我们能够处理极高的需求。“
京东目前处于 Kubernetes 的第二阶段:该平台已经稳定,可扩展且灵活,因此重点是如何更有效地运行以进一步降低成本。通过优化团队正在进行资源管理,刘认为每年可节省数亿美元。
“我们在大约数万个物理裸金属节点上运行 Kubernetes 和容器集群,”他说。“使用 Kubernetes 并利用我们自己的机器学习管道来预测我们使用的每个应用程序需要多少资源,以及我们自己的智能扩展算法,我们可以改善资源使用。如果我们提高资源使用率,例如,增加几个百分点,这意味着我们可以降低巨大的硬件成本。然后,我们不需要那么多服务器来获得相同数量的工作负载。这可以为我们节省大量资源。”
“我们可以与社区分享我们的成功经验,我们也收到其他人的好评。所以这是互利的。”– 京东首席架构师刘海锋
获得 2018 年 CNCF 最终用户奖的京东在其平台上也使用 Helm、CNI、Harbor 和 Vitess。京东开发者为可扩展的 MySQL 集群管理的 CNCF 项目 Vitess 做出了相当大的贡献,该公司希望在不久的将来将自己的项目捐赠给 CNCF。社区参与是京东的优先事项。“我们与这个社区建立了良好的合作伙伴关系,”刘说。“我们可以与社区分享我们的成功经验,我们也收到其他人的好评。所以这是互利的。”
为此,刘为考虑采用云原生技术的其他公司提供了这一建议。“首先,你需要将这项技术与自己的业务相结合,其次是你需要明确的目标,”他说。“你不能仅仅使用该技术,因为其他人正在使用它。你需要考虑自己的目标。”
对于京东的目标而言,这些云原生技术非常适合公司自己的自家创新。“Kubernetes 帮助我们降低了操作的复杂性,使分布式系统稳定可扩展。”刘说。“最重要的是,我们可以利用 Kubernetes 来调度资源以降低硬件成本。那是个大好处。”

KubeCon + CloudNativeCon 中国论坛提案征集(CFP)2 月 22 日截止
KubeCon + CloudNativeCon 论坛让用户、开发人员、从业人员汇聚一堂,面对面进行交流合作。与会人员有 Kubernetes、Prometheus 及其他云原生计算基金会 (CNCF) 主办项目的领导,和我们一同探讨云原生生态系统发展方向。
中国开源峰会提案征集(CFP)2 月 22 日截止
在中国开源峰会上,与会者将共同合作及共享信息,了解最新和最有趣的开源技术,包括 Linux、IoT、区块链、AI、网络等;并获得如何在开源社区中导向和引领的信息。
大会日期:

提案征集截止日期:太平洋标准时间 2 月 22 日,星期五,晚上 11:59
提案征集通知日期:2019 年 4 月 8 日
会议日程通告日期:2019 年 4 月 10 日
会议活动举办日期:2019 年 6 月 24 至 26 日

提醒:这是一场社区会议。因此,让我们尽量避开公然推销产品和 / 或供应商销售宣传。
KubeCon + CloudNativeCon + Open Source Summit 赞助方案出炉啦
KubeCon + CloudNativeCon + Open Source Summit 多元化奖学金现正接受申请
KubeCon + CloudNativeCon + Open Source Summit 即将首次合体落地中国!

退出移动版