SAKURA internet

さくらのクラウドの最新情報、技術情報

さくらのクラウドニュース

さくらのクラウドの最新情報や、開発に役立つ技術情報をお届けします。

ロードバランサ

[更新: 2016年12月15日]

アプライアンス「ロードバランサ」についての全般的な情報です。

1. 概要

「ロードバランサ」機能は、仮想的なアプライアンス機器として動作するロードバランサを提供するサービスです。コントロールパネルからの操作で、クラウド上に構築済みの環境へ素早く容易にロードバランシング環境を導入することが可能となります。

処理性能ごとに「標準プラン」と「ハイスペックプラン」、さらに冗長化の有無で「シングル構成」と「冗長構成」が選択可能です。

料金

プラン
月額料金(税込)
日割料金(税込)
時間割料金(税込)
標準プラン シングル構成 2,571円 129円 12円
冗長構成 5,142円 259円 25円
ハイスペックプラン シングル構成 4,860円 243円 24円
冗長構成 9,720円 486円 48円

仕様

「ロードバランサ」機能で提供するロードバランサの仕様は以下の通りです。

 

● 全般的な仕様

構成 DSR(Direct Server Return)方式
ロードバランサの冗長化 VRRPを用いた冗長化に対応
仮想IPアドレス(VIP)、ポート番号 最大4個まで
設定可能な実サーバ数 最大40台
性能目安(最大値) 標準プラン 送信トラフィック: 100Mbps
受信トラフィック: 100Mbps
セッション数: 4,000セッション
毎秒接続数: 100cps程度
ハイスペックプラン 送信トラフィック: 1Gbps
受信トラフィック: 500Mbps
セッション数: 10,000セッション
毎秒接続数: 3,000cps程度

※いずれも最大値の目安となります。必ずしもこの性能値を保証するものではありません。

 

● 仮想IPアドレス登録

仮想IPアドレス追加画面では以下の項目が設定可能です。

VIPアドレス ロードバランサが受け持つ仮想IPアドレスを設定します。
ポート番号 仮想IPアドレスで着信を受けるポート番号を設定します。
設定値は1~65535の整数値となります。
チェック間隔(秒) 実サーバの死活監視を実行する間隔を設定します。
設定値は10以上の整数値となります。
ソーリーサーバ バランシング先が全てダウン状態となった場合に誘導する先を設定します。

※設定の追加、変更後は「反映」ボタンをクリックし、設定内容をロードバランサに反映する操作が必要です
※ソーリーサーバの設定は必須項目ではありません
※ソーリーサーバはお客様にて作成していただく必要があります(サーバ料金別途)

 

● 実サーバ登録

仮想IPアドレスごとのロードバランシング先となる実サーバの追加画面では以下の項目が設定可能です。

IPアドレス ロードバランシング先のサーバのIPアドレスを設定します。
監視方法 IPアドレス、ポート番号で指定したロードバランシング先のサーバの監視方法を「http」、「https」、「ping」、「tcp」より設定します。
「http」、「https」を指定すると追加設定項目が表示され、監視対象のパスと正常時に返答されるレスポンスコードの設定ができます。

※設定の追加、変更後は「反映」ボタンをクリックし、設定内容をロードバランサに反映する操作が必要です

その他

・ロードバランサは「ルータ+スイッチ」または「スイッチ」を使用して構築されたネットワーク内にのみ設置ができます。共用セグメントへの設置はできません。
・冗長構成の冗長度は2冗長となります。
・IPv6には非対応です。

2. 構成例

「ルータ+スイッチ」と、「スイッチ」それぞれで構成されたネットワークへロードバランサを導入する例です。
さくらのクラウドで提供するロードバランサはDSR方式で動作するため、負荷分散させたいサーバ群が接続されるスイッチに並列して追加接続する構成となります。

ルータ+スイッチを組み合わせたWebサーバの負荷分散

ルータ+スイッチ機能で割り当てられたIPアドレスブロックが設定されている複数のWebサーバを、冗長構成のロードバランサで負荷分散する場合の例です。

lb1

想定するネットワークの情報は次の通りです。

IPアドレス帯域 203.0.113.0/28
ゲートウェイ 203.0.113.1
冗長構成ロードバランサ1(※1) 203.0.113.4
冗長構成ロードバランサ2(※2) 203.0.113.5
Webサーバ1 203.0.113.6
Webサーバ2 203.0.113.7
ロードバランサ仮想IPアドレス 203.0.113.8

※1: コントロールパネルのロードバランサ情報画面では「IPv4アドレス #1」と表記
※2: コントロールパネルのロードバランサ情報画面では「IPv4アドレス #2」と表記

