Montag, 10. Januar 2011

VMWare 4.1 E1000 Adapter auf VMXNET3 nachträglich ändern Exchange 2007/2010

Die Umstellung auf dem virtuellen Adapter vmxnet3 hat diverse Vorteile. Hier ein Auszug aus der Homepage von VMWare selbst (Ich nehme diese 1:1 rüber als Sicherheit, so das das lästige klicken und öffnen mehrerer Sites nicht mehr gebraucht wird und falls dieser Link mal nicht mehr existiert, hier die Infos zu diesem Thread noch gefunden werden können!): (Source: http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1001805)

Available Network Adapters


Only those network adapters that are appropriate for the virtual machine you are creating, are available configuration options in the Choose Networks window.

  • Vlance — An emulated version of the AMD 79C970 PCnet32 LANCE NIC, an older 10 Mbps NIC with drivers available in most 32bit guest operating systems except Windows Vista and later. A virtual machine configured with this network adapter can use its network immediately.
     
  • VMXNET — The VMXNET virtual network adapter has no physical counterpart. VMXNET is optimized for performance in a virtual machine. Because operating system vendors do not provide built-in drivers for this card, you must install VMware Tools to have a driver for the VMXNET network adapter available.
  • Flexible — The Flexible network adapter identifies itself as a Vlance adapter when a virtual machine boots, but initializes itself and functions as either a Vlance or a VMXNET adapter, depending on which driver initializes it. With VMware Tools installed, the VMXNET driver changes the Vlance adapter to the higher performance VMXNET adapter.
     
  • E1000 — An emulated version of the Intel 82545EM Gigabit Ethernet NIC. A driver for this NIC is not included with all guest operating systems. Typically Linux versions 2.4.19 and later, Windows XP Professional x64 Edition and later, and Windows Server 2003 (32-bit) and later include the E1000 driver.
     
  • VMXNET 2 (Enhanced) — The VMXNET 2 adapter is based on the VMXNET adapter but provides some high-performance features commonly used on modern networks, such as jumbo frames and hardware offloads. This virtual network adapter is available only for some guest operating systems on ESX/ESXi 3.5 and later.
     
  • VMXNET 2 is supported only for a limited set of guest operating systems:

    32 and 64bit versions of Microsoft Windows 2003 (Enterprise and Datacenter Editions).

    Note: You can use enhanced VMXNET adapters with other versions of the Microsoft Windows 2003 operating system, but a workaround is required to enable the option in VMware Infrastructure (VI) Client or vSphere Client. See Enabling enhanced vmxnet adapters for Microsoft Windows Server 2003 (1007195) if Enhanced VMXNET is not offered as an option.

    32bit version of Microsoft Windows XP Professional
    32 and 64bit versions of Red Hat Enterprise Linux 5.0
    32 and 64bit versions of SUSE Linux Enterprise Server 10
    64bit versions of Red Hat Enterprise Linux 4.0
    64bit versions of Ubuntu Linux
     
  • VMXNET 3 — The VMXNET 3 adapter is the next generation of a paravirtualized NIC designed for performance, and is not related to VMXNET or VMXNET 2. It offers all the features available in VMXNET 2, and adds several new features like multiqueue support (also known as Receive Side Scaling in Windows), IPv6 offloads, and MSI/MSI-X interrupt delivery.

    VMXNET 3 is supported only for virtual machines version 7 and later, with a limited set of guest operating systems:

    32 and 64bit versions of Microsoft Windows XP, 2003, 2008, and 2008 R2.
    32 and 64bit versions of Red Hat Enterprise Linux 5.0 and later
    32 and 64bit versions of SUSE Linux Enterprise Server 10 and later
    32 and 64bit versions of Asianux 3 and later
    32 and 64bit versions of Debian 4
    32 and 64bit versions of Ubuntu 7.04 and later
    32 and 64bit versions of Sun Solaris 10 U4 and later
    Notes: Jumbo frames are not supported in Solaris Guest OS with VMXNET 2 or VMXNET 3.
    Fault Tolerance is not supported on a virtual machine configured with a VMXNET 3 vNIC in vShpere 4.0, but is fully supported on vSphere 4.1.
Adapter Caveats

This section discusses some potential problems you might have.

Migrating virtual machines that use enhanced vmxnet:
VMXNET 2 is new with ESX 3.5 virtual machines configured to have VMXNET 2 adapters cannot migrate to earlier ESX hosts, even though virtual machines can usually migrate freely between ESX 3.0 and ESX 3.0.x.

If you must migrate a virtual machine between later and earlier hosts, do not choose VMXNET 2.
Upgrading from ESX 2.x to ESX 3.x. When a virtual hardware upgrade operation transforms a virtual machine created on an ESX 2.x host to an ESX 3.x host, Vlance adapters are automatically upgraded to Flexible. In contrast, VMXNET adapters are not upgraded automatically because most or all Linux guest operating system versions do not reliably preserve network settings when a network adapter is replaced. Because the guest operating system thinks a Flexible adapter is still Vlance, it retains the settings in that case. If the upgrade replace a VMXNET adapter with a Flexible adapter, the guest operating system erroneously discards the settings.

After the virtual hardware upgrade, the network adapter is still VMXNET, without the fall back compatibility of the Flexible adapter. Just as on the original earlier host, if VMware Tools is uninstalled on the virtual machine, it cannot access its network adapters.

