ESXi: iSCSI mit Jumboframes

Wenn man auf ESX 4.x Hosts iSCSI Kernelports erstellt, haben diese eine Standard MTU von 1500. es gibt über die GUI des vSphere-Client keine Möglichkeit Jumboframes einzurichten. Es ist aber sehr wohl möglich mit der vSphereCLI und per PowerCLI. Für letztere Methode fand ich ein tolles Skript im Blog von Jason Duffett.

vSphereCLI Methode

Zunächst wird ein vSwitch für iSCSI erstellt. Hier gibt es zwei Konzepte. Entweder ein vSwitch mit zwei Kernelports und zwei Uplink NICs. Hier muß jedoch sicher gerstellt sein, daß jeder Kernelport exklusiv einen Uplink Adapter verwendet und den anderen Adapter als “unused Adapter” deklariert. Alternativ kann man zwei vSwitches mit je einem Kernelport und einem Uplink erstellen. Dies ist etwas übersichtlicher (“keep it simple“).

Allgemein können den Aufrufen vicfg-vswitch und esxcli noch Zugangsdaten übergeben werden. Ich habe diese aus Platzgründen weggelassen. Übergibt man sie nicht, wird man bei der Ausführung nach Nutzer und Kennwort gefragt.

Es sind [–username root] (ggf. auch anderer Benutzer) und [–password <myPass>]. Man setzt sie vor die [–server] Option.

vicfg-vswitch.pl --server <Host> --add <vSwitch>

MTU des neuen vSwitch auf 9000 setzen.

vicfg-vswitch.pl --server <Host> -m 9000 <vSwitch>

Erfolgskontrolle

vicfg-vswitch.pl --server <Host> -l

iSCSI Portgruppe erstellen

vicfg-vswitch.pl --server <Host> --add-pg <pgName> <vSwitch>

Kernelport erstellen und der iSCSI Portgruppe zuweisen und MTU setzen.

vicfg-vmknic.pl --server <Host> -add -ip <IP> -netmask 255.255.255.0 <pgName> -m 9000

Erfolgskontrolle

vicfg-vmknic.pl --server <Host> -l

Kernelport mit Software iSCSI Initiator verbinden. <vmk> Kernelport z.B. VMK1, <vmhba> Software-iSCSI Adapter z.B. vmhba34.

esxcli --server <Host> swiscsi nic add -n <vmk> -d <vmhba>

Erfolgskontrolle

esxcli --server <Host> swiscsi nic list -d

PowerCLI Methode

New-VirtualSwitch -VMHost <Host> -Name <vSwitchName>

MTU auf vSwitch setzen

Set-VirtualSwitch -VirtualSwitch <vSwitchName> -mtu 9000

NICs an iSCSI vSwitch binden

New-VMHostNetworkAdapter -VMhost <Host> -PortGroup <PGName> -IP <x.x.x.x>
-SubnetMask 255.255.255.0 -Mtu 9000
-ManagementTrafficEnabled $false
-VMotionEnabled $false
-VirtualSwitch <vSwitchName>

VM-Kernelport an iSCSI Adapter binden. <vmk> Kernelport z.B. VMK1, <vmhba> Software-iSCSI Adapter z.B. vmhba34. An dieser Stell muß sicher sein, daß der Kernelport nur einen Adapter als Uplink hat und keinen Standby Adapter. Vgl. VMware KB.

PowerCLI 4.x

$esxCli = Get-EsxCli -Server <Host>
$esxCli.swiscsi.nic.add(<vmhba>, <vmk>)

PowerCLI 5.x

Die Syntax hat sich ab PowerCLI 5.0 etwas verändert.

$esxCli = Get-EsxCli -Server <Host>
$esxCli.iscsi.networkportal.add(<vmhba>, <forceflag>, <vmk>)

Der Parameter <forceflag> kann den Wert $null annehmen, muss aber übergeben werden.

Das ganze gibt es auch sehr komfortabel als komplettes powerCLI Skript im Blogvon Jason Duffett. Achtung! Das Skript funktioniert nur auf powerCLI Version 4.x. Für PowerCLI Version 5.x muss $esxCli.swiscsi.nic.add durch $esxCli.iscsi.networkportal.add ersetzt werden. Ich habe Jasons Script für PowerCLI 5.x angepasst. Download PowerCLI Script (.ZIP): iSCSI-Config-ESXi5

Weitere interessante Links zum Thema:

Eine Antwort auf „ESXi: iSCSI mit Jumboframes“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert