Condividi tramite


Montare condivisioni file NFS di Azure in Linux

Le condivisioni file di Azure possono essere montate nelle distribuzioni Linux usando il protocollo SMB (Server Message Block) o il protocollo NFS (Network File System). Questo articolo è incentrato sul montaggio con NFS. Per informazioni dettagliate sul montaggio di condivisioni file SMB, vedere Usare File di Azure con Linux. Per informazioni dettagliate su ognuno dei protocolli disponibili, vedere Protocolli di condivisione file di Azure.

Si applica a

Modello di gestione Modello di fatturazione Livello supporti Ridondanza Piccole e Medie Imprese (PMI) NFS
Microsoft.FileShares Con provisioning v2 SSD (Premium) Locale No Sì
Microsoft.FileShares Con provisioning v2 SSD (Premium) Della zona No Sì
Microsoft.Storage Con provisioning v2 HDD (standard) Locale No No
Microsoft.Storage Con provisioning v2 HDD (standard) Della zona No No
Microsoft.Storage Con provisioning v2 HDD (standard) Geografica No No
Microsoft.Storage Con provisioning v2 HDD (standard) GeoZone (GZRS) No No
Microsoft.Storage Con provisioning v1 SSD (Premium) Locale No Sì
Microsoft.Storage Con provisioning v1 SSD (Premium) Della zona No Sì
Microsoft.Storage Pagamento in base al consumo HDD (standard) Locale No No
Microsoft.Storage Pagamento in base al consumo HDD (standard) Della zona No No
Microsoft.Storage Pagamento in base al consumo HDD (standard) Geografica No No
Microsoft.Storage Pagamento in base al consumo HDD (standard) GeoZone (GZRS) No No

Prerequisito: Configurare la sicurezza di rete

È possibile accedere alle condivisioni file NFSv4.1 (sia classiche che create con Microsoft.FileShares) solo da reti attendibili. È consigliabile proteggere i dati usando una rete virtuale e altre impostazioni di sicurezza di rete. Qualsiasi altro strumento usato per proteggere i dati, tra cui l'autorizzazione della chiave dell'account, la sicurezza di Microsoft Entra e gli elenchi di controllo di accesso, non può essere usato per autorizzare una richiesta NFSv4.1. Per altre informazioni su come configurare la condivisione file NFS 4.1, la macchina virtuale e l'impostazione di rete, vedere come creare una condivisione file classica e come creare una condivisione file.

Montare una condivisione file di Azure NFS

È possibile montare la condivisione usando l'helper di montaggio AZNFS nel portale di Azure oppure usare i comandi di montaggio NFS nativi nell'interfaccia della riga di comando. È anche possibile creare un record nel file /etc/fstab per montare automaticamente la condivisione ogni volta che si avvia il server o la macchina virtuale Linux.

È possibile usare l'opzione di montaggio nconnect Linux per migliorare le prestazioni per le condivisioni file di Azure NFS su larga scala. Per altre informazioni, vedere Migliorare le prestazioni delle condivisioni file di Azure NFS.

Istruzioni di montaggio predefinite

Condivisione file NFS classica (Microsoft.Storage)

  1. Dopo aver creato la condivisione file, selezionare la condivisione e quindi selezionare Connetti da Linux.
  2. Immettere il percorso di montaggio che si vuole usare, quindi copiare lo script ed eseguirlo nel client. Il portale di Azure offre uno script di installazione dettagliato e pronto all'uso personalizzato per la distribuzione Linux selezionata per l'installazione del pacchetto helper di montaggio AZNFS e per montare in modo sicuro la condivisione usando Crittografia in transito. Nello script sono incluse solo le opzioni di montaggio necessarie, ma è possibile aggiungere altre opzioni di montaggio consigliate.

Screenshot che mostra come connettersi a una condivisione file NFS da Linux usando uno script di montaggio fornito.

Montare una condivisione NFS classica usando il montaggio del client NFS nella riga di comando

È anche possibile montare la condivisione file di Azure usando il montaggio del client NFS nella riga di comando. Selezionare la scheda seguente per la distribuzione linux per visualizzare i comandi da eseguire. Assicurarsi di sostituire <YourStorageAccountName> e <FileShareName> con le informazioni.

sudo apt-get -y update
sudo apt-get install nfs-common

/mount/<YourStorageAccountName>/<FileShareName>

