Nesta página, mostramos como ativar um compartilhamento de arquivos do Filestore em uma instância de máquina virtual (VM) do Compute Engine que está no mesmo projeto Google Cloud e na rede VPC. Para saber como montar compartilhamentos de arquivos em clientes em uma rede remota, consulte Montagem de compartilhamentos de arquivos em clientes remotos. Se você estiver tentando acessar instâncias do Filestore a partir de clusters do Google Kubernetes Engine, consulte Acessar instâncias do Filestore com o driver CSI do Filestore.
Antes de começar
Verifique se o firewall de rede está configurado corretamente para uso com o Filestore. Consulte Como configurar regras de firewall para mais detalhes.
Como ativar um compartilhamento de arquivos em uma instância de VM do Compute Engine
Use um dos procedimentos a seguir para ativar um compartilhamento de arquivos
do Filestore em uma VM do Compute Engine. Recomendamos a ativação em uma VM n1-standard-8 ou
superior para um desempenho ideal.
Linux: ativação
Para montar manualmente um compartilhamento de arquivos em uma VM cliente Linux:
No console do Google Cloud , acesse a página "Instâncias de VM".
Localize a VM do Linux que você quer usar como cliente e clique em SSH para abrir um terminal nessa VM.
Opcional: montar um compartilhamento de arquivos em uma VM cliente com várias interfaces de rede por meio de uma rede secundária.
Detalhes (clique para expandir)
Para ativar o compartilhamento de arquivos por meio de uma rede secundária, ou seja, uma interface diferente de
nic0, modifique a política de roteamento da VM do cliente: Execute:sudo ip route \ add filestore-reserved-address-range \ via default-gateway-of-nic-to-filestoreonde:
filestore-reserved-address-rangeé o intervalo de endereços reservado para uso pela instância do Filestore.default-gateway-of-nic-to-filestoreé o endereço IP do gateway padrão da NIC conectada à rede VPC compartilhada com a instância do Filestore.
Para mais informações sobre como usar instâncias do Compute Engine com várias NICs, consulte Configurar o roteamento para uma interface de rede adicional.
Instale o NFS:
Debian/Ubuntu
Use os seguintes comandos para instalar o NFS no Debian ou no Ubuntu.
sudo apt-get -y update &&
sudo apt-get install nfs-commonRHEL/CentOS
Use os comandos a seguir para instalar o NFS no Red Hat Enterprise Linux ou no CentOS.
sudo yum update &&
sudo yum install nfs-utilsSUSE
Use os comandos a seguir para instalar o NFS no SUSE.
sudo zypper update &&
sudo zypper -n install nfs-clientCrie um diretório local para mapear para o compartilhamento de arquivos do Filestore:
sudo mkdir -p mount-point-directoryem que
mount-point-directoryé o diretório a ser criado (por exemplo,/mnt/filedir).Monte o compartilhamento de arquivos da instância do Filestore executando o comando
mount. É possível usar qualquer opção de montagem do NFS. Para ter o melhor desempenho, recomendamos o uso das seguintes opçõesmountdo NFS:Opção Descrição hardO cliente NFS repete solicitações NFS indefinidamente. Para reduzir a possibilidade de interrupções de E/S quando a instância do Filestore for reinicializada, recomendamos usar a opção de montagem hardpara clientes Linux e Windows.timeo=600O cliente NFS aguarda 600 segundos (60 segundos) antes de tentar novamente uma solicitação NFS. retrans=3O cliente NFS tenta fazer solicitações NFS três vezes antes de realizar outras ações de recuperação. rsize=524288O cliente NFS pode receber no máximo 524.288 bytes do servidor NFS por solicitação READ.
Observação: para instâncias do nível básico, defina o valorrsizecomo1048576.wsize=524288O cliente NFS pode enviar no máximo 524.288 bytes ao servidor NFS por solicitação WRITE.resvportO cliente NFS usa uma porta de origem com privilégios ao se comunicar com o servidor NFS para esse ponto de montagem. asyncO cliente NFS atrasa o envio de gravações de aplicativos para o servidor NFS até que determinadas condições sejam atendidas.
Cuidado: o uso da opçãosyncreduz significativamente o desempenho.- Para reduzir a latência da montagem, especifique a opção
-o tcp. Se você ativar uma instância regional, zonal ou enterprise em uma VM de cliente que esteja executando a versão 5.3 ou posterior do kernel do Linux, especifique a opção de ativação
nconnectpara melhorar o desempenho do NFS. Para níveis de serviço específicos, recomendamos especificar o seguinte número de conexões entre o cliente e o servidor:Nível Capacidade Número de conexões Regional, por zona 1 a 9,75 TiB nconnect=2Regional, por zona 10-100 TiB nconnect=7Enterprise - nconnect=2SSD de grande escala - nconnect=7Em geral, quanto maior a capacidade de compartilhamento de arquivos e menos VMs de cliente conectadas, mais desempenho você terá ao especificar outras conexões com
nconnect.
Execute o comando
mountcom as opções de sua preferência, semelhante ao seguinte:sudo mount -o rw ip-address:/file-share mount-point-directoryem que:
ip-addressé o endereço IP da instância do Filestore.file-shareé o nome do compartilhamento de arquivos na instância.mount-point-directoryé o caminho para onde você quer mapear o compartilhamento de arquivos do Filestore.
É possível ver o endereço IP e o nome do compartilhamento de arquivos de uma instância de qualquer uma destas fontes:
A página de instâncias do Filestore
O campo
IP_ADDRESSnos resultados do comandofilestore instances list.A seção
ipAddressesnos resultados do comandofilestore instances describe.
Por exemplo, considerando uma instância do Filestore com um endereço IP
10.0.1.2e um compartilhamento de arquivos denominadoshare1, o comando a seguir monta o compartilhamento de arquivos no diretório de ponto de montagem local/mnt/render:sudo mount 10.0.1.2:/share1 /mnt/render- Para reduzir a latência da montagem, especifique a opção
Opcional: execute
chmodpara definir permissões no diretório de ativação para que alguém que não seja o usuário raiz possa gravar nele. Para definir permissões de diretório, execute o seguinte comando:sudo chmod permissions mount-point-directoryonde:
permissionsé o conjunto de permissões a serem concedidas. Por exemplo,chmod go+rwtorna o diretório legível e gravável pelos usuários no grupo que é proprietário do diretório e de todos os outros usuários. Para ver mais informações sobre como definir permissões, consulte Como configurar o acesso em um compartilhamento de arquivos.mount-point-directoryé o caminho para o diretório em que o compartilhamento de arquivos do Filestore está montado.
Opcional: confirme se o compartilhamento de arquivos do Filestore está ativado:
df -h --type=nfsA saída conterá uma entrada semelhante a esta:
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 você precisar usar o bloqueio de arquivos do NFS, talvez seja necessário definir as portas usadas pelos daemons
statdenlockmgre configurar regras de firewall para abrir essas portas.
Linux: /etc/fstab
Você pode fazer com que os compartilhamentos de arquivos sejam montados automaticamente nas VMs cliente durante a inicialização, modificando /etc/fstab arquivo:
No console do Google Cloud , acesse a página "Instâncias de VM".
Localize a VM do Linux que você quer usar como cliente e clique em SSH para abrir um terminal nessa VM.
Opcional: montar um compartilhamento de arquivos em uma VM cliente que tenha várias interfaces de rede por meio de uma rede secundária.
Detalhes (clique para expandir)
Para montar o compartilhamento de arquivos por meio de uma rede secundária, ou seja, uma interface diferente de
nic0, modifique a política de roteamento da VM cliente:- Em
/etc/default/instance_configs.cfg, defina a sinalizaçãosetupdeNetworkInterfacescomofalse:[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
onde:
filestore-reserved-address-rangeé o intervalo de endereços reservado para uso pela instância do Filestore.default-gateway-of-nic-to-filestoreé o endereço IP do gateway padrão da NIC conectada à rede VPC compartilhada com a instância do Filestore.
Para mais informações sobre como usar instâncias do Compute Engine com várias NICs, consulte Configurar o roteamento para uma interface de rede adicional.
- Em
Instale o NFS:
Debian/Ubuntu
Use os seguintes comandos para instalar o NFS no Debian ou no Ubuntu.
sudo apt-get -y update &&
sudo apt-get install nfs-commonRHEL/CentOS
Use os comandos a seguir para instalar o NFS no Red Hat Enterprise Linux ou no CentOS.
sudo yum update &&
sudo yum install nfs-utilsSUSE
Use os comandos a seguir para instalar o NFS no SUSE.
sudo zypper update &&
sudo zypper -n install nfs-clientCrie um diretório local para mapear para o compartilhamento de arquivos do Filestore:
sudo mkdir -p mount-point-directoryem que
mount-point-directoryé o diretório a ser criado (por exemplo,/mnt/filedir).Abra o arquivo
/etc/fstab.sudo vim /etc/fstabAdicione a seguinte linha no arquivo
/etc/fstab:ip-address:/file-share mount-point-directory nfs options,_netdev 0 0onde:
ip-addressé o endereço IP da instância do Filestore.file-shareé o nome do compartilhamento de arquivos na instância.mount-point-directoryé o caminho para o qual você quer mapear o compartilhamento de arquivos do Filestore.optionssão as opções de ativação do NFS. Recomendamos manter as opções de montagem do NFS padrão, com as seguintes exceções:- Para
fazer a montagem automática, recomendamos especificar
-o tcppara reduzir a latência ao montar e desmontar. - Se você ativar uma instância regional, zonal ou empresarial
em uma VM de cliente que esteja executando a versão 5.3 ou posterior do kernel do Linux,
especifique a opção de ativação
nconnectpara melhorar o desempenho do NFS. Para níveis de serviço específicos, recomendamos especificar o seguinte número de conexões entre o cliente e o servidor:
Nível Capacidade Número de conexões Regional, por zona 1 a 9,75 TiB nconnect=2Regional, por zona 10-100 TiB nconnect=7Enterprise - nconnect=2SSD de grande escala - nconnect=7Em geral, quanto maior a capacidade de compartilhamento de arquivos e menos VMs de cliente conectadas, mais desempenho você terá ao especificar outras conexões com
nconnect.- Para
fazer a montagem automática, recomendamos especificar
Exemplo: a seguinte linha em
/etc/fstabmonta o compartilhamento de arquivosvol1da instância do Filestore com o endereço IP10.0.0.2no diretório do ponto de montagem/mntcom as opções de montagem padrão:10.0.0.2:/vol1 /mnt nfs defaults,_netdev 0 0Ative tudo em
/etc/fstab:sudo mount -aO compartilhamento de arquivos agora é montado automaticamente sempre que a VM cliente é inicializada.
Linux: autofs
É possível configurar autofs para montar automaticamente um compartilhamento de arquivos somente quando ele
for acessado e mantê-lo desmontado quando não for usado. Em comparação com um compartilhamento de arquivos estaticamente montado em /etc/fstab, esse método ajuda a economizar recursos de VM cliente em situações em que o cliente precisa mapear para muitos pontos de montagem.
Instalar NFS e autofs na VM do cliente
No console do Google Cloud , acesse a página "Instâncias de VM".
Localize a VM do Linux que você quer usar como cliente e clique em SSH para abrir um terminal nessa VM.
Opcional: montar um compartilhamento de arquivos em uma VM cliente com várias interfaces de rede por meio de uma rede secundária.
Detalhes (clique para expandir)
Para montar o compartilhamento de arquivos por meio de uma rede secundária, ou seja, uma interface diferente de
nic0, modifique a política de roteamento da VM cliente:- Em
/etc/default/instance_configs.cfg, defina a sinalizaçãosetupdeNetworkInterfacescomofalse:[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
em que:
filestore-reserved-address-rangeé o intervalo de endereços reservado para uso pela instância do Filestore.default-gateway-of-nic-to-filestoreé o endereço IP do gateway padrão da NIC conectada à rede VPC compartilhada com a instância do Filestore.
Para mais informações sobre como usar instâncias do Compute Engine com várias NICs, consulte Configurar o roteamento 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 no Ubuntu.
sudo apt-get -y update &&
sudo apt-get install nfs-commonRHEL/CentOS
Use os comandos a seguir para instalar o NFS no Red Hat Enterprise Linux ou no CentOS.
sudo yum update &&
sudo yum install nfs-utilsSUSE
Use os comandos a seguir para instalar o NFS no SUSE.
sudo zypper update &&
sudo zypper -n install nfs-clientNa janela do terminal da VM do cliente, instale
autofs:Debian/Ubuntu
sudo apt-get install autofsRHEL/CentOS
sudo yum install autofsSUSE
sudo zypper -n install autofs
Configurar autofs para montar dinamicamente o compartilhamento de arquivos para a VM cliente
Ativar
autofs:sudo systemctl enable --now autofsCrie um diretório local para mapear para o compartilhamento de arquivos do Filestore:
sudo mkdir -p mount-point-directoryem que
mount-point-directoryé o diretório a ser criado. Ele não pode conter subdiretórios. Neste guia, usamos/nfscomo o diretório do ponto de montagem.Abra o arquivo
/etc/auto.master.sudo vim /etc/auto.masterAdicione a seguinte linha ao arquivo
/etc/auto.master:/nfs /etc/auto.nfs --timeout secondsem que
secondsé a duração em segundos antes do tempo limite de ativação. O valor padrão é300. Definir esse valor como0desativa a desmontagem porautofs.Crie um arquivo chamado
/etc/auto.nfs:sudo vim /etc/auto.nfsAdicione a seguinte linha ao arquivo
/etc/auto.nfs:mount-point-subdir options ip-address:/file-shareem que:
mount-point-subdiré o subdiretório em/nfspara o qual você quer mapear o compartilhamento de arquivos do Filestore. Esse subdiretório é gerado dinamicamente e não deve existir na VM do cliente.optionssão as opções de ativação do NFS. Recomendamos manter as opções de montagem do NFS padrão, com as seguintes exceções:- Para
fazer a montagem automática, recomendamos especificar
-o tcppara reduzir a latência ao montar e desmontar. - Se você ativar uma instância regional, zonal ou empresarial
em uma VM de cliente que esteja executando a versão 5.3 ou posterior do kernel do Linux,
especifique a opção de ativação
nconnectpara melhorar o desempenho do NFS. Para níveis de serviço específicos, recomendamos especificar o seguinte número de conexões entre o cliente e o servidor:
Nível Capacidade Número de conexões Regional, por zona 1 a 9,75 TiB nconnect=2Regional, por zona 10-100 TiB nconnect=7Enterprise - nconnect=2SSD de grande escala - nconnect=7Em geral, quanto maior a capacidade de compartilhamento de arquivos e menos VMs de cliente conectadas, mais desempenho você terá ao especificar outras conexões com
nconnect.ip-addressé o endereço IP da instância do Filestore.file-shareé o nome do compartilhamento de arquivos na instância.
- Para
fazer a montagem automática, recomendamos especificar
Exemplo: a seguinte linha em
/etc/auto.nfsmonta o compartilhamento de arquivosvol1da instância do Filestore com o endereço IP10.0.0.2no subdiretóriofile-sharesgerado dinamicamente com acessoread/writeconcedido:file-shares -rw 10.0.0.2:/vol1
Testar a configuração
Se o compartilhamento de arquivos estiver montado, será necessário desmontá-lo:
sudo umount mount-point-directoryem que
mount-point-directoryé o caminho para o qual o compartilhamento de arquivos do Filestore é mapeado.Se houver uma entrada
/etc/fstabque monta o compartilhamento de arquivos na inicialização do sistema, remova-o.Atualize
autofs:sudo service autofs reloadConfirme se sua configuração funciona:
ls mount-point-directory/mount-point-subdironde:
mount-point-directoryé o diretório do ponto de montagem indicado no arquivo/etc/auto.master.mount-point-subdiré o subdiretório do ponto de ativação indicado no arquivo/etc/auto.nfs.
No nosso exemplo, o comando seria:
ls /nfs/file-sharesSe o recurso de ativação automática estiver configurado corretamente, o sistema ativará primeiro o compartilhamento de arquivos e, em seguida, retornará os resultados do comando
ls. O compartilhamento de arquivos é automaticamente desativado após um período de inatividade, que é definido pelo valortimeoutespecificado no arquivo/etc/auto.master.
Windows
Conectar-se à VM do Windows
No console do Google Cloud , acesse a página "Instâncias de VM".
Localize a VM do Windows que você quer usar como cliente e clique em RDP para abrir uma conexão de área de trabalho remota com essa VM. Para obter mais informações, consulte Como se conectar a instâncias do Windows.
Instalar o NFS na VM do Windows
- Na VM do Windows, abra o PowerShell como administrador para garantir o acesso e as permissões adequados do NFS.
No PowerShell, instale o cliente NFS:
Install-WindowsFeature -Name NFS-ClientReinicie a instância da VM do Windows conforme solicitado e abra uma nova conexão de área de trabalho remota.
Configurar o ID de usuário usado pelo cliente NFS
No PowerShell, execute os seguintes comandos para criar duas novas entradas de registro,
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 do cliente NFS:
nfsadmin client stopnfsadmin client start
Mapear o compartilhamento de arquivos para a VM do Windows
Saia do PowerShell para encerrar a sessão do administrador. Se você omitir esta etapa, os aplicativos em execução na sessão do usuário padrão não poderão ver nem acessar esse compartilhamento de arquivos.
exitOpcional: montar um compartilhamento de arquivos em uma VM cliente com várias interfaces de rede por meio de uma rede secundária.
Detalhes (clique para expandir)
Para ativar o compartilhamento de arquivos por meio de uma rede secundária, ou seja, uma interface diferente de
nic0, modifique a política de roteamento da VM do cliente: Execute:route -p ^ add filestore-reserved-address-range ^ mask address-range-subnet-mask ^ default-gateway-of-nic-to-filestoreonde:
filestore-reserved-address-rangeé o intervalo de endereços reservado para uso 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 reservado /29 usaria a máscara de sub-rede 255.255.255.248.default-gateway-of-nic-to-filestoreé o endereço IP do gateway padrão da NIC conectada à rede VPC compartilhada 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 como usar instâncias do Compute Engine com várias NICs, consulte Configurar o roteamento para uma interface de rede adicional.
Em
Command Prompt, mapeie o compartilhamento de arquivos para uma letra de unidade:net use drive-letter: \\filestore-ip\file-share-nameonde:
- filestore-ip é o endereço IP da instância do Filestore.
- file-share-name é o nome do compartilhamento de arquivos na instância do Filestore.
- drive-letter é a letra da unidade que você quer atribuir ao mapeamento.
Exemplo
O comando a seguir mapeia o compartilhamento de arquivos
vol1na instância do Filestore com o endereço IP10.0.0.2para o drivez:na VM do Windows do cliente:net use Z: \\10.0.0.2\vol1Opcional: para usar o bloqueio de arquivos do NFS, verifique o seguinte:
Verifique se as regras de firewall estão configuradas para todas as portas NFS necessárias, incluindo
statdenlockmgr.Verifique se o cliente NFS do Windows está configurado com portas reservadas usando um comando semelhante ao seguinte no PowerShell:
nfsadmin client config protocol=tcp UseReservedPorts=yes nfsadmin client stop nfsadmin client start
Como criar e montar subdiretórios no compartilhamento de arquivos
Depois que o compartilhamento de arquivos for montado em uma VM cliente, você poderá criar subdiretórios no compartilhamento de arquivos, que os clientes poderão montar diretamente em vez de montar o compartilhamento de arquivos inteiro:
Para criar um subdiretório no compartilhamento de arquivos montado, execute:
sudo mkdir -p mount-point-directory/file-share-sub-dironde:
mount-point-directoryé o caminho a que o compartilhamento de arquivos é associado;file-share-sub-diré o caminho do subdiretório no compartilhamento de arquivos que você quer criar.
Esse comando cria o subdiretório na VM do cliente e no compartilhamento de arquivos. Por exemplo, se você tiver montado o compartilhamento de arquivos
10.0.0.2:/vol1no diretório/mntna VM cliente, o comandosudo mkdir -p /mnt/nfscriará10.0.0.2:/vol1/nfsno compartilhamento de arquivos e/mnt/nfsna VM do cliente.Opcional: se você quiser montar o subdiretório de compartilhamento de arquivos para o diretório na VM do cliente em que o compartilhamento de arquivos está montado, primeiro desmonte o compartilhamento de arquivos:
sudo umount mount-point-directoryem que
mount-point-directoryé o diretório ao qual o compartilhamento de arquivos está mapeado.Monte o subdiretório:
sudo mount ip-address:/file-share/file-share-sub-dir mount-point-directoryonde:
ip-addressé o endereço IP da instância do Filestore.file-shareé o nome do compartilhamento de arquivos na instância.file-share-sub-diré o caminho do subdiretório no compartilhamento de arquivos a ser montado.mount-point-directoryé o caminho para onde você quer mapear o compartilhamento de arquivos 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 do compartilhamento de arquivos;nfsé um subdiretório de compartilhamento de arquivos;/mnt/nfsé o diretório na VM cliente a que o subdiretório de compartilhamento de arquivosnfsé associado.
A seguir
- Saiba como copiar dados para o compartilhamento de arquivos montado.
- Saiba como montar compartilhamentos de arquivos em clientes em uma rede remota
- Resolva problemas de ativação relacionados ao Filestore.