GCP ロードバランサがインスタンス グループに接続できません: 異常なアップストリーム エラー

GCP ロードバランサがインスタンス グループに接続できません: 異常なアップストリーム エラー

私の目標

Metabase を紹介するために、自分のドメイン ( ) をポート 3000 の Google VM インスタンスに接続したいと考えていますdashboards.example.com。これは、Google DNS とロード バランサを介して行います。

私の問題

これを実行しようとして、 に移動して Metabase にアクセスしようとすると、というhttps://dashboards.example.com黒い画面が表示されます。さらに、ロード バランサー (および)no unhealthy upstreamのヘルス チェックでは、バックエンド サービスが正常でないと表示されます。httphttps

私が見逃しているものを知っている人はいませんか? 何かを見落としていると思うのですが、インターネット全体をスキャンしても解決策が見つからないようです。

マシンを再起動したり、ドメインとブラウザのキャッシュをクリアしたりしてみました。

GCPのセットアップ

ドメイン名 私のAクラスの DNS は、ロード バランサー (グローバル外部) からの 2 つの IP アドレスを指しています。ドメインを ping すると、dashboards.example.comロード バランサーの 1 つからの IP が正しく表示されます。

ロードバランサー

  • 翻訳Google が管理する SSL 証明書を備えたグローバル外部 HTTPS ロードバランサがあります。フロントエンドにはエフェメラル IP アドレスがあり、ポート を使用します443。ネットワーク サービス層は ですpremium。バックエンドはbackend-httpsインスタンス グループを指し、HTTPS名前付きポート でプロトコルを使用しますhttps。インスタンス グループは にありeurope-west4、ポート番号 を追加しました。ヘルスチェックもこのポートを指しています。ルーティング ルートは、と が空で3000ある基本ルートで、同じバックエンドを指しています。hostpath

  • ウェブグローバル外部 HTTP ロードバランサもあります。フロントエンドにはエフェメラル IP アドレスがあり、ポート を使用します80。ネットワーク サービス層は ですpremium。バックエンドbackend-http(同じインスタンス グループを指す別のバックエンド) は、HTTP名前付きポート でプロトコルを使用しますhttp。インスタンス グループは でeurope-west4、ポート番号 を追加しました3000。ヘルス チェックもこのポートを指します。ルーティング ルートは、 と を持つ基本ルートで、host同じpathバックエンドを指しながら空です。

その後、概要ではヘルスチェックがすでに失敗していますが、その理由はわかりません。

インスタンス グループ インスタンス グループはゾーン内にありeurope-west4-a、1 つの VM インスタンスが含まれています。さらに、https&という 2 つの名前付きポートがありhttp、どちらもポートにつながっています3000

ネットワーキング すべてが同じサブネットまたは VPC に追加されます。ヘルスチェック、SSH、ロードバランサーからのトラフィックが TCP ポート上のネットワーク内のすべてのインスタンスに送信されるよう、ファイアウォール ルールを追加しました3000

余分な 私が気づいたもう一つの奇妙な点は、VM をシャットダウンした瞬間にヘルス チェックが正常であるように見えることです。


誰か私の間違いに気付く人はいますか?

マシンを再起動したり、ドメインとブラウザのキャッシュをクリアしたりしてみました。また、ロード バランサーの再構成も複数回試みました。残念ながら成功しませんでした。

関連情報