NSX for vSphereのコンポーネント
Plane | NSX Component | Description |
---|---|---|
Management Plane | NSX Manager | 各コンポーネントの設定や操作を行う |
Control Plane | NSX Controller | 論理スイッチ、ルーティングなどの制御情報を管理する |
Data Plane | Hypervisor Kernel Module, Edge Service Gateway | 制御情報をもとにトラフィックを処理する |
各NSXコンポーネントのデプロイは以下の流れに沿って行う。
- NSX Managerをデプロイする
- vCenterにNSX Managerを登録する
- NSX Controllerをデプロイする
- ESXiホストにHypervisor Kernel Moduleをインストールする
- Edge Service Gatewayをデプロイする
NSX Manager
- 仮想アプライアンス(VMwareからOVAで提供される)
- NSX Controllerなど、他のNSXのコンポーネントも同梱されている
- vSphere HAを構成しているクラスタに展開するのが推奨
- PostgreSQL、RabbitMQが内部で動作している
- vCenterと同じくDNS, NTPは必須
-
NSX ManagerとvCenterは1対1対応
- vCenterが2台いる環境ならNSX Managerも2台必要
- Cross-vCenter環境の場合は1台Primaryで他はSecondaryとして扱う
- 管理用のインターフェースはvCenter
- NSX ManagerがREST APIを提供していてvCenterが叩いている
- curlとか使えばCLIで直接操作できる、やったね!
- NSX Manager自体もGUIはあるがvCenterの登録や自身の設定管理、バックアップ/リストアなど特殊な管理用の画面のみ
NSX Controller
- 仮想アプライアンス
- NSX ManagerからvCenterを経由してデプロイする
- デプロイ時はvCenter上で動くEAM(vSphere ESXi Agent Manager)が仲介役
- IPアドレスを指定してデプロイすることはできない(NSX Controller用のIPアドレスレンジを事前に定義しておいて、その中から採番される仕組み)
- Paxosベースのアルゴリズムで動作するので3台の展開が必須
- クラスタを組んで動作するのでデータは冗長化されているがより安全にするため、以下の構成/設定が推奨されている
- NSX Controllerを展開するクラスタを構成するESXiホスト群はToRスイッチの障害時に全滅しないように配置する
- 同じESXiホスト上で複数のNSX Controllerを動作させない(DRSが使える場合はアンチアフィニティルールを適用する)
- NSX Controllerを展開するクラスタでvSphere HAを構成しておく
- 論理スイッチ、ルーティング情報の収集/計算/配布を担当する
- ワークロードはシャーディングによって動的に分散される
- NSX Controllerにログインしないと担当しているシャードは見えない(GUIで見れない)
- ノード故障時は故障ノードに割り当てられていたシャードは残ったノードに再配置される
- NSX Controller上では以下のサービス(ロール)が動く
- API Provider
- Persistence Server
- Switch Manager
- Directory Server
- Logical Manager
- 各ロールにはMasterノードが存在し、Masterノードとして動作しているNSX Controllerが障害時は残りのNSX Controllerの中から新しいMasterノードを選出する
Hypervisor Kernel Module, Edge Service Gateway
実際にトラフィックを処理するコンポーネント群
- Hypervisor Kernel Module: ESXiにVIBとしてインストール
- Logical Switch
- DLR(Distributed Logical Router)
- DFW(Distributed FireWall)
- Edge Service Gateway: 仮想アプライアンスとして展開
- ルーティング
- ファイアウォール
- ロードバランサ
- VPN (IPSec/SSL/L2)