vCenter Server Appliance Update 5.1 auf 5.1 U1+ schlägt fehl – OpenSSL Fatal Flips Selftest Failure

In der Weboberfläche (https://<vcenter-appliance>:5480/) ist das Update der Appliance schnell gestartet:

Leider schlägt das Update bei der Version 5.1 (Build 880472 und kleiner) gerne fehl. Das Update läuft in der Regel in paar Stunden lang (ich habe schon 4-5 Stunden gewartet), im Gegensatz zu den Aussagen von vmware (…“the update process halts for nearly an hour and the update status at Web UI shows as installing updates. However, eventually, the update completes successfully after an hour.“). Schuld ist ein Fehler ist der FIPS-Sicherheitsprüfung der SSL-Module

In der Regel ist das Update trotz langer Wartezeit irgendwann mit diesem Fehler in einem halbkaputten Zustand:

./etc/init.d/vami-sfcb: line 238: 7385 Aborted nohup /opt/vmware/share/vami/vami_sfcb_test > /dev/null 2>&1
./etc/init.d/vami-sfcb: line 238: 7398 Aborted nohup /opt/vmware/share/vami/vami_sfcb_test > /dev/null 2>&1.failed, restarting vami-sfcbd.
Shutting down vami-sfcbd: done.
Starting vami-sfcbd: done.
Checking vami-sfcbd status:/etc/init.d/vami-sfcb: line 238: 7513 Aborted nohup /opt/vmware/share/vami/vami_sfcb_test > /dev/null 2>&1
./etc/init.d/vami-sfcb: line 238: 7526 Aborted nohup /opt/vmware/share/vami/vami_sfcb_test > /dev/null 2>&1
./etc/init.d/vami-sfcb: line 238: 7539 Aborted nohup /opt/vmware/share/vami/vami_sfcb_test > /dev/null 2>&1
./etc/init.d/vami-sfcb: line 238: 7552 Aborted nohup /opt/vmware/share/vami/vami_sfcb_test > /dev/null 2>&1

Es hilft, VOR DEM UPDATE die SSL-Bibliotheken und Binaries auf den aktuellen Stand zu bringen und die FIPS-Hashes zu löschen. Das geht auch nach oder während eines kaputten Updates, allerdings sollte man das Update danach noch einmal korrekt ganz durchlaufen lassen – das klappt dann meistens auch. Gegen zerstörte Datenbanken hilft die Snapshot-Funktion 🙂

Lösung:

  • Die Update-ISO in die vCenter-Appliance einlegen (Download hier)
  • An der Appliance anmelden, via SSH oder lokal
  • Falsche FIPS-Hashes löschen
    rm /usr/lib64/.lib*.hmac
  • ISO mounten, Pakete aktualisieren, ISO unmounten
    mount /dev/cdrom /media/
    cd /media/update/package-pool
    rpm -Uvh openssl-*
    rpm -Uvh libopenssl0_9_8-*
    rpm -Uvh openssh-5.1p1-*
    umount /media/
    
  • Reboot der Appliance (Achtung, das dauert einen Moment). Danach startet auch die Weboberfläche wieder.
  • Das Update über die Weboberfläche neu starten und komplett laufen lassen (kann ~45m bis 1h dauern)
  • Reboot

Wenn die Appliance auf dem Upgrade-weg komplett zerschossen wurde, was passieren kann wenn ein Admin die VM wären des Prozesses im falschen Moment hart rebootet, hat mir die Anleitung zum manuellen Update sehr weitergeholfen. Danke @Martin Knaup (http://vaspects.blogspot.de/2013/05/workaround-for-vcenter-server-appliance.html). Das ist zwar unsupportet, aber in der Regel stressfrei und wesentlich sinnvoller als alles neu zu bauen – je nachdem wieviele Replikationsjobs, Backups, Regel und so weiter an dem vCenter dranhingen.

Vmware converter: Die IP-Adresse der virtuellen Zielmaschine, die den Converter-Hilffsserver ausführt, kann nicht ermittelt werden

vmware-converter-schlug-fehlUnter umständen schlägt die Konvertierung von frischen physikalischen Servern bei 1% mit dieser unfreundlichen Fehlermeldung fehl:

Fehler: Die IP-Adresse der virtuellen Zielmaschine, die den Converter-Hilffsserver ausführt, kann nicht ermittelt werden.

Grund war bei mir eine „gestörte“ Netzwerkkommunikation zwischen der Converter-Ausführenden Maschine und dem ESX-System. Noch genauer war das hier ein router-Isolationsmodus, bei dem der (vermeintliche) Switch das Ethernet nicht sauber bridged, sondern nur IP zulässt.

Der Fehler lässt sich abe auch prinzipiell mit jeder Firewall zwischen Converter und ESX reproduzieren. Also immer prüfen:

  • Windows Firewall aus
  • Firewall vor dem ESX-Managementnetwork aus
  • Layer 2 Durchgangskontrolle 🙂

Für den Fall, das es keinen DHCP im physikalischen LAN an dem converter-Zielnetz (des neuen Gastes) gibt, muss die Adresse für die Converter-Hilfsmaschine sowiso manuell unter „erweitert“ eingegeben werden.

 

Vmware vSphere Aufgabe „Festplattenbereich zuordnen“ (Englisch: „Map Disk Region“) häuft sich

Manchmal erscheint im Aufgabenbereich des vSphere Cients eine ganze Liste an „Festplattenbreich zuordnen“ Aufgaben. Ab und an sogar beinahe im Sekundentakt. In der englischen Version des vSphere Clients heisst die Meldung „Map Disk Region“. Der Effekt tritt gehäuft auf, wenn eine Datensicherung über die VCB-Schnittstelle gemacht wird, vor allem (natürlich) bei Drittanbieter-Backup-Software.

Tipp: Der vSphere-Client ist immer Multilingual. Die englische Version lässt sich auch auf einem Deutschen Windows jederzeit durch Anhängen des Parameters „-locale en_US“ starten. In vielen Fällen die englische Beschreibung eindeutiger und das googeln nach Fehlern bringt mehr Ergebnisse.

 

Englisch:

 

Deutsch:

 

 

Lösung: Dieser Eintrag ist an sich erst einmal rein informell und hat keinen Einfluss auf Performance oder den Systemstatus. Die Ursache ist (meist) eine stark fragmentierte VMDK; jeder „Zuordnen“-Eintrag stammt aus dem Blockzugriff auf ein Dateifragment auf ein gelocktes virtuelles Volumen. In den meisten Fällen ist ein sehr großer (oder viele kleine) Snapshot(s) des Volumens die Ursache.

Fast immer hilft:

  1. Backup-Software aussetzen (damit kein Volumen-Locking mehr passiert)
  2. Alle Snapshots des Gastes entfernen

Wenn das noch nicht hilft, ist es schlimmstenfalls notwendig das (und alle anderen fragmentierten) Volumen von dem Datastore auf einen anderen zu verschieben und zurückzuschieben.

Es gibt mittlerweile auch einen öffentlichen VMware KB-Artikel dazu.

vSphere „Unable to access file since it is locked“ (Snapshots konsolidieren nicht)

Manchmal konsolidieren Consolidation-Helper Snapshots von Backup-Programmen nicht korrekt. Wenn das nicht auffällt, landen bei jedem neuen Consolidation-Helper neue zusätzliche .vmdk-Dateien im Dateisystem:

vmware-konsoliddation-1

Diese fressen nach und nach den freien platz im Datastore auf und sind in der Snapshot-Ansicht nicht zu sehen:

vmware-konsoliddation-2

Sobald man im Gast-Menü „Konsolidieren“ auswählt erscheint folgende Fehlermeldung im Log:

Zugriff auf die Datei <unspecified file> nicht möglich

vmware-konsoliddation-3… oder deren Englischsprachiger pendant:

Unable to access file <unspecified filename> since it is locked

Die Ursache sind in der Regel VADP (vmware api for data protection) Backups, bei denen beim zurückrollen der Helpersnapshots ein Fehler aufgetreten ist.

Lösung

  1. Backup-Jobs abschalten. Wenn wärend des manuellen zurückrollens ein VAPD-Helper gestartet wird, ist die zerstörung der VMDK warscheinlich.
  2. Prüfen, welche VMDK die letzte erstelle ist. Achtung! Die Datei mit der höchsten Nummer ist nicht zwingend die letzte. Das geht in der Bearbeitungsansicht des Gastsystems:
  3. vmware-konsoliddation-4Öffnen einer SSH-Shell auf den Server, die diese Maschine registriert hat (verschieben ist vorher möglich) und wechseln in das Verzeichnis in dem die betreffende Maschine wohnt (z.B. /vmfs/volumes/4444444-4444444-4444-f4f4f4f4/meinemaschine/)
  4. Herunterfahren des Gast. Das ist wichtig, weil die VMDK nur offline vollständig zurückrollt wenn die VADP nicht mehr funktionieren.
  5. Zurückrollen (Klonen) der Snapshots mit vmkfstools in eine neue VMDK:
    vmkfstools -i meinemaschine-0000??.vmdk ./NEWdisk1.vmdk

    Die „??“ entsprechen dem letzten Snapshot aus dem zweiten Punkt. Anstelle des aktuellen Pfades („./“) kann auch ein anderer Datastore zum Beipisle mit mehr Platz verwendet werden. Dieser vorgang dauert eine (ganze) Weile.

  6. Jetzt wird eine neue VMDK erstellt, die einfach an die Maschine anstelle der alten angehängt wird. Die MAschine dann nun noch testen und wenn alles läuft die alten -0000* Snapshots löschen.

Das klappt alles sehr gut, solange es keinen I/O-Error im zugehörigen vmware.log gibt. Wenn das der Fall ist, ist die integrität mindestens einer .vmdk beschädigt; sofern die VM dann noch läuft klappt eigentlich nur noch ein Converter-Klon. Es sei denn jemand hat einen noch besseren Tipp für uns 🙂