这篇文章发布时间已超过一年。较旧的文章可能包含过时的内容。请检查页面中的信息自发布以来是否已变得不正确。
Kubernetes 网关 API 升级至 Beta 版
我们很高兴宣布 Gateway API 的 v0.5.0 版本发布。首次,我们几个最重要的 Gateway API 资源正在升级到 beta 版本。此外,我们正在启动一项新计划,以探索 Gateway API 如何用于网格,并引入新的实验性概念,例如 URL 重写。我们将在下面介绍所有这些以及更多内容。
什么是 Gateway API?
Gateway API 是一组围绕 Gateway 资源(代表底层网络网关/代理服务器)构建的资源集合,旨在通过由多个供应商实现并获得广泛行业支持的表达性强、可扩展且面向角色的接口来实现强大的 Kubernetes 服务网络。
Gateway API 最初被认为是众所周知的 Ingress API 的继任者,其优势包括(但不限于)对许多常用网络协议(例如 HTTP
、TLS
、TCP
、UDP
)的显式支持以及对传输层安全 (TLS) 的紧密集成。特别是 Gateway
资源使实现能够将网络网关的生命周期作为 Kubernetes API 进行管理。
如果您是最终用户,对 Gateway API 的某些优势感兴趣,我们邀请您加入并找到适合您的实现。在此版本发布时,有十几个适用于流行的 API 网关和服务网格的实现,并且提供了快速入门的指南。
入门
Gateway API 是一个官方的 Kubernetes API,类似于 Ingress。 Gateway API 代表 Ingress 功能的超集,支持更高级的概念。与 Ingress 类似,Kubernetes 中没有内置的 Gateway API 默认实现。相反,有许多不同的 实现可供选择,在提供一致且可移植体验的同时,在底层技术方面提供了重要的选择。
请查看 API 概念文档,并查看一些 指南,开始熟悉这些 API 及其工作原理。当您准备好进行实际应用时,请打开实现页面,然后选择一个属于您可能已经熟悉的现有技术或您的集群提供商用作默认技术的实现(如果适用)。 Gateway API 是一个基于 自定义资源定义 (CRD) 的 API,因此您需要将 CRD 安装到集群上才能使用该 API。
如果您特别有兴趣为 Gateway API 做出贡献,我们非常欢迎您!请随时在存储库上打开一个新 issue,或加入讨论。还可以查看社区页面,其中包含指向 Slack 频道和社区会议的链接。
版本亮点
升级到 beta 版本
v0.5.0
版本具有特别的历史意义,因为它标志着某些关键 API 成熟度的提升,升级到 beta API 版本 (v1beta1
)
此项成就的标志是完成了多个升级标准
- API 已被广泛实现。
- 一致性测试为所有资源提供了基本覆盖,并且多个实现通过了测试。
- 大多数 API 表面都在积极使用中。
- Kubernetes SIG 网络 API 审查员已批准升级到 beta 版本。
有关 Gateway API 版本控制的更多信息,请参阅官方文档。要了解未来版本的计划,请查看后续步骤部分。
发布渠道
此版本引入了 experimental
和 standard
发布渠道,从而可以在保持稳定性的同时更好地实现实验和迭代开发。
standard
发布渠道包括
- 已升级到 beta 的资源
- 已升级到 standard 的字段(不再被视为实验性字段)
experimental
发布渠道包括 standard
发布渠道中的所有内容,以及
alpha
API 资源- 被视为实验性且未升级到
standard
通道的字段
发布渠道在内部用于实现快速周转的迭代开发,并在外部向实施者和最终用户指示功能稳定性。
在此版本中,我们添加了以下实验性功能
其他改进
有关 v0.5.0
版本中包含的更改的完整列表,请参阅 v0.5.0 发行说明。
用于服务网格的 Gateway API:GAMMA 倡议
一些服务网格项目已经实现了对 Gateway API 的支持。 服务网格接口 (SMI) API 与 Gateway API 之间存在显著重叠,这激发了 SMI 社区中关于可能集成的讨论。
我们很高兴地宣布,包括 Cilium Service Mesh、Consul、Istio、Kuma、Linkerd、NGINX Service Mesh 和 Open Service Mesh 的代表在内的服务网格社区正在联合成立 GAMMA 倡议,这是 Gateway API 子项目内一个专门的工作流程,专注于用于网格管理和管理的 Gateway API。
该小组将交付增强提案,其中包括针对网格和与网格相邻的用例的 Gateway API 规范的资源、添加和修改。
这项工作已从探索如何使用 Gateway API 进行服务到服务流量开始,并将继续增强身份验证和授权策略等领域的功能。
后续步骤
随着我们继续使 API 趋于成熟以用于生产用例,以下是我们将在下一个 Gateway API 版本中进行的一些重点工作
- 用于 gRPC 流量路由的GRPCRoute
- 路由委派
- 第 4 层 API 成熟度:将 TCPRoute、UDPRoute 和 TLSRoute 升级到 beta 版本
- GAMMA 倡议 - 用于服务网格的 Gateway API
如果此列表中的某些内容您想参与,或者此列表中没有您想倡导的内容以将其加入路线图,请加入 Kubernetes Slack 上的 #sig-network-gateway-api 频道或我们的每周社区电话会议。