スイッチを組み合わせたデータベースサーバの負荷分散

スイッチ機能でプライベートネットワーク環境を作成し、ロードバランサでWebサーバのバックエンドとなるデータベースサーバの負荷分散する場合の例です。

lb2

想定するネットワークの情報は次の通りです。

IPアドレス帯域 192.168.1.0/24
Webサーバ(プライベートネットワーク側) 192.168.1.1
ロードバランサ 192.168.1.2
DBサーバ1 192.168.1.3
DBサーバ2 192.168.1.4
ロードバランサ仮想IPアドレス 192.168.1.10

ソーリーサーバを設定した場合の動き

仮想IPアドレス追加画面では、「ソーリーサーバ」欄にロードバランサ配下に設置された任意のサーバのIPアドレスを指定することで、実サーバが全てダウンした場合に応答するサーバを設定することができます。

sorry

ロードバランサが設定された全ての実サーバでダウンを検知するとソーリーサーバが応答します。高負荷やサーバ障害などで実サーバが正常に機能しなくなった場合にメンテナンス画面を表示する動作を行いたい場合などに便利です。

3. 導入設定

この項目では、先に上げた「ルータ+スイッチを組み合わせたWebサーバの負荷分散」の構成を例として設定を進めます。

1. ルータ+スイッチまたはスイッチの作成

さくらのクラウド環境内へロードバランサを導入する場合、必ず「ルータ+スイッチ」または「スイッチ」で構成されたネットワークが必要となります。これらの機能についての詳しい情報はオンラインマニュアルを参照してください。

2. 実サーバのネットワーク設定

DSR構成でのロードバランシング動作が行われるように、実サーバ側でのネットワーク設定が必要となります。設定手順や設定項目については、一般的なDSR構成ロードバランサ導入時と同様です。これらの設定を実サーバすべてに適用します。

CentOS6系/7系の手順

 

● sysctl.confの設定追加

ループバックアドレスに設定した仮想IPアドレスでARPリクエストに応答しないようにカーネルパラメータを設定します。/etc/sysctl.confファイルに以下の2行の設定を追記します。

net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2

追記後、sysctl.confの設定内容を反映します。

# sysctl -p

 

● ループバックアドレスの追加

新たにlo:0デバイスを作成し、仮想IPアドレス(今回の構成例では203.0.113.8)を設定します。/etc/sysconfig/network-scripts/ifcfg-lo:0ファイルを新規に作成し、以下の内容を記載します。

DEVICE=lo:0
IPADDR=203.0.113.8
NETMASK=255.255.255.255

作成後、lo:0デバイスを有効化します。

# ifup lo:0

ipコマンドで設定が有効化されていることを確認します。

# ip a
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet 203.0.113.8/32 brd 203.0.113.8 scope global lo:0
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever

Ubuntu14.04の手順

iptablesにて、仮想IPアドレス(今回の構成例では203.0.113.8)をリダイレクトする設定を追加します。

sudo iptables -t nat -A PREROUTING -d 203.0.113.8 -j REDIRECT

iptablesの設定を永続化するために、iptables-persistentをインストールします。

sudo apt-get install iptables-persistent

3. コントロールパネルからの設定

ロードバランシング先となる各サーバの設定完了後、コントロールパネルからロードバランサの追加設定を行います。

 

● 現在のネットワークの確認

現在のネットワーク構成を確認します。左メニューの「マップ」ボタンをクリックし、スイッチとサーバの接続マップを表示します。構成例1のロードバランサ追加前の状態(Webサーバが2台スイッチに接続されている状態)である事が確認できます。

lb4a

 

● ロードバランサの追加

スイッチにロードバランサを追加します。画面上部のメニューより「アプライアンス」をクリックするとロードバランサ一覧画面が表示されるので、この画面左上の「追加」ボタンをクリックして作成を開始します。

lb01

構成例1の通り以下の内容を入力・選択します。想定されるWebトラフィックより、今回は「標準プラン」のロードバランサを使用することとします。

接続先スイッチ ロードバランサを接続したいスイッチ
冗長化 はい
プラン 標準プラン
VRID 1 (ネットワーク内に設置するロードバランサは1台のみのためデフォルトのまま)
IPv4アドレス #1 203.0.113.4
IPv4アドレス #2 203.0.113.5
ネットマスク 28
ゲートウェイ 203.0.113.1

こちらの情報を元に、コントロールパネル内の各項目に入力します。

lb02

