リバースプロキシとしてロードバランシングを使用してGoogle Cloud Platformを構成する

リバースプロキシとしてロードバランシングを使用してGoogle Cloud Platform(GCP)をセットアップできます。下の図は、構成内のコンポーネントを示しています。

  • Google Cloud Platform Load Balancerは、アプリケーションの複数のインスタンスにトラフィックを分散します。

  • インターネットネットワークエンドポイントグループ(NEG)は、Google Cloudの外部にあるバックエンドです。詳細については、「インターネットネットワークエンドポイントグループの概要」をご覧ください。

Google Cloud Platform with Load Balancing as Reverse Proxy flow diagram
  1. 自己管理証明書を使ってカスタムドメインを構成する作業がまだ済んでいない場合は、ここで行います。[Origin Domain Name(オリジンのドメイン名)]cname-api-keyの値を後で使用するためにメモしておきます。

  2. [Auth0 Dashboard]>[Tenant Settings(テナント設定)]>[Custom Domains(カスタムドメイン)]に移動して、DNSサーバーにTXTレコードを追加し、[Verify(検証)]をクリックしてドメインの所有権を確認します。

  3. GCPがドメインを確認したら、GCPコンソールにログインします。

  4. [ネットワークサービス]>[ロードバランシング]に移動します。[Create Load Balancer(ロードバランサーを作成)]をクリックします。詳細については、Google Cloudのドキュメントで「Cloud Load Balancingのドキュメント」をお読みください。

    1. [HTTP(S)ロードバランシング]を選択します。

    2. トラフィックをインターネットからAuth0にルーティングする必要があるため、[インターネットからVMへ]を選択します。[Continue(続行)]をクリックします。

    3. ロードバランサの名前をauth0-reverse-proxyなどに指定して、[作成]をクリックします。

  5. バックエンドを構成します。

    1. Google Cloudの外部にあるバックエンド、インターネットネットワークエンドポイントグループ(NEG)を作成します。詳細については、Google Cloudドキュメントの「インターネットネットワークエンドポイントグループの概要」を参照してください。

    2. バックエンドサービス構成で、新しく作成したインターネットNEGをバックエンドとして選択し、Auth0テナントからcname-api-keyhost値(オリジンのドメイン名)を設定します。

    3. [Done(完了)]をクリックします。

  6. hostpathのルールをセットアップします。

    1. [アクション]で[Route traffic to a single backend(トラフィックを単一のバックエンドにルーティングする)]を選択します。

    2. [Host rewrite(ホストの書き換え)]で、先ほど保存したAuth0テナントのオリジンのドメイン名を入力します。

    3. [Create(作成)]をクリックします。

  7. フロントエンドを構成します。

    1. 証明書を作成します。最も簡単な方法は、GoogleがSSL証明書を自動的にプロビジョニングするGoogleマネージドの証明書を選択することです。

    2. Googleマネージドの証明書を選択しない場合は、有効期限が切れる前にSSL証明書を更新して認証局にアップロードする必要があります。

  8. 構成を確認して確定します。 GCPがロードバランサを構成するのに1分ほどかかります。エラーの原因となる一般的な問題は次のとおりです。

    • Invalid API key(無効なAPIキー)cname-api-keyがGCPからAuth0に設定されていません。

    • 403 Forbidden(禁止)hostヘッダーがGCPからAuth0に送信されませんでした。

  9. DNSレコードを更新して、ドメインをロードバランサに接続します。

もっと詳しく