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。
我已经使用 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。