※VRIDは同一ネットワーク上で一意である必要があります。VRIDは作成後変更できないため、同一ネットワーク上にVRRPが有効なアプライアンス(VPCルータ・ロードバランサ)や、VRRPを動かしている仮想サーバがある場合は、VRIDが重複しないようご注意ください。

各情報の入力後「作成」ボタンをクリックし、ロードバランサの作成を開始します(※)。作成後は、ロードバランサ一覧画面で該当のロードバランサをダブルクリックし、作成時に入力した内容に問題のない事を確認してください。

lb06

※作成後、ロードバランサが使用可能になるまで数分程度の時間がかかります。ロードバランサ一覧画面のステータス欄で「利用可能」の表示になったことを確認後にご利用ください。

lb03

・コピー中
lb04

・利用可能
lb05

 

● ロードバランサの仮想IPアドレス設定

ロードバランサに仮想IPアドレスを設定します。ロードバランサ一覧画面で該当のロードバランサをダブルクリックし、「VIP設定」のタブをクリックします。

lb07

右下の「追加」ボタンをクリックすると仮想IPアドレス追加画面が表示されるので、各項目を入力します。

今回はWebサーバのロードバランシングとなるため、ポート番号には「80」を指定します。また、チェック間隔はデフォルト値の10秒としました(後述する実サーバのサービス稼動状態の監視間隔となります)。

VIPアドレス 203.0.113.8
ポート番号 80
チェック間隔(秒) 10

lb08

入力後、「作成」ボタンをクリックすると仮想IPアドレスが設定されます。設定を有効にするために「反映」ボタンをクリックします。

lb09

スイッチ詳細画面では、作成した仮想IPアドレスのタブが新たに表示されます。

lb10

 

● 仮想IPアドレスへの実サーバ登録

これまで設定した仮想IPアドレスにロードバランシング対象となる実サーバを登録します。今回の構成例中の「Webサーバ#1(203.0.113.6)」の場合は以下の設定値となります。

IPアドレス 203.0.113.6
ポート番号 80
監視方法 http
パス /index.html
レスポンスコード 200

監視方法は他にping、tcpが選択できますが、今回はWebサーバのロードバランシングとなるためhttpによる監視を選択します。これにより、指定したパス・レスポンスコードによる死活監視が行えるため、Webサーバの冗長化をする場合により確実な監視となります。

前項で確認した仮想IPアドレスタブ画面で「追加」ボタンをクリックして実サーバ追加画面を表示し、項目を入力します。

lb11

同様に、「Webサーバ#2」についても実サーバとして登録します。登録が完了したら「反映」ボタンをクリックします。

lb12

全ての実サーバ登録後のリストは以下のようになります。

lb13

 

● 設定内容の反映

これまで行ってきた設定はロードバランサ側に即時反映されない仕様となっています。設定の追加や変更を行った後は、必ず「反映」ボタンをクリックしてください。「反映」ボタン押下後はすぐに設定が有効となります。

lb12

 

● ロードバランサの動作状況の確認

仮想IPアドレスとして設定したIPアドレス名のタブより、その配下で動作する実サーバの動作状況を確認できます。

lb13

ステータス 指定した監視方法により、実サーバでのレスポンスが正常であれば「UP」、異常があれば「DOWN」が表示されます。
コネクション数 ロードバランサーがハンドリングしているEstablish状態のtcpコネクション数の現在値が表示されます。通常、ロードバランシング対象サーバに均等に割り振られます。

4. 導入後の管理

アクティビティモニタの表示

ロードバランサのトラフィックグラフが表示されます。特定の時間を拡大するなど、操作はサーバのアクティビティモニタと同様に行えます。

lb14

設定の変更

VIP設定や、各VIPへの実サーバ設定画面では、リスト右側のアイコンを使用して設定内容の編集や設定の削除が行えます。

lb15

アイコン
説明
編集アイコン
設定追加時と同様の画面が表示され、設定値を変更することができます。
削除アイコン
設定を削除します。

設定変更後は、必ず画面の「反映」ボタンをクリックし、ロードバランサ側に設定内容を反映させてください。

電源操作

通常のサーバと同様、ロードバランサの停止や再起動などの操作を行うことができます。個別のロードバランサの画面を開き、左上の「電源操作」メニューより実行します。

lb16

ロードバランサの削除

削除前にロードバランサをシャットダウンする必要があります。「電源操作」メニューからのシャットダウン操作後、電源が「DOWN」状態になったことを確認し、削除ボタンをクリックします。

lb17

お電話でのお問い合わせ

0120-380-397

カスタマーセンター 受付時間:平日10:00〜18:00

※さくらのクラウドについてのお問い合わせは、音声ガイダンスにて[6]番をご選択下さい。