VMware vSphere Homelab: Die erste VM läuft im PoC

vSphere Web Client - vCenter

Heute Abend habe ich endlich wieder Zeit gefunden um mich um meinen Proof of Concept (PoC) zu kümmern. Wie vor einiger Zeit angekündigt arbeite ich derzeit an einem PoC für mein Homelab. Das Ziel des Homelab ist eine Anzahl an nested ESXi auf einem physischen ESXi zu installieren, und ganz oben drauf, auf den nested ESXi, einige VMs zu Testzwecken einzurichten. Schlussendlich soll mir das Homelab zum besseren Verständnis der VMware Technologien und zur Vorbereitung auf Zertifizierungsprüfungen dienen. Da noch nicht die gesamte Hardware bei mir ist (eine gute Basis ist sehr wohl vorhanden, es fehlen aber noch verschiedene Komponenten) musste ich mich etwas einschränken. Im Blogpost über die ersten Gehversuche im Homelab habe ich die ersten Schritte erklärt.

Nun habe ich heute Abend also meine erste VM innerhalb des PoC Homelabs, also dem ESXi Cluster mit VSAN, eingerichtet und installiert. Es war zu Beginn etwas mühsam. Ich bin auf das eine oder andere Problem gestossen welches ich lösen musste. Angefangen bei der VM-Konsole, über das Mounten des ISO-Images für das Betriebssystem bis hin zu DNS.

Problem 1 – PoC und die Eingabegeräte

Besonders mühsam war die VM-Konsole, also der “Bildschirm” über welchen ich die VM anschauen und bedienen kann. Mit vSphere 6 läuft der vSphere Web Client richtig gut. Ich habe im ersten Moment gar nicht daran gedacht den C# Client (Fat Client) zu installieren. Die Performance des Web Client ist toll, ein riesiger Sprung im Vergleich zu dessen Vorgängerversionen. Jedoch ist es so eine Sache mit der VM-Konsole in der HTML5 Oberfläche im Browser. Die Tastatur hat funktioniert, auch klicken mit der Maus war drin, aber den Cursor konnte ich nicht bewegen. Ich denke da herrscht noch Nachholbedarf seitens VMware. So musste ich dennoch den VMware vSphere Client herunterladen und installieren und konnte dann über diesen bequem die VM-Konsole starten.

Problem 2 – ISO-Image in den Datastore laden

Zugegeben, dieses Problem ist noch nicht gelöst. Aufgrund der nichtssagenden Fehlermeldung konnte ich hier auf die Schnelle keine Lösung finden. Es war nicht möglich via Browser (HTML5 Web Client) ein ISO-File in den VSAN Datastore hochzuladen, um dies dann bspw. für die Installation einer VM zu nutzen. Also musste ich das ISO-Image beim virtuellen (nested) ESXi einbinden und durchreichen. Das ist sicher nicht der übliche Weg, aber er hat funktioniert. Und nur für den PoC reichts allemal. Aber ich suche noch nach einer Lösung für dieses Problem.

Problem 3 – DNS, DNS, DNS…

Wenn es in einem Netzwerk zu irgendwelchen Problemen kommt, ist das wohl einer der ersten Punkte den man prüft. DNS. Kann ich den Hostnamen pingen? Wird der Hostname korrekt in eine IP-Adresse aufgelöst? Funktioniert das ganze auch zurück?

"Unable to connect to the MKS: Login (username / password) incorrect"

Das war die Fehlermeldung wenn ich die VM-Konsole starten wollte. Ein erster Ansatz war eine Konfigurationsdatei von VMware Workstation anzupassen und dort drin den “authd.client.port” auf Port 902 zu stellen (war bei mir 903). Anschliessend noch den “VMware Authorization Service” sowie den “VMware Workstation Server” neustarten, dann sollte es gehen. Sollte. Ging aber nicht. Also weitergrübeln und suchen. Ich fand einen Beitrag in der VMware Community der schlussendlich zur Lösung half. Anscheinend sind gewisse VMware Dienste / Programme heikel was DNS angeht. Wenn DNS nicht sauber funktioniert, funktionieren auch bestimmte Dinge bei VMware nicht. So konnte ich mich bspw. über die IP-Adresse der vCenter Server Appliance mit dem vSphere Client anmelden. Sobald ich aber die VM-Konsole öffnen wollte, erschien obige Fehlermeldung.

