编程 Kubernetes Gateway API 深度实战:当网络入口管理进入范式革命时代——从 Ingress 局限到 Gateway API 生产级完全指南(2026)

2026-06-10 13:16:07 +0800 CST views 5

Kubernetes Gateway API 深度实战:当网络入口管理进入范式革命时代——从 Ingress 局限到 Gateway API 生产级完全指南(2026)

一、背景:为什么 Ingress 已经不够用了

在 Kubernetes 生态中,Ingress 一直是管理集群入口流量的标准方案。自 2015 年 Kubernetes 1.1 引入 Ingress 概念,到 2019 年 Ingress-NGINX Controller 成为事实标准,无数团队用它来管理 HTTP/HTTPS 路由、SSL 终止和负载均衡。客观来说,Ingress 在中小规模场景下运行得相当不错——配置简单、生态丰富、社区活跃。

但当你的集群规模增长、业务复杂度提升时,Ingress 的局限性开始逐一暴露。

表达能力不足:Ingress 只能处理 HTTP/HTTPS 协议。如果你要暴露一个 TCP 服务(比如 Redis、MySQL、gRPC),Ingress 束手无策。你必须为每种协议维护单独的 Controller——NGINX Ingress 处理 HTTP,MySQL Ingress 处理数据库流量,某种自定义 Controller 处理私有协议。运维复杂度随协议数量线性增长。

扩展性受限:Ingress 的 annotation 机制是无奈的扩展手段。你在 YAML 里写满这样的配置:

metadata:
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    nginx.ingress.kubernetes.io/proxy-body-size: "50m"
    nginx.ingress.kubernetes.io/proxy-connect-timeout: "60"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "300"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "300"

每个 Controller 都有自己的 annotation 规范,学习成本高、维护成本更高。不同 Controller 之间 annotation 不兼容,你想从 NGINX 切换到 Traefik?重写所有 annotation。

角色分离缺失:在 Ingress 模型中,同一个 Ingress 资源同时定义了路由规则和后端行为。但在真实组织中,"谁定义路由策略"和"谁配置后端服务"通常是两个不同的团队——平台团队管基础设施,业务团队管应用配置。Ingress 让这种关注点分离变得困难,导致每次变更都需要跨团队协调。

标准化不足:Ingress 规范在 API 层面过于简单,实际行为完全依赖 Controller 实现。同样是 /api 路径的路由,NGINX Ingress Controller 和 Traefik 的实现可能完全不同。应用的路由规则在 Controller 之间不可移植。

Gateway API 正是为应对这一转型而生的新一代网络标准。它由 Kubernetes SIG-NETWORK 社区维护,经过 beta 阶段的成熟演进已正式进入 GA,并在 2026 年以 v1.x 版本持续演进。Gateway API 不仅仅是对 Ingress 的增量改进,而是对 Kubernetes 服务网络模型的根本性重构。

二、核心概念:Gateway API 的三层架构

Gateway API 的设计哲学围绕三个核心原则:角色分离(Separation of Concerns)、可移植性(Portability)和表达力(Expressiveness)。它的核心资源模型分为三层。

2.1 GatewayClass:控制平面的抽象

GatewayClass 是对负载均衡实现(Controller)的抽象,类似于 Ingress 中的 "class"。当你部署一个 Gateway 时,它必须引用一个 GatewayClass:

apiVersion: gateway.networking.k8s.io/v1
kind: GatewayClass
metadata:
  name: nginx-ingress-class
spec:
  controllerName: gateway.networking.k8s.io/nginx
  parametersRef:
    group: gateway.networking.k8s.io
    kind: GatewayClassParameters
    name: nginx-class-params

GatewayClass 由 Cluster Administrator 创建,它声明了"存在一个网关实现可以处理这个类的请求"。在生产环境中,你可能同时运行多个 GatewayClass——比如一个用于公网流量(cloud load balancer),一个用于内部流量(internal ingress)。

2026 年的关键演进:Gateway API v1.x 版本中,GatewayClass 引入了 parametersRef 字段,允许你为每个 GatewayClass 指定额外的配置参数。比如,你可以为 NGINX GatewayClass 指定全局连接数限制、熔断策略、日志格式等,而不必在每个 Gateway 实例上重复配置。

2.2 Gateway:数据平面的生命周期管理

