Esta página mostra como montar uma partilha de ficheiros do Filestore numa instância de máquina virtual (VM) do Compute Engine que esteja no mesmo Google Cloud projeto e rede VPC. Para saber como montar partilhas de ficheiros em clientes numa rede remota, consulte o artigo Montar partilhas de ficheiros em clientes remotos. Se quiser aceder a instâncias do Filestore a partir de clusters do Google Kubernetes Engine, consulte o artigo Aceda a instâncias do Filestore com o controlador CSI do Filestore.
Antes de começar
Certifique-se de que a firewall de rede está configurada corretamente para utilização com o Filestore. Consulte o artigo Configurar regras de firewall para ver detalhes.
Montar uma partilha de ficheiros numa instância de VM do Compute Engine
Use um dos seguintes procedimentos para montar uma partilha de ficheiros do Filestore
numa VM do Compute Engine. Recomendamos a montagem num VM n1-standard-8 ou superior para um desempenho ideal.
Linux: mount
Para montar manualmente uma partilha de ficheiros numa VM cliente do Linux:
Na Google Cloud consola, aceda à página Instâncias de VM.
Localize a VM do Linux que quer usar como cliente e, de seguida, clique em SSH para abrir um terminal nessa VM.
Opcional: montar uma partilha de ficheiros numa VM cliente com várias interfaces de rede através de uma rede secundária.
Detalhes (clique para expandir)
Se quiser montar a partilha de ficheiros através de uma rede secundária, ou seja, uma interface que não seja
nic0, tem de modificar a política de encaminhamento da VM do cliente. Corrida:sudo ip route \ add filestore-reserved-address-range \ via default-gateway-of-nic-to-filestorewhere:
filestore-reserved-address-rangeé o intervalo de endereços reservado para utilização pela instância do Filestore.default-gateway-of-nic-to-filestoreé o endereço IP do gateway predefinido da NIC ligada à rede VPC que é partilhada com a instância do Filestore.
Para mais informações sobre a utilização de instâncias do Compute Engine com várias NICs, consulte o artigo Configure o encaminhamento para uma interface de rede adicional.
Instalar NFS:
Debian/Ubuntu
Use os seguintes comandos para instalar o NFS no Debian ou Ubuntu.
sudo apt-get -y update &&
sudo apt-get install nfs-commonRHEL/CentOS
Use os seguintes comandos para instalar o NFS no Red Hat Enterprise Linux ou no CentOS.
sudo yum update &&
sudo yum install nfs-utilsSUSE
Use os seguintes comandos para instalar o NFS no SUSE.
sudo zypper update &&
sudo zypper -n install nfs-clientCrie um diretório local para mapear para a partilha de ficheiros do Filestore:
sudo mkdir -p mount-point-directoryonde
mount-point-directoryé o diretório a criar, por exemplo,/mnt/filedir.Monte a partilha de ficheiros a partir da instância do Filestore executando o comando
mount. Pode usar quaisquer opções de montagem NFS. Para o melhor desempenho, recomendamos a utilização das seguintes opções de NFS:mountOpção Descrição hardO cliente NFS tenta novamente os pedidos NFS indefinidamente. Para reduzir a possibilidade de interrupções de E/S quando a instância do Filestore é reiniciada, recomendamos que use a opção de montagem hardpara clientes Linux e Windows.timeo=600O cliente NFS aguarda 600 decissegundos (60 segundos) antes de tentar novamente um pedido NFS. retrans=3O cliente NFS tenta fazer pedidos NFS três vezes antes de tomar medidas de recuperação adicionais. rsize=524288O cliente NFS pode receber um máximo de 524 288 bytes do servidor NFS por pedido READ.
Nota: para instâncias de nível básico, defina o valor dersizecomo1048576.wsize=524288O cliente NFS pode enviar um máximo de 524 288 bytes para o servidor NFS por pedido WRITE.resvportO cliente NFS usa uma porta de origem privilegiada quando comunica com o servidor NFS para este ponto de montagem. asyncO cliente NFS atrasa o envio de escritas de aplicações para o servidor NFS até que determinadas condições sejam cumpridas.
Atenção: a utilização da opçãosyncreduz significativamente o desempenho.- Para reduzir a latência de montagem, especifique a opção
-o tcp. Se estiver a montar uma instância regional, zonal ou empresarial numa VM cliente que esteja a executar a versão 5.3 ou superior do kernel Linux, considere especificar a opção de montagem
nconnectpara aumentar o desempenho do NFS. Para níveis de serviço específicos, recomendamos que especifique o seguinte número de ligações entre o cliente e o servidor:Nível Capacidade Número de associações Regional, zonal 1 a 9,75 TiB nconnect=2Regional, zonal 10 a 100 TiB nconnect=7Empresarial - nconnect=2SSD de grande escala - nconnect=7Em geral, quanto maior for a capacidade de partilha de ficheiros e menor for o número de VMs de cliente de ligação, mais desempenho ganha ao especificar ligações adicionais com
nconnect.
Execute o comando
mountcom as suas opções preferidas, semelhante ao seguinte:sudo mount -o rw ip-address:/file-share mount-point-directorywhere:
ip-addressé o endereço IP da instância do Filestore.file-shareé o nome da partilha de ficheiros na instância.mount-point-directoryé o caminho para o qual quer mapear a partilha de ficheiros do Filestore.
Pode obter o endereço IP e o nome da partilha de ficheiros de uma instância a partir de qualquer uma das seguintes origens:
A página Instâncias do Filestore.
O campo
IP_ADDRESSnos resultados do comandofilestore instances listA secção
ipAddressesnos resultados do comandofilestore instances describe
Por exemplo, dada uma instância do Filestore com um endereço IP
10.0.1.2e uma partilha de ficheiros denominadashare1, o seguinte comando monta a partilha de ficheiros no diretório do ponto de montagem local/mnt/render:sudo mount 10.0.1.2:/share1 /mnt/render- Para reduzir a latência de montagem, especifique a opção
Opcional: execute
chmodpara definir autorizações no diretório de montagem, para que alguém que não seja um utilizador root possa escrever nele. Para definir as autorizações de diretório, execute o seguinte comando:sudo chmod permissions mount-point-directorywhere:
permissionsé o conjunto de autorizações a conceder. Por exemplo,chmod go+rwtorna o diretório legível e gravável pelos membros do grupo proprietário do diretório e todos os outros utilizadores. Para mais informações sobre como definir autorizações, consulte o artigo Configurar o acesso numa partilha de ficheiros.mount-point-directoryé o caminho para o diretório onde a partilha de ficheiros do Filestore está montada.
Opcional: confirme que a partilha de ficheiros do Filestore está montada:
df -h --type=nfsO resultado deve conter uma entrada semelhante à seguinte:
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 precisar de usar o bloqueio de ficheiros NFS, pode ter de definir as portas usadas pelos daemons
statdenlockmgre configurar regras de firewall para abrir essas portas.
Linux: /etc/fstab
Pode fazer com que as partilhas de ficheiros sejam montadas automaticamente nas VMs de cliente durante o arranque modificando o ficheiro /etc/fstab do cliente:
Na Google Cloud consola, aceda à página Instâncias de VM.
Localize a VM do Linux que quer usar como cliente e, de seguida, clique em SSH para abrir um terminal nessa VM.
Opcional: montar uma partilha de ficheiros numa VM cliente que tenha várias interfaces de rede através de uma rede secundária.
Detalhes (clique para expandir)
Se quiser montar a partilha de ficheiros através de uma rede secundária, ou seja, uma interface diferente de
nic0, tem de modificar a política de encaminhamento da VM do cliente:- Em
/etc/default/instance_configs.cfg, defina a flagsetupparaNetworkInterfacescomofalse:[NetworkInterfaces] dhclient_script = /sbin/google-dhclient-script dhcp_command = ip_forwarding = true setup = false
Em
/etc/network/interfaces, adicione as seguintes linhas:auto eth1 iface eth1 inet dhcp up ip route add filestore-reserved-address-range via default-gateway-of-nic-to-filestore
where:
filestore-reserved-address-rangeé o intervalo de endereços reservado para utilização pela instância do Filestore.default-gateway-of-nic-to-filestoreé o endereço IP do gateway predefinido da NIC ligada à rede VPC que é partilhada com a instância do Filestore.
Para mais informações sobre a utilização de instâncias do Compute Engine com várias NICs, consulte o artigo Configure o encaminhamento para uma interface de rede adicional.
- Em
Instalar NFS:
Debian/Ubuntu
Use os seguintes comandos para instalar o NFS no Debian ou Ubuntu.
sudo apt-get -y update &&
sudo apt-get install nfs-commonRHEL/CentOS
Use os seguintes comandos para instalar o NFS no Red Hat Enterprise Linux ou no CentOS.
sudo yum update &&
sudo yum install nfs-utilsSUSE
Use os seguintes comandos para instalar o NFS no SUSE.
sudo zypper update &&
sudo zypper -n install nfs-clientCrie um diretório local para mapear para a partilha de ficheiros do Filestore:
sudo mkdir -p mount-point-directoryonde
mount-point-directoryé o diretório a criar, por exemplo,/mnt/filedir.Abra o ficheiro
/etc/fstab:sudo vim /etc/fstabAdicione a seguinte linha no ficheiro
/etc/fstab:ip-address:/file-share mount-point-directory nfs options,_netdev 0 0where:
ip-addressé o endereço IP da instância do Filestore.file-shareé o nome da partilha de ficheiros na instância.mount-point-directoryé o caminho para o qual quer mapear a partilha de ficheiros do Filestore.optionssão as opções de montagem do NFS. Recomendamos que mantenha as opções de montagem NFS predefinidas, com as seguintes exceções:- Para a montagem automática, recomendamos que especifique
-o tcppara reduzir a latência ao montar e desmontar. - Se estiver a montar uma instância regional, zonal ou empresarial numa VM cliente que esteja a executar a versão 5.3 ou superior do kernel Linux, considere especificar a opção de montagem
nconnectpara aumentar o desempenho do NFS. Para níveis de serviço específicos, recomendamos que especifique o seguinte número de ligações entre o cliente e o servidor:
Nível Capacidade Número de associações Regional, zonal 1 a 9,75 TiB nconnect=2Regional, zonal 10 a 100 TiB nconnect=7Empresarial - nconnect=2SSD de grande escala - nconnect=7Em geral, quanto maior for a capacidade de partilha de ficheiros e menor for o número de VMs de cliente de ligação, mais desempenho ganha ao especificar ligações adicionais com
nconnect.- Para a montagem automática, recomendamos que especifique
Exemplo: a seguinte linha em
/etc/fstabmonta a partilha de ficheirosvol1da instância do Filestore com o endereço IP10.0.0.2no diretório do ponto de montagem/mntcom as opções de montagem predefinidas:10.0.0.2:/vol1 /mnt nfs defaults,_netdev 0 0Monte tudo em
/etc/fstab:sudo mount -aA partilha de ficheiros é agora montada automaticamente sempre que a VM do cliente é iniciada.
Linux: autofs
Pode configurar o autofs para montar automaticamente uma partilha de ficheiros apenas quando esta é acedida e mantê-la desmontada quando não é usada. Em comparação com a montagem estática de uma partilha de ficheiros em /etc/fstab, este método ajuda a conservar os recursos da VM do cliente em situações em que o cliente precisa de mapear para muitos pontos de montagem.
Instale o NFS e o autofs na VM do cliente
Na Google Cloud consola, aceda à página Instâncias de VM.
Localize a VM do Linux que quer usar como cliente e, de seguida, clique em SSH para abrir um terminal nessa VM.
Opcional: montar uma partilha de ficheiros numa VM cliente com várias interfaces de rede através de uma rede secundária.
Detalhes (clique para expandir)
Se quiser montar a partilha de ficheiros através de uma rede secundária, ou seja, uma interface diferente de
nic0, tem de modificar a política de encaminhamento da VM do cliente:- Em
/etc/default/instance_configs.cfg, defina a flagsetupparaNetworkInterfacescomofalse:[NetworkInterfaces] dhclient_script = /sbin/google-dhclient-script dhcp_command = ip_forwarding = true setup = false
- Em
/etc/network/interfaces, adicione as seguintes linhas: auto eth1 iface eth1 inet dhcp up ip route add filestore-reserved-address-range via default-gateway-of-nic-to-filestore
where:
filestore-reserved-address-rangeé o intervalo de endereços reservado para utilização pela instância do Filestore.default-gateway-of-nic-to-filestoreé o endereço IP do gateway predefinido da NIC ligada à rede VPC que é partilhada com a instância do Filestore.
Para mais informações sobre a utilização de instâncias do Compute Engine com várias NICs, consulte o artigo Configure o encaminhamento para uma interface de rede adicional.
- Em
Instale o NFS executando os seguintes comandos:
Debian/Ubuntu
Use os seguintes comandos para instalar o NFS no Debian ou Ubuntu.
sudo apt-get -y update &&
sudo apt-get install nfs-commonRHEL/CentOS
Use os seguintes comandos para instalar o NFS no Red Hat Enterprise Linux ou no CentOS.
sudo yum update &&
sudo yum install nfs-utilsSUSE
Use os seguintes comandos para instalar o NFS no SUSE.
sudo zypper update &&
sudo zypper -n install nfs-clientNa janela do terminal da VM cliente, instale
autofs:Debian/Ubuntu
sudo apt-get install autofsRHEL/CentOS
sudo yum install autofsSUSE
sudo zypper -n install autofs
Configure o autofs para montar dinamicamente a partilha de ficheiros na VM do cliente
Ative
autofs:sudo systemctl enable --now autofsCrie um diretório local para mapear para a partilha de ficheiros do Filestore:
sudo mkdir -p mount-point-directoryonde
mount-point-directoryé o diretório a criar. Não pode conter subdiretórios. Neste guia, usamos/nfscomo o diretório do ponto de montagem.Abra o ficheiro
/etc/auto.master:sudo vim /etc/auto.masterAdicione a seguinte linha no ficheiro
/etc/auto.master:/nfs /etc/auto.nfs --timeout secondsem que
secondsé a duração em segundos antes do limite de tempo da montagem. O valor predefinido é300. Se definir este valor como0, desativa a desmontagem por parte deautofs.Crie um ficheiro denominado
/etc/auto.nfs:sudo vim /etc/auto.nfsAdicione a seguinte linha no ficheiro
/etc/auto.nfs:mount-point-subdir options ip-address:/file-sharewhere:
mount-point-subdiré a subdiretoria em/nfspara a qual quer mapear a partilha de ficheiros do Filestore. Este subdiretório é gerado dinamicamente e não deve existir na VM do cliente.optionssão as opções de montagem do NFS. Recomendamos que mantenha as opções de montagem NFS predefinidas, com as seguintes exceções:- Para a montagem automática, recomendamos que especifique
-o tcppara reduzir a latência ao montar e desmontar. - Se estiver a montar uma instância regional, zonal ou empresarial numa VM cliente que esteja a executar a versão 5.3 ou superior do kernel Linux, considere especificar a opção de montagem
nconnectpara aumentar o desempenho do NFS. Para níveis de serviço específicos, recomendamos que especifique o seguinte número de ligações entre o cliente e o servidor:
Nível Capacidade Número de associações Regional, zonal 1 a 9,75 TiB nconnect=2Regional, zonal 10 a 100 TiB nconnect=7Empresarial - nconnect=2SSD de grande escala - nconnect=7Em geral, quanto maior for a capacidade de partilha de ficheiros e menor for o número de VMs de cliente de ligação, mais desempenho ganha ao especificar ligações adicionais com
nconnect.ip-addressé o endereço IP da instância do Filestore.file-shareé o nome da partilha de ficheiros na instância.
- Para a montagem automática, recomendamos que especifique
Exemplo: a seguinte linha em
/etc/auto.nfsmonta a partilha de ficheirosvol1da instância do Filestore com o endereço IP10.0.0.2no subdiretório gerado dinamicamentefile-sharescom acessoread/writeconcedido:file-shares -rw 10.0.0.2:/vol1
Testar a configuração
Se a partilha de ficheiros estiver montada, tem de desmontá-la:
sudo umount mount-point-directoryonde
mount-point-directoryé o caminho para o qual a partilha de ficheiros do Filestore está mapeada.Se existir uma entrada
/etc/fstabque monte a partilha de ficheiros no arranque do sistema, certifique-se de que a remove.Atualizar
autofs:sudo service autofs reloadConfirme se a configuração funciona:
ls mount-point-directory/mount-point-subdirwhere:
mount-point-directoryé o diretório do ponto de montagem indicado no ficheiro/etc/auto.master.mount-point-subdiré a subdiretoria do ponto de montagem indicada no ficheiro/etc/auto.nfs.
No nosso exemplo, o comando seria:
ls /nfs/file-sharesSe a montagem automática estiver configurada corretamente, o sistema monta primeiro a partilha de ficheiros e, em seguida, devolve os resultados do comando
ls. A partilha de ficheiros é desmontada automaticamente após um período de inatividade, que é definido no valortimeoutespecificado no ficheiro/etc/auto.master.
Windows
Estabeleça ligação à VM do Windows
Na Google Cloud consola, aceda à página Instâncias de VM.
Localize a VM do Windows que quer usar como cliente e, de seguida, clique em RDP para abrir uma ligação ao ambiente de trabalho remoto a essa VM. Para mais informações, consulte o artigo Estabelecer ligação a instâncias do Windows.
Instale o NFS na VM do Windows
- Na VM do Windows, abra o PowerShell como administrador para garantir o acesso e as autorizações NFS adequados.
No PowerShell, instale o cliente NFS:
Install-WindowsFeature -Name NFS-ClientReinicie a instância de VM do Windows conforme solicitado e, em seguida, abra uma nova ligação ao ambiente de trabalho remoto.
Configure o ID do utilizador usado pelo cliente NFS
No PowerShell, execute os seguintes comandos para criar duas novas entradas de registo,
AnonymousUideAnonymousGid:New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" ` -Name "AnonymousUid" -Value "0" -PropertyType DWORDNew-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" ` -Name "AnonymousGid" -Value "0" -PropertyType DWORDReinicie o serviço de cliente NFS:
nfsadmin client stopnfsadmin client start
Mapeie a partilha de ficheiros para a VM do Windows
Saia do PowerShell para sair da sessão do administrador. Se omitir este passo, as aplicações em execução na sessão do utilizador padrão não vão poder ver nem aceder a esta partilha de ficheiros.
exitOpcional: montar uma partilha de ficheiros numa VM cliente com várias interfaces de rede através de uma rede secundária.
Detalhes (clique para expandir)
Se quiser montar a partilha de ficheiros através de uma rede secundária, ou seja, uma interface que não seja
nic0, tem de modificar a política de encaminhamento da VM do cliente. Corrida:route -p ^ add filestore-reserved-address-range ^ mask address-range-subnet-mask ^ default-gateway-of-nic-to-filestorewhere:
filestore-reserved-address-rangeé o intervalo de endereços reservado para utilização pela instância do Filestore.address-range-subnet-maské a máscara de sub-rede defilestore-reserved-address-range. Por exemplo, um intervalo de endereços reservados /29 usaria a máscara de sub-rede 255.255.255.248.default-gateway-of-nic-to-filestoreé o endereço IP do gateway predefinido da NIC ligada à rede VPC que é partilhada com a instância do Filestore.
Exemplo:
route -p add 10.65.21.176 mask 255.255.255.248 10.128.0.1Para mais informações sobre a utilização de instâncias do Compute Engine com várias NICs, consulte o artigo Configure o encaminhamento para uma interface de rede adicional.
A partir de
Command Prompt, mapeie a partilha de ficheiros para uma letra de unidade:net use drive-letter: \\filestore-ip\file-share-namewhere:
- filestore-ip é o endereço IP da instância do Filestore.
- file-share-name é o nome da partilha de ficheiros na instância do Filestore.
- drive-letter é a letra da unidade que quer atribuir para o mapeamento.
Exemplo
O seguinte comando mapeia a partilha de ficheiros
vol1na instância do Filestore com o endereço IP10.0.0.2para a unidadez:na VM Windows do cliente:net use Z: \\10.0.0.2\vol1Opcional: para usar o bloqueio de ficheiros NFS, verifique o seguinte:
Certifique-se de que as regras da firewall estão configuradas para todas as portas NFS necessárias, incluindo
statdenlockmgr.Certifique-se de que o cliente NFS do Windows está configurado com portas reservadas através de um comando semelhante ao seguinte no PowerShell:
nfsadmin client config protocol=tcp UseReservedPorts=yes nfsadmin client stop nfsadmin client start
Criar e montar subdiretórios na partilha de ficheiros
Assim que a partilha de ficheiros estiver montada numa VM cliente, pode criar subdiretórios na partilha de ficheiros, que os clientes podem então montar diretamente em vez de montar toda a partilha de ficheiros:
Para criar uma subdiretoria na partilha de ficheiros montada, execute:
sudo mkdir -p mount-point-directory/file-share-sub-dirwhere:
mount-point-directoryé o caminho para o qual mapeia a partilha de ficheiros.file-share-sub-diré o caminho do subdiretório na partilha de ficheiros que quer criar.
Este comando cria o subdiretório na VM do cliente e na partilha de ficheiros. Por exemplo, se tiver montado a partilha de ficheiros
10.0.0.2:/vol1no diretório/mntna VM do cliente, o comandosudo mkdir -p /mnt/nfscria10.0.0.2:/vol1/nfsna partilha de ficheiros e/mnt/nfsna VM do cliente.Opcional: se quiser montar o subdiretório de partilha de ficheiros no diretório na VM do cliente onde a partilha de ficheiros está montada, tem de desmontar primeiro a partilha de ficheiros:
sudo umount mount-point-directoryonde
mount-point-directoryé o diretório ao qual a partilha de ficheiros está mapeada.Monte o subdiretório:
sudo mount ip-address:/file-share/file-share-sub-dir mount-point-directorywhere:
ip-addressé o endereço IP da instância do Filestore.file-shareé o nome da partilha de ficheiros na instância.file-share-sub-diré o caminho da subdiretoria na partilha de ficheiros a montar.mount-point-directoryé o caminho para o qual quer mapear a partilha de ficheiros do Filestore.
Exemplo: no seguinte comando:
sudo mount 10.0.0.2:/vol1/nfs /mnt/nfs10.0.0.2é o endereço IP da instância do Filestore.vol1é o nome da partilha de ficheiros.nfsé uma subdiretoria de partilha de ficheiros./mnt/nfsé o diretório na VM do cliente para o qual o subdiretórionfsde partilha de ficheiros está mapeado.
O que se segue?
- Saiba como copiar dados para a partilha de ficheiros montada.
- Saiba como montar partilhas de ficheiros em clientes numa rede remota.
- Resolva problemas de montagem relacionados com o Filestore.