vSphere Client 5.5U2 „Internet Fehler 2229“

Problem

Das Update auf den aktuellen vSphere Client v5.5U2 schlägt mit einer überaus wirschen Fehlermeldung die nach SQL aussieht fehl:

Fehler 2229.Datenbank: . Tabelle 'LaunchCondition' konnte nicht in SQL-Abfrage geladen werden:
SELECT 'Condition', 'Description' FROM 'LaunchCondition'. 

Lösung

Diese Version des Setups ist, entgegen der vmware-Gewohnheit, nicht Updatefähig. Eine alte Version des 5.5er Clients muss nur erst deinstalliert werden, dann läuft das Setup fehlerfrei durch.

Dieser Bug ist interessanterweise in den Release Notes zum vSphere Client 5.5u2 genau so dokumentiert.

vSphere-Client 5.5U2 kann wieder die Einstellungen von virtuellen Maschinen Version 10 (und höher) bearbeiten

Nach übermäßig viel kritischem Feedback für den neuen unbeliebten vSphere Webclient-Oberfläche (Flash?!? Singe-point-of-Failure?!? Nur für Windows ??!?) hat sich vmware zum Glück erbarmt, dem vSphere Client die neue vm-Version 10 ebenfalls beizubringen. Zwar nicht in vollem Umfang, aber für das Admin-Tagesgeschäft durchaus brauchbar.

Da fragt man sich, ob vmware da vielleicht ein besonders unglückliches Händchen bei der Auswahl der Programmierplattform für den vsphere Client hat … erst Microsoft J# (!), Erweiterungen in Microsoft C 2005 (!!) dann Flash (!!!). 🙂

Mit  vSphere 5.5 Update 2, gibt es wieder die Möglichkeit, einen Gast mit der virtuellen Hardware Version 10 zu bearbeiten. Der vSphere-Client (auch bekannt als # oder Thick-Client) kann kostenlos heruntergeladen werden. Endlich man wieder Hardware-Version 7,8,9 und 10 VMs bearbeiten – alledings auf der Funktionsebene von Hardware-Version 8.

Es gibt einen aktuelen Artile dazu in der vmware KB: 2061336

Möglich sind diese dinge:

  • Erhöhen/Verkleinern RAM
  • Netzwerkportgruppe bearbeiten
  • Geräte entfernen/hinzufügen
  • Anpassen der anzahl vCPU
  • Mount ISO
  • Virtuelle Festplatten bearbeiten
  • Limits bearbeiten
  • Reservierungen bearbeiten
  • Erweiterte Einstellungen bearbeiten

vmware vCenter Appliance (vCSA) Kennwort abgelaufen, vcenter Kennwort zurücksetzen

Problem

vmware-vcenter-appliance-vcsaDer Kunde (natürlich NIEMALS ein Admin :-)) hat sich ausversehen aus der vmware vCenter Appliance ausgesperrt. Das Kennwort für root ist abgelaufen. AD-Anmeldungen schlagen ebenfalls fehl. Nach einer „zu langen“ Wartezeit geht nämlich auch die AD-Anmeldung der vCSA verloren – jetzt soll das root-Konto wieder aktiviert werden.

Die Reaktivierung des Kontos und der Kennwort-Zurücksetzen Vorgang sind sich sehr ähnlich, daher hier die Anleitung für die Aktivierung eines abgelaufenen root-Kontos und das zurücksetzen des root-Kennwortes in einem.

Lösung

  1. Mit dem vSphere Client auf den Host verbinden, auf dem die vCSA läuft und die Konsole der Appliance öffnen.
  2. Wenn der GRUB Bootloader zu sehen ist, mit der Leertaste den automatischen Vorgang anhalten.
  3. Den „VMWare VCenter Appliance“-Eintrag (der erste von oben) markieren und „p“ zur Passworteingabe drücken.
  4. Das Kennwort für den GRUB-Bootloader lautet „vmware“ (Es sei denn man hat mit VAMI die Kennwörter geändert, dann ist das GRUB-Kennwort das VAMI Systemkennwort)
  5. Den „VMware vCenter Server Appliance“ Eintrag wieder markieren und „e“ zum editieren der Bootoptionen drücken
  6. Zu den Boot-Optionen hinzufügen:vcenter-server-bootoptions
    init=/bin/bash
  7. Mit „Enter“ die Änderung übernehmen und dann mit „b“ den Bootvorgang starten. Achtung, das booten direkt an die Shell geht jetzt sehr schnell (und was sich reimt war schon immer gut)
  8. Mit „passwd root“ das Kennwort für den root-Benutzer ändern
  9. vCSA Neu starten, fertig.