Gateway 资源代表一个监听器(Listener)的集合,定义了流量入口的位置和协议。它由平台团队或基础设施团队管理:

apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  name: external-gateway
  namespace: gateway-system
spec:
  gatewayClassName: nginx-ingress-class
  listeners:
    - name: https
      port: 443
      protocol: HTTPS
      tls:
        mode: Terminate
        certificateRefs:
          - name: prod-tls-secret
            kind: Secret
            group: ""
      allowedRoutes:
        namespaces:
          from: Same
          selector:
            matchLabels:
              app: production
    - name: http
      port: 80
      protocol: HTTP
      hostname: "*.example.com"
      allowedRoutes:
        namespaces:
          from: Same

Gateway 的 listeners 定义了多个协议端口,每个 Listener 可以独立配置 TLS 模式、允许绑定的路由命名空间、以及 hostname 匹配规则。注意这里的 allowedRoutes 字段——它精确控制了哪些命名空间的 HTTPRoute 可以绑定到这个 Listener,实现了路由权限的声明式管理

Listener 的核心属性

  • port:监听端口(1-65535)
  • protocol:协议类型,支持 HTTP、HTTPS、TCP、UDP、TLS 等
  • hostname:Hostname 匹配规则(支持通配符和精确匹配)
  • tls:TLS 配置(Terminate、Passthrough 或 nil for HTTP)
  • allowedRoutes:哪些命名空间和标签的路由可以绑定到此监听器

2.3 HTTPRoute:业务团队的路由规则

HTTPRoute 是 Gateway API 中最常用的路由资源,由业务团队或应用开发者管理。它定义了从 hostname 到后端服务的映射规则:

apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: api-gateway-route
  namespace: production
spec:
  hostnames:
    - "api.example.com"
  rules:
    - matches:
        - path:
            type: PathPrefix
            value: /v1
          headers:
            - type: Exact
              name: X-Environment
              value: staging
      backendRefs:
        - name: api-service-v1
          port: 8080
          weight: 80
        - name: api-service-v1-canary
          port: 8080
          weight: 20
    - matches:
        - path:
            type: PathPrefix
            value: /v2
      backendRefs:
        - name: api-service-v2
          port: 8080

这个 YAML 展示了一个典型的金丝雀发布场景:/v1 路径的请求 80% 流量到主服务、20% 到金丝雀服务,同时只有 X-Environment: staging 头部的请求走这条规则。

HTTPRoute 的规则引擎

  • path:支持 Exact(精确匹配)、PathPrefix(路径前缀)、RegularExpression(正则匹配)
  • headers:支持请求头的条件匹配(用于灰度、A/B 测试)
  • queryParams:支持 URL 查询参数匹配
  • method:支持 HTTP 方法过滤
  • backendRefs:多个后端的权重分配

三、架构分析:Gateway API 如何实现角色分离

3.1 从"全权委托"到"职责边界"

Ingress 模型中,一个 Ingress 资源同时承担了"路由规则定义"和"流量入口配置"两个职责。Gateway API 将这两个职责解耦:

Ingress 模型(单层):
  应用开发者 → 定义路由规则 + 入口配置 → 全量控制

Gateway API 模型(双层):
  平台团队 → 管理 Gateway + GatewayClass → 控制入口配置
  应用开发者 → 定义 HTTPRoute → 只管路由规则

这种分离带来的实际好处是变更粒度的精细化控制。平台团队可以统一管理 TLS 证书、端口暴露策略、全局限流规则,而应用开发者只需要关注自己服务的路由逻辑。当一个新的微服务需要上线时,应用开发者只需创建一个 HTTPRoute,等待 Gateway 管理员批准绑定请求,整个流程不需要平台团队介入。

3.2 ReferenceGrant:跨命名空间访问的权限控制

在 Gateway API 中,HTTPRoute 默认只能绑定到同命名空间的 Service。如果应用团队的服务在 app-team 命名空间,但后端服务在 backend 命名空间怎么办?

答案是 ReferenceGrant:

apiVersion: gateway.networking.k8s.io/v1beta1
kind: ReferenceGrant
metadata:
  name: backend-access
  namespace: backend
spec:
  from:
    - namespace: app-team
      group: gateway.networking.k8s.io
      kind: HTTPRoute
  to:
    - kind: Service
      name: user-service
      port: 80

