Einbinden einer Azure-NFS-Dateifreigabe unter Linux

Azure-Dateifreigaben können in Linux-Distributionen mit dem SMB-Protokoll (Server Message Block) oder dem NFS-Protokoll (Network File System) eingebunden werden. Dieser Artikel konzentriert sich auf das Einbinden mit NFS. Ausführliche Informationen zum Einbinden von SMB Azure-Dateifreigaben finden Sie unter Verwenden von Azure Files mit Linux. Ausführliche Informationen zu den einzelnen verfügbaren Protokollen finden Sie unter Azure-Dateifreigabeprotokolle.

Gilt für:

Dateifreigabetyp SMB NFS
Standard-Dateifreigaben (GPv2), LRS/ZRS No No
Standard-Dateifreigaben (GPv2), GRS/GZRS No No
Premium-Dateifreigaben (FileStorage), LRS/ZRS No Yes

Unterstützung

Zurzeit wird nur die NFS-Version 4.1 unterstützt. NFS 4.1-Freigaben werden nur innerhalb des Speicherkontotyps FileStorage unterstützt (nur Premium-Dateifreigaben).

Azure-NFS-Dateifreigaben unterstützen die meisten Features aus der Protokollspezifikation 4.1. Einige Features wie Delegierungen und Rückrufe aller Art, Kerberos-Authentifizierung und Verschlüsselung während der Übertragung werden nicht unterstützt.

Regionale Verfügbarkeit

Azure-NFS-Dateifreigaben werden in allen Regionen unterstützt, die Premium File Storage unterstützen.

Die aktuelle Liste finden Sie im Eintrag File Storage Premium auf der Azure-Seite Verfügbare Produkte nach Region.

Voraussetzungen

Deaktivieren der sicheren Übertragung

  1. Melden Sie sich beim Azure-Portal an und greifen Sie auf das Speicherkonto zu, das die von Ihnen erstellte NFS-Freigabe enthält.

  2. Wählen Sie Konfiguration aus.

  3. Wählen Sie für Sichere Übertragung erforderlich die Einstellung Deaktiviert aus.

  4. Wählen Sie Speichern aus.

    Screenshot of storage account configuration screen with secure transfer disabled.

Einbindungsoptionen

Die folgenden Bereitstellungsoptionen werden empfohlen oder sind erforderlich, wenn NFS Azure-Dateifreigaben bereitgestellt werden.

Bereitstellungsoption Empfohlener Wert Beschreibung
vers 4 Erforderlich. Gibt die zu verwendende Version des NFS-Protokolls an. Azure Files unterstützt nur NFS v4.1.
minorversion 1 Erforderlich. Gibt die Nebenversion des NFS-Protokolls an. Einige Linux-Distributionen erkennen Nebenversionen im Parameter vers nicht. Anstelle von vers=4.1 verwenden Sie daher vers=4,minorversion=1.
sec sys Erforderlich. Gibt den Sicherheitstyp an, der beim Authentifizieren einer NFS-Verbindung verwendet werden soll. Bei der Einstellung sec=sys werden lokale UNIX-UIDs und -GIDs verwendet, die AUTH_SYS zum Authentifizieren von NFS-Vorgängen verwenden.
rsize 1048576 Empfohlen. Legt die maximale Anzahl von Byte fest, die in einem einzelnen NFS-Lesevorgang übertragen werden sollen. Wenn Sie die maximale Anzahl von 1.048.576 Byte angeben, führt dies in der Regel zu der besten Leistung.
wsize 1048576 Empfohlen. Legt die maximale Anzahl von Byte fest, die in einem einzelnen NFS-Schreibvorgang übertragen werden sollen. Wenn Sie die maximale Anzahl von 1.048.576 Byte angeben, führt dies in der Regel zu der besten Leistung.
noresvport Empfohlen. Weist den NFS-Client an, in der Kommunikation mit einem NFS-Server für den Bereitstellungspunkt einen nicht privilegierten Quellport zu verwenden. Durch Angabe der Bereitstellungsoption noresvport können Sie sicherstellen, dass Ihre NFS-Freigabe nach einem erneuten Verbindungsaufbau unterbrechungsfrei verfügbar ist. Die Verwendung dieser Option wird dringend empfohlen, um Hochverfügbarkeit zu erreichen.
actimeo 30-60 Empfohlen. Wenn Sie actimeo festlegen, werden die Optionen acregmin, acregmax, acdirmin und acdirmax alle auf denselben Wert festgelegt. Die Verwendung eines Werts unter 30 Sekunden kann zu Leistungsbeeinträchtigungen führen, weil Attributcaches für Dateien und Verzeichnisse zu schnell ablaufen. Es wird empfohlen, actimeo auf einen Wert zwischen 30 und 60 Sekunden festzulegen.

Einbinden einer NFS-Freigabe mithilfe des Azure-Portals

