NSX Edgeは仮想マシンだけでなくベアメタルにインストールすることもできます。インストール方法は「Automated install」「Interactive install」の2通りが選べますが、前者の「Automated install」について説明します。「Automated install」はDHCPでIPアドレスを割り当てつつインストールを行い、インストール後に詳細なパラメタを手作業で入力します。
前提条件
ハードウェア要件
ベアメタル版NSX Edgeはハードウェア要件が厳しめで、例えば、遊休資産をNSX Edgeに転用するようなことは殆どできないでしょう。ハードウェア要件は「NSX Edge ベア メタル要件」を参照ください。
もし、要件を満たしてないハードウェアを使用すると、以下のようにOSインストールは成功したとしても、dataplaneの設定でエラーを返されます。
nsx-edge182> set dataplane device list 0000:02:00.1 Updating custom NIC list... ERROR: NSX Edge configuration has failed. Host is not configured with supported network device. nsx-edge182>
もし、適当なハードウェアが見当たらないものの、インストールの練習をしたい場合は仮想マシンでもほぼ同等の操作を確認することができます。
起動方法
NSX Edgeの起動はUEFIではなくレガシーBIOSが推奨されています。仮想マシン版を使用する場合は、ovaテンプレート内にレガシーBIOSの設定が含まれているため明示的な操作は不要です。しかし、ベアメタルの場合は、近年の殆どのベアメタルサーバはデフォルト設定がUEFIになっているため、デフォルト設定を明示的に変更する必要があります。
NSX-T 3.2.0でUEFIがサポートされました。レガシーBIOSへの設定変更が必要なのはNSX-T 3.2.0未満である事に注意ください。
DHCPサーバ
「Automated install」はDHCPサーバがある環境を前提としています。以下スクリーンショットはNEC IXの場合の設定例ですが、サーバでもネットワーク機器でもDHCPサーバの実装方法はどのような方法を採用しても差し支えございません。
NSX Edgeのインストール
ダウンロード
「My VMwareのNSX-T ダウンロードページ」へアクセスします。「VMware NSX-T Data Center 3.1.2」の「ダウンロードする」を押下します。
「NSX Edge for Bare Metal」の「今すぐダウンロード」を押下します。
インストール準備
さきほどダウンロードしたISOファイルから起動するようにします。設定方法はメーカーごとに異なるため説明を省略します。以下スクリーンショットはHPE Proliant DL360 G9の場合のものです。
ISOファイルをマウントします。
必要に応じてboot先を変更してください。設定方法はメーカーごとに異なるため説明を省略します。以下スクリーンショットはHPE Proliant DL360 G9の場合のものです。
以下スクリーンショットはCD-ROMから起動する例です。
インストール
「Automated install」か「Interactive install」か、どちらかのインストール方法を選択します。このページでは「Automated install」を説明します。
DHCPによってIPアドレスを割り当てるNICを選択します。
ここで紫色の画面が表示された場合は、UEFIになっている可能性があります。起動方法を「UEFI」から「レガシーBIOS」に変更してください。
インストール完了まで待ちます
NSX Edgeの設定
初期パスワードの変更
初期状態ではrootユーザのパスワードは「vmware」で、adminユーザのパスワードは「default」です。
初回ログイン後はパスワードの変更を求められます。パスワードは12文字以上との要件がありますので、要件を満たすパスワードを入力してください。なお、英字キーボードになっていますので、特殊文字を使うときは注意が必要です。例えば、「@」を入力したいならば「Shift + 2」です。
以下スクリーンショットはrootユーザでログインし、rootパスワードを変更したときの操作です。
さらに「passwd admin」コマンドでadminユーザを変更します。
NSX EdgeはUbuntu18をベースに作られたOSですので、基本操作はUbuntuと同じです。
root@nsx-edge:~# passwd admin New password: Retype new password: passwd: password updated successfully root@nsx-edge:~#
IPアドレス設定
「su – admin」コマンドでadminユーザにスイッチした後、以下のコマンドで管理用IPアドレスの設定が可能です。
以下はVLANを使わない場合の設定例です。このページで紹介する設定例が当てはまらない場合は、公式資料の「Install NSX Edge Automatically via ISO File」を参照ください。
set interface eth0 ip <CIDR> gateway <gateway-ip> plane mgmt
設定したIPアドレスに対して、ping応答があることを確認します。
sshdの起動
以下のコマンドでsshの起動し、さらに自動起動を有効にします。
start service ssh set service ssh start-on-boot
ssh起動後、NSX Edgeへsshによるログインが可能になったことを確認します。
root sshログインの許可
root sshを許可する方法は一般的なLinuxディストリビューションと同じです。rootユーザで/etc/ssh/sshd_configを編集し、PermitRootLoginをyesに変更します。
# vim /etc/ssh/sshd_config <omitted> # Authentication: #LoginGraceTime 2m PermitRootLogin yes #StrictModes yes MaxAuthTries 3 MaxSessions 2
systemctlコマンドで設定を反映させます。
systemctl restart ssh
データプレーン用 NIC登録
NSX EdgeのNICをデータプレーン用として設定します。eth0は管理用ですので、残りのeth1, eth2, eth3をデータプレーン用として使用します。
データプレーン用として使用するNICはインターフェース名やインターフェース番号ではなく、PCIアドレスで指定する必要があります。PCIアドレスを調べるには、rootユーザでlspciコマンドなどを使用します。使用例は以下の通りです。
root@nsx-edge:~# lspci -D | egrep -i "Network|Ethernet" 0000:03:00.0 Ethernet controller: VMware VMXNET3 Ethernet Controller (rev 01) 0000:0b:00.0 Ethernet controller: VMware VMXNET3 Ethernet Controller (rev 01) 0000:13:00.0 Ethernet controller: VMware VMXNET3 Ethernet Controller (rev 01) 0000:1b:00.0 Ethernet controller: VMware VMXNET3 Ethernet Controller (rev 01) root@nsx-edge:~#
「set dataplane device list」コマンドでNICをデータプレーン用として登録します。成功した場合は「Grub config is good」と表示されます。
サポートされないハードウェアを登録しようとした場合は「Host is not configured with supported network device.」と表示されます。
nsx-edge> set dataplane device list 0000:0b:00.0 [sudo] password for admin: Updating custom NIC list... WARNING: 0000:0b:00.0 is not bound to any linux driver INFO: Config was written to: /config/vmware/edge/config.json INFO: Grub backup already exists. Skipping. INFO: Grub config is good. nsx-edge> set dataplane device list 0000:13:00.0 Updating custom NIC list... WARNING: 0000:13:00.0 is not bound to any linux driver INFO: Config was written to: /config/vmware/edge/config.json INFO: Grub backup already exists. Skipping. INFO: Grub config is good. nsx-edge> set dataplane device list 0000:1b:00.0 Updating custom NIC list... WARNING: 0000:1b:00.0 is not bound to any linux driver INFO: Config was written to: /config/vmware/edge/config.json INFO: Grub backup already exists. Skipping. INFO: Grub config is good. nsx-edge>
再起動で設定を反映させます。
nsx-edge> restart service dataplane nsx-edge>
データプレーン用NICを確認します。
nsx-edge> get dataplane device list System datapath-supported devices: 0000:03:00.0 - VMXNET3 Ethernet Controller | Vendor: VMware ^ Kernel interfaces detected: eth0 0000:0b:00.0 - VMXNET3 Ethernet Controller | Vendor: VMware 0000:1b:00.0 - VMXNET3 Ethernet Controller | Vendor: VMware 0000:13:00.0 - VMXNET3 Ethernet Controller | Vendor: VMware Thu May 13 2021 UTC 15:33:22.087 nsx-edge>
「get interface」コマンドでNIC一覧を表示すると、設定前はeth1, eth2, eth3と表示されていたNICがfp-eth0, fp-eth1, fp-eth2に変わっていることが分かります。
nsx-edge> get interfaces Thu May 13 2021 UTC 15:33:36.078 Interface: bond0 Address: unknown MAC address: d2:f3:95:c7:ff:5e MTU: 1500 Broadcast address: None KNI: False Bond mode: ACTIVE_BACKUP Bond primary slave: None Bond currently active slave: None Bond slaves: Link status: down Admin status: down RX packets: 0 RX bytes: 0 RX errors: 0 RX dropped: 0 TX packets: 0 TX bytes: 0 TX errors: 0 TX dropped: 0 TX collisions: 0 Interface: eth0 Address: 192.168.1.133/24 MAC address: 00:50:56:89:7c:3c MTU: 1500 Default gateway: 192.168.1.1 Broadcast address: 192.168.1.255 Plane: mgmt KNI: False Link status: up Admin status: up RX packets: 613 RX bytes: 49801 RX errors: 0 RX dropped: 0 TX packets: 336 TX bytes: 37873 TX errors: 0 TX dropped: 0 TX collisions: 0 Interface: fp-eth0 ID: 0 Link status: up MAC address: 00:50:56:89:9e:86 MTU: 1500 PCI: 0000:0b:00:00 Offload Capabilities: TX_VLAN_INSERT TX_UDP_CKSUM TX_TCP_CKSUM TX_TCP_TSO RX_VLAN_STRIP RX_IPV4_CKSUM RX_UDP_CKSUM RX_TCP_CKSUM RX_TCP_LRO Polling Status: active Driver: net_vmxnet3 Rx queue: 2 Tx queue: 2 Socket: 0 RX packets: 64 RX bytes: 7807 RX errors: 0 RX badcrc: unknown RX badlen: unknown RX misses: 0 RX nombufs: 0 RX pause xoff: unknown RX pause xon: unknown TX packets: 0 TX bytes: 0 TX errors: 0 TX pause xoff: unknown TX pause xon: unknown Interface: fp-eth1 ID: 1 Link status: up MAC address: 00:50:56:89:1a:4c MTU: 1500 PCI: 0000:13:00:00 Offload Capabilities: TX_VLAN_INSERT TX_UDP_CKSUM TX_TCP_CKSUM TX_TCP_TSO RX_VLAN_STRIP RX_IPV4_CKSUM RX_UDP_CKSUM RX_TCP_CKSUM RX_TCP_LRO Polling Status: active Driver: net_vmxnet3 Rx queue: 2 Tx queue: 2 Socket: 0 RX packets: 60 RX bytes: 7567 RX errors: 0 RX badcrc: unknown RX badlen: unknown RX misses: 0 RX nombufs: 0 RX pause xoff: unknown RX pause xon: unknown TX packets: 0 TX bytes: 0 TX errors: 0 TX pause xoff: unknown TX pause xon: unknown Interface: fp-eth2 ID: 2 Link status: up MAC address: 00:50:56:89:84:e7 MTU: 1500 PCI: 0000:1b:00:00 Offload Capabilities: TX_VLAN_INSERT TX_UDP_CKSUM TX_TCP_CKSUM TX_TCP_TSO RX_VLAN_STRIP RX_IPV4_CKSUM RX_UDP_CKSUM RX_TCP_CKSUM RX_TCP_LRO Polling Status: active Driver: net_vmxnet3 Rx queue: 2 Tx queue: 2 Socket: 0 RX packets: 56 RX bytes: 7327 RX errors: 0 RX badcrc: unknown RX badlen: unknown RX misses: 0 RX nombufs: 0 RX pause xoff: unknown RX pause xon: unknown TX packets: 0 TX bytes: 0 TX errors: 0 TX pause xoff: unknown TX pause xon: unknown
補足説明
仮想マシンを使用した操作練習
ベアメタル版NSX Edgeはハードウェア要件が厳しく、実機を使った操作練習をすることは難しい状況です。しかし、仮想マシンを使えば、ベアメタルほどの性能は担保できないものの、操作の練習だけならば十分に可能です。以下、仮想マシンを使ったベアメタル版NSX Edgeのインストール操作を練習する方法を説明します。
まず仮想マシンを作成します。
将来の仕様変更の可能性はありますが、NSX Edge 3.1.2時点ではUbuntu18をベースにしたOSです。どのOSをベースにしているかは仮想マシン版のNSX Edgeを構築してみて、「/etc/os-release」などのファイルからベースとなるOSを調べると良いでしょう。「ゲストOSのバージョン」は「Ubuntu 18 (64bit)」に一番近いものを選びます。
root@nsx-edge182:~# cat /etc/os-release NAME="Ubuntu" VERSION="18.04.4 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.4 LTS" VERSION_ID="18.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=bionic UBUNTU_CODENAME=bionic
仮想マシン版 NSX Edge同等以上のメモリ, CPU, ディスクリソースを割り当てます。
NSX Edgeのインストーラーのisoファイルをマウントします。
仮想マシン起動後は、ベアメタル版とほぼ同じ操作画面が出力されます。
起動方法の変更
NSX Edgeの起動はUEFIではなくレガシーBIOSが推奨されています。レガシーBIOSを設定する方法は、メーカー依存、ハードウェア世代依存が強い操作ですが、参考情報として、HPE Proliant DL360 G9の場合の操作例を紹介します。
起動時に「F9(System Utilities)」を押下します。
「System Configuration」を選びます。
「BIOS/Platform Configuration (RBSU)」を選びます。
「Boot Options」を選びます。
「Boot Mode」を選びます。
「Leagecy BIOS Mode」に変更します。
UEFIの場合の操作画面
「レガシーBIOS」ではなく、非推奨の「UEFI」を使用した場合は、全体的に崩れた画面が表示されます。もし、以下のような画面が現れた場合は、BIOSの設定誤りの可能性を疑ってください。
「Automated install」か「Interactive install」かの選択画面でNSXのロゴが表示されていません。
全体的に紫基調の画面が表示されます。