VMware Cloud Foundation(VCF)5.2.1 の SDDC Manager からデプロイした Avi Load Balancer で、仮想サービス(Virtual Service)を作成します。
前回はこちら。
今回の内容です。
1. Web サーバー仮想マシンの用意
ロードバランサーの動作確認でサーバー プール メンバーとして使用する Web サーバーを、下記の手順で用意しておきます。
それぞれの Web サーバーは、下記のように構築しておきます。
- Web サーバー #1
- 仮想マシン名 / ホスト名:demo-web-01
- 接続するポートグループ:seg-vlan-80
- IP アドレス/サブネット マスク:192.168.80.11/24
- index.html の内容:<h1>demo-web-01</h1>
- Web サーバー #2
- 仮想マシン名 / ホスト名:demo-web-02
- 接続するポートグループ:seg-vlan-80
- IP アドレス/サブネット マスク:192.168.80.12/24
- index.html の内容:<h1>demo-web-02</h1>
下記のように、2台の Web サーバー仮想マシンを用意しておきます。
2. 仮想サービス(Virtual Service)の作成
Avi Load Balancer による Web サーバーへのロード バランシングを動作確認するため、サーバー プール、VIP、仮想サービスを順に作成します。
2-1. サーバー プールの作成
Avi Load Balancer UI の「アプリケーション」タブ →「プール」を開き、「プールの作成」をクリックします。
「プールの作成」画面が開くので、プールの名前を入力して「クラウドと VRF の設定」をクリックします。
- 名前:Web-Pool-01
クラウドを選択して、「設定」をクリックします。
- クラウド:VCF-NSX-Cloud
「プールの作成」画面に戻るので、パラメータを入力して下にスクロールします。
- ロード バランシング アルゴリズム:Round Robin
※仮想サービスへのアクセス確認時にわかりやすいため。 - リアルタイム メトリックの有効化:ON
「配置サーバ ネットワーク」の下にある「追加」をクリックして、Web サーバーを配置するネットワークを選択します。
- サーバ ネットワーク:seg-vlan-80- 192.168.80.0/24
- サブネット:192.168.80.0/24
プール メンバーを追加します。サーバーの情報を入力して「追加」をクリックします。
- サーバの選択基準:IP アドレス、範囲、または DNS 名
- アドレス:192.168.80.11
1台目の Web サーバーが追加されたので、同様に2台目を追加します。
- サーバの選択基準:IP アドレス、範囲、または DNS 名
- アドレス:192.168.80.12
2台のサーバーが追加されたことを確認し、さらに下にスクロールします。
- 192.168.80.11
- 192.168.80.12
「健全性モニター」の下にある「追加」をクリックし、モニターを選択して「保存」をクリックします。
- 名前:System-HTTP
これで、プールが作成されました。まだ仮想サービスに割り当てられていないので、健全性の表示は灰色のまま、次に進みます。
2-2. VIP アドレスの作成
仮想サービスに割り当てる VIP アドレスを設定します。
「アプリケーション」タブ →「VS VIPs」→「作成」をクリックします。
「VS VIP の作成」画面が表示されるので、名前を入力して「クラウドと VRF の設定」をクリックします。
- 名前:Web-VIP-01
クラウドを選択して、「設定」をクリックします。
- クラウド:VCF-NSX-Cloud
「VS VIP の作成」画面に戻るので、VIP の下にある「追加」をクリックします。
「VIP の編集」画面が開くので、パラメータを入力します。
- VIP アドレス割り当てネットワーク:seg-vlan-81 - 192.168.81.0/24
- IPv4 サブネット:192.168.81.0/24
「配置ネットワーク」の下にある「追加」をクリックします。
VIP を配置するネットワークを選択して、「保存」をクリックします。
- 配置ネットワーク:seg-vlan-81 - 192.168.81.0/24
- IPv4 サブネット:192.168.81.0/24
「VIP の編集」画面に戻るので、配置ネットワークが選択されたことを確認して、「保存」をクリックします。
「VS VIP の作成」画面に戻るので、VIP の設定が入力されたことを確認して、「保存」をクリックします。
これで、VIP のオブジェクトが作成されました。
2-3. 仮想サービス(Virtual Service)の作成
「アプリケーション」→「仮想サービス」を開き、「仮想サービスの作成」→「詳細設定」をクリックします。
クラウドを選択して、「次へ」をクリックします。
- クラウド:VCF-NSX-Cloud
仮想サービスの設定を入力して、「次へ」をクリックします。
- 名前:Web-VS-01
- VS VIP:Web-VIP-01
- プール:Web-Pool-01
「ポリシー」は、デフォルトのまま「次へ」をクリックします。
「分析」では、下記の設定を変更して「次へ」をクリックします。
- メトリックの更新頻度:0 分
- 重要でないログ間隔:0 min(0 分)
「詳細」では、サービス エンジン グループを選択して、「保存」をクリックします。
- サービス エンジン グループ:VCF-Avi-SE-Group
仮想サービスが作成され、サービス エンジン仮想マシン(2台)の自動デプロイが開始されます。
サービス エンジンのデプロイ処理などの進捗やエラーは「イベント」タブで確認できます。
vSphere Client で、コンテンツ ライブラリ(Avi-Library-01)を確認すると、サービス エンジン仮想マシンの OVF テンプレートが自動的にインポートされています。
数分ほど待つと、サービス エンジン仮想マシンのデプロイが完了します。このとき、サービス エンジン グループで指定した仮想マシン フォルダも自動作成されます。
「アプリケーション」タブ →「ダッシュボード」を開き、「表示 VS ツリー」を選択すると、仮想サービス → サーバー プール → メンバー の状態が確認できます。
健全性スコアの数字は、しばらく待つと 100 に近づくはずです。
「アプリケーション」→「仮想サービス」を開くと、「アドレス」列に自動割り当てされた VIP アドレス(192.168.81.200)が表示されています。
「アプリケーション」→「VS VIPs」でも、VIP アドレスを確認できます。
「アプリケーション」→「プール」をひらくと、サーバー プールが仮想サービスに割り当てられたことで、メンバー サーバー台数の数字(稼働/合計)などが表示されています。
3. 仮想サービスへのアクセス確認
「アプリケーション」→「仮想サービス」を開き、仮想サービスに割り当てられている VIP アドレス(192.168.81.200)を確認します。
Web ブラウザから、仮想サービスの VIP アドレス(192.168.81.200)にアクセスすると、Web サーバー #1 / #2 のページが、ラウンド ロビンで順番に表示されるはずです。
※この例は Web サーバー #2 のページ。
仮想サービス(Web-VS-01)の「ログ」タブを開き、「重要でないログ」をクリックして有効(緑)にすると、詳細なアクセス ログを確認できます。
下記のように、クライアント → 仮想サービス、仮想サービス → メンバー サーバーのアクセスが可視化されます。
- Client IP: 192.168.70.2:49918
↓↑ - Virtual Service IP: 192.168.81.200:80 ※Service Engine VM の VIP
- Server Conn IP: 192.168.80.3:9816 ※Service Engine VM の別 vNIC
↓↑ - Client IP: 192.168.80.12:80(Web サーバー #2)
以上、VCF 5.2.1 で Avi Load Balancer の動作確認をしてみる話でした。