このステップでは、アプリケーション ロードバランサを作成して、Cloud Run でホストされているバックエンド インスタンスにトラフィックを分散します。ロードバランサの構成で、ロードバランサがトラフィックを転送する方法を決定するルーティング ルールを定義します。ルーティング ルールには、ホストルールとパスマッチが含まれます。これらは、外部アプリケーション ロードバランサの URL マップの構成要素を設定します。
この手順を完了するには、有効なドメイン名または有効なセルフマネージド証明書が必要です。
Cloud Run サービスのロードバランサを作成する
Google Cloud コンソールで、[ロード バランシング] ページに移動します。
[ロードバランサを作成] をクリックします。
[ロードバランサのタイプ] セクションで [アプリケーション ロードバランサ(HTTP / HTTPS)] をクリックし、[次へ] をクリックします。
[インターネット接続または内部] セクションで [インターネット接続(外部)]、[次へ] の順にクリックします。
[グローバルまたはシングル リージョンのデプロイ] セクションで [グローバル ワークロードに最適] をクリックし、[次へ] をクリックします。
[ロードバランサの世代] セクションで [グローバル外部アプリケーション ロードバランサ] をクリックし、[次へ] をクリックします。
[構成] をクリックします。
[ロードバランサ名] フィールドに「
gemini-streamlit-app-lb
」と入力します。[フロントエンドの構成]、[バックエンドの構成]、[ルーティング ルール] セクションを完了して、ロードバランサを構成します。
フロントエンドの構成
次のフロントエンド構成を指定します。
名前: 「
gemini-streamlit-app-frontend
」と入力します。プロトコル: [HTTPS(HTTP/2 と HTTP/3 を含む)] を選択します。
ネットワーク サービス階層: 新しい外部静的 IP アドレスを予約して、IP アドレスを設定します。新しい IP アドレスを予約する際、名前として
genai-app-ip
を指定します。証明書: 次の手順で、新しい Google マネージド証明書を作成します。
[新しい証明書の作成] をクリックします。
次の詳細を指定します。
名前: 「
my-genai-app-certificate
」と入力します。作成モード: [Google マネージドの証明書を作成する] をクリックします。
ドメイン: 証明書のプロビジョニングに使用するドメイン名を入力します。
[作成] をクリックします。
Google マネージド SSL 証明書の詳細については、Google マネージド SSL 証明書を使用するをご覧ください。
- [HTTP から HTTPS へのリダイレクトを有効にする] チェックボックスをオンにします。
[完了] をクリックします。
[バックエンドの構成] をクリックして、バックエンドを構成します。
バックエンドの構成
[バックエンド サービスとバックエンド バケット] リストをクリックし、[C] をクリックして次の詳細を入力します。
名前: 「
gemini-streamlit-app-backend
」と入力します。バックエンド タイプ: [サーバーレス ネットワーク エンドポイント グループ] をクリックします。
バックエンド: [新しいバックエンド] カードで、次の操作を行います。
[サーバーレス ネットワーク エンドポイント グループ] リストをクリックし、[サーバーレス ネットワーク エンドポイント グループの作成] をクリックします。
次の詳細情報を入力します。
名前: 「
streamlit-app-neg
」と入力します。リージョン:
us-central1
を選択します。サーバーレス ネットワーク エンドポイント グループの種類: [Cloud Run] を選択します。
サービスを選択:
gemini-streamlit-cloudrun
Cloud Run サービスを選択します。
[作成] をクリックします。
[完了] をクリックします。
[Cloud CDN を有効にする] チェックボックスをオフにします。
[ポリシー名] ボックスに「
default-security-policy-gemini-app-backend
」と入力します。[作成]、[OK] の順にクリックします。
[ルーティング ルール] をクリックして、ルーティング ルールを構成します。
ルーティング ルール
[詳細なホストとパスのルール] をクリックします。
[ホストとパスのルール] セクションで、[(デフォルト)ホストが一致しない場合、トラフィックをバックエンド「」にルーティングします] をクリックし、次の詳細を入力します。
[アクション] で、[トラフィックを 1 つのバックエンドにルーティング] を選択します。
バックエンド:
gemini-streamlit-app-backend
を選択します。
[完了] をクリックします。
[ホストとパスのルールを追加] をクリックして、新しいルールを追加します。
[新しいホストとパスのルール] で、次の詳細情報を入力します。
ホスト: Google マネージド証明書の作成時に使用したドメイン名を入力します。
パスマッチャー: 次の URL マップの構成をコピーします。
defaultService: projects/PROJECT_ID/global/backendServices/gemini-streamlit-app-backend name: matcher1 routeRules: - matchRules: - prefixMatch: /gemini-streamlit-app priority: PRIORITY routeAction: weightedBackendServices: - backendService: projects/PROJECT_ID/global/backendServices/gemini-streamlit-app-backend weight: 100
次のように置き換えます。
PROJECT_ID: Google Cloud プロジェクト ID。
PRIORITY: ルートルールの評価に使用するバックエンド サービスの優先度を指定します。このシナリオでは、バックエンド サービスを 1 つだけ作成したため、任意の値に設定します。
[完了] をクリックします。
[確認と完了] をクリックして構成を確認し、ロードバランサを作成します。
確認と完了
ロードバランサの構成を確認します。
ロードバランサを作成するには、[作成] をクリックします。
ドメインの DNS レコードに IP アドレスを追加する
ロードバランサ用に作成された予約済み IP アドレスを参照するように、ドメインの DNS レコードを更新します。この手順を完了するために、ドメイン管理者への連絡が必要になる場合があります。