Citrix社製仮想ロードバランサであるNetScaler VPX(NetScaler 1000V)をVMware Player内の仮想ネットワークに導入してみた。
サーバ仮想化の追い風を受けて、今ではロードバランサ機で最も勢いがあるCitrixのNetScaler MPXシリーズ。
NetScaler 1000VはCiscoのOEM版で、正式名称はNetScaler VPX。
業務ではNetScaler MPXをデータセンタに導入してきたが、自宅への導入となると、実機は高価且つ置き場所や電気代等の問題がある為にソフトウェア版であるVPXを検討。
自分のPC内でも何とか動作させたく10日以上も奮闘。
何とか、インライン構成において導入・設定から負荷分散確認まで成功したのだが、ゆくゆくはワンアーム構成でも成功させたい。
ルータ---ロードバランサ---サーバ といった簡単なNW構成を構築するにあたり、今回は第1弾としてNetScaler1000Vのインストールと設定のメモ。
ルータやサーバの導入や設定方法に関しては次回以降にて。
・DELL INSPIRON 1545改
・Windows7 Home Edition (64bit版) 4GB RAM / Intel Core2Duo P9700 2.8GHz
・VMware Player 7.1.0 (英語版)
・CSR1000V: csr1000v-universalk9.03.15.00.S.155-1.2S-std.iso
・NetScaler1000V: NetScaler1000V-ESX-10.1-130.10_nc.ova
・Server: Ubuntu 14.04.2
自分の環境では、同時稼働は上記4台で限界。
PCのメモリ容量は多ければ多い程、安定して動作する。
まずは、VMware Playerへの導入。
VMware Playerへのインストールは、他のGuestOSが立ち上がっていない状態にて実施する。
1."NetScaler1000V-ESX-10.1-130.10_nc.ova"を右クリックし"Open with VMware Player"を選択。
Import Virtual Machineのウインドウが表示され、
"Name for the new virtual machine:"で仮想マシン名の入力(任意の文字列でOK)と、
"Storage path for the new virtual machine:"で仮想マシンのファイル保存先指定(そのままでOK)が求められる。
自分の環境では、仮想マシン名をHost名(mtkCLLB99)とし、ファイル保存先はそのままで、Importをクリック。
Importのクリック直後に"Default: F1"が出力される。Enterキーを叩き、NetScalerのインストール開始。
上記で選択したovaファイルが読み込まれる。
2.暫く経つと"Enter NetScaler's IPv4 address [ ]:"が出力される。
NetScaler使いではお馴染みのNSIPの設定。GUIでアクセスする際に使われるIP Addressだ。
自分の環境では192.168.10.10とした。
続けて、"Enter Netmask [ ]:"が出力される。255.255.255.0とした。
次に"Enter Gateway IPv4 address [ ]:"が出力される。192.168.10.1とした。
(VMware PlayerのVMnet1に設定されているIP Addressは192.168.10.100である)
3.上記設定内容の確認。
1.NetScaler's IPv4 address [192.168.10.10] 2.Netmask [255.255.255.0] 3.Gateway IPv4 address [192.168.10.1] 4.Save and quit Select item (1-4) [4]:
上記が出力される。設定内容が正しければEnterキーを叩いて設定を保存。
この後、NetScalerのインストールが再開される。
4.インストールの完了。
"NetScaler initialization is still in proogress; please wait 20 to 30 seconds before attempting to log in."
の出力。30秒程後にEnterキーを叩くと、ログインプロンプトが出力され、ログインIDとパスワードの入力が求められる。
Login ID、パスワード共にデフォルトのnsrootを入力。
5.長いライセンス条項が出力される。
"Do you agree License Agreement (Y/N)?: "の出力。全文出力させた後にYキーを叩き、続けてEnterキーを叩く。
プロンプト( > )が出力され、コマンドが打てる状態になる。
6.設定に入る前に、VMware Playerの設定を変更。
自動でNetwork AdaptorがBridged(Automatic)で2つ作成されている。
これを今回の環境に合わせた内容に修正する。
save ns configコマンドを実行し、設定内容を一旦保存。
VMware Playerウインドウの"Player"から"Removal Devices"、"Network Adaptor"、"setting"の順に移り、Bridged(Automatic)から"Host-only"に変更。
同じくNetwork Adaper2もHost-onlyに変更しOKをクリック。
7.VMware Player上で"Play virtual machine"をクリックしNetScalerを再度立ち上げる。
loginプロンプトの所でLogin ID、Password共にnsrootを入力しログイン実施。
ここで、正確にnsrootを打っても"Login incorrect"と出力されてログイン出来ない事がある。
その場合は面倒でも再度.ovaファイルのインポートから始める。
8.ここから設定に入る。
SNIP(NetScalerがサーバにアクセスする際に使用するIP Address)とVIP(クライアントがサーバにアクセスする際の、宛先IP Address)の設定。
上段がSNIP、下段がVIPの設定。
add ns ip 172.16.10.1 255.255.255.0 -icmp ENABLED -vServer DISABLED add ns ip 192.168.10.2 255.255.255.0 -type VIP -mgmtAccess ENABLED -icmp ENABLED
9.サーバの設定。
最初にLoad Balancing機能を有効にするコマンドを打ち、
続けて負荷分散対象のサーバを設定。
以下に記載しているmtkCLSV98と99はサーバ名であり、サーバのHostnameと同一になっている。
enable ns feature LoadBalancing add server mtkCLSV98 172.16.10.2 -state ENABLED add server mtkCLSV99 172.16.10.3 -state ENABLED
10.負荷分散対象サービスの設定。今回はFTPとした。
mtkCLSV98-ftpとmtkCLSV98-ftp2はサービス名、mtkCLSV98はサーバ名である。
add service mtkCLSV98-ftp21 mtkCLSV98 FTP 21 add service mtkCLSV99-ftp21 mtkCLSV99 FTP 21
11.Virtual Serverの設定。mtkCLSV-vipとmtkCLSV-vip2はVirtual Server名。
FTPの場合、Persistence設定はラウンドロビンでは不適切である為にSource IPに設定変更する。
add lb vserver mtkCLSV-vip FTP 192.168.10.2 21 -persistenceType SOURCEIP -icmpUsrResponce ACTIVE
12.上記12で設定したサービスとVirtual Serverの紐付け設定。
bind lb vserver mtkCLSV-vip mtkCLSV98-ftp21 bind lb vserver mtkCLSV-vip mtkCLSV99-ftp21
13.上記2.にて設定したNSIPにWebブラウザでアクセスする為のStatic Routeを追加。
add route 192.168.10.0 255.255.255.0 192.168.10.2
14.設定内容を保存。
save ns config
15.この後に、CSR1000Vとサーバ(Ubuntu14.04)を起動させる。
CSR1000Vの設定、NetScaler側のロードバランシング機能確認は次回以降にて。