GSLB(広域負荷分散)

[更新: 2024年4月19日]

アプライアンス「GSLB」の仕様詳細や作成・利用方法についての説明ページです。

概要

「GSLB」は、さくらのクラウドのリージョン間のみならず、弊社「さくらのVPS」や「さくらの専用サーバ」などの他サービスに跨ったロードバランシング環境が実現できるアプライアンスです。

gslb-01.png

VPCルータロードバランサ と同様、クラウドコントロールパネルから作成・設定が可能なアプライアンスとして提供されるため、素早く簡単に負荷分散、冗長化システムを構築することが可能です。

参考

GSLBと、 エンハンスドロードバランサロードバランサ の違いについては、よくある質問と回答の 4種類のロードバランサアプライアンスの違いは何ですか? を参照ください。

料金

料金については サービスサイト をご確認ください。

仕様

本サービスで提供されるGSLBアプライアンスの仕様は以下の通りです。

対応ネットワーク層プロトコル IPv4, IPv6
GSLB1台あたりに登録可能な実サーバ数 最大12個
DNS応答時のTTL 10秒(固定)
Punycode 対応( xn-- で始まるエンコード後の文字列を入力可)
実サーバへの重み付け(weight)設定 実サーバごと1~10000の整数値で重み値を設定可
全ての実サーバFAIL時の応答 (1)有効化された実サーバがあり、ソーリーサーバが設定されている場合
有効化された実サーバが1つでもアップの状態では、
アップ状態のIPアドレスを返します。
有効化された実サーバが全てダウンした状態では、
ソーリーサーバのIPアドレスを返します。

(2)有効化された実サーバがなく、ソーリーサーバが設定されている場合
ソーリーサーバのIPアドレスを返します。
設定可能なヘルスチェック(監視)の種類 HTTP / HTTPS / PING / TCP
設定可能なヘルスチェックの間隔 10~60秒 (※1秒単位で設定可)
設定可能なヘルスチェックオプション HTTP / HTTPS: Hostヘッダ / パス / ステータスコード / ポート番号
TCP: ポート番号
サーバアップ/ダウン判定条件 ・サーバダウン判定のチェック回数: 3回連続タイムアウト(http/httpsの場合は指定したステータスコード以外のステータスコード応答)でダウン判定
 (タイムアウト判定はヘルスチェック間隔で指定した秒数と同値)
・サーバアップ判定のチェック回数: 2回連続で成功した場合にアップ状態に遷移
※タイムアウトはTCP監視においてはTCPコネクション確立までの時間、http/https監視においてはレスポンス受信までの時間となります。

注意

example.jp のようなZone Apexで使用する場合、ALIASレコードが設定可能な DNSアプライアンス でドメイン名が管理されている必要があります。

ヘルスチェックは以下のIPアドレス範囲より行います。登録した実サーバ側では、以下の各IPアドレス範囲から指定したヘルスチェック種類に対して正常に応答するよう設定を行ってください。

27.133.134.208/28
27.133.140.32/28
133.242.241.0/28
133.242.248.16/28
153.120.86.80/28
153.125.135.176/28
163.43.18.192/28
163.43.246.160/28

注意

IPアドレス範囲は適宜追加されますので、制限設定を行う場合はアプライアンス作成前に都度ご確認をお願いいたします。
なお、アプライアンスは作成時点で掲載のIPアドレス範囲が有効となります。作成後にIPアドレス範囲のリストに追加があった場合でも、そのアプライアンスについては作成時点でのIPアドレス範囲内でヘルスチェックが実施されます。

実サーバにIPv6のアドレスを登録した場合は、以下のIPアドレス範囲からヘルスチェックが行われます。

2401:2500:10a:1037::/64
2001:e42:107:1017::/64

注釈

ヘルスチェックに使う IP アドレスはお客様に割り当てられることはありません。

利用手順

GSLBは以下の手順で作成・設定を行います。

GSLBアプライアンスの作成

左メニューの「グローバル」カテゴリ内にある「GSLB」をクリックします。作成済みのGSLBがある場合はメイン画面内にリスト表示されます。新規に作成する場合は「追加」ボタンをクリックします。

