Questa pagina mostra come montare una condivisione file di Filestore su un'istanza di macchina virtuale (VM) Compute Engine che si trova nello stesso Google Cloud progetto e nella stessa rete VPC. Per scoprire come montare le condivisioni file sui client in una rete remota, consulta Montaggio di condivisioni file su client remoti. Se vuoi accedere alle istanze Filestore dai cluster Google Kubernetes Engine, consulta Accedere alle istanze Filestore con il driver CSI Filestore.
Prima di iniziare
Assicurati che il firewall di rete sia configurato correttamente per l'utilizzo con Filestore. Per maggiori dettagli, consulta Configurazione delle regole firewall.
Montaggio di una condivisione file su un'istanza VM di Compute Engine
Utilizza una delle seguenti procedure per montare una condivisione file di Filestore
su una VM di Compute Engine. Per prestazioni ottimali, consigliamo di eseguire il montaggio su una VM n1-standard-8
o superiore.
Linux: mount
Per montare manualmente una condivisione file su una VM di un client Linux:
Nella console Google Cloud , vai alla pagina Istanze VM.
Individua la VM Linux che vuoi utilizzare come client, quindi fai clic su SSH per aprire un terminale sulla VM.
(Facoltativo): montaggio di una condivisione file su una VM client con più interfacce di rete tramite una rete secondaria.
Dettagli (fai clic per espandere)
Se vuoi montare la condivisione file tramite una rete secondaria, ovvero un'interfaccia diversa da
nic0
, devi modificare le norme di routing della VM client. Esegui:sudo ip route \ add filestore-reserved-address-range \ via default-gateway-of-nic-to-filestore
dove:
filestore-reserved-address-range
è l'intervallo di indirizzi riservato per l'utilizzo da parte dell'istanza Filestore.default-gateway-of-nic-to-filestore
è l'indirizzo IP del gateway predefinito della NIC connessa alla rete VPC condivisa con l'istanza Filestore.
Per ulteriori informazioni sull'utilizzo delle istanze Compute Engine con più NIC, consulta Configurare il routing per un'interfaccia di rete aggiuntiva.
Installa NFS:
Debian/Ubuntu
Utilizza i seguenti comandi per installare NFS su Debian o Ubuntu.
sudo apt-get -y update &&
sudo apt-get install nfs-commonRHEL/CentOS
Utilizza i seguenti comandi per installare NFS su Red Hat Enterprise Linux o CentOS.
sudo yum update &&
sudo yum install nfs-utilsSUSE
Utilizza i seguenti comandi per installare NFS su SUSE.
sudo zypper update &&
sudo zypper -n install nfs-clientCrea una directory locale da mappare alla condivisione file di Filestore:
sudo mkdir -p mount-point-directory
dove
mount-point-directory
è la directory da creare, ad esempio/mnt/filedir
.Monta la condivisione file dall'istanza Filestore eseguendo il comando
mount
. Puoi utilizzare qualsiasi opzione di montaggio NFS. Per ottenere le migliori prestazioni, ti consigliamo di utilizzare le seguenti opzioni NFSmount
:Opzione Descrizione hard
Il client NFS riprova le richieste NFS all'infinito. Per ridurre la possibilità di interruzioni I/O al riavvio dell'istanza Filestore, ti consigliamo di utilizzare l'opzione di montaggio hard
sia per i client Linux che per quelli Windows.timeo=600
Il client NFS attende 600 decisecondi (60 secondi) prima di riprovare una richiesta NFS. retrans=3
Il client NFS tenta le richieste NFS tre volte prima di intraprendere ulteriori azioni di recupero. rsize=524288
Il client NFS può ricevere un massimo di 524.288 byte dal server NFS per richiesta READ
.
Nota: per le istanze di livello Basic, imposta il valorersize
su1048576
.wsize=1048576
Il client NFS può ricevere un massimo di 1.048.576 byte dal server NFS per richiesta WRITE
.resvport
Il client NFS utilizza una porta di origine privilegiata quando comunica con il server NFS per questo punto di montaggio. async
Il client NFS ritarda l'invio delle scritture dell'applicazione al server NFS finché non vengono soddisfatte determinate condizioni.
Attenzione: l'utilizzo dell'opzionesync
riduce significativamente le prestazioni.- Per una latenza di montaggio ridotta, specifica l'opzione
-o tcp
. Se stai montando un'istanza regionale, zonale o enterprise su una VM client che esegue il kernel Linux versione 5.3 o successive, valuta la possibilità di specificare l'opzione di montaggio
nconnect
per aumentare le prestazioni NFS. Per livelli di servizio specifici, consigliamo di specificare il seguente numero di connessioni tra il client e il server:Livello Capacità Numero di connessioni Regionale, a livello di zona 1-9,75 TiB nconnect=2
Regionale, a livello di zona 10-100 TiB nconnect=7
Aziende - nconnect=2
SSD con scalabilità elevata - nconnect=7
In generale, maggiore è la capacità di condivisione dei file e minore è il numero di VM client di connessione, maggiore è il rendimento che ottieni specificando connessioni aggiuntive con
nconnect
.
Esegui il comando
mount
con le opzioni che preferisci, in modo simile a quanto segue:sudo mount -o rw ip-address:/file-share mount-point-directory
dove:
ip-address
è l'indirizzo IP dell'istanza Filestore.file-share
è il nome della condivisione file sull'istanza.mount-point-directory
è il percorso a cui vuoi mappare la condivisione file Filestore.
Puoi ottenere l'indirizzo IP e il nome della condivisione file di un'istanza da una delle seguenti origini:
La pagina delle istanze Filestore.
Il campo
IP_ADDRESS
nei risultati del comandofilestore instances list
.La sezione
ipAddresses
nei risultati del comandofilestore instances describe
.
Ad esempio, data un'istanza Filestore con un indirizzo IP
10.0.1.2
e una condivisione file denominatashare1
, il seguente comando monta la condivisione file nella directory del punto di montaggio locale/mnt/render
:sudo mount 10.0.1.2:/share1 /mnt/render
- Per una latenza di montaggio ridotta, specifica l'opzione
(Facoltativo) Esegui
chmod
per impostare le autorizzazioni nella directory di montaggio in modo che possa essere scritta da utenti diversi da quelli root. Per impostare le autorizzazioni della directory, esegui questo comando:sudo chmod permissions mount-point-directory
dove:
permissions
è l'insieme di autorizzazioni da concedere. Ad esempio,chmod go+rw
rende la directory leggibile e scrivibile dai membri del gruppo proprietario della directory e da tutti gli altri utenti. Per ulteriori informazioni sull'impostazione delle autorizzazioni, vedi Configurazione dell'accesso per una condivisione file.mount-point-directory
è il percorso della directory in cui è montata la condivisione file di Filestore.
(Facoltativo): verifica che la condivisione file Filestore sia montata:
df -h --type=nfs
L'output dovrebbe contenere una voce simile alla seguente:
Filesystem Size Used Avail Use% Mounted on 10.0.1.2:/share1 1018G 76M 966G 1% /mnt/render 10.0.2.2:/vol3 1018G 76M 966G 1% /mnt/filestore3
Se devi utilizzare il blocco dei file NFS, potresti dover impostare le porte utilizzate dai daemon
statd
enlockmgr
e configurare le regole firewall per aprire queste porte.
Linux: /etc/fstab
Puoi montare automaticamente le condivisioni file sulle VM client durante l'avvio
modificando il file /etc/fstab
del client:
Nella console Google Cloud , vai alla pagina Istanze VM.
Individua la VM Linux che vuoi utilizzare come client, quindi fai clic su SSH per aprire un terminale sulla VM.
(Facoltativo): montaggio di una condivisione file su una VM client con più interfacce di rete tramite una rete secondaria.
Dettagli (fai clic per espandere)
Se vuoi montare la condivisione file tramite una rete secondaria, ovvero un'interfaccia diversa da
nic0
, devi modificare le norme di routing della VM client:- In
/etc/default/instance_configs.cfg
, imposta il flagsetup
perNetworkInterfaces
sufalse
:[NetworkInterfaces] dhclient_script = /sbin/google-dhclient-script dhcp_command = ip_forwarding = true setup = false
In
/etc/network/interfaces
, aggiungi le seguenti righe:auto eth1 iface eth1 inet dhcp up ip route add filestore-reserved-address-range via default-gateway-of-nic-to-filestore
dove:
filestore-reserved-address-range
è l'intervallo di indirizzi riservato per l'utilizzo da parte dell'istanza Filestore.default-gateway-of-nic-to-filestore
è l'indirizzo IP del gateway predefinito della NIC connessa alla rete VPC condivisa con l'istanza Filestore.
Per ulteriori informazioni sull'utilizzo delle istanze Compute Engine con più NIC, consulta Configurare il routing per un'interfaccia di rete aggiuntiva.
- In
Installa NFS:
Debian/Ubuntu
Utilizza i seguenti comandi per installare NFS su Debian o Ubuntu.
sudo apt-get -y update &&
sudo apt-get install nfs-commonRHEL/CentOS
Utilizza i seguenti comandi per installare NFS su Red Hat Enterprise Linux o CentOS.
sudo yum update &&
sudo yum install nfs-utilsSUSE
Utilizza i seguenti comandi per installare NFS su SUSE.
sudo zypper update &&
sudo zypper -n install nfs-clientCrea una directory locale da mappare alla condivisione file di Filestore:
sudo mkdir -p mount-point-directory
dove
mount-point-directory
è la directory da creare, ad esempio/mnt/filedir
.Apri il file
/etc/fstab
:sudo vim /etc/fstab
Aggiungi la seguente riga al file
/etc/fstab
:ip-address:/file-share mount-point-directory nfs options,_netdev 0 0
dove:
ip-address
è l'indirizzo IP dell'istanza Filestore.file-share
è il nome della condivisione file sull'istanza.mount-point-directory
è il percorso a cui vuoi mappare la condivisione file Filestore.options
sono le opzioni di montaggio NFS. Ti consigliamo di mantenere le opzioni di montaggio NFS predefinite, con le seguenti eccezioni:- Per il montaggio automatico, ti consigliamo di specificare
-o tcp
per ridurre la latenza durante il montaggio e lo smontaggio. - Se stai montando un'istanza regionale, zonale o aziendale
su una VM client che esegue il kernel Linux versione 5.3 o successive,
valuta la possibilità di specificare l'opzione di montaggio
nconnect
per aumentare le prestazioni NFS. Per livelli di servizio specifici, consigliamo di specificare il seguente numero di connessioni tra il client e il server:
Livello Capacità Numero di connessioni Regionale, a livello di zona 1-9,75 TiB nconnect=2
Regionale, a livello di zona 10-100 TiB nconnect=7
Aziende - nconnect=2
SSD con scalabilità elevata - nconnect=7
In generale, maggiore è la capacità di condivisione dei file e minore è il numero di VM client di connessione, maggiore è il rendimento che ottieni specificando connessioni aggiuntive con
nconnect
.- Per il montaggio automatico, ti consigliamo di specificare
Esempio: la seguente riga in
/etc/fstab
monta la condivisione filevol1
dell'istanza Filestore con indirizzo IP10.0.0.2
nella directory del punto di montaggio/mnt
con le opzioni di montaggio predefinite:10.0.0.2:/vol1 /mnt nfs defaults,_netdev 0 0
Monta tutto in
/etc/fstab
:sudo mount -a
La condivisione file viene ora montata automaticamente ogni volta che la VM client viene avviata.
Linux: autofs
Puoi configurare autofs
per montare automaticamente una condivisione file solo quando viene
acceduto e mantenerla smontata quando non viene utilizzata. Rispetto al montaggio statico di una condivisione file in /etc/fstab
, questo metodo consente di risparmiare risorse della VM client nelle situazioni in cui il client deve mappare molti punti di montaggio.
Installare NFS
e autofs
sulla VM client
Nella console Google Cloud , vai alla pagina Istanze VM.
Individua la VM Linux che vuoi utilizzare come client, quindi fai clic su SSH per aprire un terminale su quella VM.
(Facoltativo): montaggio di una condivisione file su una VM client con più interfacce di rete tramite una rete secondaria.
Dettagli (fai clic per espandere)
Se vuoi montare la condivisione file tramite una rete secondaria, ovvero un'interfaccia diversa da
nic0
, devi modificare le norme di routing della VM client:- In
/etc/default/instance_configs.cfg
, imposta il flagsetup
perNetworkInterfaces
sufalse
:[NetworkInterfaces] dhclient_script = /sbin/google-dhclient-script dhcp_command = ip_forwarding = true setup = false
- In
/etc/network/interfaces
, aggiungi le seguenti righe: auto eth1 iface eth1 inet dhcp up ip route add filestore-reserved-address-range via default-gateway-of-nic-to-filestore
dove:
filestore-reserved-address-range
è l'intervallo di indirizzi riservato per l'utilizzo da parte dell'istanza Filestore.default-gateway-of-nic-to-filestore
è l'indirizzo IP del gateway predefinito della NIC connessa alla rete VPC condivisa con l'istanza Filestore.
Per ulteriori informazioni sull'utilizzo delle istanze Compute Engine con più NIC, consulta Configurare il routing per un'interfaccia di rete aggiuntiva.
- In
Installa NFS eseguendo i seguenti comandi:
Debian/Ubuntu
Utilizza i seguenti comandi per installare NFS su Debian o Ubuntu.
sudo apt-get -y update &&
sudo apt-get install nfs-commonRHEL/CentOS
Utilizza i seguenti comandi per installare NFS su Red Hat Enterprise Linux o CentOS.
sudo yum update &&
sudo yum install nfs-utilsSUSE
Utilizza i seguenti comandi per installare NFS su SUSE.
sudo zypper update &&
sudo zypper -n install nfs-clientDalla finestra del terminale della VM client, installa
autofs
:Debian/Ubuntu
sudo apt-get install autofs
RHEL/CentOS
sudo yum install autofs
SUSE
sudo zypper -n install autofs
Configura autofs
per montare dinamicamente la condivisione file sulla VM client
Attiva
autofs
:sudo systemctl enable --now autofs
Crea una directory locale da mappare alla condivisione file di Filestore:
sudo mkdir -p mount-point-directory
dove
mount-point-directory
è la directory da creare. Non deve contenere sottodirectory. In questa guida utilizziamo/nfs
come directory del punto di montaggio.Apri il file
/etc/auto.master
:sudo vim /etc/auto.master
Aggiungi la seguente riga al file
/etc/auto.master
:/nfs /etc/auto.nfs --timeout seconds
dove
seconds
è la durata in secondi prima del timeout del montaggio. Il valore predefinito è300
. Se imposti questo valore su0
, il disassemblaggio viene disattivato daautofs
.Crea un file denominato
/etc/auto.nfs
:sudo vim /etc/auto.nfs
Aggiungi la seguente riga al file
/etc/auto.nfs
:mount-point-subdir options ip-address:/file-share
dove:
mount-point-subdir
è la sottodirectory in/nfs
a cui vuoi mappare la condivisione file Filestore. Questa sottodirectory viene generata dinamicamente e non deve esistere nella VM client.options
sono le opzioni di montaggio NFS. Ti consigliamo di mantenere le opzioni di montaggio NFS predefinite, con le seguenti eccezioni:- Per il montaggio automatico, ti consigliamo di specificare
-o tcp
per ridurre la latenza durante il montaggio e lo smontaggio. - Se stai montando un'istanza regionale, zonale o aziendale
su una VM client che esegue il kernel Linux versione 5.3 o successive,
valuta la possibilità di specificare l'opzione di montaggio
nconnect
per aumentare le prestazioni NFS. Per livelli di servizio specifici, consigliamo di specificare il seguente numero di connessioni tra il client e il server:
Livello Capacità Numero di connessioni Regionale, a livello di zona 1-9,75 TiB nconnect=2
Regionale, a livello di zona 10-100 TiB nconnect=7
Aziende - nconnect=2
SSD con scalabilità elevata - nconnect=7
In generale, maggiore è la capacità di condivisione dei file e minore è il numero di VM client di connessione, maggiore è il rendimento che ottieni specificando connessioni aggiuntive con
nconnect
.ip-address
è l'indirizzo IP dell'istanza Filestore.file-share
è il nome della condivisione file sull'istanza.
- Per il montaggio automatico, ti consigliamo di specificare
Esempio: la seguente riga in
/etc/auto.nfs
monta la condivisione filevol1
dell'istanza Filestore con indirizzo IP10.0.0.2
nella sottodirectory generata dinamicamentefile-shares
con accessoread/write
concesso:file-shares -rw 10.0.0.2:/vol1
Test della configurazione
Se la condivisione file è montata, devi smontarla:
sudo umount mount-point-directory
dove
mount-point-directory
è il percorso a cui è mappata la condivisione file Filestore.Se è presente una voce
/etc/fstab
che monta la condivisione file all'avvio del sistema, assicurati di rimuoverla.Ricarica
autofs
:sudo service autofs reload
Verifica che la configurazione funzioni:
ls mount-point-directory/mount-point-subdir
dove:
mount-point-directory
è la directory del punto di montaggio indicata nel file/etc/auto.master
.mount-point-subdir
è la sottodirectory del punto di montaggio indicata nel file/etc/auto.nfs
.
Dal nostro esempio, il comando sarebbe:
ls /nfs/file-shares
Se il montaggio automatico è configurato correttamente, il sistema monta prima la condivisione file e poi restituisce i risultati del comando
ls
. La condivisione file viene smontata automaticamente dopo un periodo di inattività, definito <x0A>nel valoretimeout
specificato nel file/etc/auto.master
.
Windows
Connettiti alla VM Windows
Nella console Google Cloud , vai alla pagina Istanze VM.
Individua la VM Windows che vuoi utilizzare come client, poi fai clic su RDP per aprire una connessione desktop remoto a quella VM. Per saperne di più, vedi Connessione alle istanze Windows.
Installa NFS sulla VM Windows
- Sulla VM Windows, apri PowerShell come amministratore per garantire l'accesso e le autorizzazioni NFS corretti.
In PowerShell, installa il client NFS:
Install-WindowsFeature -Name NFS-Client
Riavvia l'istanza VM Windows come richiesto, quindi apri una nuova connessione desktop remoto.
Configura l'ID utente utilizzato dal client NFS
In PowerShell, esegui i seguenti comandi per creare due nuove voci del registro,
AnonymousUid
eAnonymousGid
:New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" ` -Name "AnonymousUid" -Value "0" -PropertyType DWORD
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" ` -Name "AnonymousGid" -Value "0" -PropertyType DWORD
Riavvia il servizio client NFS:
nfsadmin client stop
nfsadmin client start
Mappa la condivisione file alla VM Windows
Esci da PowerShell per abbandonare la sessione dell'amministratore. Se ometti questo passaggio, le applicazioni in esecuzione nella sessione dell'utente standard non potranno visualizzare o accedere a questa condivisione file.
exit
(Facoltativo): montaggio di una condivisione file su una VM client con più interfacce di rete tramite una rete secondaria.
Dettagli (fai clic per espandere)
Se vuoi montare la condivisione file tramite una rete secondaria, ovvero un'interfaccia diversa da
nic0
, devi modificare le norme di routing della VM client. Esegui:route -p ^ add filestore-reserved-address-range ^ mask address-range-subnet-mask ^ default-gateway-of-nic-to-filestore
dove:
filestore-reserved-address-range
è l'intervallo di indirizzi riservato per l'utilizzo da parte dell'istanza Filestore.address-range-subnet-mask
è la subnet mask difilestore-reserved-address-range
. Ad esempio, un intervallo di indirizzi riservato /29 utilizzerebbe la subnet mask 255.255.255.248.default-gateway-of-nic-to-filestore
è l'indirizzo IP del gateway predefinito della NIC connessa alla rete VPC condivisa con l'istanza Filestore.
Esempio:
route -p add 10.65.21.176 mask 255.255.255.248 10.128.0.1
Per ulteriori informazioni sull'utilizzo delle istanze Compute Engine con più NIC, consulta Configurare il routing per un'interfaccia di rete aggiuntiva.
Da
Command Prompt
, mappa la condivisione file a una lettera di unità:net use drive-letter: \\filestore-ip\file-share-name
dove:
- filestore-ip è l'indirizzo IP dell'istanza Filestore.
- file-share-name è il nome della condivisione file sull'istanza Filestore.
- drive-letter è la lettera dell'unità che vuoi assegnare per la mappatura.
Esempio
Il seguente comando mappa la condivisione file
vol1
sull'istanza Filestore con l'indirizzo IP10.0.0.2
all'unitàz:
sulla VM Windows client:net use Z: \\10.0.0.2\vol1
(Facoltativo) Per utilizzare il blocco dei file NFS, verifica quanto segue:
Assicurati che le regole firewall siano configurate per tutte le porte NFS richieste, incluse
statd
enlockmgr
.Assicurati che il client NFS di Windows sia configurato con porte riservate utilizzando un comando simile al seguente in PowerShell:
nfsadmin client config protocol=tcp UseReservedPorts=yes nfsadmin client stop nfsadmin client start
Creazione e montaggio di sottodirectory nella condivisione file
Una volta montata la condivisione file su una VM client, puoi creare sottodirectory nella condivisione file, che i client possono montare direttamente anziché montare l'intera condivisione file:
Per creare una sottodirectory nella condivisione file montata, esegui:
sudo mkdir -p mount-point-directory/file-share-sub-dir
dove:
mount-point-directory
è il percorso a cui mappi la condivisione file.file-share-sub-dir
è il percorso della sottodirectory nella condivisione file che vuoi creare.
Questo comando crea la sottodirectory sia sulla VM client sia sulla condivisione file. Ad esempio, se hai montato la condivisione file
10.0.0.2:/vol1
nella directory/mnt
sulla VM client, il comandosudo mkdir -p /mnt/nfs
crea10.0.0.2:/vol1/nfs
nella condivisione file e/mnt/nfs
nella VM client.(Facoltativo) Se vuoi montare la sottodirectory della condivisione file nella directory della VM client in cui è montata la condivisione file, devi prima smontare la condivisione file:
sudo umount mount-point-directory
dove
mount-point-directory
è la directory a cui è mappata la condivisione file.Monta la sottodirectory:
sudo mount ip-address:/file-share/file-share-sub-dir mount-point-directory
dove:
ip-address
è l'indirizzo IP dell'istanza Filestore.file-share
è il nome della condivisione file sull'istanza.file-share-sub-dir
è il percorso della sottodirectory nella condivisione file da montare.mount-point-directory
è il percorso a cui vuoi mappare la condivisione file Filestore.
Esempio: nel seguente comando:
sudo mount 10.0.0.2:/vol1/nfs /mnt/nfs
10.0.0.2
è l'indirizzo IP dell'istanza Filestore.vol1
è il nome della condivisione file.nfs
è una sottodirectory di condivisione dei file./mnt/nfs
è la directory sulla VM client a cui è mappata la sottodirectory della condivisione filenfs
.
Passaggi successivi
- Scopri come copiare i dati nella condivisione file montata.
- Scopri come montare le condivisioni file sui client in una rete remota.
- Risolvi i problemi di montaggio relativi a Filestore.