Histórico da Página
...
Como configurar um servidor e um cliente de NFS?
Antes de começar vamos , é necessário entender a arquitetura, isto . Isto é muito importante para identificar possíveis falhas.
...
Vamos definir o servidor A como primary. Ele ficará como server do NFS e o servidor B será o cliente do NSFNFS, onde será mapeado o diretório public.
Então vamos instalar Instale o pacote nfs-utils (para Red Hat) e nfs-common (para Ubuntu) no servidor A.
Para RHEL 7/6/5 instale o pacote nfs-utils através do yum:
Bloco de código |
---|
# yum install -y nfs-utils |
Para Ubuntu, instale o pacote nfs-common:
Bloco de código |
---|
# apt-get install nfs-common |
Uma vez que o pacote foi instalado vamos iniciar , inicie e habilitar habilite os serviços nfs-server e rpcbind:
Bloco de código |
---|
# systemctl start nfs-server rpcbind |
...
# systemctl enable nfs-server rpcbind |
Agora vamos criar o diretório que será compartilhado, crie na raiz um diretório com o nome de public:
Bloco de código |
---|
# mkdir /public |
Diretório criado! Agora vamos dar permissão total para todos nesta pasta:
Bloco de código |
---|
# chmod 777 /public |
Em seguida vamos editar o arquivo /etc/exports, inclua o diretório que criamos neste arquivo:
Bloco de código |
---|
# vim /etc/exports |
...
/public 192.168.0.0/24(rw,sync,no_root_squash) |
/public — Diretório compartilhado.
...
Por fim do lado do servidor nfs, vamos exportar o diretório compartilhado usando o comando exportfs:
Bloco de código |
---|
# exportfs -r |
-v — Lista na tela todos os arquivos e diretórios compartilhados.
...
É importante lembrar de incluir os serviços do mountd rpc-bind e nfs na exceção do firewall, utilize os comandos abaixo para realizar a configuração.
Bloco de código |
---|
# firewall-cmd — permanent — add-service mountd |
...
# firewall-cmd — permanent — add-service rpc-bind |
...
# firewall-cmd — permanent — add-service nfs |
...
# firewall-cmd — reload |
NFS Cliente
Agora vamos configurar o cliente, também é necessário que instale o nfs-utils:
Bloco de código |
---|
# yum install -y nfs-utils |
Para Ubuntu instale o pacote nfs-common:
Bloco de código |
---|
# apt-get install -y nfs-common |
Vamos verificar os diretórios que estão disponíveis no server com o comando showmount:
Bloco de código |
---|
# showmount -e <ip-do-nfs-server> |
Dica | ||
---|---|---|
|
...
$ showmount -e Mostra os diretórios disponíveis para compartilhar na sua máquina: $ showmount -e <ip-do-servidor ou hostname> Lista os diretórios disponíveis para compartilhar na máquina remota. |
Após verificar qual é o diretório disponível no servidor vamos criar um diretório do lado do cliente para utilizar no mapeamento entre o servidor e o cliente. Uma boa prática é utilizar o mesmo nome que foi utilizado no servidor NFS.
Bloco de código |
---|
# mkdir /mnt/<nome-diretório-do-servidor> |
Em seguida vamos montar a unidade remota com o diretório local:
Bloco de código |
---|
# mount <ip-do-servidor>:/<nome-diretório-do-servidor> /mnt/<nome-diretório-do-servidor> |
Para verificar se o NFS cliente foi montado podemos utilizar o comando mount e para facilitar a visualização vamos redirecionar a saída do comando mount para o comando grep e filtrar por nfs:
Bloco de código |
---|
# mount | grep nfs |
Teremos uma saída parecida com a da imagem abaixo.
Também podemos utilizar o comando df para verificar se o volume foi montado corretamente:
Bloco de código |
---|
# df -hT |
Será exibido algo parecido com a imagem abaixo.
Agora podemos testar o compartilhamento criando um arquivo no volume criado:
Bloco de código |
---|
# ifconfig > /mnt/<nome-diretório-do-servidor>/ipcliente |
Para finalizar, vamos configurar no cliente vamos configurar o fstab para que sempre seja montado automaticamente o volume compartilhado quando a máquina for iniciada:
Bloco de código |
---|
# vim /etc/fstab |
Vamos adicionar a linha abaixo, edite a linha conforme as configurações do servidor NFS:
Bloco de código |
---|
<ip-do-servidor>:/<nome-diretório> /mnt/<nome-diretório> nfs nosuid,rw,sync,hard,intr 0 0 |
Salve e feche o arquivo fstab.
:wq ou ZZ ou :x |
Agora sempre que o servidor for iniciado o volume será montado montado o volume automaticamente.
Quando precisar desmontar o volume compartilhado pode utilizar o comando umount:
...
Bloco de código |
---|
#umount/mnt/<nome-diretório> |
Confira o artigo original publicado no Medium pelo arquiteto por um dos arquitetos de dados da equipe da engenharia de dados Protheus!