gslb-02.png

GSLBの新規作成画面が表示されるので、必要な項目を選択・入力し、作成ボタンをクリックします。

gslb-03.png

各項目の説明は以下の通りです。

監視方法(*) IPアドレス、ポート番号で指定したロードバランシング先のサーバの監視方法を httphttpspingtcp より設定します。
httphttps を指定すると追加設定項目が表示され、Hostヘッダと監視対象のパスと正常時に返答されるレスポンスコードの設定ができます。
httphttpstcp を指定すると、監視対象ポート番号の追加設定項目が表示されます。
※httpの場合はGETメソッド、httpsの場合はHEADメソッドで対象パスに対する応答確認を行います。
チェック間隔(秒) (*) 実サーバのヘルスチェックを実行する間隔を設定します。
設定値は10~60の範囲の整数値となります。
重み付け応答 (*) 実サーバに設定したIPアドレスごとに、応答確率を調整可能な重み付け設定を行うかどうかを選択します。
ソーリーサーバ バランシング先が全てダウン状態となった場合に誘導する先を設定します。
名前 / 説明 / タグ / アイコン サーバやディスク、他のアプライアンスと同様に、わかりやすい名前設定やタグ、アイコン機能による分類が可能です。

※「*」は必須項目です
※作成時に指定した「監視方法」と「チェック間隔」は、GSLB詳細画面にある「監視方法の変更」ボタンをクリックすることで変更することが可能です(「反映」操作は不要)
※ソーリーサーバの設定は必須項目ではありません
※ソーリーサーバはお客様にて作成していただく必要があります(サーバ料金別途)

gslb-04.png

作成が完了すると作成済みGSLB一覧画面に追加されます。また、作成と同時に生成されるFQDNもここで確認が可能です。

gslb-05.png

※GSLB一覧画面から対象のGSLBをダブルクリック、または選択後に「詳細」をクリックするとGSLB詳細画面が表示されるので、この画面内の「削除」ボタンをクリックすることで作成済みのGSLBを削除できます。

実サーバの設定

GSLBのロードバランシング先となる実サーバを設定します。GSLB一覧画面から対象のGSLBをダブルクリック、または選択後に「詳細」をクリックするとGSLB詳細画面が表示されるので、ここでさらに「実サーバ」タブをクリックし、実サーバ一覧画面を表示します。実サーバを追加する場合は、「追加」ボタンをクリックします。

gslb-06.png

実サーバ設定画面が表示されるので、各項目を入力・選択します。

gslb-07.png

各項目の説明は以下の通りです。

IPアドレス ロードバランシング先サーバのIPアドレスを設定します。
有効/無効 ロードバランシング対象とするかどうかを指定します。
実サーバ設定時に「有効」に設定すると、追加操作直後にロードバランシング対象に含まれます。
重み値 実サーバに設定したIPアドレスごとの応答確率を、1~10000の範囲の整数値で指定します。

例: 実サーバが3個登録され、重み値にそれぞれ1, 3, 5を指定した場合、各実サーバのIPアドレスが1:3:5の比率で応答されます

※「重み値」の設定項目は重み付け応答機能を有効にした場合のみに表示されます

実サーバ追加後、実サーバ一覧画面に設定した実サーバが追加されます。すべての設定作業完了後は「反映」ボタンをクリックし、GSLBアプライアンス側へ設定反映します。

gslb-08.png

※一覧画面右側の鉛筆アイコンをクリックすることで実サーバの設定変更ができます(設定変更後は「反映」ボタンのクリックが必要です)。 ※一覧画面右側の削除アイコンをクリックすることで実サーバの削除ができます(設定変更後は「反映」ボタンのクリックが必要です)。

FQDNのDNS登録

GSLBの準備が完了したら、ロードバランシングさせたいホスト名をFQDNのCNAMEとして登録します。

※「www.example.jp」をロードバランシング用ホスト名として設定する場合のゾーンファイル記述例

