Ingress
Kubetail をクラスタにインストールすると、Dashboard は既定で kubectl port-forward または kubectl proxy を通じて利用できます。ローカルのプロキシコマンドを毎回実行せずに、継続的でブラウザー向きのアクセスを実現したい場合は、Kubernetes の Ingress リソースを使って公開することもできます。
Helm chart には、Dashboard 用の Ingress リソースを作成する組み込みサポートが含まれています。既定では無効ですが、chart の values を使って有効化および設定できます。
Dashboard Service はクラスタ内でポート 8080 を待ち受けます。Ingress コントローラーはこのポートへトラフィックをルーティングする必要があります。
Ingress を有効にする
Section titled “Ingress を有効にする”Ingress を有効にするには、kubetail.dashboard.ingress.enabled を true に設定し、少なくとも 1 つのルールを構成します。
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-tlscert-manager を利用している場合は、適切な annotation を Ingress に追加することで証明書発行を自動化できます。
kubetail: dashboard: ingress: annotations: cert-manager.io/cluster-issuer: letsencrypt-prod