this を読み、KuberneteslivenessProbesとGKELoadBalancerヘルスチェックの違いを理解しています(私は思います)。
私の問題はこれです:NodePortを介してほとんどのKubeサービスを公開しています。これは、デフォルトでGKEに新しいバックエンドサービスを作成し、GKEにそのバックエンドHTTPサービスに対応するロードバランサーヘルスチェックも作成します。
これらの自動的に作成されたヘルスチェックはすべて、/にHTTPステータスエンドポイントがあることを前提としていますが、そうではありません。別のエンドポイントでホストされているHTTPヘルスチェックがあります。
どうすればいいですか
A)間違ったルートでリッスンする束を盲目的に作成するのではなく、Kubernetesリソースで定義されたルールに基づいてロードバランサールールを作成するようにGKEに何らかのヒントを与えます。
B)GKEに、すべてのNodePortサービスに対して無効なヘルスチェックを自動的に作成しないようにします。
それとも、これは、回避するためにコードを変更する必要がある、柔軟性のないGoogle Cloudの癖ですか?
答えは
A.いいえ
B.いいえ
Kubernetes Ingress Github README.MD を読むことによって:
「..現在、kubernetesサービス/ポッドの活性プローブに依存しており、GCEに対して200で応答する/エンドポイントをポッドに強制します。」