クラウドで実現するBCP・DR~GSLB(広域負荷分散)を使ったデータセンター間負荷分散~

[更新: 2019年10月10日]

クラウドで実現するBCP・DR~データセンター間をセキュアに繋ぐブリッジ接続~ では、東京と石狩という2つの離れたデータセンター間でデータ同期を行い、耐障害性の高いインフラを構築する手順についてご説明しました。今回は「さくらのクラウド」のGSLB(広域負荷分散)を利用した、遠隔地間の負荷分散/冗長化の手法についてご説明します。

概要

東京と石狩のWebサーバーへのアクセスをGSLBを利用して分散します。

bcp-dr-sakuracloud-2-01.png

GSLBはグローバルIPアドレスを持つサーバであれば、ロケーションや事業者を問わず負荷分散が可能な機能です。作成および設定は「さくらのクラウド」のコントロールパネルからおこなえます。GSLBの仕様等の詳細につきましては、 GSLB(広域負荷分散アプライアンス) をご参照ください。

シンプルな負荷分散の手法として「DNSラウンドロビン」というものがあります。これは1つのFQDNに対して複数のIPアドレスを登録しておくことで、名前解決の際に複数のIPアドレスに分散されるというものです。DNSサーバへの設定のみで可能なため、特別なコストがかからずに複数サーバへの負荷分散が行えることが特徴です。しかしDNSラウンドロビンはその負荷分散の方式の特性上、以下の問題があります。GSLBを利用することで、それぞれの問題を解決することができます。

  • 全てのサーバに対してリクエストを均等に割り振るため、サーバのスペックや負荷を考慮した分散ができない。

    →GSLBには重み付けの機能がついているため、サーバスペックを考慮した負荷分散設定が可能。

  • 障害を検知するしくみがないため、ダウンしているサーバに対してもリクエストを割り当ててしまう。

    →GSLBには分散対象の実サーバの死活監視機能があり、ダウンしているサーバへはリクエストを割り当てない。

それでは実際にGSLBを用いた広域負荷分散の設定を行います。

GSLBの作成

左メニューの[GSLB]をクリックし、[追加]をクリックします。

bcp-dr-sakuracloud-2-02.png

[GSLB追加]画面でフォームに従い設定を行います。

bcp-dr-sakuracloud-2-03.png
監視方法 [http]を選択します
Hostヘッダ 今回は空欄とします
パス /index.htmlとします
レスポンスコード 200とします
チェック間隔 10とします
重み付け応答 [有効]とします
名前 「test」とします

そのほかの項目は任意で入力してください。入力が完了したら右下の[作成]をクリックします。

GSLBの設定

先ほど作成したGSLBが一覧に表示されますので、行をダブルクリックして詳細画面を表示します。

bcp-dr-sakuracloud-2-04.png

詳細画面で[実サーバ]タブをクリックし、右下の[追加]ボタンをクリックします。

bcp-dr-sakuracloud-2-05.png

IPアドレスには東京・石狩の各WebサーバーのグローバルIPアドレスを入力します。[有効/無効]ラジオボタンは[有効]にチェックを入れ、重み値については未入力(デフォルト)とします。

bcp-dr-sakuracloud-2-06.png

以下の通り、東京Webサーバーと石狩WebサーバーのグローバルIPアドレスの追加が完了したら、右上の[反映]をクリックします。

bcp-dr-sakuracloud-2-07.png

DNSの設定

GSLB一覧画面の[test]行に、FQDNという記載があります。ここに記載されているFQDNにアクセスすることで、実サーバへの負荷分散が行われます。

bcp-dr-sakuracloud-2-08.png

CNAMEレコードを作成し、www.k26.jpにアクセスした際に、GSLBのFQDNへリダイレクトされるようにDNS設定を行います。下記は 「さくらのクラウド」のDNS機能 を使用した場合の設定例です。

bcp-dr-sakuracloud-2-09.png

注意事項として、GSLB一覧画面に表示されるFQDNは

site-xxxxxxxxxxxx.gslb3.sakura.ne.jp

といったように、末尾に.がついておりませんが、「さくらのクラウド」のDNSに登録する際は

site-xxxxxxxxxxxx.gslb3.sakura.ne.jp.

といったように、末尾に.を追記する必要があります。

※DNSサービスによっては、末尾の.が不要な場合があります。設定の際はお使いのDNSサービスの仕様をご確認ください。

動作確認

ブラウザでアクセスし、Webサイトが正常に表示されることを確認します。

bcp-dr-sakuracloud-2-10.png

また、digコマンドを使用して以下のようにDNSサーバへの問い合わせを複数回行うと、2つのIPアドレスに分散して応答している様子が確認できます。

$ dig www.k26.jp

※www.k26.jpの部分は、自分でGSLBに設定したFQDNに読み替えて実行してください。

いかがでしたでしょうか。このようにGSLBを利用することで、これまで高価なアプライアンスが必要だったデータセンター間の負荷分散を月額500円(税抜)という安価で行うことができます。是非ご活用ください。