Se você estiver trabalhando em um ambiente de aplicativos multiservidor em que precisa compartilhar um sistema de arquivos entre vários servidores, precisará configurar o NFS (Sistema de arquivos de rede).
O NFS permite que você compartilhar o sistema de arquivos em mais de um servidor mas a implementação requer algumas habilidades de administração.
Em um ambiente de infraestrutura tradicional, pode ser necessário envolver várias equipes e levaria tempo para criar o NFS. Mas se você estiver usando AWS você pode fazer isso em alguns minutos com o EFS (Elastic File System).
AWS EFS permite que você crie armazenamento de arquivos escalável para ser usado no EC2. Você não precisa se preocupar com a previsão de capacidade, pois ela pode escalar para cima ou para baixo sob demanda.
Uma ilustração rápida foi tirada da página da AWS para dar uma ideia de como funciona.
Algumas das vantagens do EFS são:
- Totalmente gerenciado pela AWS.
- Baixo custo, pague pelo que usar.
- Alta disponibilidade e durabilidade
- Amplie ou reduza automaticamente.
- Desempenho escalável
Tenho duas instâncias do EC2 Ubuntu em execução e, neste tutorial, criarei um EFS e, em seguida, monte-o em ambos os servidores EC2.
Vamos começar.
- Faça login no console da AWS
- Vá para Serviços e selecione EFS sob armazenamento ( link direto )
- Clique em “Criar sistema de arquivos”.

- A AWS atribuirá automaticamente um endereço IP na zona de disponibilidade. Você pode fazer isso na próxima tela se precisar alterá-lo.

- Adicione a tag se precisar e selecione o modo de desempenho entre Uso geral ou Max I/O

- Review a configuração e, se estiver tudo bem, clique em “Criar sistema de arquivos.”
Pode levar alguns segundos e, uma vez concluído, você receberá uma mensagem de sucesso.
Sucesso!
Você criou um sistema de arquivos. Você pode montar seu sistema de arquivos a partir de uma instância do EC2 com um cliente NFSv4.1 instalado. Você também pode montar seu sistema de arquivos de um servidor local por meio de uma conexão do AWS Direct Connect.
Você poderá ver o sistema de arquivos elástico recém-criado na lista.

Isso conclui que você criou o EFS e está pronto para ser montado em instâncias do EC2.
Montando o EFS no EC2
Antes de montar, você precisa instalar o cliente NFS. Se você expandir a lista e clicar em “Amazon Instruções de montagem do EC2”, você obterá os detalhes.

Mas vamos ver como corre.
- Faça login em ambas as instâncias do EC2 e instale o cliente NFS. Eu tenho Ubuntu, então vou usar o seguinte.
apt-get install nfs-common
- Vamos criar uma pasta onde você deseja montar o EFS.
Ex: /aplicativos
cd /
mkdir apps
Monte o sistema de arquivos com o comando fornecido nas instruções.
Ex:
mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 fs-4fd14a06.efs.us-east-1.amazonaws.com:/ apps
Observação: Se você estiver encontrando algum problema durante a montagem, consulte este guia de solução de problemas e não se esqueça de verificar os grupos de segurança para garantir o seguinte.
- A porta NFS (2049) é permitida nas regras de entrada da instância do EC2
- Grupos de segurança EC2 são permitidos em grupos de segurança EFS
Levará alguns segundos e você notará que /apps está montado se fizer isso df -h
comando
root@ip-172-31-6-238:/# df -h | grep apps
fs-4fd14a06.efs.us-east-1.amazonaws.com:/ 8.0E 0 8.0E 0% /apps
root@ip-172-31-6-238:/#
Agora, você precisa fazer login em outro servidor onde deseja ter /apps disponíveis e repita criando uma pasta e montando o EFS.
Para verificar, montei meu EFS em outro servidor e posso ver que /apps estão acessíveis em ambos os servidores.
root@ip-172-31-12-97:/apps# df -h | grep apps
fs-4fd14a06.efs.us-east-1.amazonaws.com:/ 8.0E 0 8.0E 0%
/apps root@ip-172-31-12-97:/apps#
Isso é fácil, não é?
Tentei criar alguns arquivos e, no geral, o desempenho parece bom. O AWS EFS parece promissor e, se você precisar de compartilhamento de sistema de arquivos em instâncias do EC2, experimente e tenho certeza de que gostará.
Você está interessado em aprender mais sobre a AWS? Veja isso curso udemy .