Ingress
在集群中安装 Kubetail 后,默认可以通过 kubectl port-forward 或 kubectl proxy 访问 Dashboard。如果您希望获得持久、适合浏览器使用的访问方式,而不必运行本地代理命令,也可以通过 Kubernetes Ingress 资源将其暴露出去。
Helm chart 内置了为 Dashboard 创建 Ingress 资源的支持。它默认关闭,但您可以通过 chart values 启用并配置它。
Dashboard Service 在集群内部监听端口 8080。您的 Ingress 控制器需要将流量路由到该端口。
启用 Ingress
Section titled “启用 Ingress”要启用 Ingress,请将 kubetail.dashboard.ingress.enabled 设为 true,并至少配置一条规则:
kubetail: dashboard: ingress: enabled: true name: kubetail annotations: traefik.ingress.kubernetes.io/router.middlewares: kubetail-system-kubetail-auth@kubernetescrd className: traefik rules: - host: kubetail.example.com http: paths: - path: / pathType: Prefix然后将这些 values 应用到您的 release:
helm upgrade kubetail kubetail/kubetail \ --namespace kubetail-system \ --values values.yamlTLS 终止
Section titled “TLS 终止”要启用 HTTPS,请添加一个引用证书 Secret 的 tls 块:
kubetail: dashboard: ingress: enabled: true className: nginx rules: - host: kubetail.example.com http: paths: - path: / pathType: Prefix backend: service: name: kubetail-dashboard port: number: 8080 tls: - hosts: - kubetail.example.com secretName: kubetail-tls如果您使用 cert-manager,可以通过为 Ingress 添加适当的 annotation 来自动化证书签发:
kubetail: dashboard: ingress: annotations: cert-manager.io/cluster-issuer: letsencrypt-prod