web-dev-qa-db-ja.com

GCP Global Load Balancer HTTPヘルスチェックを使用して、GETの代わりにPOST)することは可能ですか?

Netcool OminibusProbeサーバーの前のGCPでGLBを構成しました。これは、POSTイベントのみを受け入れるAPIです。GLBのヘルスチェックがGETを使用してポート80/443でプローブサーバーに接続しようとすると、APIは501を返します。プローブがGETに応答する方法を知らないため、エラーが発生します。

GETの代わりにヘルスチェックからPOSTを送信する方法はありますか?TCP 8080でApacheインスタンスを立ち上げることを考えましたが、それは失敗しますAPIがリッスンしているポートをチェックする目的。

また、テスト時に注意したこと...デフォルトのTCP Linuxの接続タイムアウトは45秒のようです。LESS THAN 45のヘルスチェックを構成した場合数秒後、最終的にインスタンスをCLOSE_WAIT接続で溢れさせます。そうしないでください。:D

1
jbiggley

TCPまたはSSLヘルスチェック (非HTTP(S)トラフィックを対象としています)を試してください。これは、ポートが開いているかどうかのみをチェックします。理論的には、静的HTTPリクエストを作成するために小さなリクエスト文字列を提供できますが、これは醜くて壊れやすいようです。

また、バックエンドソフトウェアで拡張リクエストを開いて、ヘルスAPIを提供します。

2
John Mahowald