Blog: Kubernetes Gateway API 进入 Beta 阶段

标签: blog kubernetes gateway | 发表时间:2022-07-13 08:00 | 作者:
出处:https://kubernetes.io/zh-cn/

作者: Shane Utt (Kong)、Rob Scott (Google)、Nick Young (VMware)、Jeff Apple (HashiCorp)

我们很高兴地宣布 Gateway API 的 v0.5.0 版本发布。 我们最重要的几个 Gateway API 资源首次进入 Beta 阶段。 此外,我们正在启动一项新的倡议,探索如何将 Gateway API 用于网格,还引入了 URL 重写等新的实验性概念。 下文涵盖了这部分内容和更多说明。

什么是 Gateway API?

Gateway API 是以 Gateway 资源(代表底层网络网关/代理服务器)为中心的资源集合, Kubernetes 服务网络的健壮性得益于众多供应商实现、得到广泛行业支持且极具表达力、可扩展和面向角色的各个接口。

Gateway API 最初被认为是知名 Ingress API 的继任者, Gateway API 的好处包括(但不限于)对许多常用网络协议的显式支持 (例如 HTTP、 TLS、 TCP 、 UDP) 以及对传输层安全 (TLS) 的紧密集成支持。 特别是 Gateway 资源能够实现作为 Kubernetes API 来管理网络网关的生命周期。

如果你是对 Gateway API 的某些优势感兴趣的终端用户,我们邀请你加入并找到适合你的实现方式。 值此版本发布之时,对于流行的 API 网关和服务网格有十多种 实现,还提供了操作指南便于快速开始探索。

入门

Gateway API 是一个类似 Ingress 的正式 Kubernetes API。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 Network API 评审团队已批准其进入 Beta 阶段。

有关 Gateway API 版本控制的更多信息,请参阅 官方文档。 要查看未来版本的计划,请查看 下一步。

发布渠道

此版本引入了 experimental 和 standard 发布渠道, 这样能够更好地保持平衡,在确保稳定性的同时,还能支持实验和迭代开发。

standard 发布渠道包括:

  • 已进入 Beta 阶段的资源
  • 已进入 standard 的字段(不再被视为 experimental)

experimental 发布渠道包括 standard 发布渠道的所有内容,另外还有:

  • alpha API 资源
  • 视为 experimental 且还未进入 standard 渠道的字段

使用发布渠道能让内部实现快速流转的迭代开发,且能让外部实现者和最终用户标示功能稳定性。

本次发布新增了以下实验性的功能特性:

其他改进

有关 v0.5.0 版本中包括的完整变更清单,请参阅 v0.5.0 发布说明。

适用于服务网格的 Gateway API:GAMMA 倡议

某些服务网格项目 已实现对 Gateway API 的支持。 服务网格接口 (Service Mesh Interface,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 版本所做的一些重点工作:

如果你想参与此列表中的某些工作,或者你想倡导加入路线图的内容不在此列表中, 请通过 Kubernetes Slack 的 #sig-network-gateway-api 频道或我们每周的 社区电话会议加入我们。

相关 [blog kubernetes gateway] 推荐:

Blog: Kubernetes Gateway API 进入 Beta 阶段

- - Kubernetes – 生产级别的容器编排系统
作者: Shane Utt (Kong)、Rob Scott (Google)、Nick Young (VMware)、Jeff Apple (HashiCorp). 我们很高兴地宣布 Gateway API 的 v0.5.0 版本发布. 我们最重要的几个 Gateway API 资源首次进入 Beta 阶段.

Kubernetes Nginx Ingress 教程 - 漠然的博客 | mritd Blog

- -
一、Ingress 介绍. Kubernetes 暴露服务的方式目前只有三种:LoadBlancer Service、NodePort Service、Ingress;前两种估计都应该很熟悉,具体的可以参考下  这篇文章;下面详细的唠一下这个 Ingress. 1.1、Ingress 是个什么玩意.

为什么说 Gateway API 是 Kubernetes 和服务网格入口中网关的未来?

- - Jimmy Song - 专注于探索后 Kubernetes 时代的云原生新范式 – 博客
本文将以 Kubernetes Ingress、Istio 和 Envoy Gateway 为例,向你介绍 Kubernetes 中的入口网关和 Gateway API,同时介绍 Gateway API 使得 Kubernetes 和服务网格入口网关融合的新趋势. Ingress 作为 Kubernetes 的初代入口网关,它的资源模型过于简单以致于无法适应当今的可编程网络;.

在 Kubernetes 中部署高可用性应用程序的最佳实践 - 第1部分 Best practices for deploying highly available apps in Kubernetes. Part 1 – Flant blog

- -
如您所知,在 Kubernetes 中部署一个基本可行的应用程序配置是轻而易举的事. 另一方面,试图使您的应用程序尽可能地可用和容错不可避免地会带来大量的障碍和陷阱. 在本文中,我们分解了我们认为在 Kubernetes 中部署高可用性应用程序并以简洁的方式共享它们时最重要的规则. 请注意,我们不会使用任何开箱即用的功能.

聊聊 API Gateway 和 Netflix Zuul

- - ScienJus's Blog
最近参与了公司 API Gateway 的搭建工作,技术选型是 Netflix Zuul,主要聊一聊其中的一些心得和体会. 本文主要是介绍使用 Zuul 且在不强制使用其他 Neflix OSS 组件时,如何搭建生产环境的 Gateway,以及能使用 Gateway 做哪些事. 不打算介绍任何关于如何快速搭建 Zuul,或是一些轻易集成 Eureka 之类的的方法,这些在官方文档上已经介绍的很明确了.

Spring Cloud Gateway(限流) | Wind Mt

- -
限流可以保障我们的 API 服务对所有用户的可用性,也可以防止网络攻击. 一般开发高并发系统常见的限流有:限制总并发数(比如数据库连接池、线程池)、限制瞬时并发数(如 nginx 的 limit_conn 模块,用来限制瞬时并发连接数)、限制时间窗口内的平均速率(如 Guava 的 RateLimiter、nginx 的 limit_req 模块,限制每秒的平均速率);其他还有如限制远程接口调用速率、限制 MQ 的消费速率.

快速突击 Spring Cloud Gateway

- - 掘金后端
认识 Spring Cloud Gateway. Spring Cloud Gateway 是一款基于 Spring 5,Project Reactor 以及 Spring Boot 2 构建的 API 网关,是 Spring Cloud 微服务生态的主要组件之一. Spring Cloud Gateway 主要负责接口请求的路由分发,并且支持对请求的安全验证,流量监控和流量控制等扩展操作.

apache/apisix: The Cloud-Native API Gateway

- -
Health Checks: Enable health check on the upstream node and will automatically filter unhealthy nodes during load balancing to ensure system stability..

Kubernetes & Microservice

- - 午夜咖啡
这是前一段时间在一个微服务的 meetup 上的分享,整理成文章发布出来. 谈微服务之前,先澄清一下概念. 微服务这个词的准确定义很难,不同的人有不同的人的看法. 比如一个朋友是『微服务原教旨主义者』,坚持微服务一定是无状态的 http API 服务,其他的都是『邪魔歪道』,它和 SOA,RPC,分布式系统之间有明显的分界.

Kubernetes学习(Kubernetes踩坑记)

- - Z.S.K.'s Records
记录在使用Kubernetes中遇到的各种问题及解决方案, 好记性不如烂笔头. prometheus提示 /metrics/resource/v1alpha1 404. 原因: 这是因为[/metrics/resource/v1alpha1]是在v1.14中才新增的特性,而当前kubelet版本为1.13.