Sodann habe ich auf meinem Rechner das Hosts-File gesucht und die notwendigen Einträge gemacht. Anschliessend habe ich mich über den FQDN der vCenter Server Appliance mit dem vSphere Client verbunden und konnte erfolgreich die VM-Konsole starten.

Ach ja, so sieht sie aus, die erste VM im PoC Homelab…

VMware vSphere Homelab – erste Gehversuche

VMware Workstation 12 Pro

Gestern Abend habe ich meine ersten Gehversuche mit einem VMware vSphere Homelab gestartet. Ja, Gehversuche. Weil ich keine unlimitierte Hardwarekapazität zu Hause habe, und nicht hunderte von Dollar in ein virtuelles Lab in der Cloud investieren kann und will, musste ich mir erst mal Gedanken machen wie ich das ganze angehen soll. Also musste ich ein Proof of Concept für ein Homelab erarbeiten.

VMware Workstation 12 Pro - Homelab
VMware Workstation 12 Pro – Homelab

Ich musste meine Idee zu Papier bringen, um zumindest die grössten Fallstricke im Vornherein zu erkennen und zu lösen. Welche vorhandene Hardware kann ich nutzen und wie kann ich sie erweitern? Wie installiere ich einen Hypervisor als virtuelle Maschine und wie verwalte ich das ganze? Brauche ich dazu einen Domaincontroller? Wie mache ich das mit dem Storage?

Das waren einige der Fragen die ich mir für mein Homelab stellen musste und auf die ich auch Antworten gefunden habe. Anschliessend habe ich viel Zeit mit Recherchen verbracht, im Internet gesucht wie das andere Leute gelöst haben. Viele interessante Ansätze, technisch anspruchsvolle Lösungen und verschiedenste Hardware konnte ich so kennen lernen. Und natürlich auch mit meinen Ansätzen vergleichen um zu sehen ob es noch weitere Fallstricke gibt.

Somit werde ich als übernächsten Schritt meine ehemalige Workstation mit zusätzlicher Hardware aufrüsten. Die ersten bestellten Teile sind bereits eingetroffen und warten auf die Montage. Die CPU-Basis ist gut, genügend Cores sind vorhanden. Dazu gesellen sich dann 64 GB Ram und verschiedene SSD-Disks sowie ein SAS-Controller. Weitere Details dazu liefere ich sobald diese Maschine zusammengebaut ist. Und wer weiss. Vielleicht wird Version 2.0 meines Homelab ja auch aus einigen kleinen Intel NUC’s bestehen…

Die ersten Schritte im Homelab

Parallel zur Hardwareplanung und -Beschaffung habe ich mit VMware Workstation eine kleine Version meines Homelabs auf meiner aktuellen Workstation eingerichtet. Mit diesem Minilab arbeite ich am Proof of Concept. Wenn die Hardware mal zusammengebaut ist, will ich nicht tagelang mit der Installation beschäftigt sein, dann will ich die Ressourcen schnell nutzen und mit dem Lab produktiv arbeiten. Der Schwerpunkt liegt dabei auf Tests von verschiedenen Szenarien als auch dem Ausprobieren der Technik und Software sowie der Vorbereitung auf Zertifizierungsprüfungen.

Jetzt aber mal los…

Zuallererst kümmerte ich mich um die Installation eines Domaincontrollers. Aufgrund eines bereits vorhandenen Server-Templates auf Basis von Windows Server 2008 R2 konnte ich hier den Zeitaufwand drücken. Folglich war rund eine Stunde und einige Windows Updates später eine Domäne inkl. DNS-Server eingerichtet.

Dank dem Blog von William Lam konnte ich auch den Zeitaufwand für die Installation von virtuellen ESXi Servern auf ein Minimum reduzieren. Nach etwas weniger als zehn Minuten waren drei ESXi installiert, konfiguriert und bereit. Auch auf dem Blog von Florian Grehl habe ich gute Tipps gefunden wie man schnell und einfach eine vCenter Server Appliance in Betrieb nimmt. Das Deployment an sich war einfach. Allerdings habe ich mir dann doch ernste Gedanken gemacht ob das Ding jetzt läuft oder nicht, als sich nach 10 Minuten der Ladebalken noch keinen Millimeter weiter bewegt hat. In den Kommentaren zum Artikel von Florian Grehl habe ich aber dann gelesen dass es gut mal eine Viertelstunde dauern kann bis vCenter das erste Mal gestartet ist. Puhh, nochmal gut gegangen.

