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á.
Crie uma definição de tarefa do Amazon ECS e monte um sistema de arquivos em instâncias do EC2 usando o Amazon EFS
Criado por Durga Prasad Cheepuri (AWS)
Ambiente: PoC ou piloto | Tecnologias: contêineres e microsserviços CloudNative; gerenciamento e governança; armazenamento e backup; aplicativos web e móveis | Serviços da AWS: Amazon ECS; Amazon EFS |
Resumo
Esse padrão fornece exemplos de código e etapas para criar uma definição de tarefa do Amazon Elastic Container Service (Amazon ECS) que é executada em instâncias do Amazon Elastic Compute Cloud (Amazon EC2) na Amazon Web Services (AWS) Cloud, enquanto usa o Amazon Elastic File System (Amazon EFS) para montar um sistema de arquivos nessas instâncias do EC2. As tarefas do Amazon ECS que usam o Amazon EFS montam automaticamente os sistemas de arquivos que você especifica na definição de tarefa e disponibilizam esses sistemas de arquivos para os contêineres da tarefa em todas as zonas de disponibilidade em uma região da AWS.
Para atender aos seus requisitos de armazenamento persistente e armazenamento compartilhado, você pode usar o Amazon ECS e o Amazon EFS juntos. Por exemplo, você pode usar o Amazon EFS para armazenar dados persistentes de usuários e dados de aplicações para suas aplicações com pares de contêineres ECS ativos e em espera em execução em diferentes zonas de disponibilidade para alta disponibilidade. Você também pode usar o Amazon EFS para armazenar dados compartilhados que podem ser acessados paralelamente por contêineres do ECS e workloads distribuídas.
Para usar o Amazon EFS com o Amazon ECS, você pode adicionar uma ou mais definições de volume a uma definição de tarefa. Uma definição de volume inclui um ID do sistema de arquivos do Amazon EFS, ID do ponto de acesso e uma configuração para autorização do AWS Identity and Access Management (IAM) ou criptografia Transport Layer Security (TLS) em trânsito. Você pode usar as definições de contêiner nas definições de tarefas para especificar os volumes de definição de tarefas que são montados quando o contêiner é executado. Quando uma tarefa que usa um sistema de arquivos do Amazon EFS é executada, o Amazon ECS garante que o sistema de arquivos esteja montado e disponível para os contêineres que precisam acessá-lo.
Pré-requisitos e limitações
Pré-requisitos
Uma conta AWS ativa
Uma nuvem privada virtual (VPC) com um endpoint de rede privada virtual (VPN) ou um roteador
(Recomendado) Agente de contêiner do Amazon ECS 1.38.0 ou superior para compatibilidade com pontos de acesso do Amazon EFS e atributos de autorização do IAM (Para obter mais informações, consulte a postagem do blog da AWS Novo para Amazon EFS – Autorização do IAM e
Pontos de acesso).
Limitações
As versões do agente de contêiner Amazon ECS anteriores à 1.35.0 não oferecem suporte a sistemas de arquivos do Amazon EFS para tarefas que usam o tipo de inicialização do EC2.
Arquitetura
O diagrama a seguir mostra um exemplo de uma aplicação que usa o Amazon ECS para criar uma definição de tarefa e montar um sistema de arquivos do Amazon EFS em instâncias do EC2 em contêineres do ECS.
O diagrama mostra o seguinte fluxo de trabalho:
Criar um sistema de arquivos do Amazon EFS.
Crie uma definição de tarefa com um contêiner.
Configure as instâncias do contêiner para montar o sistema de arquivos do Amazon EFS. As definições de tarefa referenciam montagens de volume de modo que a instância de contêiner possa usar o sistema de arquivos Amazon EFS. As tarefas do ECS têm acesso ao mesmo sistema de arquivos do Amazon EFS, independentemente da instância de contêiner em que essas tarefas foram criadas.
Crie um serviço Amazon ECS com três instâncias da definição de tarefa.
Pilha de tecnologia
Amazon EC2
Amazon ECS
Amazon EFS
Ferramentas
Amazon EC2: o Amazon Elastic Compute Cloud (Amazon EC2) oferece capacidade computacional escalável na Nuvem AWS. Você pode usar o Amazon EC2 para iniciar quantos servidores virtuais forem necessários, podendo também aumentar ou diminuir o número de servidores.
Amazon ECS: o Amazon Elastic Container Service (Amazon ECS) é um serviço de gerenciamento de contêineres altamente escalável e rápido para execução, interrupção e gerenciamento de contêineres em um cluster. Você pode executar tarefas e serviços em uma infraestrutura com tecnologia gerenciada pelo AWS Fargate. Como alternativa, para ter mais controle da infraestrutura, é possível executar tarefas e serviços em um cluster de instâncias do EC2 que você gerencia.
Amazon EFS: o Amazon Elastic File System (Amazon EFS) fornece um sistema de arquivos NFS elástico simples, escalável, totalmente gerenciável e pronto para uso com serviços de Nuvem AWS e atributos on-premises.
AWS CLI: o AWS Command Line Interface (AWS CLI) é uma ferramenta de código aberto para interagir com serviços da AWS por meio de comandos em seu shell de linha de comando. Com configuração mínima, você pode executar comandos da AWS CLI que implementam funcionalidade equivalente àquela fornecida pelo Console de Gerenciamento da AWS baseado em navegador a partir de um prompt de comando.
Épicos
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Crie um sistema de arquivos do Amazon EFS usando o Console de Gerenciamento da AWS. |
| AWS DevOps |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Crie uma definição de tarefa usando um sistema de arquivos do Amazon EFS. | Crie uma definição de tarefa usando o novo console do Amazon ECS ou o console clássico do Amazon ECS com as seguintes configurações:
| AWS DevOps |
Crie uma definição de tarefa usando a AWS CLI. |
| AWS DevOps |
Recursos relacionados
Anexos
Para acessar o conteúdo adicional associado a este documento, descompacte o seguinte arquivo: attachment.zip