VMware 分散スイッチの設定:完全ガイド
仮想スイッチとは、物理ネットワークスイッチに相当するソフトウェアであり、仮想マシン(VM)の仮想ネットワークアダプタを、オープンシステム相互接続(OSI)モデルのレイヤ2レベルでネットワークに接続します。VMwareは自社の仮想化プラットフォーム全体でvSwitchを提供していますが、その管理方法は選択したタイプによって異なります。
標準のvSwitchは、すべてのESXiホスト上で手動で設定する必要があります。 大規模な環境では、これらのスイッチは通常、ポートグループ、仮想ローカルエリアネットワーク(VLAN)、および接続されたネットワークの設定が同一であるため、VLAN ベースのポートグループを 1 つ追加するだけでも、ホストごとに同じ手動手順を繰り返す必要があります。これはすぐに面倒になり、ミスを招きやすくなります。
VMwareの分散スイッチはこの問題を解決します。これはvCenter Server上で一度定義され、多数のホストに一括して展開される論理スイッチであり、ESXiホストを個別に操作する必要がなくなります。このガイドでは、分散仮想スイッチ(dvSwitchまたはVDSとも呼ばれる)の仕組みを説明し、vSphereにおけるVMware分散スイッチの完全な設定手順を解説します。
新着情報
VMware vSphere の進化に合わせて、このガイドを常に最新の状態に保っています。前回の更新以降、最新の機能とベストプラクティスを反映するために、次の内容を改訂しました:
- vSphere 8.0 および 9.0 クライアントの最新の画面とインターフェイスの手順に合わせて、スクリーンショットと手順を更新しました。
- vSphere 8.0 で導入されたデータ処理ユニット(DPU)オフロードと、vSphere 9.0 のサブスクリプションライセンスモデル(VMware Cloud Foundation および vSphere Foundation)の説明を追加しました。
- 構成手順の説明を拡充し、"よくある問題"、"ベストプラクティス"、"よくある質問"のセクションを追加しました。
VMware 分散仮想スイッチ(VDS)とは何ですか?
分散仮想スイッチは、vCenter Server 上に作成され、追加されたすべての ESXi ホストに適用される論理スイッチです。物理スイッチ と同様に、仮想スイッチはレイヤー 2 のネットワーク接続を提供します。
分散仮想スイッチは、vCenter に保存されるテンプレートのように機能します。作成すると、VDS 構成に追加されたすべての ESXi ホスト上に、同一の非表示の標準 vSwitch が作成されます。VDS 上で VLAN 用のポートグループを作成すると、同じポートグループが関連付けられたすべてのホストの vSwitch に表示されます。一度作成するだけでよいため、大きな利点です。vCenter で管理する VDS は制御プレーンであり、ホスト上の非表示の標準 vSwitch はネットワークトラフィックを伝送する I/O プレーンです。
VM がある ESXi ホストから別の ESXi ホストに移行しても、vSphere 分散スイッチの同じポートへの接続が維持されます。この機能はネットワーク vMotion と呼ばれ、VM のネットワーク接続を一貫した状態に保ちます。
vCenter は、VDS を含む vSphere 環境の管理システムです。vCenter Server が利用できなくなると、VM を別のポートグループに再接続するなど、VMware 分散スイッチの構成を変更できません。ただし、非表示の標準 vSwitch(I/O プレーン)がネットワーク操作を処理するため、ネットワークは稼働し続けます。vCenter は分散仮想スイッチに接続しないでください。技術的には接続できますが、接続性の喪失や復旧の面でリスクが大きすぎます。
VDS の構成は vCenter Server に保存され、ESXi ホストは 5 分ごとにローカルのキャッシュコピーを更新します。このキャッシュ状態は、ホストローカルの VDS データベース /etc/vmware/dvsdata.db に保存されます。この状態は、/usr/lib/vmware/bin/ にある net-dvs ユーティリティで読み取ることができ、トラブルシューティングに役立ちます。 キャッシュされたESXi ホストの設定により、vCenterがオフラインの場合でも、ホストはスイッチを稼働し続けられます。
VMware分散スイッチが標準vSwitchより優れている点
分散仮想スイッチでのみ利用でき、標準vSwitchでは利用できない機能がいくつかあります。
- ネットワークI/O制御: 受信および送信トラフィックのシェーピングと帯域幅の予約を行います。
- ポートミラーリング: 監視、トラフィック分析、デバッグのため、あるスイッチポートで検出されたフレームのコピーを別のポートに送信します。
- ネットワークヘルスチェック: VLAN、最大転送単位(MTU)、ネットワークインターフェイスカード(NIC)のチーミングなどの設定を、既定では毎分確認します。
- プロトコルのサポート: プライベートVLAN(PVLAN)、リンクアグリゲーション制御プロトコル(LACP)、NetFlow、リンク層検出プロトコル(LLDP)に対応しています。
- VMポートのブロック: 選択したポートでのデータの送受信をブロックします。これはセキュリティに役立ちます。
- ネットワークvMotion: VMの仮想ネットワークアダプターを同じVDSポートに接続したままにします。vCenterの操作によってVMが移動された場合も、VDSはポートの状態を維持します。
- vNetworkスイッチAPI: サードパーティ製の仮想スイッチ実装用インターフェイスを提供します。
- ネットワーク構成のバックアップと復元。
VMware分散スイッチの構成要件
割り当てられたライセンスがVDSをサポートしている必要があります。vSphere 8.0以前では、ESXiホスト向けのVMware分散スイッチングはvSphere Enterprise Plusライセンスでのみ利用できます。vSphere 9.0では、分散仮想スイッチはVMware Cloud FoundationおよびVMware vSphere Foundationのサブスクリプションライセンスに含まれています。無料体験ライセンスを使用すると、VDSを含むすべてのvSphere機能を60日間利用できます。ESXi 無料版は分散仮想スイッチをサポートしていません。詳しくは、ガイドでvSphereのライセンスをご覧ください。vCenterインベントリにデータセンターが存在する必要があります。
注: 以前のリリースでは、標準VDSとNSX管理のN-VDSの違いが分かりにくい場合がありました。現在、NSXはネイティブVDS(バージョン7.0以降)と直接統合されており、ESXiホストでのN-VDSのサポートは、VMware Cloud Foundation 9に含まれるバージョンであるNSX 4.0から削除されました。
VMware分散スイッチの構成
VMware vSphere 8.0でVMware分散スイッチを作成および構成する方法を確認します。 この例では、vCenter 8.0 を使用し、2 台の ESXi 8.0 ホストを vCenter で管理しています:
- ESXi1 – 192.168.101.31(管理インターフェイスの IP アドレス)
- ESXi2 – 192.168.101.101
- vCenter – 192.168.101.103
vSphere 9.0 での VMware 分散スイッチの構成も同じです。
手順 1 – VMware 分散スイッチの作成
分散仮想スイッチを作成するには、VMware HTML5 vSphere Client を開き、 ホストおよびクラスタ セクションに移動します。ESXi ホストは、vCenter の論理的な組織単位であるデータセンターに配置してください。この例では、ホストは Datacenter1 に属しています。データセンターを右クリックし、 分散スイッチ > 新しい分散スイッチ を選択します。

