挑战
中国联通是中国三大电信运营商之一,为服务其 3 亿用户,公司自 2016 年以来在多个数据中心运营着数千台服务器,使用 Docker 容器化以及 VMWare 和 OpenStack 基础设施。不幸的是,“资源利用率相对较低,”平台技术研发组组长张成昱表示,“而且我们没有一个云平台来容纳我们数以百计的应用。”中国联通曾是完全的国有企业,近年来已接受来自 BAT(百度、阿里巴巴、腾讯)和京东的私人投资,目前正专注于使用开源技术进行内部开发,而非商业产品。因此,张的中国联通实验室团队开始为其云基础设施寻找开源编排方案。
解决方案
鉴于其快速发展和成熟的开源社区,Kubernetes 自然成为中国联通的选择。公司基于 Kubernetes 的云平台目前承载着 50 个微服务以及未来所有的新开发。张表示:“Kubernetes 改进了我们使用云基础设施的体验。目前没有可以替代它的技术。”中国联通还将其微服务框架使用 Istio、Envoy、CoreDNS 和 Fluentd。
影响
在中国联通,Kubernetes 提高了运营和开发效率。资源利用率提高了 20-50%,降低了 IT 基础设施成本,部署时间从几个小时缩短到 5-10 分钟。张表示:“这主要归功于 Kubernetes 的自愈和可伸缩性,因此我们可以提高运维效率。”“例如,我们目前只有五个人在维护我们的多个系统。我们从未想过能在这么短的时间内实现这样的可伸缩性。”
在幕后,公司自 2016 年以来在多个数据中心运营着数千台服务器,使用 Docker 容器化以及 VMWare 和 OpenStack 基础设施。不幸的是,“资源利用率相对较低,”平台技术研发组组长张成昱表示,“而且我们没有一个云平台来容纳我们数以百计的应用。”
张的团队负责新技术、研发和平台,他们开始寻找一个 IT 管理解决方案。中国联通曾是完全的国有企业,近年来已接受来自 BAT(百度、阿里巴巴、腾讯)和京东的私人投资,目前正专注于使用开源技术进行自主研发,而非商业产品。为此,团队开始为其云基础设施寻找开源编排方案。
尽管中国联通已经将 Mesos 用于一个核心电信运营商系统,但团队认为 Kubernetes 是新云平台的自然选择。张表示:“主要原因是它有一个成熟的社区。它发展非常迅速,因此我们可以从别人的最佳实践中学到很多东西。”中国联通还将其微服务框架使用 Istio、Envoy、CoreDNS 和 Fluentd。
公司基于 Kubernetes 的云平台目前承载着 50 个微服务以及未来所有的新开发。中国联通的开发者可以通过 API 轻松利用这项技术,而无需自己进行开发工作。该云平台提供 20-30 项服务连接到公司的数据中心 PaaS 平台,并支持大数据分析等功能,供遍布中国 31 个省份分支机构的内部用户使用。
张表示:“Kubernetes 改进了我们使用云基础设施的体验。目前没有可以替代它的技术。”
事实上,Kubernetes 极大地提高了中国联通的运营和开发效率。资源利用率提高了 20-50%,降低了 IT 基础设施成本,部署时间从几个小时缩短到 5-10 分钟。张表示:“这主要归功于 Kubernetes 的自愈和可伸缩性,因此我们可以提高运维效率。例如,我们目前只有五个人在维护我们的多个系统。”
凭借中国联通在使用 Kubernetes 方面取得的成功,张和他的团队渴望回馈社区。这从参加技术交流会和大会开始,并为正在考虑类似路径的其他公司提供建议。张表示:“特别是对于那些拥有传统云计算系统的公司,我强烈建议他们加入云原生计算社区。”
平台技术研发团队成员贾杰补充说,“这项技术相对复杂,但只要开发者习惯了它,就能享受到所有的好处。”张指出,以他自己在虚拟机云方面的经验来看,“Kubernetes 和这些云原生技术相对更简单。”
此外,贾杰表示:“企业可以使用 Rancher 等公司提供的托管服务,因为他们已经定制了这项技术。你可以轻松地利用这项技术。”
展望未来,中国联通计划在 Kubernetes 上开发更多应用,专注于大数据和机器学习。团队正在继续优化他们构建的云平台,并希望通过一致性测试,加入 CNCF 认证的 Kubernetes 一致性项目。他们还希望有一天能向社区贡献代码。
如果这听起来雄心勃勃,那是因为他们采用 Kubernetes 后所取得的成果甚至超出了他们最大的预期。张表示:“我们从未想过能在这么短的时间内实现这样的可伸缩性。”