

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Volumes Amazon EFS
<a name="efs-volumes"></a>

O Amazon Elastic File System (Amazon EFS) oferece armazenamento simples e escalável de arquivos para uso com suas tarefas AWS Batch. Com Amazon EFS, a capacidade de armazenamento é elástica. Ela é escalada automaticamente a medida que arquivos são adicionados e removidos. Suas aplicações podem ter o armazenamento de que precisarem, quando precisarem.

Use os sistemas de arquivamento Amazon EFS com AWS Batch para exportar dados do sistema de arquivamento em sua frota de instâncias de contêiner. Assim, seus trabalhos têm acesso ao mesmo armazenamento persistente. Contudo, você deve configurar a AMI da instância de contêiner para montar o sistema de arquivos Amazon EFS antes que o daemon Docker seja iniciado. Além disso, as definições de tarefa devem referenciar montagens de volume na instância de contêiner para poderem usa o sistema de arquivamento. As seções a seguir lhe ajudarão nesse início de uso do Amazon EFS com AWS Batch.

## Considerações de volume Amazon EFS
<a name="efs-volume-considerations"></a>

As seguintes informações devem ser consideradas ao usar volumes Amazon EFS:
+ Para trabalhos usando recursos EC2, o suporte ao sistema de arquivamento Amazon EFS foi adicionado como visualização prévia pública com a versão AMI otimizada Amazon ECS `20191212` com a versão 1.35.0 do agente de contêiner. No entanto, o suporte ao sistema de arquivamento Amazon EFS tornou-se disponível para o público com a versão AMI otimizada Amazon ECS `20200319` com a versão 1.38.0 do agente de contêiner, que incluía atributos de ponto de acesso Amazon EFS e autorização IAM. Recomendamos o uso da versão otimizada AMI Amazon ECS `20200319` ou superior para aproveitamento desses recursos. Para mais informações, consulte [Versões AMI otimizadas Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-ami-versions.html) no *Guia de Desenvolvedor Amazon Elastic Container Service*.
**nota**  
Caso crie sua própria AMI, você deverá usar o agente de contêiner 1.38.0 ou superior, `ecs-init` versão 1.38.0-1 ou superior e executar os comandos a seguir em sua instância Amazon EC2. Tudo isso para habilitar o plug-in de volume Amazon ECS. Os comandos dependem do uso do Amazon Linux 2 ou Amazon Linux como imagem base.  

Amazon Linux 2  

  ```
  $ yum install amazon-efs-utils
  systemctl enable --now amazon-ecs-volume-plugin
  ```

Amazon Linux  

  ```
  $ yum install amazon-efs-utils
  sudo shutdown -r now
  ```