Zusammengefasst E1000 vs VMXNET3

Der Adapter bringt diverse Vorteile. Zb. fährt man im internen vSwitch mit 10GBit/s und nicht mehr mit nur 1 GBit/s! Auch kann man nun RSS (Receive-Side Scaling ) nutzen, dass die Netzwerklast auf Windows 2008 / R2 Systemen die standardmässig RSS von Bord aus bereits aktiviert haben, die Netzwerklast nicht mehr nur auf einem Prozessorkern ausführen, sondern auf die anderen Cores verteilen. Man muss lediglich in den Eigenschaften des VMXNET3 Adapters RSS auf enabled setzen.

Der Unterschied der Performance war bei meinem virtuellen Exchange Server bemerkbar. Die Fenster gehen schneller auf als gewohnt! Auch sind Jumbo Frames und viele weitere feine Features verfügbar. Hier ein Ausschnitt:



Wie man sieht, kann man hier einiges einstellen und Finetuning vornehmen.

Nun genug geredet und zum eigentlichen Thema.

Umstellung eines Exchange Server's Ethernet Adapter aus meiner persönlichen Erfahrung

Als erstes fahren wir den Exchange Server herunter und fügen in Edit Settings einen neuen EthernetAdapter hinzu und ändern den Typ von E1000 (was vordefiniert ist) auf VMXNET3 um und bestätigt alles andere.

Jetzt fahren wir wieder den Exchange Server hoch. Nun wird der neue Adpater automatisch installiert (Voraussetzung dass Ihr die VMTools installiert habt und zwar die aktuellen! Da Windows von Board aus den Treiber nicht per Plug ' n ' Play erkennt! Dafür aber dann, wenn die VMTools installiert sind).

  1. Nun merken wir uns die Einstellungen des Exchange Servers Adapters (der alte E1000). Erledigt, setzen wir diesen Adapter auf "DHCP CLIENT" nicht mehr mit der Fixen IP-Adresse!
    Der neue VMXNET3 Adapter wird nun mit den gleichen IP-Adresse eingerichtet wie die alte Karte E1000.
  2. Nun gehen wir im Geräte Manager und deinstallieren die E1000 Netzwerkkarte und fahren den Exchange Server herunter (PowerOff).
  3. In den Settings der virtuellen Maschine entfernen wir nun den Netzwerkadapter E1000 und bestätigen wieder alles (weiter.. Ok...)
  4. Nun fahren wir den Exchange Server wieder hoch und loggen uns ein.
  5. Der Exchange Server läuft nun nicht mehr! :) Kein Problem, das ist normal, da die alte Netzwerkkarte nicht mehr existiert, verliert Exchange die Settings! Here we go..

    Wir öffnen die Microsoft Exchange Konsole EMC und gehen auf Serverkonfiguration -> Hub-Transport und klicken oben auf dem Server sprich Hub Server mit der rechten Maustaste und wählen die Eigenschaften. Nun, wir müssen dem Exchange Server wieder klarmachen, welcher Ethernet Adapter zuständig ist für die "Interne DNS-Lookups". Wie Ihr bereits sehen könnt, ist da kein Eintrag mehr vorhanden! Somit wählt jetzt den vmxnet3 Ethernet Adapter und dann sollten auch im unteren Fenster "Dieser Adapter enthält die folgenden DNS-Servereinträge:" Eure DNS Server wieder eingetragen sein. Nun bestätigen und das wars! Vorerst! Habt Ihr auch die "Externe DNS-Lookups" aktiviert, müsst Ihr da genau gleich Vorgehen!
  6. Nun müsst Ihr in der Toolbox die Warteschlage überprüfen. Mail Senden/Empfangen Tests! Den EventLog überprüfen. Ich selbst führte zum Schluss nochmals den Vorgang durch, den Exchange Server mit der richtigen IP-Adresse im DNS zu registrieren (registerdns). Da wir ja kurze Zeit den Exchange Server mit zwei Adaptern im LAN hatten und wenn Ihr einen DHCP Server habt, dann der Exchange Server zwei Adapter hat. Zur Empfehlung schaut bitte noch im DNS Server(n) nach, ob alle Einträge richtig sind für den Exchange Server (Hostname mit IP).
Eigentlich keine grosse Übung. Jedoch meint man, alleine mit dem wechseln des Ethernet Adapters läuft der Exchange danach wieder, so war dies wohl zu leicht. ;)

Viel Spass beim umsetzen und wie üblich "Mehrere Wege führen nach Rom! und Use it at your own Risk!" ;)

(c) Fabio Pongan - 10.01.2011

Kommentare:

Anonym hat gesagt…

Danke!

ohuf hat gesagt…

Super Zusammenfassung der Unterschiede zwischen den verschiedenen Adaptertypen.

Ein Hinweis am Rande: Wenn man vor dem entfernen des E1000 in vSphere "vergessen" hat, den Treiber im Gerätemanager zu entfernen, dann ist er im GM nicht mehr sichtbar (weil das Device ja fehlt.

Dann hilft es, eine System-Umgebungsvariable "devmgr_show_nonpresent_devices" mit dem Wert "1" hinzuzufügen, dann im Gerätemanager "Ansicht / Ausgeblendete Geräte anzeigen" einzuschalten, und schon wird der inaktive Treiber wieder angezeigt -- und kann deinstalliert werden.