VMware ESXi Update via SSH

Voraussetzungen:

  • Es sollten sich keine VMs mehr auf dem ESXi Server befinden, da dieser im Anschluss neu gestartet werden muss
  • Wir gehen einmal davon aus, dass SSH auf dem ESXi Server freigeschaltet ist und der Login erfolgreich war

HTTP Verkehr auf dem ESXi Server erlauben

esxcli network firewall ruleset set -e true -r httpClient

Bei VMware nachschauen, welcher der letzte aktuelle Patchstand war

esxcli software sources profile list -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml | grep ESXi-6.5

Das letzte Update herunterladen

esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.5.0-20170404001-standard

Den ESXi Server neu starten

reboot

Nachdem der ESXi Server erneut hochgefahren wurde und wir wieder via SSH eingeloggt sind, sollte die Firewall wieder geschlossen werden

esxcli network firewall ruleset set -e false -r httpClient

Probleme?

Nicht genügend Speicherplatz vorhanden

Es kommt vor, dass das Update abbricht, weil icht genügend Platz verfügbar ist.
Ein df -h zeigt aber, das nich genügend Platz vorhanden ist

Abhilfe:

Das entsprechende Paket händisch herunterladen

cd /tmp

wget http://hostupdate.vmware.com/software/VUM/PRODUCTION/main/esx/vmw/vib20/tools-light/VMware_locker_tools-light_6.5.0-1.33.7273056.vib

dann installieren

esxcli software vib install -f -v /tmp/VMware_locker_tools-light_6.5.0-1.33.7273056.vib

und letztendlich das ursprüngliche Paket installieren

esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.5.0-20171204001-standard

Abhängigkeiten können nicht aufgelöst werden

Als Beispiel für unseren Dell R620 Server, laden wir das Offlinebundle herunter, in dem schon alle notwendigen Treiber integriert sind.

Das Offlinebundle erhält man beim Hersteller: https://www.dell.com/support/home/de/de/debsdt1/drivers/driversdetails?driverId=CD9H6

Auf dem ESXi Server wechseln wir nun in ein Verzeichnis, in dem ausreichend Speicherplatz zur Verfügung steht, beispielsweise

cd /vmfs/volumes/Ihr_Datenpfad

Für den Download nutzen wir wget diret auf dem ESXi Server

wget http://downloads.dell.com/FOLDER05025596M/1/VMware-VMvisor-Installer-6.5.0.update01-7967591.x86_64-DellEMC_Customized-A11.zip

Das Offlinebunde hat einen Anzeigenamen, den wir mittels dem nachfolgenden Befehl auslesen können

esxcli software sources profile list -d /vmfs/volumes/DD087E89-LUN0/VMware-VMvisor-Installer-6.5.0.update01-7967591.x86_64-DellEMC_Customized-A11.zip

Die Installation bzw. das Update erfolgt dann nicht wie oben angegeben, direkt mit den Quellen von VMware, sondern nun gegen das Customized Offline Bundle

esxcli software profile update -d /vmfs/volumes/cDD087E89-LUN0/VMware-VMvisor-Installer-6.5.0.update01-7967591.x86_64-DellEMC_Customized-A11.zip -p DellEMC-ESXi-6.5U1-7967591-A11

Die Fehlermeldung, dass die Abhängigkeiten nicht aufgelöst werden können, erscheint trotzdem.
Da wir uns aber mit dem Offline-Bundle sicher sind, alle Treiber für das Gerät erhalten zu haben, erzwingen wir die Installation!

esxcli software profile update -d /vmfs/volumes/cDD087E89-LUN0/VMware-VMvisor-Installer-6.5.0.update01-7967591.x86_64-DellEMC_Customized-A11.zip -p DellEMC-ESXi-6.5U1-7967591-A11 -f

Nun erfolgt der übliche Reboot

 

Automatische Anpassung der Bildschirmgröße in der VM verhindern

Bei manchen virtuellen Maschinen sollte sich die Bildschirmgröße / Auflösung nicht automatisch an der VMRC anpassen.

Diese Eigenschaft lässt sich derzeit nicht in der VM oder über das vCenter einstellen, daher bleibt nur der Umweg über die Anpassung innerhalb der VM.
Die Datei resolutionset.dll muss umbenannt und die VMware Tools müssen neu gestartet werden.

Hier die notwendigen Befehle:

ren „c:\program files\VMware\VMware Tools\plugins\vmsvc\resolutionset.dll“ „c:\program files\VMware\VMware Tools\plugins\vmsvc\_resolutionset.dll“
net stop VMTools
net start VMTools