Homelab Troubleshooting und erste Bilder

Heute Abend werde ich den Fehlermeldungen im vCenter auf den Grund gehen. Insgesamt sind elf Warnungen und Alarme vorhanden welche Virtual SAN betreffen, alles Integritätsalarme. Ich bin gespannt was dabei rauskommt. Nun folgen aber erst mal einige Bilder des “Setups”. Mehr Informationen zum Troubleshooting gibt es zu einem späteren Zeitpunkt.

Veeam Support – Logfiles für den Support sammeln

Veeam Backup & Replication lässt sich sehr einfach und schnell installieren, konfigurieren und in Betrieb nehmen. Das ist Fakt. Die Software skaliert mit dem Unternehmen mit, sei es bei kleinen Infrastrukturen mit wenigen virtuellen Servern, bis hin zu grossen Infrastrukturen, mit mehreren hundert Virtualisierungshosts, tausenden VMs und bestenfalls auch noch verschiedenen Standorten. Auch das ist Fakt. Probleme gibt es nur selten, da spreche ich aus eigener Erfahrung. Meist sind es Kleinigkeiten, bspw. ein Haken nicht gesetzt, oder ein falsches Passwort. Das lässt sich einfach lösen, da helfen die bereits verfügbaren Ressourcen wie das Log in der Veeam GUI oder die Knowledgebase.

Was aber wenns mal wirklich brennt? Das Backup oder die Replikation nicht funktioniert? Oder der Failoverplan nicht so läuft wie er soll?

In diesem Fall steht euch der Veeam Support jederzeit zur Verfügung. Ihr meldet euch mit eurem Account im Veeam Customer Portal an und klickt dort auf “Open a Case”.

Ihr beschreibt das Problem so genau wie möglich, füllt die notwendigen Felder aus und ladet zum Schluss die gesammelten Logfiles hoch, damit der Support diese auswerten und nach möglichen Fehlern oder Fehlerquellen ausschau halten kann.

Heute zeige ich euch wie ihr diese Logs sammelt.

Veeam Support Logs
Logs sammeln in der Veeam Konsole

Das Bild oben zeigt euch wie ihr die Logs in der Veeam Konsole sammelt. Die nachfolgenden Schritte sollen euch als Hilfestellung dienen wie das genau zu machen ist.

  1. Um die Logs mit dem Compilation Wizard zu sammeln, klickt ihr in der Konsole oben links auf den Menü Button, dann auf Help => Support Information.
  2. Der Wizard erlaubt verschiedene Methoden um Logs zu sammeln. Für Backup, Replication und andere Jobs klickt ihr auf “export logs for this job”. Wenn mehrere Jobs vom Problem betroffen sind, könnt ihr hier auch eine Mehrfachauswahl treffen. Bei Problemen mit einer einzelnen VM (z.B. Restore oder Replica Fehler) klickt ihr auf “Export logs for this VM” und wählt dann die VM mit dem Problemen aus. Wenn es bspw. Probleme geben sollte der GUI, oder Probleme die nicht unter die erwähnten Kategorien fallen, dann wählt ihr “Export all logs for selected components” und wählt “This server”.
  3. Nach Möglichkeit sollte der Zeitraum der gesammelten Logs mindestens einer Woche entsprechen (voreingestellt sind “7 days”).
  4. Ihr könnt die Logs irgendwo speichern. Stellt einfach sicher dass dort genügend Speicherplatz frei ist. Der Haken bei “Prepare logs package for technical support” ist standardmässig markiert. Das ergibt ganz zum Schluss eine Zip-Datei mit allen gesammelten Logs. Sehr praktisch.
  5. Mit einem Klick auf “Next” gehts nun los, der Wizard sammelt die Logs. Bei kleineren Dateigrössen (unterhalb von 3.5MB) kann man diese als Antwort an die Supportmail anhängen. Alles was drüber ist, lädt man nun via das Veeam My Portal hoch oder fragt den Support nach dem Zugang zu einem FTP-Server.