这个 ReferenceGrant 允许 app-team 命名空间的 HTTPRoute 将流量转发到 backend 命名空间的 user-service。平台管理员可以精确控制"哪个命名空间的哪类资源可以访问哪些后端服务",实现最小权限原则。

3.3 GRPCRoute 和 TCPRoute:多协议支持

Gateway API 的野心不仅限于 HTTP。2026 年的 v1.x 版本已经正式支持 GRPCRoute 和 TCPRoute:

apiVersion: gateway.networking.k8s.io/v1alpha2
kind: GRPCRoute
metadata:
  name: user-grpc-route
  namespace: production
spec:
  hostnames:
    - "grpc.example.com"
  rules:
    - matches:
        - method: POST
          service: user.UserService/GetUser
      backendRefs:
        - name: user-grpc-service
          port: 50051
apiVersion: gateway.networking.k8s.io/v1alpha2
kind: TCPRoute
metadata:
  name: redis-tcp-route
  namespace: production
spec:
  rules:
    - backendRefs:
        - name: redis-master
          port: 6379

通过 TCPRoute,你可以将 Redis、MySQL 等 TCP 服务通过 Gateway API 暴露,不再需要维护多套 Controller。统一的控制平面、统一的鉴权策略、统一的运维体验。

四、代码实战:从 Ingress 迁移到 Gateway API

4.1 环境准备

首先,确保你的 Kubernetes 集群版本 >= 1.24(Gateway API GA 要求),并安装 Gateway API CRD:

# 安装 Gateway API CRD
kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.1.0/standard-install.yaml

# 验证安装
kubectl get crd | grep gateway
# gatewayclasses.gateway.networking.k8s.io
# gateways.gateway.networking.k8s.io
# httproutes.gateway.networking.k8s.io
# grpcroutes.gateway.networking.k8s.io

安装 NGINX Gateway Controller(以生产环境最常用的实现为例):

# 使用 Helm 安装 NGINX Gateway Controller
helm repo add nginx-stable https://helm.nginx.com/stable
helm repo update
helm install nginx-gateway nginx-stable/nginx-gateway \
  --namespace nginx-gateway \
  --create-namespace \
  --set gatewayClassName=nginx \
  --set image.tag=1.3.0

4.2 从 Ingress 迁移的实际案例

假设你有一个现有的 NGINX Ingress 配置:

# 旧的 Ingress 配置
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: api-ingress
  namespace: production
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    nginx.ingress.kubernetes.io/rewrite-target: /$2
    nginx.ingress.kubernetes.io/proxy-body-size: "50m"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "300"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "300"
    nginx.ingress.kubernetes.io/use-regex: "true"
spec:
  ingressClassName: nginx
  tls:
    - hosts:
        - api.example.com
      secretName: api-tls-secret
  rules:
    - host: api.example.com
      http:
        paths:
          - path: /v1/users(/|$)(.*)
            pathType: ImplementationSpecific
            backend:
              service:
                name: user-service
                port:
                  number: 8080
          - path: /v1/orders(/|$)(.*)
            pathType: ImplementationSpecific
            backend:
              service:
                name: order-service
                port:
                  number: 8080

迁移到 Gateway API 的等效配置需要拆分为 Gateway + HTTPRoute:

# 1. Gateway 配置(平台团队负责)
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  name: api-gateway
  namespace: nginx-gateway
spec:
  gatewayClassName: nginx
  listeners:
    - name: https
      port: 443
      protocol: HTTPS
      hostname: "api.example.com"
      tls:
        mode: Terminate
        certificateRefs:
          - name: api-tls-secret
            kind: Secret
            group: ""
      allowedRoutes:
        namespaces:
          from: Same
    - name: http-redirect
      port: 80
      protocol: HTTP
      hostname: "api.example.com"
      allowedRoutes:
        namespaces:
          from: Same

---
# 2. HTTPRoute 配置(应用团队负责)
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: api-routes
  namespace: production
spec:
  hostnames:
    - "api.example.com"
  rules:
    - matches:
        - path:
            type: PathPrefix
            value: /v1/users
          method: GET
        - path:
            type: PathPrefix
            value: /v1/users/
          method: GET
      filters:
        - type: RequestRedirect
          requestRedirect:
            scheme: https
            port: 443
            hostname:
              value: api.example.com
      backendRefs:
        - name: user-service
          port: 8080
    - matches:
        - path:
            type: PathPrefix
            value: /v1/orders
      backendRefs:
        - name: order-service
          port: 8080

