Wenn Sie mit einem eigenständigen ESXi-Host arbeiten, können Sie nicht über den webbasierten vSphere Web Client auf die Host-VMs zugreifen. In diesem Fall haben Sie die Möglichkeit, mit diesem Vorgang VMs an logische NSX-Switches anzufügen.

Das in diesem Verfahren gezeigte Beispiel veranschaulicht das Verknüpfen einer VM namens app-vm mit einem logischen Switch namens app-switch.

Diagramm mit der an einen logischen Switch angehängten VM

Voraussetzungen

  • Die VM muss auf Hypervisoren gehostet werden, die dem NSX-Fabric hinzugefügt wurden.
  • Die Fabric-Knoten müssen über eine NSX-MPA (Management Plane)- und eine NSX-LCP (Control Plane)-Konnektivität verfügen.
  • Die Fabric-Knoten müssen einer Transportzone hinzugefügt werden.
  • Ein logischer Switch muss erstellt werden.
  • Sie müssen auf die NSX Manager-API zugreifen können.
  • Sie benötigen Schreibzugriff für die VMX-Datei der VM.

Prozedur

  1. Verwenden Sie die (installationsbasierte) vSphere Client-Anwendung oder ein anderes VM-Managementtool, um die VM zu bearbeiten und einen VMXNET 3-Ethernet-Adapter hinzuzufügen.
    Wählen Sie ein beliebiges benanntes Netzwerk. Sie ändern die Netzwerkverbindung in einem späteren Schritt.

    Screenshot des Dialogfelds „Hardware hinzufügen“

  2. Geben Sie über die NSX-API den API-Aufruf GET https://<nsx-mgr>/api/v1/fabric/virtual-machines/<VM-ID> aus.
    Suchen Sie die externalId der VM in den Ergebnissen.
    Beispiel:
    GET https://<nsx-mgr>/api/v1/fabric/virtual-machines/60a5a5d5-ea2b-407e-a806-4fdc8468f735
    
    {
      "resource_type": "VirtualMachine",
      "id": "60a5a5d5-ea2b-407e-a806-4fdc8468f735",
      "display_name": "app-vm",
      "compute_ids": [
        "instanceUuid:50066bae-0f8a-386b-e62e-b0b9c6013a51",
        "moIdOnHost:5",
        "externalId:50066bae-0f8a-386b-e62e-b0b9c6013a51",
        "hostLocalId:5",
        "locationId:564dc020-1565-e3f4-f591-ee3953eef3ff",
        "biosUuid:4206f47d-fef7-08c5-5bf7-ea26a4c6b18d"
      ],
      "external_id": "50066bae-0f8a-386b-e62e-b0b9c6013a51",
      "type": "REGULAR",
      "host_id": "cb82b0fa-a8f1-11e5-92a9-6b7d1f8661fa",
      "local_id_on_host": "5"
    }
    
    
    
  3. Schalten Sie die VM aus und heben Sie ihre Registrierung beim Host auf.

    Dazu können Sie das VM-Managementtool oder die ESXi-CLI verwenden, wie hier dargestellt.

    [user@host:~] vim-cmd /vmsvc/getallvms
    Vmid    Name             File               Guest OS      Version   Annotation
    5      app-vm   [ds2] app-vm/app-vm.vmx   ubuntuGuest     vmx-08
    8      web-vm   [ds2] web-vm/web-vm.vmx   ubuntu64Guest   vmx-08
    
    [user@host:~] vim-cmd /vmsvc/power.off 5 
    Powering off VM:
    
    [user@host:~] vim-cmd /vmsvc/unregister 5
    
    
  4. Rufen Sie über die NSX Manager-Benutzeroberfläche die ID des logischen Switches ab.
    Beispiel:

    NSX Manager-Bildschirm mit einer Übersicht über den logischen Switch

  5. Ändern Sie die VMX-Datei der VM.
    Löschen Sie das Feld ethernet1.networkName = "<Name>" und fügen Sie die folgenden Felder hinzu:
    • ethernet1.opaqueNetwork.id = "<ID des logischen Switches>"
    • ethernet1.opaqueNetwork.type = "nsx.LogicalSwitch"
    • ethernet1.externalId = "<externalId der VM>"
    • ethernet1.connected = "TRUE"
    • ethernet1.startConnected = "TRUE"

    Beispiel:

    OLD
    ethernet1.pciSlotNumber = "224"
    ethernet1.virtualDev = "vmxnet3"
    ethernet1.networkName = "VM Network"
    ethernet1.addressType = "vpx"
    ethernet1.generatedAddress = "00:50:56:86:7b:d7"
    ethernet1.uptCompatibility = "true"
    ethernet1.present = "TRUE"
    
    
    NEW
    ethernet1.pciSlotNumber = "224"
    ethernet1.virtualDev = "vmxnet3"
    ethernet1.addressType = "vpx"
    ethernet1.generatedAddress = "00:50:56:86:7b:d7"
    ethernet1.uptCompatibility = "true"
    ethernet1.present = "TRUE"
    ethernet1.opaqueNetwork.id = "22b22448-38bc-419b-bea8-b51126bec7ad"
    ethernet1.opaqueNetwork.type = "nsx.LogicalSwitch"
    ethernet1.externalId = "50066bae-0f8a-386b-e62e-b0b9c6013a51"
    ethernet1.connected = "TRUE"
    ethernet1.startConnected = "TRUE"
    
    
  6. Fügen Sie in der NSX Manager-Benutzeroberfläche einen logischen Switch Port hinzu und verwenden Sie die externalId der VM als VIF-Anhang.
  7. Registrieren Sie die VM erneut und schalten Sie sie ein.

    Dazu können Sie das VM-Managementtool oder die ESXi-CLI verwenden, wie hier dargestellt.

    [user@host:~] vim-cmd /solo/register /path/to/file.vmx
    
    For example:
    [user@host:~] vim-cmd solo/registervm /vmfs/volumes/355f2049-6c704347/app-vm/app-vm.vmx
    9
    
    [user@host:~] vim-cmd /vmsvc/power.on 9 
    Powering on VM:
    
    

Ergebnisse

Wählen Sie in der NSX Manager-Benutzeroberfläche im Modus Manager Netzwerk > Logische Switches > Ports aus. Suchen Sie nach der VIF-Anhang-ID, die der externen VM-ID (ExternalID) entspricht, und stellen Sie sicher, dass der Verwaltungsstatus sowie der Betriebsstatus aktiviert sind.

Wenn zwei VMs mit demselben logischen Switch verknüpft sind und in demselben Subnetz konfigurierte IP-Adressen aufweisen, sollten Sie sich gegenseitig Ping-Befehle senden können.

Nächste Maßnahme

Fügen Sie einen logischen Router hinzu.

Sie können die Aktivität am logischen Switch Port überwachen, um Probleme zu beheben. Siehe „Überwachen der Aktivität eines Ports für einen logischen Switch“ im Administratorhandbuch für NSX.