Nachdem die VMware Tools aktualisiert oder neu installiert wurden, muss die ANpassung erneut vorgenommen werden.

VMware Workstation OVF Import funktioniert nicht

Aus einer VMware Workstation VM wurde eine OVF erzeugt, um sie woanders einspielen zu können.

Beim Festplattenlayout handelt es sich natürlich um eine erweiterbare VMDK (thin), die in einer Datei abgespeichert wird (also NICHT 2G split-disk)

hdd-fuer-ovf

Der Import der OVF funktioniert auf VMware ESXi Servern problemlos, auf einer anderen VMware Workstation jedoch nicht.

Beim Import der OVF erhält man die total aussagekräftige Fehlermeldung und der Import wird abgebrochen.

ovftool-exe-formatstlstring

Der übliche Vorgang:

  • Man erstellt eine neue VM mit den gleichen Spezifikationen
  • Die dabei erstellte virtuelle Festplatte wird aus der VM entfernt
  • Die mit der OVF gelieferte virtuelle Festplatte wird eingebunden
    add-existing-vmdk
  • Die VM wird gestartet
  • Nun erhält man die folgenden Fehler beim Einschalten der VM:
    you-do-not-have-writeaccess-to-a-partition

    write-protect01

Ursache:

Das Format der mitgelieferten VMDK ist falsch und führt dann beim Import der VM via OVF zur Fehlermeldung

Abhilfe:

  • Die derzeit in der VM vorhandene VMDK muss aus der VM wieder entfernt werden
  • Die VMDK muss mit den Werkzeugen von VMware Workstation umgewandelt werden
    (Bitte ein CMD mit administrativen Privilegien öffnen)
    vdiskmanager
    C:\Program Files (x86)\VMware\VMware Workstation\vmware-vdiskmanager.exe -r D:\vmfs\omdsat\omdsat-disk1.vmdk -t 0 D:\vmfs\omdsat\omdsat-disk2.vmdk
  • Anschliessend kann die neue VMDK in die VM eingebunden werden.

 

 

Windows 3.11 als VM

Leider gibt es die VMware Tools nicht für Windows 3.11 bzw. DOS, daher benötigt man einige Zeit, um entsprechedne Treiber zu finden und Windows 3.x für den tatsächlichen Gebrauch vorzubereiten.

Die Installation von MS-DOS und Windows 3.x wird hier ebenso wenig beschrieben, wie der Vorgang, Floppy-images in eine virtuelle Maschine einzubinden.

Ablauf

  1. Vortäuschen eines 16-Bit Prozessors
  2. Einbinden eines CD-ROM Treibers
  3. Installation der Soundkarte
  4. Installation der Netzwerkkarte
  5. Installation des TCP/IP Netzwerkprotokolls

1. Vortäuschen eines 16-Bit Prozessors

  • Die vorbereitete Floppy cd-dosidle-netz.img muss in die virtuelle Maschine eingebunden werden
  • Unter MS-DOS muss nun die dosidle.exe auf c: kopiert werden
    a:
    copy a:dosidledosidle.exe c:
    c:
    edit autoexec.bat
  • Die autoexec.bat muss nun an der letzten Zeile um den Befehl
    c:dosidle.exe
    erweitert werden.

2. Einbinden eines CD-ROM Treibers

  • Die vorbereitete Floppy cd-dosidle-netz.img muss in die virtuelle Maschine eingebunden werden
  • Unter MS-DOS muss nun die dosidle.exe auf c: kopiert werden
    a:
    copy a:aoatapiaoatapi.sys c:
    c:
    edit config.sys
  • Die config.sys muss nun an der letzten Zeile um den Befehl
    device = c:aoatapi.sys /d:idecd000
    erweitert werden.

3. Installation der Soundkarte

  • Beenden Sie das virtuelle Windows 3.x
  • Schalten Sie die virtuelle Maschien aus
  • Wechseln Sie auf Ihrem PC in den Ordner der virtuellen Windows 3.x Maschine
  • löschen Sie die Zeilen, die mit
    sound.
    beginnen und fügen am Ende der konfigurationsdateidie folgenden Zeilen ein
    sound.VirtualDev = „SB16“
    sound.baseAddr = „0x220“
    sound.dma16 = „7“
    sound.dma8 = „1“
    sound.irq = „5“
    sound.mpu401baseAddr = „0x330“
    sound.Opl3BaseAddr = „0x388“
    sound.present = „TRUE“
  • Die vorbereitete Floppy soundblaster.img muss in die virtuelle Maschine eingebunden werden
    • Starten Sie die virtuelle Maschine
    • Unter MS-DOS muss nun die Soundblaster installation angestossen werden
      a:
      install
  • Folgen Sie den Anweisungen und starten die virtuelle Maschine neu