新しい分散スイッチ ウィザードが開きます。
- 名前と所在地。 分散スイッチの名前と所在地を指定します。この例の VMware DVS 名は DSwitch01 で、所在地は Datacenter1 です。各ウィザード手順で 次へ をクリックして続行します。

- バージョンの選択。 分散仮想スイッチのバージョンを指定します。すべてのホストが ESXi 8.0 を実行しているため、最新の VDS バージョンである 8.0.0 を使用します。少なくとも 1 台のホストが ESXi 6.7 を実行している場合は、すべてのホストに VDS バージョン 6.6.0 を選択する必要があります(常に最も低いバージョンを選択してください)。バージョン 6.6.0 を選択すると、VDS 7.0 以降で導入された機能は利用できません。低い VDS バージョンでも新しい ESXi ホストで動作するため、バージョンが混在している場合は、最も古いホストにバージョンを合わせてください。可能であれば、古いホストをアップグレードして、すべてのホストで同じバージョンを実行してください。

- 設定の構成。 アップリンク ポートの数を指定し、 Network I/O Control を設定して、 デフォルトのポートグループを作成 にチェックを入れます。ポートグループ名を入力します(例: DPortGroup01 )。
VMware vSphere 8 では、NVIDIA や AMD(Pensando)などのデータ処理ユニット(DPU)がサポートされました。VDS 作成ウィザードでは、ネットワーク機能(NSX やファイアウォールなど)をホスト CPU から DPU にオフロードして、パフォーマンスを向上させることができます。Network I/O Control バージョン 3 では、スイッチ全体での予約および割り当てモデルも改善されています。