www.example.jp IN CNAME site-000000000000.gslbN.sakura.ne.jp

※CNAMEにはGSLB詳細画面に表示されるFQDNを指定してください

構成例

GSLBを使用する際の構成例です。

東京リージョン/石狩リージョンに設置したサーバで冗長化/負荷分散構成

インターネット側からのアクセスをGSLBで東京・石狩各リージョンに設置したサーバに振り分ける構成です。

gslb-09.png

各拠点のサーバが健全な場合はDNSラウンドロビンで負荷分散させつつ、バックエンド側のローカルネットワークを接続したブリッジを経由して、動的に更新されるコンテンツの同期を行います。

gslb-10.png

いずれかのサーバがダウンした場合、ダウンしたサーバのIPアドレスは返答されず、インターネット側からのアクセスが継続されます。

gslb-11.png

「ロードバランサ」を組み合わせた構成

GSLBのロードバランシング先を「ロードバランサ」アプライアンスのVIPに設定することで、多数の実サーバ設定や粒度の細かい監視など「ロードバランサ」アプライアンスが持つ高機能なロードバランシングを活用できます。

gslb-12.png

その他

基本的な動作について

  • 設定した実サーバが全て監視エラーとなった場合は全てのIPアドレスが応答されます。ソーリーサーバの設定がなされている場合はソーリーサーバのIPアドレスが応答されます。
  • クライアント側でHostヘッダを送出していれば さくらのレンタルサーバ などの共有型サーバもソーリーサーバとして動作させることができます。
  • セッションハンドリングは行わないため、同時接続数やセッション数などに上限はありません。

冗長化機能について

  • 監視エラー検知後のロードバランシング先からの除外、または監視エラー復旧後のロードバランシング先への組み込みに要する時間は最短で30秒程度となります。
  • DNSベースのロードバランシング方式のため、クライアント側のDNSキャッシュ状態などによりロードバランシング先の反映がさらに遅延する場合があります。
  • サイト内での迅速なフェイルオーバが必要な場合は「ロードバランサ」アプライアンスと組み合わせて構成することを推奨します。
  • 重み付け応答に変更するとDNSレスポンスがラウンドロビンではなく、単一レコードのみの応答となります。冗長化目的でGSLBをご利用の場合、フェイルオーバの高速性の観点より重み付け設定は使用しないことを推奨します。

負荷分散機能について

  • 負荷分散はDNSラウンドロビン相当での動作となります。
  • コネクション単位での粒度の細かいバランシングが必要な場合は「ロードバランサ」アプライアンスと組み合わせて構成することを推奨します。

IPv6対応について

  • GSLBでは実サーバとしてIPv6のアドレスを登録でき、AAAAレコードを返すことができます。
  • GSLBのDNSサーバはIPv6での問い合わせ応答に対応していません

IPv6を含むレコード例

重み付け応答「無効」で実サーバとして、IPv4のアドレス「203.0.113.4」「203.0.113.5」、IPv6アドレス「2001:db8:1::4」「2001:db8:1::5」を登録した際のDNSレスポンス例

% dig +nocmd +nocomment +nostat site-NNNNNNNNNNN.gslb.sakura.ne.jp
;site-NNNNNNNNNNN.gslb.sakura.ne.jp. IN        A
site-NNNNNNNNNNN.gslb.sakura.ne.jp. 0 IN A     203.0.113.4
site-NNNNNNNNNNN.gslb.sakura.ne.jp. 0 IN A     203.0.113.5

% dig +nocmd +nocomment +nostat site-NNNNNNNNNNN.gslb.sakura.ne.jp AAAA
;site-NNNNNNNNNNN.gslb.sakura.ne.jp. IN        AAAA
site-NNNNNNNNNNN.gslb.sakura.ne.jp. 4 IN AAAA  2001:db8:1::4
site-NNNNNNNNNNN.gslb.sakura.ne.jp. 4 IN AAAA  2001:db8:1::5

よくある質問と回答

GSLBに関するよくある質問と回答を こちら にまとめています。不明な点や疑問などがありましたらまずはこちらを参照ください。