4. Installation der Netzwerkkarte

  • Die vorbereitete Floppy cd-dosidle-netz.img muss in die virtuelle Maschine eingebunden werden
  • Windows 3.x kann aus Dos heraus gestartet werden
    win.com
  • Wechsel in die Gruppe Netzwerk
  • Doppelklick auf Netzwerk-Setup
  • Klick auf Netzwerke…
  • Microsoft Windows Network installieren
  • Klick auf Treiber
  • Vorhandene Netzwerktreiber oder Adapter bitte löschen
  • Klick auf Adapter hinzufügen
  • Nicht aufgeführter oder aktualisierter Netzwerkadapter – OK
  • Durchsuchen – a: – winnet – OK
  • es sollte nun“Advanced Micro Device PCNET family“ angezeigt werden
  • Die vorbereitete Floppy tcpip.img muss in die virtuelle Maschine eingebunden werden
  • Klick auf Protokoll hinzufügen…
  • Nicht aufgeführtes oder aktualisiertes Protokoll – OK
  • Durchsuchen – a: – OK
  • Jetzt sollte die Liste vervollständigt sein und kann über die Schliessen Schaltfläche verlassen werden.
  • Neben den beiden vorbereitetetn Floppy images benötigt man nu auch die WFW Disks 7 bis 9 und kann nun fleissig DJ spielen und die unterschiedlichen Disks nacheinander mounten.
  • Es werden noch Angaben benötigt
    • Compuername
    • Arbeitsgruppe
    • Standard-Anmeldename
  • Nach dem unbedingten Neustart der virtuellen Maschine, wird ein Anmeldebildschirm angezeigt, der nach eine Kennwort verlangt. Da wir aber bisher noch keins eingegeben haben, kann dies durch drücken der Enter-Taste übergangen werden, so dass er nach einer Kennwortliste fragt. Letztere müssen wir nicht zwangsweise anlegen, werden bei der Ablehnung aber bei jedem Neustart daran erinnert.

VLAN’s kurz erklärt – HP Procurve und VMware ESXi

Anlegen von Netzwerken auf den ESXi Servern

  • Auf den ESXi Servern können neue virtuelle Netzwerke angelegt werden
  • Der Netzwerkname (Network Label) muss dabei auf allen ESX Servern gleich lauten (Groß-/Kleinschreibung beachten) und überall angelegt werden
  • Zu jedem virtuellen Netzwerk kann auch eine VLAN Nummer (VLAN ID) mitgegeben werden

HP-Procurve Switch Grundlagen

Auf jedem HP-Procurve Switch existiert schein ein VLAN mit der Nummer 1 (Default), das man nicht löschen darf
Auf den HP-Procurve Switche gibt es zwei Begriffe, die hier kurz erläutert werden müssen:

  • Trunk: Mit Trunk ist hier das Zusammenfassen mehrerer Ports gemeint, so daß mehr Datendurchsatz erreicht werden kann.
  • VLAN: Wenn ein Netzwerkkabel an einen Port angeschlossen ist, können die Netzwerkpakete zusätzlich „ver- oder entgepackt“ werden. Beim verpacken werden die Netzwerkpakete mit einer Nummer versehen werden (VLAN ID), dabei müssen wir bei der Konfiguration die Porteinstellmöglichkeiten unterscheiden:
    • Portkennzeichnung mit „T“ = An diesem Port kommt Netzwerkverkehr an, der schon „eingepackt“ (tagged) ist. Die Ports der ESXi Server (vmnic3+7) sind solche T-Ports.
    • Portkennzeichnung mit „U“ = An diesem Port kommt Netzwerkverkehr an, der NICHT „eingepackt“ (untagged) ist und der Switch packt dieses Paket dann entsprechende ein. Hier stecken wir als Beispiel ein Anlagennetz ein (weil eine Maschine keine VLAN ID setzen kann) und der Switch kennzeichnet die Netzwerkpakete dann mit der entsprechenden VLAN ID.
    • Portkennzeichnung mit „E“ = Die VLAN Konfiguration für diese VLAN ID wird nicht angewendet.

Beispielszenario