Hinweis

Sie können die Linux-Einbindungsoption nconnect verwenden, um die Leistung für NFS-Azure-Dateifreigaben im großen Stil zu verbessern. Weitere Informationen finden Sie unter Verbessern der NFS-Azure-Dateifreigabeleistung.

  1. Nachdem die Dateifreigabe erstellt wurde, wählen Sie die Freigabe und dann Verbindungsherstellung über Linux aus.

  2. Geben Sie den zu verwendenden Einbindungspfad ein, und kopieren Sie dann das Skript.

  3. Stellen Sie eine Verbindung mit dem Client her, und verwenden Sie das bereitgestellte Einbindungsskript. Im Skript sind nur die erforderlichen Bereitstellungsoptionen enthalten, aber Sie können weitere empfohlenen Bereitstellungsoptionenhinzufügen.

    Screenshot of file share connect blade.

Sie haben nun Ihre NFS-Dateifreigabe eingebunden.

Einbinden einer NFS-Freigabe mithilfe von „/etc/fstab“

Wenn die NFS-Dateifreigabe bei jedem Starten des Linux-Servers oder der VM automatisch eingebunden werden soll, erstellen Sie einen Datensatz in der Datei /etc/fstab für Ihre Azure-Dateifreigabe. Ersetzen Sie YourStorageAccountName und FileShareName durch Ihre Angaben.

<YourStorageAccountName>.file.core.windows.net:/<YourStorageAccountName>/<FileShareName> /media/<YourStorageAccountName>/<FileShareName> nfs vers=4,minorversion=1,_netdev,nofail,sec=sys 0 0

Für weitere Informationen geben Sie den Befehl man fstab an der Linux-Befehlszeile ein.

Überprüfen der Konnektivität

Wenn beim Einbinden ein Fehler aufgetreten ist, wurde Ihr privater Endpunkt möglicherweise nicht ordnungsgemäß eingerichtet, oder es kann darauf nicht zugegriffen werden. Ausführliche Informationen zum Überprüfen der Konnektivität finden Sie unter Überprüfen der Konnektivität.

Momentaufnahmen von NFS-Dateifreigaben

Benutzer*innen, die NFS-Azure-Dateifreigaben verwenden, können Momentaufnahmen der NFS-Azure-Dateifreigabe erstellen, auflisten und löschen. Mit dieser Funktion können Benutzer ein Rollback für ganze Dateisysteme vornehmen oder Dateien wiederherstellen, die versehentlich gelöscht oder beschädigt wurden.

Wichtig

Sie sollten Ihre Dateifreigabe bereitstellen, bevor Sie Momentaufnahmen erstellen. Wenn Sie eine neue NFS-Dateifreigabe erstellen und Momentaufnahmen erstellen, bevor Sie die Freigabe bereitstellen, wird beim Versuch, die Momentaufnahmen für die Freigabe auflisten, eine leere Liste zurückgegeben. Es wird empfohlen, vor der ersten Bereitstellung aufgenommene Momentaufnahmen zu löschen und sie nach dem Bereitstellen der Freigabe erneut zu erstellen.

Begrenzungen

Nur Dateiverwaltungs-APIs (AzRmStorageShare) werden für Momentaufnahmen von NFS-Azure-Dateifreigaben unterstützt. Dateidatenebenen-APIs (AzStorageShare) werden nicht unterstützt.

Azure Backup wird derzeit für NFS-Dateifreigaben nicht unterstützt.

AzCopy wird derzeit für NFS-Dateifreigaben nicht unterstützt. Um Daten aus einer NFS Azure-Dateifreigabe oder -Momentaufnahme zu kopieren, verwenden Sie Tools zum Kopieren von Dateisystemen wie z. B. rsync oder fpsync.

NFS Azure-Dateifreigabemomentaufnahmen sind in allen öffentlichen Azure-Cloudregionen verfügbar.

Erstellen einer Momentaufnahme

Sie können das Azure-Portal, Azure PowerShell oder die Azure CLI verwenden, um eine Momentaufnahme einer NFS-Azure-Dateifreigabe zu erstellen. Eine Freigabe kann die Erstellung von bis zu 200 Freigabemomentaufnahmen unterstützen.

Um eine Momentaufnahme einer vorhandenen Dateifreigabe zu erstellen, melden Sie sich beim Azure-Portal an, und führen Sie die folgenden Schritte aus.

  1. Geben Sie im Suchfeld oben im Azure-Portal Speicherkonten ein, und wählen Sie das Suchergebnis aus.

  2. Wählen Sie das FileStorage-Speicherkonto aus, das die NFS-Azure-Dateifreigabe enthält, von der Sie eine Momentaufnahme erstellen möchten.

  3. Wählen Sie Datenspeicher>Dateifreigaben aus.

  4. Wählen Sie die Dateifreigabe aus, von der Sie eine Momentaufnahme erstellen möchten, und klicken Sie dann auf Vorgänge>Momentaufnahmen.

  5. Wählen Sie + Momentaufnahme hinzufügen aus. Fügen Sie einen optionalen Kommentar hinzu, und klicken Sie dann auf OK.