+ Para tarefas utilizando recursos Fargate, o suporte de sistema de arquivamento Amazon EFS foi adicionado ao utilizar a versão 1.4.0 ou superior da plataforma. Para mais informações, consulte [Versões de Plataforma AWS Fargate](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html) no *Guia de Desenvolvedor Amazon Elastic Container Service*.
+ Ao especificar volumes Amazon EFS em tarefas usando recursos Fargate, o mesmo cria um contêiner supervisor responsável pelo gerenciamento do volume Amazon EFS. O contêiner supervisor usa uma pequena quantidade de memória da tarefa. O contêiner supervisor fica visível ao consultar a versão 4 do endpoint de metadados de tarefa. Para mais informações, consulte [Endpoint de Metadados de Tarefas Versão 4](https://docs.aws.amazon.com/AmazonECS/latest/userguide/task-metadata-endpoint-v4-fargate.html) do *Guia de Usuário Amazon Elastic Container Service para AWS Fargate*.

## Uso dos pontos de acesso do Amazon EFS
<a name="efs-volume-accesspoints"></a>

Os pontos de acesso Amazon EFS são pontos de entrada específicos da aplicação em um sistema de arquivamento EFS que ajudam a gerenciar o acesso a aplicações a conjuntos de dados compartilhados. Para mais informações sobre pontos de acesso Amazon EFS e como controlar o acesso a eles, consulte [Trabalhando com Pontos de Acesso Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) no *Guia de Usuário Amazon Elastic File System*.

Os pontos de acesso podem impor uma identidade de usuário, inclusive grupos POSIX do usuário, para todas as solicitações do sistema de arquivamento feitas por meio do ponto de acesso. Os pontos de acesso também podem impor um diretório raiz diferente para o sistema de arquivamento fazendo com que clientes só possam acessar dados no diretório especificado ou em seus subdiretórios.

**nota**  
Ao criar um ponto de acesso EFS, você especifica um caminho no sistema de arquivamento para servir como diretório raiz. Ao fazer referência ao sistema de arquivos EFS com uma ID de ponto de acesso na definição de trabalho AWS Batch, o diretório raiz deve ser omitido ou definido para `/` Isso impõe o caminho definido no ponto de acesso EFS.

É possível usar um perfil do IAM de uma tarefa AWS Batch para forçar aplicativos específicos a usarem um ponto de acesso específico. Ao combinar políticas do IAM com pontos de acesso, é possível oferecer acesso fácil e seguro a conjuntos de dados específicos para seus aplicativos. Esse atributo usa perfis do IAM Amazon ECS para funcionalidade de tarefa. Para mais informações, consulte [Funções do IAM para Tarefas](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html) no *Guia de Desenvolvedor Amazon Elastic Container Service*.

## Especificação de um sistema de arquivos do Amazon EFS na definição de trabalho
<a name="specify-efs-config"></a>

Para usar volumes do sistema de arquivamento Amazon EFS em seus contêineres, você deve especificar as configurações de volume e ponto de montagem na definição de tarefa. O trecho JSON de definição de tarefa a seguir mostra a sintaxe para os objetos `volumes` e `mountPoints` de um contêiner:

```
{
    "containerProperties": [
        {
            "image": "amazonlinux:2",
            "command": [
                "ls",
                "-la",
                "/mount/efs"
            ],
            "mountPoints": [
                {
                    "sourceVolume": "myEfsVolume",
                    "containerPath": "/mount/efs",
                    "readOnly": true
                }
            ],
            "volumes": [
                {
                    "name": "myEfsVolume",
                    "efsVolumeConfiguration": {
                        "fileSystemId": "fs-12345678",
                        "rootDirectory": "/path/to/my/data",
                        "transitEncryption": "ENABLED",
                        "transitEncryptionPort": integer,
                        "authorizationConfig": {
                            "accessPointId": "fsap-1234567890abcdef1",
                            "iam": "ENABLED"
                        }
                    }
                }
            ]
        }
    ]
}
```

`efsVolumeConfiguration`  
Tipo: Objeto  
Obrigatório: Não  
Esse parâmetro é especificado quando volumes Amazon EFS são usados.    
`fileSystemId`  
Tipo: string  
Obrigatório: Sim  
A ID do sistema de arquivamento Amazon EFS a ser usada.  
`rootDirectory`  
Tipo: string  
Obrigatório: Não  
O diretório dentro do sistema de arquivamento Amazon EFS a ser montado como diretório raiz dentro do host. Caso esse parâmetro seja omitido, a raiz do volume Amazon EFS será usada. Especificar `/` tem o mesmo efeito que omitir esse parâmetro. Ele pode ter até 4.096 caracteres de comprimento.  
Se um ponto de acesso EFS for especificado em `authorizationConfig`, o parâmetro do diretório raiz deverá ser omitido ou definido para `/`. Isso impõe o caminho definido no ponto de acesso EFS.  
`transitEncryption`  
Tipo: String  
Valores válidos: `ENABLED` \$1 `DISABLED`  
Obrigatório: não  
Determina se a criptografia deve ou não ser habilitada para dados Amazon EFS em trânsito entre host AWS Batch e servidor Amazon EFS. A criptografia de trânsito deverá ser habilitada caso a autorização IAM Amazon EFS for usada. Se o parâmetro for omitido, o valor padrão `DISABLED` será usado. Para mais informações, consulte [Criptografando Dados em Trânsito](https://docs.aws.amazon.com/efs/latest/ug/encryption-in-transit.html) no *Guia de Usuário Amazon Elastic File System*.  
`transitEncryptionPort`  
Tipo: inteiro  
Obrigatório: Não  
A porta a ser usada ao enviar dados criptografados do host AWS Batch para o servidor Amazon EFS. Caso não especifique uma porta de criptografia em trânsito, a estratégia de seleção de porta usada pelo assistente de montagem Amazon EFS será utilizada. O valor precisar estar compreendido entre 0 e 65.535. Para mais informações, consulte [Auxiliar de Montagem EFS](https://docs.aws.amazon.com/efs/latest/ug/efs-mount-helper.html) no *Guia de Usuário Amazon Elastic File System*.  
`authorizationConfig`  
Tipo: Objeto  
Obrigatório: Não  
Detalhes de configuração de autorização do sistema de arquivamento Amazon EFS.    
`accessPointId`  
Tipo: Sequência  
Obrigatório: Não  
ID do ponto de acesso a ser usado. Se um ponto de acesso for especificado, o valor do diretório raiz em `efsVolumeConfiguration` deverá ser omitido, ou definido como `/`. Isso impõe o caminho definido no ponto de acesso EFS. Se um ponto de acesso for usado, a criptografia em trânsito deverá ser habilitada em `EFSVolumeConfiguration`. Para mais informações, consulte [Trabalhando com Pontos de Acesso Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) no *Guia de Usuário Amazon Elastic File System*.  
`iam`  
Tipo: String  
Valores válidos: `ENABLED` \$1 `DISABLED`  
Obrigatório: Não  
Determina se é necessário utilizar o perfil do IAM de tarefa AWS Batch estabelecido em uma definição de tarefa ao montar o sistema de arquivamento Amazon EFS. Em caso positivo, a criptografia de trânsito deve estar habilitada em `EFSVolumeConfiguration`. Se o parâmetro for omitido, o valor padrão `DISABLED` será usado. Para mais informações sobre perfis de execução do IAM, consulte [AWS Batch Função de execução do IAM](execution-IAM-role.md).