Ach ja, SFTP ist nun auch unterstützt wenn man es auf supportftp2 hochlädt.

Weitere Informationen betreffend Veeam Support

Falls es zu Problemen kommen sollte wenn ihr via Wizard die Logs sammelt, findet ihr hier natürlich auch noch die relativen Pfadangaben für verschiedene Betriebssysteme, sodass ihr diese manuell sammeln, zippen und an den Support senden könnt.

  • Windows 2003, XP: C:\Documents and Settings\All Users\Application Data\Veeam\Backup\
  • Windows Vista, 7: C:\Users\All Users\Veeam\Backup\
  • Windows 2008 / 2008 R2 / 2012: C:\ProgramData\Veeam\Backup\
  • Linux: /var/log/VeeamBackup/

Typische Logs, die vom Support angefragt werden, können sein:

  • Der Tasks Ordner im Stammverzeichnis, gezippt. Darin sind alle relevanten Job- / Task- und Agent-Daten enthalten.
  • Alle Protokolle aus dem übergeordneten Verzeichnis mit dem Namen svc.*.log, util.*.log, sowie VeeamBackupManager.log als auch VeeamShell.log.

VMware vCenter Server Appliance – Update von 6.0 auf 6.0 Update 2

vCenterHeute zeige ich euch in einem kurzen Abriss wie man die vCenter Server Appliance in der Version 6.0 auf Update 2 aktualisiert. Dieses Vorgehen unterscheidet sich ganz wesentlich vom Upgrade-Prozess von Version 5.5 auf Version 6.0. Es ist nämlich wesentlich kürzer und damit in wenigen Minuten erledigt.

Ihr ladet euch erst mal den notwendigen Patch herunter. Das macht ihr über diesen Link (VMware Login erforderlich). Und bevor ihr ein Update auf eure Appliance installiert, empfiehlt es sich zumindest einen Snapshot zu erstellen, bestenfalls ein vollständiges Backup durchzuführen (bspw. mit Veeam Backup & Replication).

  1. Nun bindet ihr das ISO-File via vSphere Client oder Webclient in eure laufende Appliance ein und stellt sicher das der Haken bei “Connected” gesetzt ist.
  2. Verbindet euch dann via SSH (bspw. mit PuTTY) mit euer vCenter Appliance.
    1. SSH muss allenfalls zuerst aktiviert werden.
    2. Öffnet dazu im vSphere- oder Webclient die Console der Appliance, drückt F2 => “Customize System” => “Troubleshooting Mode Options”.
  3. Im nächsten Schritt werden die Installations-Pakete von der DVD (ISO-Image) erst mal in der Appliance bereitgestellt (staging).
    1. software-packages stage --iso
  4. Ihr könnt die bereitgestellten Pakete noch kontrollieren indem ihr die Liste anzeigen lässt.
    1. software-packages list --staged
  5. Und mit dem nächsten Befehl wird die Installation gestartet.
    1. software-packages install --staged
  6.  Zum schluss wird die Appliance neugestartet.
    1. shutdown reboot -r "patch reboot"

Natürlich geht das ganze auch direkt ohne staging im Voraus.

Wenn ihr ein ISO-Image eingebunden habt, geht das mit diesem Befehl:
software-packages install --iso

Anschliessend die vCenter Appliance neustarten mit dem Befehl:
shutdown reboot -r "patch reboot"

Das wars. Die vCenter Appliance läuft nun auf dem aktuellsten Stand. Prüft auf jeden Fall ob eure Einstellungen für Cluster, DRS, HA etc. weiterhin passen. Ändern sollte sich mit dem vCenter Update nichts diesbezüglich. Weitere Informationen, mehr im Detail, gibt es natürlich direkt bei VMware in der Knowledge Base oder im Dokumentationcenter.

Quellen zum vCenter Appliance Update

Veeam SureBackup – Ping-Test Troubleshooting

