You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Kubernetes Ingress中指定自定义Istio ingress网关

一、当前配置的网关匹配结果

你现在使用kubernetes.io/ingress.class: istio注解的Ingress配置,默认会匹配集群默认的istio-ingressgateway网关,不会命中你自定义的VPN专用istio-vpn-ingressgateway。

二、通过原生Ingress规则指定自定义网关的方案

你可以通过Kubernetes原生的IngressClass资源实现不同Ingress绑定不同Istio网关的需求,完全符合你兼容非Istio环境的要求:

  1. 首先为你的VPN专用网关创建对应的IngressClass资源:
apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
  name: istio-vpn
spec:
  controller: istio.io/ingress-controller
  parameters:
    apiGroup: install.istio.io
    kind: IngressGateway
    name: istio-vpn-ingressgateway
    namespace: istio-system

如果你需要区分默认公开网关,也可以同步为默认网关创建对应IngressClass:

apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
  name: istio-public
spec:
  controller: istio.io/ingress-controller
  parameters:
    apiGroup: install.istio.io
    kind: IngressGateway
    name: istio-ingressgateway
    namespace: istio-system
  1. 按需修改你的Ingress配置指定对应网关即可,两种方式可选:
    • 注解方式(兼容旧版本K8s):将注解修改为kubernetes.io/ingress.class: istio-vpn
    • 原生字段方式(K8s 1.19+推荐):在Ingress的spec字段下添加ingressClassName: istio-vpn

修改后Istio会自动将对应Ingress规则绑定到你指定的网关,全程不需要使用Istio自定义的Gateway、VirtualService资源,你的Ingress清单在没有Istio的环境下,只要存在对应名称的IngressClass控制器即可正常运行。

内容的提问来源于stack exchange,提问作者ammerzon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 12:21:01