Manchmal müssen Sie möglicherweise ein VMFS-Datenspeicher in Linux, Windows oder einem anderen ESXi-Host einbinden. VMFS ist ein von VMware erstelltes Dateisystem, das in anderen Betriebssystemen keine native Unterstützung hat (nur auf ESXi-Betriebssystemen unterstützt). Dieser Blogbeitrag erläutert, wie man VMFS in verschiedenen Szenarien einbindet, und die Einschränkungen der verschiedenen Methoden.
Wie man das VMFS-Dateisystem unter Linux (Ubuntu) einbindet
Wenn ein Hardwarefehler auftritt, haben Sie mehrere Optionen. Sie müssen möglicherweise in der Lage sein, Festplatten mit VMFS-Datenspeichern während eines Desaster-Wiederherstellungsprozesses an einem anderen ESXi-Server einzubinden. Sie müssen möglicherweise auch ein VMware-VMFS-Dateisystem auf einem Linux-Rechner einbinden, um VM-Daten zur Wiederherstellung zu kopieren. Sie können VMFS auch unter Windows einbinden, aber dies ist auf nur VMFS 3 beschränkt, das veraltet ist und in modernen vSphere-Umgebungen nicht verwendet wird. Beispiele für Hardwarefehler sind ein defektes Motherboard auf einem ESXi-Server oder ein beschädigter Speichercontroller wie ein RAID-Controller, unter anderem.
Wenn Sie separate SCSI- oder SAS (Serial Attached SCSI)-Festplatten oder RAID 1 als direkt angeschlossenen Speicher verwenden, können Sie Festplatten an einen anderen Rechner anschließen, der einen SAS-Controller installiert hat, ohne zusätzliche Schritte. Wenn Sie RAID 10, RAID 0 oder andere Array-Typen verwenden, müssen Sie einen identischen RAID-Controller verwenden und Treiber auf einem Linux-Rechner installieren, um das RAID-Volumen mit den angeschlossenen Festplatten zu erkennen.
Hinweis: RAID 1 und RAID 10 sind die zuverlässigsten RAID-Optionen, aber RAID 1 ist am einfachsten wiederherzustellen. Die Verwendung von RAID 5 und RAID 6 hat viele Nachteile, einschließlich geringer Zuverlässigkeit. Die Verwendung von Nicht-RAID-Festplatten in Produktionsumgebungen wird nicht empfohlen.
Vor dem Beginn
Im Beispiel haben wir einen ESXi-Host mit drei Datastores, die sich zu Demonstrationszwecken jeweils auf einer separaten Festplatte befinden.
- Datastore000 ist leer. Die Festplatte, auf der sich dieser Datastore befindet, ist eine Systemfestplatte, die ESXi-Systempartitionen enthält. ESXi ist auf dieser Festplatte installiert.
- Datastore10a befindet sich auf einem VMFS 6-Volume und enthält eine Windows-VM.
- Datastore11 befindet sich auf einem VMFS 5-Volume und enthält eine Kopie der Windows-VM, die Win-VM genannt wird.
Ubuntu 20.04.3 ist eine Linux-Maschine, auf der wir VMFS-Dateisysteme einbinden werden. Wir schließen die beiden Festplatten mit Datastore11 und Datastore10a an eine Linux-Maschine an. Linux-Distributionen enthalten nicht den Treiber, der zum Arbeiten mit VMFS erforderlich ist. Aus diesem Grund müssen Sie vmfs-tools installieren, das ein kostenloses Paket ist und anschließend kann VMFS im Nur-Lese-Modus eingebunden werden.
So binden Sie VMFS 5 in Ubuntu ein
- Führen Sie Befehle als Root aus. Verwenden Sie sudo -i, um die erforderlichen Root-Berechtigungen zum Installieren von VMFS-Tools zu erhalten.
- Installieren Sie vmfs-tools aus den Ubuntu-Paketquellen:
apt-get install vmfs-tools
Die installierte Version von vmfs-tools ist in unserem Fall 0.2.5-1build1.
- Erstellen Sie ein Verzeichnis, das als Einhängepunkt verwendet wird:
mkdir /mnt/vmfs
- Überprüfen Sie die Namen von Festplatten und Partitionen mit VMFS:
fdisk -l
Unsere Festplatte mit der VMFS 5 Partition ist /dev/sdb und die benötigte Partition ist /dev/sdb1
Die VMFS 6 Partition ist /dev/sdc1
Wie Sie auf dem Screenshot sehen können, ist der Partitionstyp VMware VMFS. Die eindeutige Festplattenkennung wird angezeigt.
Hinweis: Sie können parted verwenden, um GPT-Partitionen anzuzeigen, die größer als 2 TB sind:
parted -l
- Lassen Sie uns unsere VMFS 5 Partition im Verzeichnis /mnt/vmfs/ einbinden:
Wie man VMFS 6 in Ubuntu einbindet
- Erstellen Sie ein Verzeichnis, das als Einhängepunkt zum Einbinden von VMFS 6 in Linux verwendet wird:
mkdir /mnt/vmfs6
Hinweis: Wenn Sie versuchen, das VMFS 6 Dateisystem in Linux mit vmfs-fuse einzubinden, erhalten Sie einen Fehler, da vmfs-fuse VMFS 3 und VMFS 5 unterstützt, aber nicht VMFS 6. In diesem Fall erscheint die folgende Meldung:
VMFS: Nicht unterstützte Version 6
>Kann Dateisystem nicht öffnen
Sie müssen VMFS6-Tools installieren, die vmfs6-fuse enthält, um VMFS 6 in Linux zu mounten. Sie können VMFS6-Tools auf einer Website mit Deb-Paketen finden: https://packages.debian.org/sid/vmfs6-tools
- Laden Sie die aktuelle Version von VMFS6-Tools herunter:
wget http://http.us.debian.org/debian/pool/main/v/vmfs6-tools/vmfs6-tools_0.1.0-3_amd64.deb
- Installieren Sie das heruntergeladene Deb-Paket:
dpkg -i vmfs6-tools_0.1.0-3_amd64.deb
Hinweis: libc6 >= 2.28 ist erforderlich, um VMFS6-Tools zu installieren. Wenn Sie Ubuntu 18 verwenden, können während der Installation aufgrund dieses Grundes Fehler auftreten.
- Jetzt können Sie VMFS in Ubuntu 20 nach /mnt/vmfs6 mit dem Befehl mounten:
vmfs6-fuse /dev/sdc1 /mnt/vmfs6
Das VMFS 6-Dateisystem wurde erfolgreich in Ubuntu 20 im Nur-Lese-Modus gemountet. Jetzt können Sie VM-Dateien an den benötigten Ort kopieren. Sie können kopierte VMs vorübergehend unter Linux mit installiertem VMware Workstation oder auf einem Windows-Rechner mit VMware Workstation oder Hyper-V ausführen, bis Ihre ESXi-Serverhardware repariert oder ein neuer Server geliefert wird (wenn Sie keinen anderen ESXi-Host haben, um die VMs auszuführen).
Bitte beachten Sie, dass wenn Sie dünn provisionierte Festplatten von einem VMFS-Dateisystem auf ext4, NTFS oder andere konventionelle Dateisysteme kopieren, die virtuellen Festplattendateien genauso viel Platz einnehmen wie dick provisionierte. Deshalb sollten Sie genug Festplattenspeicher vorbereiten.
Wie man VMFS mit mehreren Extents in Linux einbindet
Schauen wir uns ein komplexeres Beispiel an, wie man VMFS in Linux einbindet, wenn ein VMFS-Volume aus zwei Extents besteht. Wir haben zwei Festplatten derselben Größe, die zu einem einzigen VMFS-Volume (datastore12) kombiniert sind.
- Überprüfen Sie die Namen der Partitionen:
fdisk -l
oder
parted -l
Unsere zwei VMFS-Extents befinden sich auf den Partitionen /dev/sdd1 und /dev/sde1.
- Beim Einbinden eines VMFS-Dateisystems, das aus mehreren Extents besteht, verwenden Sie vmfs6-fuse mit dem folgenden Befehlsformat:
vmfs6-fuse exent_1 extent_2 extent_n mount_point
In unserem Fall lautet der Befehl:
vmfs6-fuse /dev/sdd1 /dev/sde1 /mnt/vmfs6
Wie Sie auf dem folgenden Bildschirmfoto sehen können, wurde das VMFS 6-Dateisystem, das aus mehreren Extents besteht, erfolgreich in Ubuntu eingebunden.
Jetzt wissen Sie, wie man VMFS in Linux in verschiedenen Szenarien einbindet.
Einhängen von VMFS-Partitionen auf einem neuen VMware ESXi-Host
Sie können VMFS-Datenspeicher auf verschiedenen ESXi-Hosts einbinden. Diese Option ist nützlich, wenn einer der ESXi-Hosts ausgefallen ist und Sie Daten von einer VMFS-Partition kopieren oder VMs ausführen müssen, die auf dieser Partition gespeichert sind. Sie können sogar die neue ESXi-Installation auf einem Server durchführen, um vorhandene VMFS-Datenspeicher einzubinden. Der ESXi-Installationsprozess ist schnell und unkompliziert und dauert in der Regel nur wenige Minuten, um diesen Hypervisor zu installieren.
Der Vorteil dieser Methode zur Einbindung vorhandener VMFS-Datenspeicher besteht darin, dass Sie native Software verwenden und die neuesten VMFS-Versionen im Lese-/Schreibmodus unterstützt werden. Schauen wir uns an, wie Sie VMFS-Datenspeicher einbinden können, die bereits auf einem anderen ESXi-Host vorhanden sind.
- Verbinden Sie physische Festplatten mit VMFS-Partitionen mit dem physischen Server, auf dem ESXi installiert ist.
- Melden Sie sich im VMware Host Client in Ihrem Webbrowser an, indem Sie die IP-Adresse des ESXi-Hosts eingeben, auf dem Sie eine Festplatte oder Festplattenarray mit einer VMFS-Partition eingebunden haben. In unserem Beispiel verwenden wir ESXi 7.0.
- Gehen Sie zu Speicher > Geräte und überprüfen Sie, ob die benötigten Festplatten angezeigt werden. Klicken Sie auf Erneut scannen, wenn die Festplatten nicht automatisch angezeigt werden.
- Gehen Sie zu Speicher > Datenspeicher und überprüfen Sie, ob Ihr vorhandener VMFS-Datenspeicher eingebunden ist. Wenn Sie ein erfolgreiches Ergebnis sehen, öffnen Sie den Datenspeicher-Browser und kopieren Sie die benötigten Dateien. Sie können auch VMX-Dateien finden, virtuelle Maschinen registrieren und auf diesem ESXi-Host ausführen. Wenn Sie mit der rechten Maustaste auf den VMFS-Datenspeicher klicken, sehen Sie die Optionen Einhängen/Aushängen im Kontextmenü.
Wie man VMFS in Windows einbindet
Die Möglichkeit, VMFS in Windows einzubinden, ist begrenzt, da Sie nur vorhandene Tools verwenden können, um nur VMFS 3 einzubinden, das veraltet ist und in modernen vSphere-Umgebungen nicht verwendet wird. VMFS 3 wurde in ESXi-Versionen unterstützt, die älter als 5.0 sind. VMware vSphere 7.0 unterstützt kein VMFS 3.
Zum Zeitpunkt der Erstellung dieses Beitrags werden VMFS 5 und VMFS 6 weit verbreitet verwendet.
Wenn Sie jedoch VMFS in Windows einbinden müssen und das Dateisystem VMFS 3 ist, können Sie den Open Source VMFS-Treiber verwenden, der in Java geschrieben wurde. Dieser Treiber wurde zuletzt 2010 aktualisiert und erfordert Java, das in Windows installiert ist.
- Verbinden Sie eine Festplatte (Festplatten) mit einem VMFS-Datenspeicher mit Ihrem Windows-Computer.
- Laden Sie den Open Source VMFS-Treiber über den Link herunter: https://code.google.com/archive/p/vmfs/
- Extrahieren Sie die Dateien aus dem heruntergeladenen fvmfs_r95_dist.zip-Archiv in ein benutzerdefiniertes Verzeichnis, z. B. C:\VMFS
- Öffnen Sie die Windows-Eingabeaufforderung (CMD), wechseln Sie in das Verzeichnis, in dem Sie den Open Source VMFS-Treiber extrahiert haben, und führen Sie fvmfs.jar aus, das eine Java-Anwendung ist.
cd C:\VMFS
java -jar fvmfs.jar
- Öffnen Sie Computerverwaltung in Windows (Rechtsklick auf Mein Computer > Verwalten) und gehen Sie zu Datenträgerverwaltung. Ermitteln Sie, welcher Nummer Ihr Datenträger mit dem VMFS-Datenspeicher zugewiesen ist, zum Beispiel, Index 1 – Disk1. Diese Nummer wird vom VMFS-Treiber als \\.\PhysicalDrive1 interpretiert.
- Erhalten Sie Informationen zu diesem Datenträger in der Konsole:
java -jar fvmfs.jar \\.\PhysicalDrive1 info
- Teilen Sie diesen Datenträger mithilfe des WebDAV-Protokolls. Der WebClient-Dienst muss in Windows zu diesem Zweck gestartet sein.
java -jar fvmfs.jar \\.\PhysicalDrive1 webdav
- Binden Sie den freigegebenen Datenträger mit VMFS in Windows mithilfe des Befehls ein:
net use * http://localhost:50080/vmfs
- Überprüfen Sie die Datenträger in der Computerverwaltung. Nachdem ein Laufwerksbuchstabe zugewiesen wurde, können Sie diesen Datenträger in Mein Computer (Windows Explorer) im Nur-Lese-Modus öffnen, um Dateien vom VMFS-Datenträgervolumen anzuzeigen und zu kopieren.
- Schließen Sie das CMD-Fenster nicht, bis Sie die Arbeit mit dem in Windows eingebundenen VMFS-Volumen abgeschlossen haben.
Zusammenfassung
Wir haben erklärt, wie man VMFS in Linux, Windows und ESXi einbindet. Der einfachste Weg, vorhandene VMFS-Datenspeicher einzubinden, besteht darin, die Datenträger an einen anderen ESXi-Host anzuschließen. Sie können jedoch VMFS in Linux im Nur-Lese-Modus einbinden, einschließlich der neuesten VMFS 5- und VMFS-Dateisysteme. Hierfür werden VMFS-Tools und VMFS 6-Tools verwendet. Was Windows betrifft, ist die Unterstützung von VMFS für vorhandene Tools ziemlich begrenzt und erlaubt es nicht, die neuesten VMFS-Versionen in Windows einzubinden.
Manuelles Wiederherstellen einer VM durch Kopieren von Dateien von einem auf einem gesunden Computer eingebundenen VMFS-Dateisystem nach einem ESXi-Hostausfall kann zeitaufwändig sein. Sie können Daten effizienter schützen, wenn Sie eine professionelle Backup-Lösung wie NAKIVO Backup & Replication verwenden, die VM-Backups auf Hostebene, dünn provisionierte Laufwerke, sofortige VM-Wiederherstellung und sofortige granulare Wiederherstellung unterstützt. Das Wiederherstellen von VM-Daten aus einem Backup kann effektiver sein als die manuelle VMFS-Wiederherstellung.
Source:
https://www.nakivo.com/blog/mount-vmfs-datastore-in-linux-windows-esxi/