SureBackupNeulich wollte ich bei einem Kunden einen SureBackup Job in Veeam Backup & Replication einrichten. Mit SureBackup lassen sich Backups automatisch auf ihre Wiederherstellbarkeit testen. So kann bspw. ein Microsoft Exchange Server geprüft werden ob dessen Backup im Falle eines Restores auch sauber ist und überhaupt wiederhergestellt werden kann. Die Einrichtung des SureBackup Jobs soweit sehr gut funktioniert. Nur der anschliessende Testlauf wollte nicht wie geplant funktionieren.

In Veeam erstellt man zuerst eine Application Group und ein Virtual Lab. Die Application Group umfasst alle für den Test notwendigen VMs. So werden bspw. für einen Microsoft Exchange Server sicher mal die VM für Exchange benötigt, aber auch ein Domaincontroller. Man fügt also die entsprechenden VMs zur Application Group hinzu und definiert auf diesen VMs die passenden Rollen (DNS, DC, Mail etc.). Abhängig von diesen Rollen werden die entsprechenden Tests vom SureBackup Job automatisch ausgeführt. Das Virtual Lab umschreibt prinzipiell das Netzwerk und die Einstellungen, mit welchen die VMs im SureBackup Job arbeiten. Anschliessend wird mit der Application Group und dem Virtual Lab ein SureBackup Job eingerichtet.

Das hat alles einwandfrei funktioniert. Der SureBackup Job konnte ausgeführt werden, die erste VM wurde erfolgreich gestartet und auch der Heartbeat-Test (VMware) war erfolgreich. Doch egal wie lange die VM lief, Veeam konnte sie nicht pingen. Das ist noch nicht tragisch, man könnte diesen Test auch deaktivieren. Jedoch ist dann der Restore nicht zwingend erfolgreich, wenn bspw. Probleme mit der Netzwerkschnittstelle vorhanden sind. Mit dem Ping-Test können diese allenfalls herausgefunden werden. Nachdem die maximale Boot-Zeit für die Domaincontroller VM abgelaufen war wurde der Test als “failed” beendet.

Also zurück ans SureBackup Reissbrett und schauen wo der Fehler liegt

Das Virtual Lab ist noch etwas mehr als bloss die Netzwerkeinstellung für die VMs die getestet werden. Das Lab beinhaltet auch eine eigene virtual Appliance welche Routingfunktionen bietet. Normalerweise hat ein Virtual Lab, welches man aus Veeam heraus startet, keine Netzwerkverbindung nach draussen ins Internet. Das kann mit dieser virtual Appliance aber konfiguriert werden. So können diverse Virtual Labs erstellt werden, welche bspw. auch länger verfügbar sind als nur für einen Restore-Test. So kann man Virtual Labs und Sandboxen erstellen welche für Patch-Testing und Development gebraucht werden können.

Schlussendlich war das Problem eines auf Netzwerkebene

Damit Veeam die VMs im Virtual Lab anpingen kann, müssen die Netzwerkeinstellungen der virtual Appliance korrekt sein. Wenn nach dem ersten Deployment und anschliessenden Testlauf der Test fehlschlägt können vielleicht die folgenden Tipps helfen damit die Tests nachher funktionieren:

Veeam KnowledgeBase KB1067

Bei mir war es der zweite Punkt (“VNIC FOR ISOLATED NETWORK MISCONFIGURED”). Mein Virtual Lab hatte eine falsche IP-Adresse, aus einem Netzwerkrange den es bei diesem Kunden nicht gibt. Das Virtual Lab sollte als eigene IP-Adresse immer die IP Adresse des Default Gateways haben, damit oben erwähnte Ping-Tests funktionieren.

Keine Panik, es ergibt sich daraus kein IP-Konflikt. Die virtual Appliance selbst bekommt von eurem DHCP-Server eine IP-Adresse. Da das Lab ein in sich geschlossenes Netzwerk ist ohne Verbindung nach draussen spielt das Virtual Lab hier die Rolle des Gateways für die VMs im Lab.

Falls ihr mehr zum Thema SureBackup Jobs wissen wollt und solche eure Backups zukünftig automatisch testen lassen wollt, erfährt ihr im Veeam HelpCenter mehr dazu:

Veeam HelpCenter – Verifying Backups, Replicas and VMs from Storage Snapshots

Ich wünsche euch viel Spass beim Konfigurieren und Testen eurer Backups!