GOOGLE CLOUD LOAD BALANCING(HTTP(S) 負荷分散)
最近、Google Cloud も勉強中です。
そこで軽くまとめたメモを記事にしておこうかと思います。
※ 詳細は、Google Cloud の紹介ページのほうが詳しいです。
イメージをわかりやすくするために図で記載していく予定です。
まず、Google Cloud Load Balancing の HTTP(S) 負荷分散イメージについてです。
負荷分散は下記のように実施されます。
説明が足りていない部分は多いですが、大きな流れでこのとおりです。
なお、HTTPS の場合は以下の条件がありますので、ご確認ください。
1.ターゲット HTTP プロキシではなくターゲット HTTPS プロキシを使用します。
2.ロードバランサのターゲット HTTPS プロキシに署名済みの SSL 証明書が
少なくとも1 つインストールされている必要があります。
3. クライアント SSL セッションはロードバランサで終端します。
ロードバランサとインスタンス間のセッションは、HTTPS(推奨)と
HTTP のどちらでもかまいません。
HTTPS を使用する場合は、バックエンド サービスの各インスタンスが
SSL 証明書を持つ必要があります。
以下、個別説明
グローバル転送ルールとアドレス
トラフィックを IP アドレス、ポート、プロトコル別に、ターゲット プロキシと
URL マップ、1つ以上のバックエンドで構成される負荷分散構成にルーティング
します。
各グローバル転送ルールは、使用するアプリケーションの DNS レコードで
使用できる単一のグローバル IP アドレスを提供します
ターゲット プロキシ
ターゲット プロキシはクライアントからの HTTP(S) 接続を終了し、
1 つ以上のグローバル転送ルールから参照され、URL マップへの受信リクエストを
ルーティングします。
URL マップ
URL マップは、URL に基づいて適切なバックエンド サービスにリクエストを
ルーティングするマッチング パターンを定義します。
デフォルトのサービスは、指定されたホストルールまたはパスマッチング ルールに
一致しないすべてのリクエストを処理するように定義されています
SSL 証明書
HTTPS 負荷分散を使用する場合は、ターゲット HTTPS プロキシに 1 つ以上の
SSL 証明書をインストールする必要があり、最大 10 個の SSL 証明書をインストールできます。
これらの証明書は、ロードバランサとクライアント間の通信を認証するために
ターゲット HTTPS プロキシによって使用されます
バックエンド サービス
リクエストを適切なバックエンドに振り分ける
細かな話はもっとあるのですが、詳細は、
HTTP(S) 負荷分散の設定 | Compute Engine ドキュメント | Google Cloud
をご参照ください