Screenshot of adding a file share snapshot.

Auflisten der Momentaufnahmen von Dateifreigaben

Sie können alle Momentaufnahmen für eine Dateifreigabe über das Azure-Portal, Azure PowerShell oder die Azure CLI auflisten.

Wenn Sie alle Momentaufnahmen für eine vorhandene Dateifreigabe auflisten möchten, melden Sie sich beim Azure-Portal an, und führen Sie die folgenden Schritte aus.

  1. Geben Sie im Suchfeld oben im Azure-Portal Speicherkonten ein, und wählen Sie das Suchergebnis aus.

  2. Wählen Sie das FileStorage-Speicherkonto aus, das die NFS-Azure-Dateifreigabe enthält, deren Momentaufnahmen Sie auflisten möchten.

  3. Wählen Sie Datenspeicher>Dateifreigaben aus.

  4. Wählen Sie die Dateifreigabe aus, für die Sie die Momentaufnahmen auflisten möchten.

  5. Klicken Sie auf Vorgänge>Momentaufnahmen, und alle für die Dateifreigabe vorhandenen Momentaufnahmen werden aufgelistet.

Löschen von Momentaufnahmen

Vorhandene Freigabemomentaufnahmen werden nie überschrieben. Sie müssen explizit gelöscht werden. Sie können Momentaufnahmen von Dateifreigaben mit Azure PowerShell, dem Azure-Portal oder der Azure CLI löschen.

Um eine Momentaufnahme einer vorhandenen Dateifreigabe zu löschen, melden Sie sich beim Azure-Portal an, und führen Sie die folgenden Schritte aus.

  1. Geben Sie im Suchfeld oben im Azure-Portal Speicherkonten ein, und wählen Sie das Suchergebnis aus.

  2. Wählen Sie das FileStorage-Speicherkonto aus, das die NFS-Azure-Dateifreigabe enthält, für die Sie Momentaufnahmen löschen möchten.

  3. Wählen Sie Datenspeicher>Dateifreigaben aus.

  4. Wählen Sie die Dateifreigabe aus, für die Sie eine oder mehrere Momentaufnahmen löschen möchten, und klicken Sie dann auf Vorgänge>Momentaufnahmen. Alle vorhandenen Momentaufnahmen für die Dateifreigabe werden aufgelistet.

  5. Wählen Sie die Momentaufnahme(n) aus, die Sie löschen möchten, und klicken Sie dann auf Löschen.

Screenshot of deleting file share snapshots.

Einbinden einer NFS-Azure-Dateifreigabemomentaufnahme

Führen Sie die folgenden Schritte aus, um eine NFS Azure-Dateifreigabemomentaufnahme an einen virtuellen Linux-Computer (NFS-Client) zu binden und Dateien wiederherzustellen.

  1. Führen Sie in einer Konsole den folgenden Befehl aus. Weitere empfohlene Bereitstellungsoptionen finden Sie unter Einbindungsoptionen. Um die Kopierleistung zu verbessern, stellen Sie die Momentaufnahme mit nconnect bereit, um mehrere TCP-Kanäle zu verwenden.

    sudo mount -o vers=4,minorversion=1,proto=tcp,sec=sys $server:/nfs4account/share /media/nfs
    
  2. Ändern Sie das Verzeichnis in /media/nfs/.snapshots, sodass Sie die verfügbaren Momentaufnahmen anzeigen können. Das .snapshots-Verzeichnis ist standardmäßig ausgeblendet, Sie können jedoch wie jedes Verzeichnis darauf zugreifen und daraus lesen.

    cd /media/nfs/.snapshots
    
  3. Listen Sie den Inhalt des Ordners .snapshots auf.

    ls
    
  4. Jede Momentaufnahme verfügt über ein eigenes Verzeichnis, das als Wiederherstellungspunkt dient. Wechseln Sie in das Momentaufnahmeverzeichnis, für das Sie Dateien wiederherstellen möchten.

    cd <snapshot-name>
    
  5. Listet den Inhalt des Verzeichnisses auf, um eine Liste von Dateien und Verzeichnissen anzuzeigen, die wiederhergestellt werden können.

    ls
    
  6. Kopieren Sie alle Dateien und Verzeichnisse aus der Momentaufnahme in ein Wiederherstellungsverzeichnis, um die Wiederherstellung abzuschließen.

    cp -r <snapshot-name> ../restore
    

Die Dateien und Verzeichnisse aus der Momentaufnahme sollten jetzt im /media/nfs/restore-Verzeichnis verfügbar sein.

Nächste Schritte