Grundsätzlich gilt: Man muss jedem Switchport (ich spreche hier von den einzelnen Anschlussbuchsen am Switch) 3 Informationen mitteilen:

  1. zu welchem VLAN der Traffic gehört, der im jeweiligen Port vom daran angeschlossenen Client ankommt
    1. Kann das Gerät selber VLAN’s erzeugen, ist beim HP-Procurve Switch ein „T“ zu wählen
    2. Kann das Gerät selber keine VLAN’s erzeugen, ist beim HP-Procurve Switch ein „U“ zu wählen
  2. welche anderen VLANs durch diesen Port nach Aussen (also zum daran angeschlossenen Client) kommunizieren dürfen
  3. ob das an diesen Port angeschlossene Gerät die Information braucht, aus welchem VLAN der jeweilige Traffic ursprünglich stammte
    1. Somit ist beim HP-Procurve Switch ein „T“ zu wählen

ZIEL: 3 voneinander komplett getrennte VLAN’s in 2 Räumen/Stockwerken/Gebäuden, die einen gemeinsamen Drucker verwenden!

Nun zu den 3 oben genannten Informationen, die wir jedem Switchport mitteilen müssen:

Info1 (zu welchem VLAN gehört der Port?): VLAN ID / VLAN Nummer

  • Port 1 » VLAN ID 101
  • Port 2 » VLAN ID 102
  • Port 3 » VLAN ID 103
  • Port 4 » VLAN ID 104
  • Port 5 » VLAN ID 1 (default VLAN)

Info 2 (welche anderen VLANs dürfen durch den jeweiligen Port kommunizieren?):

  • Port 5 soll den Verkehr aus_ allen VLAN’s und dem default VLAN 1 akzeptieren, dient also als Uplink
  • Port 4, 3, 2 sollen nur den Verkehr aus dem eigenen VLAN akzeptieren
  • Port 1 soll den Verkehr aus allen VLAN’s akzeptieren

daher müssen wir folgende Konfiguration vornehmen:

  • Port 5 » Mitglied in VLAN 101, VLAN 102, VLAN 103, VLAN 104 und VLAN 1
  • Port 4 » Mitglied in VLAN 104, VLAN 101
  • Port 3 » Mitglied in VLAN 103, VLAN 101
  • Port 2 » Mitglied in VLAN 102, VLAN 101
  • Port 1 » Mitglied in VLAN 101, VLAN 102, VLAN 103, VLAN 104

Info 3 (soll die Information, aus welchem VLAN der Traffic stammt, mitgegeben werden?): Die Portkennzeichnung für den Port nennt sich TAG. (geregelt in IEEE 802.1q)

  • Port 5 TAGGED – alle anderen Ports sind UNTAGGED
    Ergebnis: Der Client im VLAN 104 sendet ein Paket ins Netz.

    • Der Switch weiss intern, dass dieses Paket aus VLAN 104 stammt – daher darf es den Switch auch nur an einem Port verlassen, der im VLAN 104 Mitglied ist.
    • Zuersteinmal sind das die Ports 4 (von dem kam das Paket), Port 1 (Mitglied in 101-104) und Port 5 (Mitglied in 101-104 und 1) – über den das Paket nun den Switch verlässt.
    • Da der 2. Switch aber wissen soll, aus welchem VLAN das Paket stammt, hängt er den TAG an , weil der Port mit „T“ markiert ist.
    • Der 2. Switch weiss nun, dass dieses Paket aus VLAN 104 stammt, daher darf es den Switch wieder nur auf Port 1 und Port 4 verlassen.

Es findet nun nur noch Verkehr innerhalb der VLANs statt – auch über Switchgrenzen hinweg!!! So als wären die 3 Netze physikalisch voneinander getrennt!!!
DasBeste: Alle können jedoch den gemeinsamen Drucker verwenden.

NFS für ESXi

NFS Share mit Windows Server 2008 R2 für VMware ESX(i)

Um einen NFS Server unter Windows zu betreiben, war es in der Vergangenheit nötig, die Useraccounts der Linux/Unix Welt mit den Useraccounts der Windowswelt zu verknüpfen.
Seit MS Server 2008 ist die Benutzerkontenzuordnung nicht mehr Bestandteil des Betriebssystems. Es kann jedoch ein solcher Dienst im Netzwerk abgefragt werden.

Die Neuerung beim NFS Server unter MS Server 2008 R2 ist nun, daß man diese Kontenzuordnung nicht mehr zwingend benötigt. Somit läßt sich bspw. ein ESX(i) Server spielend mit einem NFS Share verbinden.

