Tutorial: criar uma definição de trabalho de nó único nos recursos do Fargate - AWS Batch

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á.

Tutorial: criar uma definição de trabalho de nó único nos recursos do Fargate

Conclua as seguintes etapas para criar uma definição de trabalho de nó único em recursos do AWS Fargate.

Para criar uma nova definição de trabalho em recursos do Fargate:
  1. Abra o console AWS Batch em https://console.aws.amazon.com/batch/.

  2. Na barra de navegação superior, escolha a Região da AWS a ser usada.

  3. No painel de navegação esquerdo, escolha Definições de trabalho.

  4. Escolha Criar.

  5. Para Tipo de orquestração, escolha Fargate. Para ter mais informações, consulte Ambientes de computação Fargate.

  6. Em Nome, insira um nome exclusivo para a sua definição de trabalho. Os nomes podem ter até 128 caracteres. Podem conter letras minúsculas, maiúsculas, números, hifens e (-) e sublinhados (_).

  7. (Opcional) Em Tempo Limite de Execução, insira o valor do tempo limite (em segundos). O tempo limite de execução é o período de tempo antes que um trabalho não concluído seja encerrado. Se uma tentativa exceder o tempo limite, ela será interrompida e passada para um status FAILED. Para mais informações, consulte Tempos limite de trabalho. O valor mínimo é 60 segundos.

  8. (Opcional) Ative a Prioridade de Agendamento. Insira um valor de prioridade de agendamento entre 0 e 100. Valores mais altos têm maior prioridade sobre valores mais baixos.

  9. (Opcional) Expanda Tags e então, escolha Adicionar Tag para adicionar tags ao recurso. Ative Propagar tags para propagar tags do trabalho e da definição do trabalho.

  10. Na seção Configuração da plataforma Fargate:

    1. Para a plataforma Runtime, escolha a arquitetura do ambiente de computação.

    2. Em Família do sistema operacional, escolha o sistema operacional do ambiente de computação.

    3. Em Arquitetura da CPU, escolha a arquitetura vCPU.

    4. Para Versão da plataforma Fargate, insira LATEST ou uma versão específica do ambiente de runtime.

    5. (Opcional) Ative a opção Atribuir IP públicopara atribuir um endereço IP público a uma interface de rede de tarefas do Fargate. Para um trabalho que é executado em uma sub-rede privada para enviar tráfego de saída para a Internet, a sub-rede privada exige que um gateway NAT seja anexado para rotear solicitações para a Internet. Ao fazer isso, você poderá extrair imagens de contêineres. Para obter mais informações, consulte Rede de tarefas do Amazon ECS no Guia do desenvolvedor do Serviço Amazon Elastic Container.

    6. (Opcional) Em Armazenamento temporário, insira a quantidade de armazenamento temporário a ser alocada para a tarefa. A quantidade de armazenamento temporário deve estar entre 21 GiB e 200 GiB. Por padrão, 20 GiB de armazenamento temporário são alocados se você não inserir um valor.

      nota

      O armazenamento temporário requer a versão da plataforma Fargate 1.4 ou posterior.

    7. Para Função de execução, especifique um perfil do IAM que conceda aos atendentes de contêiner do Amazon ECS e do Fargate permissão para fazer chamadas da API da AWS em seu nome. Esse atributo usa perfis do IAM Amazon ECS para funcionalidade de tarefa. Para obter mais informações, incluindo pré-requisitos de configuração, consulte Perfis do IAM para execução de tarefa do Amazon ECS no Guia do desenvolvedor do Amazon Elastic Container Service.

    8. Para Tentativas de trabalho, insira o número de vezes que o AWS Batch tenta mover o trabalho para o status de RUNNABLE. Insira um número inteiro entre 1 e 10.

    9. (Opcional) Em Repetir as condições da estratégia, escolha Adicionar avaliação na saída. Insira pelo menos um valor de parâmetro e escolha uma Ação. Para cada conjunto de condições, Ação deve ser definida como Tentar Novamente ou Sair. Essas ações significam o seguinte:

      • Tentar novamente: o AWS Batch tenta novamente até que o número de tentativas de trabalho que você especificou seja atingido.

      • Sair: o AWS Batch para de tentar novamente o trabalho.

      Importante

      Se você escolher Adicionar avaliação na saída, deverá configurar pelo menos um parâmetro e escolher uma Ação ou escolher Remover avaliação na saída.

  11. Escolha Próxima página.

  12. Na seção Configuração de Contêiner:

    1. Para Imagem, escolha a imagem do Docker a ser usada em seu trabalho. Por padrão, imagens no registro Docker Hub estarão disponíveis. Você também pode especificar outros repositórios com repository-url/image:tag. Os nomes podem ter até 225 caracteres. Pode conter letras maiúsculas, minúsculas, números, hifens (-), sublinhados (_), dois pontos (:), pontos (.), barras (/) e jogos da velha (#). Esse parâmetro é mapeado para Image na seção Criar um contêiner da Docker Remote API e o parâmetro IMAGE de docker run.

      nota

      A arquitetura da imagem do Docker deve corresponder à arquitetura do processador dos recursos de computação nos quais eles foram programados. Por exemplo, imagens Arm baseadas em Docker só podem ser executadas em recursos de computação baseados em Arm.

      • As imagens em repositórios públicos do Amazon ECR usam as convenções de nomenclatura completaregistry/repository[:tag] ou registry/repository[@digest] (por exemplo, public.ecr.aws/registry_alias/my-web-app:latest).

      • As imagens em repositórios do Amazon ECR usam as convenções de nomenclatura registry/repository[:tag] completa (por exemplo, aws_account_id.dkr.ecr.region.amazonaws.com/my-web-app:latest).

      • Imagens em repositórios oficiais em Docker Hub usam um único nome (por exemplo, ubuntu ou mongo).

      • Imagens em outros repositórios Docker Hub são qualificadas com um nome de organização (por exemplo, amazon/amazon-ecs-agent).

      • Imagens em outros repositórios online também são qualificadas por um nome de domínio (por exemplo, quay.io/assemblyline/ubuntu).

    2. Para a Sintaxe de comando‭, escolha Bash ou JSON.

    3. Para Command, especifique o comando a ser passado para o contêiner. Para comandos simples, insira o comando como você faz para um prompt de comando e, em seguida, verifique se o resultado JSON está correto. Foi passado para o daemon do Docker. Para comandos mais complicados (por exemplo, com caracteres especiais), use a sintaxe JSON.

      dica

      Escolha Informações para visualizar Bash e amostras de códigos de JSON.

      Esse parâmetro é mapeado para Cmd na seção Criar um contêiner da Docker Remote API e o parâmetro COMMAND de docker run. Para obter mais informações sobre o parâmetro Docker CMD, consulte https://docs.docker.com/engine/reference/builder/#cmd.

      nota

      Você pode usar os valores padrão de substituição de parâmetros e espaços reservados no seu comando. Para ter mais informações, consulte Parâmetros.

    4. (Opcional) Adicione parâmetros à definição do trabalho como mapeamentos de nome-valor para substituir os padrões de definição do trabalho. Para adicionar um parâmetro:

      1. Em Parâmetros, escolha Adicionar parâmetros, insira um par nome-valor e então escolha Adicionar parâmetro.

        Importante

        Se você escolher Adicionar parâmetro, deverá configurar pelo menos um parâmetro ou escolher Remover parâmetro

    5. Na seção Configuração de Ambiente:

      1. Para a configuração de Perfil de trabalho, escolha um perfil do IAM que tenha permissões para as APIs da AWS. Esse atributo usa perfis do IAM Amazon ECS para funcionalidade de tarefa. Para mais informações, consulte Funções do IAM para Tarefas no Guia de Desenvolvedor Amazon Elastic Container Service.

        nota

        Somente perfis que tenham o relacionamento de confiança Função da tarefa do Amazon Elastic Container Service são mostradas aqui. Para obter mais informações sobre como criar um perfil do IAM para os trabalhos do seu AWS Batch, consulte Como criar um perfil do IAM e uma política para suas tarefas no Guia do desenvolvedor do Amazon Elastic Container Service.

      2. Para vCPUs, especifique o número de vCPUs a serem reservadas para o contêiner. Esse parâmetro é mapeado para CpuShares na seção Criar um Contêiner da API remota do Docker e a opção --cpu-shares para docker run. Cada vCPU equivale a 1.024 compartilhamentos de CPU. Você deve especificar pelo menos uma vCPU.

      3. Em Memória, insira o limite de memória que está disponível para o contêiner. Caso seu contêiner tente exceder a memória especificada, o mesmo será interrompido. Esse parâmetro é mapeado para Memory na seção Criar um Contêiner da API Remota Docker e para a opção --memory para docker run. Você deve especificar pelo menos 4 MiB de memória para uma tarefa.

        Se você usa o GuardDuty Runtime Monitoring, há uma pequena sobrecarga de memória para o agente de segurança do GuardDuty. Por isso, o limite de memória deve incluir o tamanho do agente de segurança GuardDuty. Para obter informações sobre os limites de memória de agentes de segurança do GuardDuty, consulte Limites de CPU e memória no Guia do usuário do GuardDuty. Para obter informações sobre as práticas recomendadas, consulte Como corrigir erros de falta de memória nas minhas tarefas do Fargate após habilitar o Monitoramento de runtime, no Guia do desenvolvedor do Amazon ECS.

        nota

        Para maximizar o uso dos recursos, priorize a memória para trabalhos de um tipo específico de instância. Para ter mais informações, consulte Gerenciamento de memória de recursos de computação.

    6. (Opcional) Em Variáveis de Ambiente, escolha Adicionar Variável de Ambiente para adicionar variáveis de ambiente como pares de nome/valor. Essas variáveis serão passadas para o contêiner.

    7. (Opcional) Em Segredos, escolha Adicionar segredo para adicionar segredos como pares de nome-valor. Esses segredos são expostos no contêiner. Para obter mais informações, consulte LogConfiguration:secretOptions.

    8. Escolha Próxima página.

  13. (Opcional) Na seção Configuração do Linux:

    1. Em Usuário, insira um nome do usuário a ser usado dentro do contêiner.

    2. Ative Ativar processo init para executar um processo init dentro do contêiner. Este processo encaminha sinais e colhe processos.

    3. Ative Habilitar sistema de arquivos somente para leitura para remover o acesso de gravação ao volume.

    4. (Opcional) Expanda Configuração adicional.

    5. Em Configuração dos pontos de montagem, escolha Adicionar configuração de pontos de montagem para adicionar pontos de montagem para volumes de dados. Você deve especificar o volume de origem e o caminho do contêiner. Esses pontos de montagem são passados para o Docker daemon em uma instância de contêiner.

    6. Para Configuração de volumes, escolha Adicionar volume para criar uma lista de volumes a serem passados para o contêiner. Insira Nome e Caminho de origem para o volume, e então escolha Adicionar volume.

    7. Na seção Configuração do log:

      1. (Opcional) Em Driver de log, escolha o driver de log a ser usado. Para obter mais informações sobre os drivers de log disponíveis, consulte LogConfiguration:logDriver.

        nota

        Por padrão, o driver de log awslogs é usado.

      2. (Opcional) Em Opções, escolha Adicionar opção para adicionar uma opção. Insira um par nome-valor e então escolha Adicionar opção.

      3. (Opcional) Em Segredos, escolha Adicionar segredo para adicionar um segredo. Em seguida, insira um par nome-valor e escolha Adicionar segredo.

        dica

        Para obter mais informações, consulte LogConfiguration:secretOptions.

  14. Escolha Próxima página.

  15. Para a Revisão de Definição de Tarefa, revise as etapas de configuração. Se precisar fazer alterações, escolha Edit (Editar). Quando terminar, escolha Criar Definição de Trabalho.