sudo mkdir -p /mount/<YourStorageAccountName>/<FileShareName>
sudo mount -t nfs <YourStorageAccountName>.file.core.windows.net:/<YourStorageAccountName>/<FileShareName> /mount/<YourStorageAccountName>/<FileShareName> -o vers=4,minorversion=1,sec=sys,nconnect=4

Condivisione file NFS (Microsoft.FileShares)

  1. Dopo aver creato la condivisione file, selezionare la condivisione e quindi selezionare Connetti da Linux.

  2. Immettere il percorso di montaggio che si vuole usare, quindi copiare lo script ed eseguirlo nel client. Il portale di Azure offre uno script di installazione dettagliato e pronto all'uso personalizzato per la distribuzione Linux selezionata per l'installazione del pacchetto helper di montaggio AZNFS e per montare in modo sicuro la condivisione usando Crittografia in transito. Nello script sono incluse solo le opzioni di montaggio necessarie, ma è possibile aggiungere altre opzioni di montaggio consigliate.

    immagine per montaggio mfs

Montare una condivisione NFS utilizzando il comando di montaggio del client NFS nel terminale

È anche possibile montare la condivisione file di Azure usando il montaggio del client NFS nella riga di comando. Selezionare la scheda seguente per la distribuzione linux per visualizzare i comandi da eseguire. Assicurarsi di sostituire <your-subscription-id>, <your-reource-group> e <your-file-share-name> con le informazioni.

# Customize these placeholders:
# - `<your-subscription-id>` → Your Azure subscription ID.
# - `<your-resource-group>` → The resource group containing the file share.
# - `<your-file-share-name>` → The name of your file share.

# you will use $hostname later when mounting the file share.
hostName=$(az resource show \
  --ids "/subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group>/providers/Microsoft.FileShares/fileShares/<your-file-share-name>" \
  --query "properties.hostName" \
  --output tsv)
echo $hostName

# you will use shortName later when mounting the file share.
prefix=$(echo "$hostName" | sed 's/\.file\.storage\.azure\.net.*//')
shortName=$(echo "$prefix" | sed 's/\.[^.]*$//')
echo $shortName
sudo apt-get -y update
sudo apt-get install nfs-common
sudo mkdir -p /mount/<your-file-share-name>
sudo mount -t nfs $hostName:/$shortName/<your-file-share-name> /mount/<your-file-share-name> -o vers=4,minorversion=1,sec=sys

Montare con /etc/fstab

Se si vuole che la condivisione file NFS venga montata automaticamente ogni volta che si avvia il server Linux o la macchina virtuale, creare un record nel file /etc/fstab per la condivisione file di Azure. Il record varia a seconda che si utilizzi l'assistente di montaggio AZNFS o i comandi di montaggio NFS nativi.

Per determinare se il pacchetto helper mount AZNFS è installato nel client, eseguire il comando seguente:

systemctl is-active --quiet aznfswatchdog && echo -e "\nAZNFS Mount Helper is installed! \n"

Se il pacchetto è installato, viene visualizzato il messaggio AZNFS Mount Helper is installed!.

Per la condivisione file classica, ricordarsi di sostituire <YourStorageAccountName> e <FileShareName> con i propri valori. Per la condivisione file, ricordarsi di sostituire hostName e shortName con i valori corretti. Per altre informazioni, immettere il comando man fstab dalla riga di comando di Linux.

Montare con l'helper Aznfs con crittografia in transito

Se si usa l'helper di montaggio AZNFS e si vuole montare la condivisione usando la crittografia in transito, il record in /etc/fstab dovrebbe essere simile al seguente.

# For Microsoft.Storage file share, use:
<YourStorageAccountName>.file.core.windows.net:/<YourStorageAccountName>/<FileShareName> /media/<YourStorageAccountName>/<FileShareName> aznfs defaults,sec=sys,vers=4.1,nolock,proto=tcp,nofail,_netdev   0 2

# For Microsoft.FileShares file share, use:
$hostName:/$shortName/<FileShareName> /media/$shortName/<FileShareName> aznfs defaults,sec=sys,vers=4.1,nolock,proto=tcp,nofail,_netdev   0 2

Montare con l'helper Aznfs senza crittografia in transito

Se si usa l'helper di montaggio AZNFS ma non si vuole usare la crittografia in transito, il record in /etc/fstab dovrebbe essere simile al seguente:

