1. Fehlerbild
In der VSphere Client Console wird ein Host so angezeigt:
Und in der Übersicht des Hosts steht dazu noch:
ESX Gast meldet kein Speicherplatz mehr auf hinterlegten virtuellen Festplatte (vmdk-Datei).
Der Server ist per VMware-Console und auch per Netzwerk nicht mehr erreichbar.
Mit Glück kann man auf Retry klicken und man kommt dann wieder auf den Server.
Dann können im Betriebssystem Daten gelöscht werden.
2. Grund
Einem logischen Volume der 3Par für einen VMware-Store wurden 5,5 TB Speicherplatz per Thin Provisioning zugewiesen.
Bis dahin könnte der Store es also per Thin Provisioning auf der 3Par wachsen.
Der Speicher der dahinterliegenden CPG-Gruppe der 3Par ist aber durch alle anderen darauf befindlichen LUNs aufgebraucht.
Das für das logische Volume eingestellte Wachstum ist also nicht möglich.
3. Lösung
3.1 Lösung „normal“
Einfach mehr Speicher aus der entsprechenden CPG an das Volume zuweisen.
Die 3Par Management Console öffnen und als Admin anmelden.
Im linken Bereich dann „Provisioning“ klicken und die volle LUN heraussuchen (Storage Systems -> 3PAR -> Virtual Volumes -> Exported) dann im rechten Bereich auf den Tab „Virtual Volumes“ klicken.
Dort per Rechtsklick auf den Punkt „Edit“ klicken und etwas mehr Speicherplatz unter „Size“ zuweisen.
ACHTUNG: Wenn der dahinterliegende Store voll ist kann kein Wachstum geschehen bitte dann Punkt 3.2 beachten!
ACHTUNG: Wenn man nicht vorhandenen Speicherplatz hinzufügt, kann es sein, dass der Datastore für VMware nicht mehr zugreifbar ist und somit auch die Gast-Konfiguration nicht mehr ausgelesen werden kann!
3.2 Lösung „wenn physischer Storage der CPG an LUNs voll vergeben ist“
ACHTUNG: Einzige akute Möglichkeit löschen einer LUN!
ACHTUNG: Langfristige Lösung nur durch entsprechende Erweiterung des Storage-Systems möglich!
ACHTUNG: Möglichst Daten von einer möglichst ungenutzten LUN weg zu migrieren!
3.2.1 Notieren der WWNs auf Host-Ebene und 3Par Ebene
3.2.1.1 Host (VMware) Ebene
Bestandsliste -> Datenspeicher -> Datenspeicher auswählen und dann in dem Reiter „Konfiguration“ wechseln und dort rechts im Fenster den Punkt „Eigenschaften“ auswählen
Im Eigenschaftenfenster dann unter „Erweiterungn“ den WWN notieren
3.1.1.2 Auf 3Par Ebene
Wieder in die 3Par-Management-Console aufschalten.
Auch unter Provisioning -> Storage – 3Par – Virtual Volumes -> Exported die LUNs auflisten lassen.
Unter dem Reiter Summary (mittlerer Bereich des 3Par Management Console Fensters) steht die WWN.
ACHTUNG: Nur durch das Querprüfen der WWNs kann mach sicherstellen, dass man immer mit der richtigen LUN „arbeitet“!
3.2.2 Auf Applikations-Betriebssystemebene (verschieben)
Mit den Betriebssystem-Werkzeugen des Gastes die Nutzdaten an andere Stelle verschieben, sodass die zu löschende LUN aus logischer OS-Sicht leer ist.
Windows Explorer z.B. Rechtsklick Verschieben -> dann warten…
3.2.3 Filesystem unmounten
Nach Verschieben der Nutzdaten das Filesystem auf dem Gast unmounten (Werkzeuge des OS nutzen – Linux: unmount – Windows: Datenträgerverwaltung).
3.2.4 Den VMware-Store unmounten
Dann den VMware-Store unmounten. Wieder über den VSphere-Client -> Datenspeicher -> Rechtsklick unmounten
3.2.5 Den VMware-Store löschen
Dann den VMware-Store löschen. Wieder über den VSphere-Client -> Datenspeicher -> Rechtsklick löschen
ACHTUNG: Gleiches Bild zur Gedankenstütze – natürlich nicht „Unmounten“ auswählen, sondern „Löschen“!
3.2.6 3Par Volume unexportieren
Nachdem der Zugriff durch die Hosts beendet wurde kann die LUN im 3Par Management unexportiert werden.
Dieser Befehl wird die Sichtbarkeit der LUN für alle Hosts beenden.
ACHTUNG: Zur Sicherheit fragt das System zwei mal, ob es wirklich unexportiert werden soll!
ACHTUNG: Kontrolle im 3Par Management unter den Punkt „unexported“ muss die LUN dann auftauchen!
3.2.7 3PAR Volume löschen
Danach im 3PAR Management im Bereich „unexported“ dann per Rechtsklick auf das Volume das Kontext-Menü aufrufen und den Punkt „Remove…“ anklicken.
ACHTUNG: Gleiches Bild zur Gedankenstütze – natürlich nicht „Unexport“ wählen, sondern „Remove“!
ACHTUNG: Hier ist der Punkt, an dem die Daten dann einfach gelöscht werden!
ACHTUNG: Es gibt dann kein zurück mehr!
3.2.8 Anschließende Erweiterung
Im Falle von unter Lösung „normal“ (Punkt 3.1) getroffenen Zuweisung von Speicher geschieht das durch den freien Platz der gelöschten LUN automatisch.
Falls das noch nicht geschehen ist, dann kann wie in Punkt 3.1 verfahren werden.
4. Evtl. Probleme mit VMware
In diesem Fall gab es durch Unerreichbarkeit des VMFS des in VMware hinterlegten Datastores Probleme den Gast lauffähig zu halten. Der VM-Host Prozess brach ab.
Der Gast erschiehn in VSphere nur noch „generisch“, da Zugriff auf VM-Config File im Datastore nicht möglich (32MB RAM keine Festplattenkonfig ersichtlich, etc.).
Nach Wiedererreichbarkeit des Storage durch o.g. Punkte kann dann die VMware-Konfigdatei neu eingelesen werden.
4.1 Herausfinden der Vmid gucken wo der gast läuft und da dann per ssh
Als erstes im VMware-Client gucken, auf dem Host der Gast läuft.
Dann per ssh auf diesen ESX-Host aufschalten.
Per CLI-Befehl „vim-cmd vmsvc/getallvms“ die Guests auflisten lassen und die Vmid merken.
Bsp. in dem Fall ist hat der Gast die Vmid 13.
4.2 Neueinlesen der Configfile – nachdem unter Lösung „wenn…“ (Punkt 3.2) alles passiert ist
Dann per CLI-Befehl „vim-cmd vmsvc/reload Vmid“ die Konfig-Datei erneut einlesen.
Vmid durch die ID „13“ in diesem Beispielfall ersetzen.
Dann wird der Gast im VSphere wieder mit der richtigen Konfig angezeigt.
4.3 Gast starten
Den Gast dann über VSphere wieder starten und nach Booten prüfen, ob seine Services wieder funktionieren.
5. Quellen
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2041457