グローバル・ロード・バランシング
グローバルロードバランサーは、複数の地域にあるサーバーリソースのトラフィックを管理する。 トラフィック量とレイテンシーが管理可能であれば、単一のオリジンサーバーですべてのウェブサイトコンテンツを提供することができますが、グローバルロードバランサーはプールアプローチを使用して複数のオリジンにトラフィックを分散します。 このプーリングには、以下のような利点がある:
- 応答時間の最小化
- 冗長化による可用性の向上
- トラフィックのスループットの最大化
グローバルロードバランサーは、最も優先順位の高いプールにトラフィックをルーティングし、そのプール内のオリジンサーバー間で負荷を分散します。 プライマリ・プールが利用できなくなると、トラフィックは自動的に次に優先度の高いプールにルーティングされる。
プールが特定の地域に割り当てられている場合、それらの地域から発信されたトラフィックは、まず対応する地域のプールに送られる。 その地域のすべての地域プールが利用できない場合、トラフィックはデフォルトプール(通常、最も優先度の低いプール)にのみフォールバックする。
仕組みについて
CIS でグローバルロードバランサーを作成すると、ロードバランサーの名前でDNSレコードが自動的に追加されます。 クライアントがDNSリクエストをすると、ロードバランサーは関連付けられたオリジンプールからオリジンIPアドレスの一つを返します。 たとえば、2つのオリジンIPアドレス 169.61.244.18
と 169.61.244.19
を含むオリジンプールを考えます。 このプールを使って、 glbcust.ibmmo.com
という名前のグローバルロードバランサーを作成すると、インターネット上のクライアントは次のコマンドを実行できる:
$ ping glbcust.ibmmo.com
PING glbcust.ibmmo.com (169.61.244.18): 56 data bytes
この例で、CIS は以下を行いました。
glbcust.ibmmo.com
という名前の DNS レコードを作成した。- グローバルロードバランサーを使用して、DNS名をオリジンプールのIPアドレスの1つに解決する。
この設定では、グローバルロードバランサーはTCP接続を終了しない。
ただし、DNSレコードまたはグローバルロードバランサーのプロキシモードを有効にし、 [セキュリティ]>[TLS]>[モード]を [オフ] 以外に設定すると、動作が変わります。 CIS、クライアント接続を終了し、オリジンサーバーへの2つ目の接続を確立します。
このプロキシの例では、 CIS :
- それでも、
glbcust.ibmmo.com
というDNSレコードが作成される。 - DNS名を CIS-提供されたIPアドレスに解決する。
現在、 glbcust.ibmmo.com
への接続は CIS によって終了され、 HTTPS 証明書は CIS (TCP終了に必要)によってホストされる。
クライアントがアプリケーションに接続すると、接続パスは次のようになる:
[client]<--tls-->[cis]<-->[origin server]
この設定により、セキュリティが向上し、 CIS、キャッシュ、ファイアウォールルール、トラフィック検査などの追加機能を適用できるようになる。