Um den Root-Zugang im Falle der Sperrung wieder zu entsperren, eingfach bei Punkt 8 (das ist gestartet bash-shell für die VCSA) weitermachen:

  1. Die Datei /etc/shadow bearbeiten
    vi /etc/shadow
  2. Mit den Pfeiltesten navigiert man in die „root“ Zeile, drückt „i“ für den Insert-Modus und löscht das „x“ vor dem Dollarzeichen. Damit ist Sperrung auc schon aufgehoben.
  3. Die drittletzte Zahl der Zeile ist die Anzahl der Tage für den Kennwortablauf, wenn gewünscht kann man hier die Zahl auch direkt ändern (oder löschen für „niemals“)vcenter-server-bootoptions
  4. Speichern mit ESC (insert-mode verlassen), dann den „:“ (Doppelpunkt) für die Befehlseingabe drücken und mit dme Befehl „w!q“ (dann Enter) speichern und schliessen.
  5. Neu starten, fertig.

 

vmware Freie Blöck auf Datastore als frei markieren (Reclaim wasted Space, vmkfstools punchzero, storage unmap)

Problem

NetAPP Nimble iSCSI Storage Platz freigebenEine SAN Lun (NetAPP, EMC, Nimble, Nutanix …) die (insgeheim oder nicht) Thin Provisioning auf dem Array (oder Volumen, Aggregat, Shelf, whateveritscalled) macht, läuft seit vSphere 5.x langsam voll. Es ist immer weniger Speicher auf dem Aggregat frei. Die Gastmaschienen bleiben gleich groß, aber jeder Storage-vMotion-Vorgang und jedes erstellen/löschen von Daten auf dem Datastore hinterlässt weniger freien phasikalischen Speicher auf dem Aggregat. Der Datastore wird im vSphere Client aber mit unverändert viel Speicher und unverändert viel freiem Speicher angezeigt. Nur die physikalisch Belegung wird größer und größer.

Lösung

Wenn eine thin provisioned Lun mit Daten beschrieben wird, werden diese Daten „hart“ geschrieben. Werden diese Daten dann wieder gelöscht, werden die Daten aber nicht wirklich gelöscht („mit Nullen überschrieben“), sondern die betroffenen Blöcke werden nur als „frei“ markiert. Ähnlich arbeiten praktisch alle heutigen Dateisysteme, weil ein Löschvorgang andernfall ein Schreibvorgang vollständiger größe und wäre und somit (potentiell) lange dauern würde.

Wenn nun häufig Daten geschrieben und gelöscht werden, werden nach und nach mehr Blöcke mit „als gelöscht“ markierten Daten hinterlassen. Ein SAN kann von aussen nicht unterscheiden, welche Daten echt sind und welche als löschbar markiert – dazu wäre technisch tiefe Einsicht in das Dateisystem notwendig. Tatsächlich freie Bereiche („Nullen“) erkennen SANs aber in der Regel als solche. Dieser Vorgang wird oft als punchzero, zero free space, reclaim wasted space, unmap disk space oder ähnliches bezeichnet.

Windows 2003 und höher

Unter Windows kann das Tool sDelete von Sysinternals den freien Bereich eines Datenträgers mit Nullen füllen.

c:\>sdelete -p 1 -z c:

ESX(i) Instalationen bringen ein entsprechendes Tool ebenfalls mit. Je nach vSphere Release unterscheidet gibt es allerdings etwas andere Namespaces dafür.

vSphere 5.1

vmkfstools -y 95 -d /vmfs/volumes/DATASTORENAME

vSphere 5.5

storage vmfs unmap -l DATASTORENAME

Linux

dd if=/dev/zero of=/DISK/foo.bar bs=4096 && rm -f /DISK/foo.bar

Zum Beispiel lässt sich dieser Vorgang auch via ESXCLI auslösen, zum Beispiel monatlich:

c:\>esxcli -s SERVER -u root -p PASSWD storage vmfs unmap -l DATASTORENAME

Veeam v8 „Post-job script timed out“

Problem

Seit dem Update auf Veeam v8 läuft die Sicherung von virtuellen Maschinen zwar fehlerfrei („SUCCESS“) durch, trotzdem erhält der Job am Ende aber den Status „Warning“. Grund ist die Meldung „Post-job script timed out“.

veeam-post-job-timeoutLösung

In v8 wurde ein Timeout eingeführt, das nach 15 Minuten für Scripts die nach der Sicherung abläuft. Die zeit ist reichlich knapp bemessen. Das Timeout lässt sich in der Registry zum Glück ändern:

HKEY_LOCAL_MACHINE\SOFTWARE\Veeam\Veeam Backup and Replication

Einen REG_DWORD (32bit) Wert „PostJobScriptTimeoutSec“ hinzufügen und das Timeout in Sekunden angeben. Beispiel für fünf (5) Stunden:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Veeam\Veeam Backup and Replication]
"PostJobScriptTimeoutSec"=dword:00004650

Nach der Änderung müssen die Backup-Services neu gestartet werden.