# For Microsoft.Storage file share, use:
<YourStorageAccountName>.file.core.windows.net:/<YourStorageAccountName>/<FileShareName> /media/<YourStorageAccountName>/<FileShareName> aznfs defaults,sec=sys,vers=4.1,nolock,proto=tcp,nofail,_netdev,notls   0 2

# For Microsoft.FileShares file share, use:
$hostName:/$shortName/<FileShareName> /media/$shortName/<FileShareName> aznfs defaults,sec=sys,vers=4.1,nolock,proto=tcp,nofail,_netdev,notls   0 2

Montare con il comando di montaggio nativo

Se si usa il montaggio NFS nativo senza AZNFS, il record in /etc/fstab dovrebbe essere simile al seguente:

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

# For Microsoft.FileShares file share, use:
$hostName:/$shortName/<FileShareName> /media/$shortName/<FileShareName> nfs vers=4,minorversion=1,_netdev,nofail,sec=sys 0 0

Opzioni di montaggio

Le opzioni di montaggio seguenti sono consigliate o necessarie durante il montaggio di condivisioni file di Azure NFS.

Opzione di montaggio Valore consigliato Descrizione
vers 4 Obbligatorio. Specifica la versione del protocollo NFS da usare. File di Azure supporta solo NFSv4.1.
minorversion 1 Obbligatorio. Specifica la versione secondaria del protocollo NFS. Alcune distribuzioni Linux non riconoscono versioni secondarie nel parametro vers. Invece di vers=4.1, usare vers=4,minorversion=1.
sec sys Obbligatorio. Specifica il tipo di sicurezza da utilizzare per l'autenticazione di una connessione NFS. L'impostazione sec=sys usa gli UID e i GID UNIX locali che usano AUTH_SYS per autenticare le operazioni NFS.
rsize 1048576 Consigliato. Imposta il numero massimo di byte da trasferire in una singola operazione di lettura NFS. Specificando il livello massimo di 1.048.576 byte, in genere si ottengono prestazioni ottimali.
wsize 1048576 Consigliato. Imposta il numero massimo di byte da trasferire in una singola operazione di scrittura NFS. Specificando il livello massimo di 1.048.576 byte, in genere si ottengono prestazioni ottimali.
noresvport n/d Consigliato per i kernel inferiori a 5.18. Indica al client NFS di usare una porta di origine non privilegiata durante la comunicazione con un server NFS per il punto di montaggio. L'uso dell'opzione di montaggio noresvport consente di assicurarsi che la condivisione NFS abbia una disponibilità ininterrotta dopo una riconnessione. L'uso di questa opzione è consigliato per ottenere la disponibilità elevata.
actimeo 30 a 60 Consigliato. Specificando actimeo, si impostano tutti gli acregmin, acregmax, acdirmin e acdirmax sullo stesso valore. L'uso di un valore inferiore a 30 secondi può causare una riduzione delle prestazioni, poiché le cache degli attributi per i file e le directory scadono troppo rapidamente. È consigliabile impostare actimeo tra 30 e 60 secondi.
nconnect 4 Consigliato. Nconnect aumenta le prestazioni usando più connessioni TCP tra il client e la condivisione NFS. È consigliabile configurare le opzioni di montaggio con l'impostazione ottimale di nconnect=4. Attualmente, non ci sono miglioramenti oltre quattro canali per l'implementazione di File di Azure di nconnect.
clean n/d Un montaggio non TLS potrebbe non riuscire se un montaggio TLS precedente allo stesso server è terminato bruscamente, lasciando voci non aggiornate. Per risolvere questo problema, rimontare la condivisione usando l'opzione clean, che cancella immediatamente eventuali voci non aggiornate. Questo vale solo per il montaggio AZNFS.

Convalidare la connettività

Se il montaggio non riesce, è possibile che l'endpoint privato non sia stato configurato correttamente o non sia accessibile. Per informazioni dettagliate sulla conferma della connettività, vedere Verificare la connettività.

Snapshot di condivisione file NFS

I clienti che usano condivisioni file di Azure NFS possono acquisire snapshot di condivisione file. Questa funzionalità consente agli utenti di eseguire il rollback di interi file system o recuperare file eliminati o danneggiati accidentalmente. Consultare Usare snapshot di condivisione con File di Azure.

Passaggio successivo