在IT世界里,Kubernetes无处不在。 得到超过 43,000 名贡献者的支持,这个开源系统已经成为在云端部署现代applications的默认方式。 为什么? 简而言之,Kubernetes 使开发人员的生活变得更加轻松,加快了应用程序的推出,并为最终用户增加了底层平台的价值。
随着运营商寻求从封闭式平台向开放平台的转变,Kubernetes(也称为 k8s)最近在电信行业引起了关注。 该系统将成为实现独立 5G 网络最佳性能所需的灵活云原生架构的内在组成部分。 真正的云原生网络提供了无数好处,从快速部署服务和自动化到更高的弹性和效率。 举个例子,谷歌使用其内部平台 Borg (Kubernetes 的前身)每周部署超过 20 亿个容器。
这种灵活性和可扩展性是电信云愿景的基础——5G 网络将成为第三方开发的广泛服务和应用程序的多功能平台。 由于 Kubernetes 允许电信公司在便携式容器中部署应用程序,因此它可以将服务带到网络边缘,更靠近最终用户,从而减少延迟。
那么,Kubernetes 实际上做什么? 现代application通常由不同的微服务构建,每个微服务处理特定的功能,例如订单管理、报告或付款。 一旦微服务被打包到容器中,Kubernetes 就会自动执行其部署、扩展和管理。 当微服务集群出现故障时,Kubernetes 还可以支持自动修复。
至关重要的是,Kubernetes 为应用程序开发人员抽象了一些底层内部网络复杂性。 这使得典型的应用程序开发人员的生活变得更加轻松。 本质上,Kubernetes 使应用程序能够以简单直接的方式被外界访问。
Kubernetes 入口控制器是最终用户通过 HTTP 协议与 Webapplication交互的管道。 入口控制器还提供流量管理,确保用户请求被路由到 Kubernetes 集群内的正确微服务。
5G 网络基于服务的架构能够充分利用所有这些优势,但前提是电信运营商必须采用新的思维方式。 尽管 Kubernetes 带来了许多好处,但该系统似乎与电信工程师所习惯的系统有些不相干。 在网络生活中,电信运营商可以轻松地手动配置网络设备的 IP 地址并设置自己的路由和负载平衡规则以及 Kubernetes 旨在抽象的其他参数。
然而,这种手动配置会破坏 Kubernetes 的整个意义:它会阻止快速部署和自动扩展,而这正是 AWS 和 Azure 等主要云平台的标志。 电信运营商在 4G 网络中部署的首批网络功能虚拟化 (NFV) 解决方案倾向于采用手动脚本,因此缺乏现代 IT 架构的动态性和自动化。
随着5G核心网络的推出,电信运营商面临一片空白。 但不幸的是,他们无法简单地移植标准的 Kubernetes 系统。 绝大多数电信公司都在部署 4G 网络和 5G 网络,因此他们需要一个能够支持标准电信协议(SCTP、Diameter 和 GTP)以及 HTTP 的 Kubernetes 入口。 这是因为 5G 服务前端的 Kubernetes 入口不会通过 HTTP 直接与用户交互,而是连接到其他 4G 和 5G 核心元素。 在某些情况下,需要将 HTTP/2 消息转换为 Diameter 消息或将 Diameter 消息转换为 HTTP/2 消息的互通功能。
另一个复杂问题是如何支持application集群内的内部通信。 在标准 Kubernetes 部署中,服务网格通常用于安全地管理和跟踪不同微服务之间的通信。 虽然此类服务网格支持以 IT 为中心的跟踪功能,但电信公司发现相关功能并未最佳地适应他们的要求。
第三个问题是 Kubernetes 集群内的 5G 功能如何与外界沟通。 开放 Kubernetes 分配的动态内部 IP 地址并不是一个好主意。 地址会随着时间而改变,并且向外界提供这种级别的可见性将构成重大的安全风险。 电信公司希望完全控制某些 5G 功能的 IP 地址分配。 这些应该独立于构成此 5G 功能的底层容器使用的 IP 地址。 需要智能 Kubernetes 出口功能来实现这一点。
一种选择是放弃 Kubernetes,只需在具有外界可访问的静态 IP 地址的容器中部署 5G 功能。 但如果您以这种方式偷工减料,那么您将在可扩展性和灵活性方面付出巨大的代价。 例如,你不能只按下按钮就在网络中的任何地方部署 5G 功能。 如果您想要达到未来的自动化水平,那么您就不能利用 Kubernetes 偷工减料。
F5 长期横跨电信和 IT 领域,我们已经找到了如何帮助电信公司利用 Kubernetes 的广泛优势的方法。 这包括我们的BIG-IP SPK 解决方案,它使 Kubernetes 入口能够支持电信协议以及 HTTP。 它还使用网络地址转换 (NAT) 和路由来使 Kubernetes 出口能够向外界提供静态预定义的 IP 地址,而不会影响集群的内部动态。 无论集群内部发生什么,您始终可以向外部实体提供相同的 IP 地址。 此外,我们的 Aspen Mesh 服务网格支持“电信级”可观察性和跟踪。 它可以让电信公司全面了解和追踪 5G 微服务之间的流量,从而增强安全性。
如果方法正确,Kubernetes 可以为电信运营商带来真正的变革:它可以释放云原生架构的诸多优势,并使运营商更容易与外界互动。 一旦完全适应电信环境,这个开源系统必将成为 5G 未来不可或缺的一部分。
本文是两部分系列文章中的第一部分。 下次,我们将探讨 F5 技术如何解决在不同平台上运行的大量 Kubernetes 集群中管理 IT 和电信工作负载的运营难题。