SoftLayerのGlobal Server Load Balancing(2/3):Local Load Balancing編 #softlayer
この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。
今回の記事では、NetScalerGlobal Server Load Balancing(GSLB:広域負荷分散、以下GSLB)のローカルロードバランシングの設定を解説します。
GSLBとして機能するためには、まず各拠点のNetScalerがローカルロードバランサーとして機能すべきです。
NetScalerのネットワーク構成
SoftLayer上でNetScalerをオーダした場合、最低限のネットワーク構成(Gateway及びNSIP、SNIP)がプロビジョニングされている状態です。
VIP(Virtual IP)
VIP は、クライアントが接続するパブリックIPアドレスです。
NSIP(Net Scaler IP)
NSIPは、NetScaler自体のIPアドレスであり、主に管理用のブライベートIPアドレスです。
SNIP(Subnet IP)
SNIPは、NetScaler がバックエンドのサーバがあるサブネットとコミュニケーションを行うためのパブリックIPアドレスです。
基本環境設定
ロードバランサーの基本設定及びロードバランサーの設定は、GSLBの拠点にある全てのNetScalerで同様な設定が必要です。とりあえず、片方のNetScalerから行うが、同時並行で行うかは特に問題になりません。
[Java Applet could not be loaded対応]
NetScalerのマネジメントコンソール操作中で、「Java Applet could not be loaded」のようなメッセージが出て何回リトライしても、先に進まないケースがあります。これはJava Java Plug-in(1.7_xx)のセキュリティ上の脆弱性の問題からブラウザがJava Appletの使用をブロックしてしまっているからです。「Java Applet could not be loaded」で検索してみると、様々な対応策が紹介されています。しかし、どれも完全ではないのが現状です。SoftLayerのサポートからも解決策というよりアドバイスが返ってくるだけでした。
ここでは、SoftLayerのサポートからの返答やWebで見つけた対応策をミックスした解決策を紹介します。
参考までに検証環境は、次の通りです。
- Windows 7 Professional SP1
- Java 1.7._67
- Firefox 31.0(SoftLayer使用時)
- IE 11.x(NetScaler使用時)
セキュリティレベルを落とす
Java Plug-inを無効にする
ブラウザをFirefoxからIEに変えてバージョンの自動更新を中止する
これは上記の2つの対応でもFirefoxでは効果がなかったためです。さらに自動更新で勝手に最新バージョンになるのを止めました。
Javaバージョンをダウングレードする
基本的にJava7は必要です。それで一度Java環境を消して初期バージョンをインストールし、自動更新を止めるというような苦肉の策を考えていましたが、幸いここまでしなくて済みました。
Setup Wizard開始
[NetScaler > System Information > Setup Wizard…]をクリックして下さい(Start in:configurationでログインした場合の初期画面)。
Network Config
SoftLayerでオーダしたNetScalerは最低限のネットワーク設定が行われています。ここでは特に設定は必要ありません。ただ、内容をメモしておいて下さい。
IP Address | 10.110.42.199 | NetScalerのIPアドレス。プライベートIPアドレス。 |
Netmask | 255.255.255.192 | |
Gateway | 119.81.xxx.241 | |
Hostname | SLADC342860-1.SL342860.com | NetScalerのホスト名 |
MIP/SNIP | 既に1つのSNIPが構成されています。SNIPは、CLIからshow ns ip、GUIの[Nescaler>System>Network>IPs]から確認できます。 |
SNIPは、CLIからshow ns ipで確認できます。GUIのIPsからも確認できます。
Choose Application
そのままスキップして下さい。
Summary
[Finish]をクリックして下さい。
[Finish]をクリックすると、次のように3つのリンクが表示されます。
Manage License
NetScaler VPX提供のタイプによっては、Licenseをアップロードが必要ですが、SoftLayerでは必要ありません。
Configure Time Zone
タイムゾーンは、日本時刻にします。
Change Admin Password
NetScalerの管理者パスワードが変更できます。
Reboot
必要な設定が終了したら[Exit]をクリックして下さい。自動的にNetScalerのRebootが実行されます。
MBF (Mac Based Forwarding)変更
Configure modes
[NetScaler > System > Settings→Configure Mode]をクリックして下さい。
そして、次の3か所をチェックして下さい。
Configure basic features
次は、[NetScaler > System > Settings→Configure basic features]をクリックして下さい。
とりあえず、今回はデフォルトの構成で進めます。
では、ここまでの設定は、GSLBの拠点となる2つのNetScalerで同様に実行して下さい。
ロードバランシング設定
ロードバランシング設定フロー
ローカルロードバランシングの設定は次の順で行います。
事前準備
次のようにGSLBの拠点毎にサーバを起動して下さい。
Data Center | Hong Kong/San Jose | |
Server | Linux | |
Host Name |
hk-1.gsbl.cl-lab.net hk-2.gsbl.cl-lab.net js-1.gslb.cl-lab.net js-2.gslb.cl-lab.net |
|
WebServer | Apache2 | サービスを起動しておいて下さい。 service httpd start |
/var/www/html/ | index.html | 各サーバ毎にindex.htmlファイルを作成し、ホスト名がわかるように記載して下さい。 <h1> Welcome! (ホスト名) </h1> |
サーバ設定
[NetScaler > Traffic Management > Load Balancing→Server]をクリックして下さい。
そしてサーバ名とサーバのパブリックIPアドレスを設定して下さい(繰り返し2台)。
サーバを確認して下さい。サーバが起動中の場合、Enabledが「緑色」になります。
サービス設定
[NetScaler > Traffic Management > Load Balancing →Services]をクリックして下さい。サービス名を入力し、一致するサーバIPアドレスを設定して下さい(繰り返し2台)。
Webサービスの状態が「Up」になっているか確認して下さい。
仮想サーバ設定
[NetScaler > Traffic Management > Load Balancing →Virtual Servers]をクリックして下さい。
仮想サーバ名とIPアドレスを設定し下さい(VIP)。IPアドレスはオーダ時に獲得している4つのパブリックIPアドレスの1つを入力して下さい。
仮想サーバの設定を確認して下さい。「State/Effective State」が「Up」なっていることを確認して下さい。
なお、デフォルトのロードバランシングアルゴリズムは、LEASTCONNECTIONです。
Policy Base Route(PBR)設定
[NetScaler > System > Network >PBRs > Policy Based Routing (PBRs)]をクリックして下さい。
Next Hop | 119.xxx.xxx.141 | NetScalerのGateWay IPアドレス |
Operation | = | |
Source IP Low | 119.xxx.xxx132 | オーダしたパブリックIPアドレス |
Source IP High | 119.xxx.xxx.135 | オーダしたパブリックIPアドレス |
Source MAX | 00:00:00:00:00:00 |
PBRの設定を確認して下さい。
PBRの適用
PBRは、別途の適用操作が必要です。
[NetScaler > System > Network > PBRs > Policy Based Routing (PBRs) →Action→ Apply]をクリックし、[Yes]をクリックして下さい。
では、ここまでローカルロードバランシングの設定は、一通り終了しました。もちろんここまで設定は、GSLBの拠点になる2つのデータセンターのNetScalerで同様な設定が必要です。
ローカルロードバランシングの確認
では、ブラウザからVIPに接続してみましょう。次のような回答が返ってくるはずです。
Jan NoseのVIPにも接続してみて下さい。
まとめ
今回の記事では、GSLBの拠点となる複数のNetScalerに対してIPアドレスベースのローカルロードバランシングの設定を行って見ました。次回は、いよいよGSLBの設定です。楽しみにして下さい。
関連記事
SoftLayerのGlobal Server Load Balancing(1/3):デバイスオーダ編
SoftLayerのGlobal Server Load Balancing(3/3):GSLB編