Por que não consigo montar meus volumes do Amazon EFS em minhas tarefas do AWS Fargate?
Data da última atualização: 21/03/2022
Estou recebendo erros quando monto meus volumes do Amazon Elastic File System (Amazon EFS) em minhas tarefas do AWS Fargate.
Resolução
O Amazon EFS oferece uma solução de armazenamento persistente para que suas tarefas do Fargate compartilhem arquivos e dados entre diferentes tarefas.
Talvez você não consiga montar os volumes do Amazon EFS nas tarefas do Fargate devido a um ou mais dos seguintes motivos:
- O sistema de arquivos do Amazon EFS não está configurado corretamente.
- A função do IAM da tarefa do Amazon Elastic Container Service (Amazon ECS) não tem as permissões necessárias.
- Há problemas relacionados às configurações de rede e Amazon Virtual Private Cloud (Amazon VPC)
Você pode receber um dos seguintes erros ao tentar montar o volume do EFS na tarefa do Fargate.
ResourceInitializationError: failed to invoke EFS utils commands to set up EFS volumes: stderr: b'mount.nfs4: Connection timed out' : unsuccessful EFS utils command execution; code: 32
Você recebe esse erro quando a tarefa do Fargate não consegue se conectar ao sistema de arquivos EFS devido ao tempo de conexão. Para resolver esse erro, tente as seguintes etapas de solução de problemas:
- Abra o console do Amazon EFS.
- No painel de navegação, escolha Sistemas de arquivos.
- Escolha o sistema de arquivos que você deseja verificar escolhendo seu Nome ou o ID do sistema de arquivos.
- Escolha Rede para exibir a lista de destinos de montagem existentes.
- Escolha Gerenciar.
Você pode visualizar o grupo de segurança e as regras de entrada do grupo de segurança para os destinos de montagem.
Certifique-se de que a regra de entrada para o grupo de segurança permite o tráfego do grupo de segurança de tarefas Fargate na porta 2049. Além disso, verifique se o tráfego de rede é permitido no nível da sub-rede, verificando se a lista de controle de acesso à rede permite o tráfego entre o sistema de arquivos e a tarefa. Se o tráfego não for permitido, modifique as regras de acordo. Para obter mais informações, consulte VPC com sub-redes públicas e privadas (NAT).
ResourceInitializationError: failed to invoke EFS utils commands to set up EFS volumes: stderr: mount.nfs4: Connection reset by peer : unsuccessful EFS utils command execution; code: 32
Você recebe esse erro nas seguintes condições:
- Você montou o sistema de arquivos EFS imediatamente após criar o sistema de arquivos.
- O grupo de segurança para o destino de montagem não permite tráfego de entrada de tarefas do Fargate na porta 2049.
Para solucionar esse erro, siga estas etapas:
- Depois de criar um destino de montagem, pode levar até 90 segundos para que os registros DNS se propaguem completamente em uma região. Portanto, se você estiver criando e montando programaticamente os sistemas de arquivos, por exemplo, com um modelo do AWS CloudFormation, é uma prática recomendada implementar uma condição de espera para evitar esse problema.
- Certifique-se de que a regra de entrada do grupo de segurança anexado aos destinos de montagem do sistema de arquivos EFS permita o tráfego na porta 2049 das tarefas do Fargate.
ResourceInitializationError: failed to invoke EFS utils commands to set up EFS volumes: stderr: Failed to resolve "fs-xxxxxxxxxxx.efs.us-east-1.amazonaws.com" - check that your file system ID is correct
Esse erro geralmente ocorre em uma das seguintes condições:
- O destino de montagem do sistema de arquivos EFS não é criado ou está disponível em uma zona de disponibilidade onde as tarefas do Fargate são iniciadas.
- Você está usando um servidor DNS personalizado para a VPC.
Para resolver esse erro, tente o seguinte:
- Certifique-se de que o destino de montagem do sistema de arquivos EFS esteja na mesma zona de disponibilidade que a tarefa do Fargate. Você pode visualizar a zona de disponibilidade, a sub-rede e o grupo de segurança do destino de montagem no console do Amazon EFS. Em seguida, verifique se o destino de montagem usa a mesma zona de disponibilidade e sub-rede que a tarefa Fargate.
- Se você especificou um servidor DNS personalizado para suas opções de DHCP da VPC em vez de AmazonProvidedDNS, certifique-se de configurar encaminhadores de DNS condicionais para enviar as consultas DNS dos recursos da AWS (*.amazonaws.com) para o servidor DNS padrão da VPC no CIDR 2 da VPC ou 169.254.169.253. Para obter mais informações, consulte Como configurar a resolução de DNS entre redes on-premises e a AWS usando o AWS Directory Service e o Microsoft Active Directory.
ResourceInitializationError: failed to invoke EFS utils commands to set up EFS volumes: stderr: b'mount.nfs4: access denied by server while mounting 127.0.0.1:/' : unsuccessful EFS utils command execution; code: 32
Você recebe esse erro quando o acesso ao sistema de arquivos é negado pela política do sistema de arquivos, política de função de tarefa ou permissões no nível do sistema de arquivos POSIX.
O acesso a um sistema de arquivos EFS pode ser controlado por permissões definidas na lista de controle de acesso à rede, grupo de segurança, políticas do sistema de arquivos EFS, função de tarefa do ECS, política do IAM e arquivo POSIX. Para obter mais informações, consulte o Guia do desenvolvedor para usar o Amazon EFS com o Amazon ECS e o AWS Fargate — Parte 2.
Para solucionar esse erro, verifique se a política do sistema de arquivos ou a política do IAM da função de tarefa do ECS nega acesso ao sistema de arquivos. Se essas políticas negarem permissões, modifique-as para conceder permissões para acessar o sistema de arquivos. Se a política do sistema de arquivos não existir, o acesso ao sistema de arquivos será concedido por padrão a todos os principais durante a criação do sistema de arquivos.
Informações relacionadas
Este artigo ajudou?
Precisa de ajuda com faturamento ou suporte técnico?