- 完了前の確認。 新しい VDS の設定を確認し、すべて正しければ 完了 をクリックしてスイッチを作成します。

- 分散仮想スイッチが作成されました。 ネットワーク > [your datacenter] > VM Network に移動すると確認できます(ここでは DSwitch01 )。VDSを選択し、 構成 タブを開いて、VMware分散スイッチの構成を編集します。

手順2 – VMware分散スイッチへのESXiホストの追加
VDSを作成した後、VMware分散スイッチを機能させるために、ホストをその構成に追加する必要があります。 ネットワーク セクションでVDSを右クリックし、 ホストの追加と管理 を選択します。

ホストの追加と管理 ウィザードが開きます。
- タスクを選択します。 ホストを追加する必要があるため、 ホストの追加 (最初のオプション)を選択します。

- ホストを選択します。 VMware分散スイッチに参加するESXiホストを選択し、最後の列で互換性を確認します。
ホストが選択され、ステータスに"接続済み"と表示されています。
- 物理アダプターを管理します。 物理ネットワークアダプター(NIC)を選択し、アップリンクを割り当てます。ホストごとのビュー、またはすべてのホストをまとめて表示するビューを使用できます。

- VMkernelアダプターを管理します。 この手順では、VMkernelアダプターを分散スイッチに割り当てます。 vmk0 アダプターは、各ホストの標準vSwitchで管理インターフェイスとして使用されるデフォルトのVMkernelアダプターです。ここでは、 vmk0 アダプターは各ホスト上の vSwitch0 に接続されたままです。各VMkernelインターフェイスで ポートグループの割り当て をクリックします。
ポートグループの割り当て タブで、該当するVMkernelインターフェイス( vmk0 )と分散ポートグループ( DPortGroup01 )に対して 割り当て をクリックします。必要なすべてのVMkernelインターフェイスにポートグループを割り当てたら、次の手順に進みます。

- VMネットワークを移行します。 この手順では、必要に応じてVMまたはその他のネットワークアダプターをVDSに移行できます。この例では、ネットワークアダプターは移行しません。

- 完了する準備ができました。 構成を確認し、 完了 をクリックします。

ESXiホストがVMware分散スイッチの構成に追加されました。VMkernelネットワークアダプターをVDSポートグループに追加すると、vMotion などの機能を使用できます。. vMotion接続用に、ポートグループにVMkernelアダプターを追加します。
ステップ3 – VMkernelアダプターの追加
vCenterのネットワークセクションで、VDSとポートグループ(ここではDPortGroup01)を選択します。ポートグループ名を右クリックし、VMkernelアダプターの追加を選択します。

VMkernelアダプターの追加ウィザードが開きます。
- ホストの選択。チェックボックスを使用してESXiホストを選択するか、すべて選択をクリックしてすべてのホストを追加します。

- VMkernelアダプターの設定。ジャンボフレームを使用する場合は、ポートグループのMTUを1500バイトから9000バイトに変更できます。デフォルトでは、MTU値はVDS設定から継承されます。利用可能なサービスvMotion、プロビジョニング、フォールトトレランスのロギング、または管理を選択します。vMotionを選択します。

- IPv4設定。この手順では、VMkernelアダプターのIPアドレスを設定します。サーバーには、一般に静的IPアドレスが推奨されます。この例での新しいVMkernel構成は次のとおりです。
- ESXi1 – (192.168.101.31) 192.168.105.31
- ESXi2 – (192.168.101.101) 192.168.105.101
利便性のため、最後のオクテットは同じ値のままです。vMotionネットワークは192.168.105.0/24で、ゲートウェイは192.168.105.1です。

- 完了の準備。構成を確認し、完了をクリックします。

ステップ4 – VMware DVS構成の確認
VMkernelアダプターの構成後、VDSを選択し、設定>の>トポロジに移動して、VDSのグラフィカルなトポロジを表示します。

VDSは、追加されたすべてのESXiホストに適用されるテンプレートとして機能します。vCenterでVDSを作成および構成した後、各ホストの仮想スイッチを確認できます。VMware Host Clientを開き、最初のESXiホスト(192.168.101.101)のネットワーク構成を確認します。
以下のスクリーンショットでは、新しい仮想スイッチとポートグループがすでに作成されています(ナビゲーターでネットワークに移動し、ポートグループタブを開きます)。分散スイッチ名を選択すると、トポロジが表示されます。 トポロジーは上記のVDSトポロジーと一致しています。