Die Kurzreihenfolge:

  • Für die Rolle „Dateidienste“ den Rollendienst „Dienste für NFS (Network File System)“ installieren.
  • Lokale Sicherheitsrichtlinie ->Sicherheitsoptionen -> „Netzwerkzugriff: Die Verwendung von ‚Jeder‘-Berechtigungen für anonyme Benutzer ermöglichen“ aktivieren.
  • Freizugebenden Ordner anlegen/auswählen ->Rechtsklick Eigenschaften -> Karteireiter ‚NFS-Freigabe‘ -> Button ‚NFS-Freigabe verwalten…‘
  • Kerberos kann man beide deaktivieren, ‚Keine Serverauth…‘ aktivieren
  • ‚Zugriff durch nicht zugeordneten Benutzer ermöglichen‘ aktivieren
  • ‚Unix-Zugriff durch nicht zugeordneten Benutzer zulassen …‘ auswählen
  • Button ‚Berechtigungen‘
  • Zugriffsart – Schreibzugriff
  • Codierung – ANSI (Voreinstellung)
  • Haken setzen bei ‚Stammzugriff zulassen‘
  • Alles mit ‚Ok‘ abschließen
  • Am ESX(i) auf Hostebene auf den Karteireiter ‚Konfiguration‘ wechseln
  • links im Menü ‚Speicher‘ auswählen
  • rechts oben ‚Speicher hinzufügen…‘
  • Assistent folgen (NFS ->Server IP + Share Name + Name für DataStore ->Abschliessen)

Das wars schon!

Adaptec RAIDController unter ESXi

Adaptec RAID Controller überwachen und managen

  1. Prüfen, um welchen RAID Controller es sich handelt
    1. Passendes Modell wählen (http://www.adaptec.com/en-us/support/raid/)
    2. Treiber herunterladen (VMware ESX Server) (z.B. aacraid_vmware_esx_esxi_drivers_1.1.7-28000.tgz)
    3. CIM Provider herunterladen (Storage Manager Downloads) (z.B. cim_vmware_v7_00_18781.zip)
  2. Virtuelle Maschinen herunterfahren, Host in Maintenance versetzen
  3. SSH freischalten
  4. Die unter 1 heruntergeladene Datei *.zip in /tmp des ESXi Servers kopieren (z.B. über WinSCP)
  5. Entpacken der *.tgz Datei. Der ESXi Server verfügt NICHT über eine unpacker, so dass die Datei z.B. mit 7-Zip oder tar -xvf (auf Linux) entpackt werden muss
    1. In der entpackten tgz Datei befindet sich eine Datei mit der Endung vib
    2. Diese Datei wird in den /tmp Ordner des ESXi Servers kopiert (z.B. mit WinSCP)
  6. Einspielen der Patches auf dem ESXi Server (*.zip und *.vib Datei)
    1. esxupdate –bundle=/tmp/arcconf-18781.zip –nodeps –nosigcheck –maintenancemode update
    2. esxupdate -b /tmp/vmware-esxi-drivers-scsi-aacraid-400.4.1.7.28000-1.0.4.260247.x86_64.vib –nodeps –maintenancemode –nosigcheck update
  7. Reboot des ESXi Servers
  8. Prüfen, ob die Patches eingespielt wurden
    1. esxupdate query –vib-view | grep -i aacraid
    2. Es müssen zwei Einträge vorhanden sein

Arbeiten am Raidcontroller

  1. Installation von Arcconf auf dem Betriebssystem
    1. In der entpackten tgz Datei befindet sich eine setup_remote_arcconf_x32.exe oder remote-arcconf-7.00-18781.i386.bin (für Linux) die auf dem Verwaltungsrechner installiert werden muss
    2. IP, Benutzername und Kennwort des ESXi Servers werden abgefragt und auf dem System gespeichert
  2. Informationen des Raid Controllers ermitteln
    1. ARCCONF GETCONFIG <Controller#> PD
    2. ARCCONF GETCONFIG 1 PD
  3. Defekte Festplatte über Arcconf entfernen, falls das System das nicht gemacht hat
    1. ARCCONF SETSTATE <Controller#> <Channel#> <Device#> <State>
    2. ARCCONF SETSTATE 1 DEVICE 0 2 DDD
  4. Defekte Festplatte physikalisch aus dem System entfernen
  5. Neue Festplatte physikalisch in das System einbauen
  6. Neue Festplatte als Hotspare definieren
    1. ARCCONF SETSTATE <Controller#> DEVICE <Channel#> <ID#> HSP LOGICALDRIVE <LD#>
    2. ARCCONF SETSTATE 1 DEVICE 1 0 HSP LOGICALDRIVE 1 2
  7. Es wird automatisch ein Rebuild ausgeführt

Abschliessende arbeiten

  1. SSH auf dem ESXi Host wieder deaktivieren
  2. Den Maintenance Mode verlassen
  3. Die VM(’s) wieder anstarten