---
# 3. HTTP 到 HTTPS 重定向的 HTTPRoute
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: http-redirect
  namespace: production
spec:
  hostnames:
    - "api.example.com"
  rules:
    - matches:
        - path:
            type: Exact
            value: /
      filters:
        - type: RequestRedirect
          requestRedirect:
            scheme: https
            hostname:
              value: api.example.com

4.3 高级路由:灰度发布实战

Gateway API 原生支持多种灰度策略,无需引入外部服务网格。

基于权重的金丝雀发布

apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: checkout-canary-route
  namespace: production
spec:
  hostnames:
    - "shop.example.com"
  rules:
    - matches:
        - path:
            type: PathPrefix
            value: /checkout
      backendRefs:
        # 主服务:80% 流量
        - name: checkout-service-stable
          port: 8080
          weight: 80
        # 金丝雀服务:20% 流量
        - name: checkout-service-canary
          port: 8080
          weight: 20

基于 Header 的灰度策略

apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: feature-flags-route
  namespace: production
spec:
  hostnames:
    - "app.example.com"
  rules:
    # 新功能路由:带有 X-Feature: new 头的请求
    - matches:
        - path:
            type: PathPrefix
            value: /dashboard
          headers:
            - type: Exact
              name: X-Feature
              value: new
      backendRefs:
        - name: dashboard-new
          port: 8080
    # 默认路由:其他所有请求
    - matches:
        - path:
            type: PathPrefix
            value: /dashboard
      backendRefs:
        - name: dashboard-stable
          port: 8080

基于 Query Parameter 的 A/B 测试

rules:
  - matches:
      - path:
          type: PathPrefix
          value: /recommend
        queryParams:
          - type: Exact
            name: version
            value: v2
    backendRefs:
      - name: recommend-v2
        port: 8080
  - matches:
      - path:
          type: PathPrefix
          value: /recommend
    backendRefs:
      - name: recommend-v1
        port: 8080

4.4 请求限流:Gateway API 原生限速

Gateway API 的 BackendTrafficPolicy CRD(v1alpha2)允许你在 Gateway 层配置限流策略:

apiVersion: gateway.networking.k8s.io/v1alpha2
kind: BackendTrafficPolicy
metadata:
  name: rate-limit-policy
  namespace: production
spec:
  targetRefs:
    - group: gateway.networking.k8s.io
      kind: HTTPRoute
      name: api-routes
  rules:
    - filters:
        - type: RateLimit
          rateLimit:
            type: Global
            global:
              requests: 1000
              period: 1m
              burst: 50
    - backendRefs:
        - kind: Service
          name: user-service
          port: 8080
      filters:
        - type: RateLimit
          rateLimit:
            type: Global
            global:
              requests: 100
              period: 1m

这个配置实现了两层限流:整体 API 限制 1000 请求/分钟,user-service 限制 100 请求/分钟。

五、生产环境部署:Istio + Gateway API 的最佳实践

5.1 为什么选择 Istio 作为 Gateway API 实现

虽然 NGINX Gateway Controller 是轻量级的选择,但在生产环境中,Istio 结合 Gateway API 提供了更完整的服务网格能力:

  • 零信任安全:mTLS 强制、服务身份验证、AuthorizationPolicy
  • 可观测性:分布式追踪(Jaeger)、指标(Prometheus)、日志聚合
  • 流量管理:熔断、重试、超时、故障注入
  • 多协议支持:HTTP/1.1、HTTP/2、gRPC、WebSocket

5.2 Istio + Gateway API 部署

# 安装 Istio(启用 Gateway API)
istioctl install --set profile=default \
  --set values.pilot.env.EXTERNAL_GATEWAY_HTTP_REDIRECT=true \
  --set values.pilot.env.ENABLE_GatewayAPI=true \
  --set values.gateways.istio-ingressgateway.enabled=true \
  --set values.gateways.istio-egressgateway.enabled=true

# 验证 Gateway API CRD
kubectl get crd gateways.gateway.networking.k8s.io

部署 Istio Gateway 资源:

apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  name: istio-system-gateway
  namespace: istio-system
spec:
  gatewayClassName: istio
  listeners:
    - name: https-wildcard
      port: 443
      protocol: HTTPS
      hostname: "*.prod.example.com"
      tls:
        mode: Terminate
        certificateRefs:
          - name: wildcard-tls
            kind: Secret
            group: ""
      allowedRoutes:
        namespaces:
          from: Selector
          selector:
            matchLabels:
              network-access: "true"
    - name: grpc
      port: 50051
      protocol: GRPC
      hostname: "grpc.prod.example.com"
      allowedRoutes:
        namespaces:
          from: Selector
          selector:
            matchLabels:
              grpc-enabled: "true"

5.3 AuthorizationPolicy:零信任网络的基础

在 Gateway API 的框架下,通过 Istio AuthorizationPolicy 实现零信任访问控制:

apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
  name: api-access-control
  namespace: production
spec:
  selector:
    matchLabels:
      app: api-gateway
  rules:
    # 只允许来自内部网络的访问
    - from:
        - source:
            ipBlocks:
              - "10.0.0.0/8"
              - "172.16.0.0/12"
      to:
        - operation:
            paths:
              - /v1/admin/*
            methods:
              - GET
              - POST
              - PUT
              - DELETE
    # 外部访问只能读
    - from:
        - source:
            ipBlocks:
              - "0.0.0.0/0"
      to:
        - operation:
            paths:
              - /v1/admin/*
            methods:
              - GET
    # API Key 验证
    - from:
        - source:
            requestHeaders:
              X-API-Key: "*"
      to:
        - operation:
            paths:
              - /v2/*

六、性能优化:Gateway API 生产级调参

6.1 连接池配置

对于高并发场景,Gateway 的连接池配置直接影响后端服务的稳定性和资源利用效率:

apiVersion: gateway.networking.k8s.io/v1alpha2
kind: BackendTrafficPolicy
metadata:
  name: backend-tuning
  namespace: production
spec:
  targetRefs:
    - group: gateway.networking.k8s.io
      kind: HTTPRoute
      name: api-routes
  rules:
    - backendRefs:
        - kind: Service
          name: user-service
          port: 8080
      loadBalancer:
        consistentHash:
          type: SourceIP
      healthCheck:
        type: Forward
        forward:
          interval: 10s
          timeout: 5s
          healthyThreshold: 2
          unhealthyThreshold: 3

6.2 超时和重试配置

Gateway API 的 HTTPRouteRule 支持细粒度的超时和重试策略:

rules:
  - matches:
      - path:
          type: PathPrefix
          value: /async
    timeouts:
      request: 30s
      backend: 60s
    retries:
      attempts: 3
      perTryTimeout: 10s
      retryOn:
        - ConnectFailure
        - RetriableStatusCodes
        - GatewayError
    backendRefs:
      - name: async-service
        port: 8080

关键参数解析

  • request:整个请求的超时(包括后端响应时间)
  • backend:后端连接建立和响应的时间(独立于 request)
  • retries.attempts:最大重试次数
  • retryOn:触发重试的条件——网络连接失败、5xx 错误、网关错误

6.3 熔断策略

通过 Istio 的 DestinationRule 实现熔断:

apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: user-service-circuit-breaker
  namespace: production
spec:
  host: user-service.production.svc.cluster.local
  trafficPolicy:
    outlierDetection:
      consecutive5xxErrors: 5
      interval: 30s
      baseEjectionTime: 30s
      maxEjectionPercent: 50
    connectionPool:
      tcp:
        maxConnections: 100
      http:
        h2UpgradePolicy: UPGRADE
        http1MaxPendingRequests: 100
        http2MaxRequests: 1000
        maxRequestsPerConnection: 100

七、从 Ingress 迁移的避坑指南

7.1 annotation 迁移映射表

Gateway API 的过滤器替代了大部分常用 annotation:

Ingress AnnotationGateway API 等效配置
nginx.ingress.kubernetes.io/rewrite-targetHTTPRouteFilter.urlRewrite
nginx.ingress.kubernetes.io/ssl-redirectGateway tls.mode: Terminate + HTTP 重定向 Route
nginx.ingress.kubernetes.io/proxy-body-sizeBackendTrafficPolicy limits.requestBody
nginx.ingress.kubernetes.io/proxy-read-timeoutHTTPRoute timeouts.request
nginx.ingress.kubernetes.io/proxy-bufferingBackendTrafficPolicy buffers.request
nginx.ingress.kubernetes.io/limit-rpsBackendTrafficPolicy rateLimit.global

7.2 迁移风险评估清单

在生产环境迁移前,逐项检查以下风险点:

1. 功能覆盖度检查

  • 是否使用了正则表达式路径匹配?(Gateway API v1.x 已支持 RegularExpression
  • 是否使用了非标准 annotation?(逐一映射或放弃该功能)
  • 是否有自定义模板或 Lua 脚本?(Gateway API 不支持,需要重写逻辑)

2. 性能影响评估

  • 使用 kubectl benchmark gateway 测量当前 Ingress 性能基线
  • Gateway API Controller 的吞吐量和延迟是否满足需求
  • CRD 数量增长对 Kubernetes API Server 的压力

3. 运维流程适配

  • CI/CD 流水线是否需要更新 YAML 模板
  • 监控告警规则是否需要调整(从 Ingress metrics 切换到 Gateway metrics)
  • 运维人员是否需要 Gateway API 培训

7.3 渐进式迁移策略

推荐采用双轨并行 + 流量切换的迁移策略:

阶段 1: 部署 Gateway API 资源(不删除 Ingress)
  → 同步配置两条路由
  → 验证 Gateway API 配置正确性

阶段 2: 镜像流量测试
  → 通过 Header 切换(如 X-Route: gateway-api)
  → 逐步将 1%、5%、10% 的流量切换到 Gateway API
  → 监控错误率、延迟、P99 指标

阶段 3: 全量切换
  → 100% 流量走 Gateway API
  → 观察 24-48 小时
  → 确认无误后删除 Ingress 资源

八、总结与展望

Kubernetes Gateway API 代表了云原生网络入口管理的范式转变。从 Ingress 的"大一统但表达能力有限",到 Gateway API 的"职责分离 + 标准化扩展",这个转变解决的不是表面问题,而是 Kubernetes 网络模型的根本性架构缺陷。

2026 年 Gateway API 的成熟度判断

  • 生产可用:HTTP/HTTPS 路由、权重分流、Header 路由、TLS 终止
  • 生产推荐:GRPCRoute、TCPRoute、ReferenceGrant
  • Beta 阶段:BackendTrafficPolicy(限流、熔断)、UDPRoute

对不同规模团队的迁移建议

  • 小型团队(< 10 个服务):可以继续使用 Ingress,等 Gateway API 生态更成熟后再迁移
  • 中型团队(10-50 个服务):新服务采用 Gateway API,老服务渐进迁移
  • 大型团队(> 50 个服务):立即全面迁移,投资 Gateway API 的标准化红利

Gateway API 的终极愿景是:一个 Kubernetes 集群,无论运行多少种协议、多少个团队、多少套 Controller,网络入口的管理始终遵循同一套标准、同一个 API 模型。2026 年,这个愿景正在一步步成为现实。


本文涵盖 Kubernetes Gateway API v1.x 版本,测试环境为 Kubernetes 1.28 + NGINX Gateway Controller 1.3.0 + Istio 1.24。生产部署前请参考官方文档确认各 Controller 的兼容性矩阵。

推荐文章

`Blob` 与 `File` 的关系
2025-05-11 23:45:58 +0800 CST
Vue3 组件间通信的多种方式
2024-11-19 02:57:47 +0800 CST
Vue3中的虚拟滚动有哪些改进?
2024-11-18 23:58:18 +0800 CST
Vue中如何处理异步更新DOM?
2024-11-18 22:38:53 +0800 CST
Graphene:一个无敌的 Python 库!
2024-11-19 04:32:49 +0800 CST
Golang 几种使用 Channel 的错误姿势
2024-11-19 01:42:18 +0800 CST
快手小程序商城系统
2024-11-25 13:39:46 +0800 CST
JavaScript设计模式:单例模式
2024-11-18 10:57:41 +0800 CST
总结出30个代码前端代码规范
2024-11-19 07:59:43 +0800 CST
支付轮询打赏系统介绍
2024-11-18 16:40:31 +0800 CST
程序员茄子在线接单