VMware Host Clientを使用して2台目のESXiホスト(この例では192.168.101.31)にログインすると、同一のトポロジーが表示されます。

VMware分散スイッチの構成をエクスポートおよびインポートできます。これにより時間を節約でき、VDSを迅速に復元できます。構成をエクスポートするには、分散スイッチを選択し、 アクション > 設定 > 構成のエクスポート をクリックします。同じメニューには、 構成の復元 オプションもあります。

上記の基本事項に加えて、リンクアグリゲーションの設定、トラフィックシェーピングの有効化、検出プロトコルの選択、ポートグループのVLAN、ポートバインド、ポート割り当ての定義など、VDSをさらに調整できます。また、ESXiホスト上の既存の標準vSwitchをVDSに移行し、vSphereネットワーク全体を1か所で管理できます。
VMware分散スイッチ構成でよくある問題とその解決方法
分散仮想スイッチは、ESXiホスト、vCenter、およびそれらの間のネットワークに依存する複雑な機能です。そのため、いずれかの構成を誤るとエラーが発生する可能性があります。以下に、最もよくある問題とその解決方法を示します。
ESXiホストが分散スイッチに参加できない
症状: ホストをVDSに追加できないか、ホストを削除した後もVDSの古い状態が残っています。
原因: ホスト上のローカルVDSキャッシュデータベース(dvsdata.db)の破損または古い状態です。多くの場合、ネットワーク障害の後や、vCenterインベントリからの削除が不完全だった場合に発生します。
解決方法: dvsdata.dbファイルを復元します。影響を受けたホスト上の/etc/vmware/dvsdata.dbをバックアップしてから、正常なESXiホスト上の同じファイルを問題のあるホストにコピーします。
標準スイッチからVDSへの移行後にトラフィックが通過しない
症状: VMkernelアダプターまたはVM NICをVDSに移行した後、管理トラフィック、vMotionトラフィック、またはストレージトラフィックが失われるか、一部のホストでしか機能しません。
原因:
- アップリンクの割り当てミス(VM NICが誤ったdvUplinkに割り当てられています)。
- 旧vSphere標準スイッチ(vSS)のポートグループと新しいdvPortGroupの間でVLANが一致していません。
- 移行中にMTUの不一致が発生しています。
解決方法(リスクの低い順):
- ホストごとに、dvUplinkと物理NICのマッピングを検証します。
- dvPortGroupのVLANとセキュリティポリシーが旧構成と一致していることを確認します。
- エンドツーエンドでMTU を確認します(VMkernel NIC > VDS > 物理スイッチ)。
- VDS ヘルスチェックを使用して、VLAN/MTU/チーミングの不一致を特定します。
vCenter の停止中は、VM を接続または移動できません(静的ポートバインディングの落とし穴)
症状: vCenter が利用できない間は、VM の NIC を dvPortGroup に接続または移動できず、試行するとエラーが表示されます。この問題は、vCenter が VDS に接続された VM 上で実行されている場合に発生することが多く、循環依存が生じます。
原因: dvPortGroup で静的(非エフェメラル)バインディングが使用されており、再構成時のポート割り当てに vCenter が必要です。
解決方法: 管理ネットワークと同じ VLAN 上にエフェメラル dvPortGroup を作成し、孤立した VM(多くの場合、vCenter VM)をそのグループに移動します。元のポートグループに一致するチーミングポリシーを、適切なアクティブアップリンクを指定して設定し、vCenter Server Appliance(VCSA)をエフェメラルポートグループに移行します。通常のワークロードには静的バインディングで問題ありませんが、vCenter の停止に備えてエフェメラルな復旧手段を用意しておきます。
VMware Distributed Switch のベストプラクティス
VDS の構成時にいくつかのベストプラクティスに従うことで、障害のリスクを軽減し、問題からの復旧を容易にできます。
- vCenter が利用できなくなる場合に備えます。 vCenter が失われても管理プレーンが孤立しないように、インフラストラクチャを設計します。静的(非エフェメラル)dvPortGroup 上の VM は、vCenter とホスト間の通信が途切れても実行を継続しますが、通常、ポートの割り当てに vCenter が必要なため、vCenter なしでは VM をそれらのポートグループに移動できません。
- 緊急時に備えてエフェメラル dvPortGroup を用意しておきます。 これを使用して、孤立した VM(一般に vCenter VM)を移動し、管理接続を復旧します。復旧テスト の代替策として、ホスト上に一時的な標準 vSwitch を作成して vCenter を復旧させてから、VDS を修正し、元に戻します。
- dvPortGroup ポリシーを標準化します。 VLAN、チーミング/フェイルオーバー、セキュリティ、シェーピングを dvPortGroup レベルで定義し、トラフィックの種類(管理、vMotion、vSAN/iSCSI/NFS、VM ネットワーク)ごとに dvPortGroup を 1 つ用意します。これにより、"1 つの変更ですべてが壊れる"リスクを抑えられます。
- VDS ヘルスチェックを使用して、VLAN/MTU/チーミングの不一致を検出します。 少なくとも導入時と大規模な変更時には有効にします。これを導入検証ツールとして扱います。有効にして、設定のずれを修正します。その後、有効のままにするかどうかを判断します。 ノイズが発生する場合は、根本的な不一致を修正してから無効にしてください。
- VDS構成をバックアップし、安全に変更してください。 重大な変更を行う前に構成をエクスポートし、影響の大きい変更(VLAN、MTU、アップリンクポリシー)はメンテナンス時間帯に行い、ロールバックが明確になるよう、一度に1つずつ変更してください。必ず復興計画を保持してください。
- MTUをあらゆる場所で統一してください。 MTUを変更する場合は、すべてのスイッチとネットワークデバイスで同じ値にし、アダプターと機器がその値に対応していることを確認してください。MTUの不一致は、VDSで最もよく発生する問題の1つです(特にvMotion、vSAN、iSCSI)。VDS/VMkernel NICでMTUを9000に設定する場合は、物理スイッチポートとVLAN経路もその値に対応していることを確認してください。
結論
VMware分散スイッチを使用すると、接続されているすべてのESXiホストのネットワークを一元管理できます。vCenterで構成を一度定義すると、vCenterが各ホストで自動的に作成される同一の標準vSwitchにその構成を配布します。編集する部分はコントロールプレーンとして機能し、ホストごとのスイッチは実際にトラフィックを伝送するI/Oプレーンを構成します。
大規模な環境やvSphereクラスターでは、この一元管理によって時間を節約し、ネットワークの一貫性を保つことができます。ライセンスについては計画してください。vSphere 8.0以前では分散スイッチにvSphere Enterprise Plusが必要で、vSphere 9.0ではVMware Cloud FoundationおよびvSphere Foundationのサブスクリプションに含まれています。
よくある質問
VMware 分散スイッチ(VDS)とは何ですか?
VMware 分散スイッチ(VDS)は、vCenter で一度設定するだけで、多数の ESXi ホストに一括して適用できる仮想スイッチです。これは中央のテンプレートとして機能するため、接続されたすべてのホストに同じネットワーク設定が適用されます。これは、大規模な vSphere 環境の一貫性を維持する上で大きな利点となります。
標準のvSwitchと分散スイッチの違いは何ですか?
標準のvSwitchは、各ESXiホスト上で個別に設定されます。一方、分散スイッチはvCenter Serverで一元的に定義され、接続されたすべてのホストに一括して適用されるため、同じ設定を手作業で繰り返し行う必要がありません。そのため、大規模なvSphere環境には分散スイッチの方が適しています。
VMwareの分散スイッチはどのように設定すればよいですか?
vSphere Client で、データセンターを右クリックして [新しい分散スイッチ] を選択し、バージョン、アップリンク、およびポートグループを設定します。次に、新しいスイッチを右クリックして [ホストの追加と管理] を選択し、ESXi ホストを接続して、アップリンクと VMkernel アダプタを割り当て、必要に応じて VM のネットワーク設定を移行します。最後に、関連するポートグループに VMkernel アダプタを追加します。
VMwareの分散スイッチにはどのような要件がありますか?
分散スイッチ機能を含む vSphere ライセンスが必要です。具体的には、vSphere 8.0 以前の場合は vSphere Enterprise Plus、vSphere 9.0 の場合は VMware Cloud Foundation または vSphere Foundation のサブスクリプションが必要です。また、vCenter Server も必要であり、ESXi ホストと vCenter は互換性のあるバージョンを実行している必要があります。