HelmのIngress設定を検証する
Helm values.yamlのIngress設定をチェック。hosts、paths、pathType、TLS、classNameをKubernetes Ingress API規約に基づいて検証します。
Ingress & Networking
詳細な説明
Ingress設定の検証
Helmチャートのingressセクションは、サービスへの外部HTTP/HTTPSアクセスを制御します。Ingress v1beta1からv1への移行により、設定要件がより厳格になっています。
標準パターン
ingress:
enabled: true
className: nginx
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
nginx.ingress.kubernetes.io/ssl-redirect: "true"
hosts:
- host: app.example.com
paths:
- path: /
pathType: Prefix
tls:
- secretName: app-tls
hosts:
- app.example.com
検証される項目
- pathType値:
ImplementationSpecific、Exact、Prefixのいずれかでなければならない。Ingress v1ではこのフィールドが必須。 - 型チェック:
ingress.enabledはブーリアン、hostsとtlsは配列、annotationsはオブジェクト。 - 構造: 各ホストエントリには
host(文字列)とpaths(配列)が必要。
pathTypeリファレンス
| pathType | 動作 |
|---|---|
ImplementationSpecific |
マッチングはIngressClassコントローラーに依存 |
Exact |
URLパスに完全一致(大文字小文字区別) |
Prefix |
/で分割されたURLパスプレフィックスに基づいてマッチ |
よくある間違い
pathTypeの欠落(Ingress v1では必須):
paths:
- path: /
# pathType欠落 - APIがこれを拒否
間違ったpathType値:
paths:
- path: /api
pathType: prefix # "Prefix"(大文字P)でなければならない
ユースケース
cert-managerを使用したマルチドメインアプリケーションのHTTPS Ingress設定。不正なpathTypeやTLS設定はルーティング障害や証明書エラーを引き起こします。