kubernetes-dashboard 通过 istio [1.0.0] ingress --istio-ingressgateway 公开

kubernetes-dashboard exposing through istio [1.0.0] ingress --istio-ingressgateway

我已经使用 lets encrypt 证书配置了 istio ingress。 通过使用网关和虚拟服务,我可以在不同端口 运行 上访问 https 上的不同服务。

但是 kubernetes-dashboard 运行 在 kube-system 命名空间的 443 端口上并且有自己的证书,我如何通过 istio 网关和虚拟服务公开它。

我已经为仪表板定义了子域并创建了网关、虚拟服务,它正在将 443 流量引导到 kuberentes 仪表板服务,但它不起作用。

for https virtual service config i have taken reference from for istio doc

听起来您想配置一个入口网关来执行 SNI 直通而不是 TLS 终止。您可以通过将网关配置中的 tls 模式设置为 PASSTHROUGH 来完成此操作,如下所示:

apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: dashboard
spec:
  selector:
    istio: ingressgateway
  servers:
  - port:
      number: 443
      name: https-dashboard
      protocol: HTTPS
    tls:
      mode: PASSTHROUGH
    hosts:
    - dashboard.example.com

可以找到完整的直通示例 here