1 つのクラスタに NSX Manager、ホスト トランスポート ノード、NSX Edge 仮想マシンを構成できます。クラスタ内の各ホストには、NSX-T 用に構成された 2 つの物理 NIC があります。
前提条件
- すべてのホストが 1 つの vSphere クラスタを構成している必要があります。
- 各ホストでは、2 つの物理 NIC が有効になっている必要があります。
- すべてのホストを vCenter Server に登録します。
- 共有ストレージがホストで使用可能であることを vCenter Server で確認します。
- NSX-T Data Center 3.1 以降では、NSX Edge 仮想マシンの TEP は、NSX Edge 仮想マシンが実行されているホストの TEP と直接通信できます。NSX-T 3.1 より前のバージョンでは、NSX Edge 仮想マシンの TEP はホストの TEP と異なる VLAN にある必要がありました。
注: また、vSphere Distributed Switch を使用して、このトピックで説明する構成を展開することもできます。ホスト上で vSphere Distributed Switch が構成されている場合、この手順は簡単です。NSX 分散仮想ポート グループで、vSphere Distributed Switch から N-VDS への移行や、 NSX Manager の展開は行いません。ただし、 NSX Edge 仮想マシンを VLAN セグメントに接続して ESXi ホストの TEP と同じ VLAN を使用できるようにする必要があります。
-
NSX-T Data Center 3.2.2 以降では、1 つの vCenter Server を管理する複数の NSX Manager を有効にできます。単一の vCenter Server を管理する複数の NSX Manager を参照してください。
非表示のクラスタを構成した後、vCenter Server を複数の NSX Manager と連携できるようにしている場合(複数の NSX Manager が同じ vCenter Server に登録されている場合)、新しい NSX Manager ノードをクラスタに展開することはできません。回避策として、新しいクラスタを作成し、NSX Manager ノードを展開します。
注: NSX-T 2.4.2 または 2.5 リリース以降では、非表示の単一 vSphere クラスタ トポロジを展開してください。この手順で説明するトポロジでは、次のものを使用します。
- クラスタ内のホストに構成された vSAN
- ホストごとに 2 個以上の物理 NIC
- vMotion と管理 VMkernel インターフェイス
手順
- vSS または vDS 上の vmnic0 で 4 台の ESXi ホストを準備します。vmnic1 は解放します。
- ホスト 1 で、vCenter Server をインストールし、VSS/VDS ポート グループを構成して、ホスト上で作成されたポート グループに NSX Manager をインストールします。
- トランスポート ノードとして ESXi ホスト 1、2、3、4 を準備します。
- 名前付きのチーミング ポリシーを使用して、VLAN トランスポート ゾーンとオーバーレイ トランスポート ゾーンを作成します。トランスポート ゾーンの作成 を参照してください。
- ホストのトンネル エンドポイント IP アドレス用の IP アドレス プールまたは DHCP を作成します。トンネル エンドポイントの IP アドレス用 IP アドレス プールの作成 を参照してください。
- Edge ノードのトンネル エンドポイント IP アドレス用の IP アドレス プールまたは DHCP を作成します。トンネル エンドポイントの IP アドレス用 IP アドレス プールの作成 を参照してください。
- 名前付きチーミング ポリシーを使用してアップリンク プロファイルを作成します。アップリンク プロファイルの作成 を参照してください。
- トランスポート ノード プロファイルを適用して、トランスポート ノードとしてホストを構成します。この手順では、トランスポート ノード プロファイルで vmnic1(未使用の物理 NIC)のみを N-VDS スイッチに移行します。トランスポート ノード プロファイルがクラスタ ホストに適用されると、N-VDS スイッチが作成され、vmnic1 が N-VDS スイッチに接続します。トランスポート ノード プロファイルの追加 を参照してください。
すべてのホストの vmnic1 が N-VDS スイッチに追加されます。そのため、2 つの物理 NIC のいずれかが N-VDS スイッチに移行されます。vmnic0 インターフェイスは、引き続き VSS またはVDS スイッチに接続し、これにより、ホストとの接続が可能になります。 - NSX Manager ユーザー インターフェイスで、NSX Manager、vCenter Server、NSX Edge に VLAN でバッキングされたセグメントを作成します。VLAN でバッキングされた各セグメントに対して、正しいチーミング ポリシーを選択します。ターゲットとして VLAN トランク論理スイッチを使用しないでください。NSX Manager ユーザー インターフェイスでターゲット セグメントを作成する場合は、[VLAN のリストの入力] フィールドに VLAN の値を 1 つだけ入力します。
- ホスト 2、ホスト 3、ホスト 4 で、vmk0 アダプタと vmnic0 を VSS/VDS から N-VDS スイッチに移行する必要があります。各ホストで NSX-T の構成を更新します。移行中に次のことを確認します。
- vmk0 が [Edge 管理セグメント] にマッピングされている。
- vmnic0 がアクティブなアップリンク [uplink-1] にマッピングされている。
- vCenter Server で、ホスト 2、ホスト 3、ホスト 4 に移動し、vmk0 アダプタが N-VDS の vmnic0 物理 NIC に接続し、到達可能であることを確認します。
- NSX Manager ユーザー インターフェイスで、ホスト 2、ホスト 3、ホスト 4 に移動し、両方の物理 NIC が N-VDS スイッチに接続していることを確認します。
- ホスト 2 とホスト 3 の NSX Manager ユーザー インターフェイスで、NSX Manager をインストールして、NSX Manager をセグメントに接続します。クラスタが作成されるまで 10 分ほどかかります。約 10 分後に、クラスタが作成されていることを確認します。
- 最初の NSX Manager ノードをパワーオフします。10 分ほど待ちます。
- 以前に作成した論理スイッチに NSX Manager と vCenter Server を再接続します。ホスト 4 で、NSX Manager をパワーオンします。10 分ほど経過したら、クラスタの状態が安定していることを確認します。最初の NSX Manager がパワーオフ状態でコールド vMotion を実行し、ホスト 1 からホスト 4 に NSX Manager と vCenter Server を移行します。
vMotion の制限については、https://kb.vmware.com/s/article/56991を参照してください。
- NSX Manager ユーザー インターフェイスから、ホスト 1 に移動し、vmk0 と vmnic0 を VSS から N-VDS スイッチに移行します。
- [インストールのネットワーク マッピング] フィールドで、vmk0 アダプタが N-VDS スイッチの [Edge 管理セグメント]にマッピングされていることを確認します。
- ホスト 1 で、NSX Manager ユーザー インターフェイスを使用して NSX Edge 仮想マシンをインストールします。
NSX Edge トランスポート ノードの作成 を参照してください。
- 管理プレーンに NSX Edge 仮想マシンを追加します。
NSX Edge の管理プレーンへの追加 を参照してください。
- North-South トラフィックの接続を確立するには、外部ルーターを使用して NSX Edge 仮想マシンを構成します。
- NSX Edge 仮想マシンと外部ルーター間の North-South トラフィック接続を確認します。
- クラスタ全体が再起動される電源障害が発生した場合、NSX-T 管理コンポーネントが起動しないために N-VDS と通信できなくなることがあります。このシナリオを回避するには、次の手順に従います。
注意: API コマンドが正しく実行されないと、 NSX Manager との接続が失われます。注: 単一クラスタ構成では、管理コンポーネントは N-VDS スイッチ上で仮想マシンとしてホストされます。セキュリティ上の理由から、管理コンポーネントがデフォルトで接続する N-VDS ポートはブロック ポートとして初期化されます。4 台のホストすべてで再起動が必要になる電源障害が発生すると、管理仮想マシンのポートがブロック状態で初期化されます。このような循環依存を回避するため、N-VDS で非ブロック状態のポートを作成することをおすすめします。非ブロック状態のポートを作成することで、クラスタの再起動時に NSX-T 管理コンポーネントが N-VDS に接続し、通常の機能を再開できるようになります。サブタスクが終了すると、移行コマンドは以下を使用します。
- NSX Manager が存在するホスト ノードの UUID。
- NSX Manager 仮想マシンの UUID。これは非ブロック状態にある固定論理ポートに移行されます。
- NSX Manager ユーザー インターフェイスで、[マネージャ モード] > [ネットワーク] > [論理スイッチ] タブの順に移動します(3.0 以降のリリース)。[セグメント コンピューティング仮想マシン] セグメントを検索します。[概要] タブで、UUID を検索してコピーします。この例で使用する UUID は、c3fd8e1b-5b89-478e-abb5-d55603f04452 です。
- 各 NSX Manager の JSON ペイロードを作成します。
- JSON ペイロードで、logical_switch_id の値を以前に作成した [Edge 管理セグメント] の UUID で置き換えて、UNBLOCKED_VLAN 状態の論理ポートを作成します。
- 各 NSX Manager のペイロードで、attachment_type_id と display_name の値は異なります。
重要: この手順を繰り返して、合計で 4 つの JSON ファイルを作成します。3 つは NSX Manager 用、1 つは vCenter Server Appliance (VCSA) 用です。port1.json { "admin_state": "UP", "attachment": { "attachment_type": "VIF", "id": "nsxmgr-port-147" }, "display_name": "NSX Manager Node 147 Port", "init_state": "UNBLOCKED_VLAN", "logical_switch_id": "c3fd8e1b-5b89-478e-abb5-d55603f04452" }
説明:admin_state
:ポートの状態。「稼動中」になっている必要があります。attachment_type
:VIF に設定する必要があります。すべての仮想マシンが、VIF ID を使用して NSX-T スイッチポートに接続されます。id
:VIF ID。NSX Manager ごとに一意である必要があります。3 つの NSX Manager がある場合、3 つのペイロードがあり、それぞれに異なる VIF ID が設定されている必要があります。一意の UUID を生成するには、NSX Manager のルート シェルにログインし、/usr/bin/uuidgen を実行して一意の UUID を生成します。display_name
:NSX 管理者が他の NSX Manager 表示名と区別できるように、一意の名前にする必要があります。init_state
:値がUNBLOCKED_VLAN
に設定すると、NSX Manager が使用できない場合でも、NSX は NSX Manager のポートのブロックを解除します。logical_switch_id
:[Edge 管理セグメント] の論理スイッチ ID。
- 3 つの NSX Manager が展開されている場合、NSX Manager の各論理ポートに 1 つのペイロードを作成する必要があります(合計で 3 つ作成します)。たとえば、port1.json、port2.json、port3.json のように作成します。
次のコマンドを実行して、ペイロードを作成します。
curl -X POST -k -u '<username>:<password>' -H 'Content-Type:application/json' -d @port1.json https://nsxmgr/api/v1/logical-ports
curl -X POST -k -u '<username>:<password>' -H 'Content-Type:application/json' -d @port2.json https://nsxmgr/api/v1/logical-ports
curl -X POST -k -u '<username>:<password>' -H 'Content-Type:application/json' -d @port3.json https://nsxmgr/api/v1/logical-ports
論理ポートを作成する API 実行の例。
root@nsx-mgr-147:/var/CollapsedCluster# curl -X POST -k -u '<username>:<password>' -H 'Content-Type:application/json' -d @port1.json https://localhost/api/v1/logical-ports { "logical_switch_id" : "c3fd8e1b-5b89-478e-abb5-d55603f04452", "attachment" : { "attachment_type" : "VIF", "id" : "nsxmgr-port-147" }, "admin_state" : "UP", "address_bindings" : [ ], "switching_profile_ids" : [ { "key" : "SwitchSecuritySwitchingProfile", "value" : "fbc4fb17-83d9-4b53-a286-ccdf04301888" }, { "key" : "SpoofGuardSwitchingProfile", "value" : "fad98876-d7ff-11e4-b9d6-1681e6b88ec1" }, { "key" : "IpDiscoverySwitchingProfile", "value" : "0c403bc9-7773-4680-a5cc-847ed0f9f52e" }, { "key" : "MacManagementSwitchingProfile", "value" : "1e7101c8-cfef-415a-9c8c-ce3d8dd078fb" }, { "key" : "PortMirroringSwitchingProfile", "value" : "93b4b7e8-f116-415d-a50c-3364611b5d09" }, { "key" : "QosSwitchingProfile", "value" : "f313290b-eba8-4262-bd93-fab5026e9495" } ], "init_state" : "UNBLOCKED_VLAN", "ignore_address_bindings" : [ ], "resource_type" : "LogicalPort", "id" : "02e0d76f-83fa-4839-a525-855b47ecb647", "display_name" : "NSX Manager Node 147 Port", "_create_user" : "admin", "_create_time" : 1574716624192, "_last_modified_user" : "admin", "_last_modified_time" : 1574716624192, "_system_owned" : false, "_protection" : "NOT_PROTECTED", "_revision" : 0
- 論理ポートが作成されていることを確認します。
- 各 NSX Manager の仮想マシン インスタンス ID を確認します。インスタンス ID を取得するには、[インベントリ] > [仮想マシン] の順に移動して NSX Manager 仮想マシンを選択し、[概要] タブを選択してインスタンス ID をコピーします。または、vCenter Server の管理対象オブジェクト ブラウザ (MOB) でインスタンス ID を検索します。ID に :4000 を追加して、NSX Manager 仮想マシンの vNIC ハードウェア インデックスを取得します。
たとえば、仮想マシンのインスタンス UUID が
503c9e2b-0abf-a91c-319c-1d2487245c08
の場合、vNIC インデックスは503c9e2b-0abf-a91c-319c-1d2487245c08:4000
になります。3 つの NSX Manager の vNIC インデックスは次のとおりです。mgr1 vnic: 503c9e2b-0abf-a91c-319c-1d2487245c08:4000
mgr2 vnic: 503c76d4-3f7f-ed5e-2878-cffc24df5a88:4000
mgr3 vnic: 503cafd5-692e-d054-6463-230662590758:4000
- NSX Manager をホストするトランスポート ノード ID を確認します。3 つの NSX Manager があり、それぞれが異なるトランスポート ノードでホストされている場合は、トランスポート ノード ID をメモします。たとえば、3 つのトランスポート ノード ID は次のとおりです。
tn1: 12d19875-90ed-4c78-a6bb-a3b1dfe0d5ea
tn2: 4b6e182e-0ee3-403f-926a-fb7c8408a9b7
tn3: d7cec2c9-b776-4829-beea-1258d8b8d59b
- 新しく作成されたポートに NSX Manager を移行するときに、ペイロードとして使用されるトランスポート ノードの構成を取得します。
次はその例です。
curl -k -u '<user>:<password' https://nsxmgr/api/v1/transport-nodes/12d19875-90ed-4c78-a6bb-a3b1dfe0d5ea > tn1.json
curl -k -u '<user>:<password' https://nsxmgr/api/v1/transport-nodes/4b6e182e-0ee3-403f-926a-fb7c8408a9b7 > tn2.json
curl -k -u '<user>:<password' https://nsxmgr/api/v1/transport-nodes/d7cec2c9-b776-4829-beea-1258d8b8d59b > tn3.json
- 以前のポートから [Edge 管理セグメント] に新たに作成され、ブロック解除された論理ポートに NSX Manager を移行します。VIF-ID 値は、NSX Manager に以前に作成したポートの接続 ID です。
NSX Manager を移行するには、次のパラメータが必要です。
- トランスポート ノード ID
- トランスポート ノードの構成
- NSX Manager vNIC ハードウェア インデックス
- NSX Manager VIF ID
新しく作成され、ブロック解除されたポートに NSX Manager を移行する API コマンドは次のとおりです。/api/v1/transport-nodes/<TN-ID>?vnic=<VNIC-ID>&vnic_migration_dest=<VIF-ID>次はその例です。
root@nsx-mgr-147:/var/CollapsedCluster# curl -k -X PUT -u 'admin:VMware1!VMware1!' -H 'Content-Type:application/json' -d @<tn1>.json 'https://localhost/api/v1/transport-nodes/11161331-11f8-45c7-8747-34e7218b687f?vnic=5028d756-d36f-719e-3db5-7ae24aa1d6f3:4000&vnic_migration_dest=nsxmgr-port-147' - 静的に作成された論理ポートが Up 状態になっていることを確認します。
- クラスタ内のすべての NSX Manager で上記の手順を繰り返します。