Saiba como criar uma tarefa do Windows no Amazon ECS para o tipo de inicialização do Fargate - Amazon Elastic Container Service

Saiba como criar uma tarefa do Windows no Amazon ECS para o tipo de inicialização do Fargate

Começar a usar Amazon ECS no AWS Fargate usando o tipo de inicialização do Fargate para as tarefas nas regiões em que o Amazon ECS é compatível com o AWS Fargate.

Conclua as tarefas a seguir para começar a usar o Amazon ECS no AWS Fargate.

Pré-requisitos

Antes de começar, conclua as etapas em Configuração para usar o Amazon ECS e verifique se o seu usuário da AWS tem as permissões especificadas no exemplo de política do IAM AdministratorAccess.

O console tenta criar automaticamente o perfil do IAM de execução da tarefa, o que é obrigatório para tarefas do Fargate. Para garantir que o console possa criar esse perfil do IAM, uma das opções a seguir deve ser verdadeira:

Importante

O grupo de segurança selecionado ao criar um serviço com sua definição de tarefa deve ter a porta 80 aberta para tráfego de entrada. Adicione a regras de entrada a seguir ao seu grupo de segurança. Para obter informações sobre como criar um grupo de segurança, consulte Adicionar regras ao seu grupo de segurança no Manual do usuário do Amazon EC2.

  • Type (Tipo): HTTP

  • Protocolo: TCP

  • Intervalo de porta: 80

  • Origem: Qualquer lugar (0.0.0.0/0)

Etapa 1: criar um cluster

É possível criar um novo cluster denominado windows que use a VPC padrão.

Para criar um cluster com o AWS Management Console
  1. Abra o console em https://console.aws.amazon.com/ecs/v2.

  2. Na barra de navegação, selecione a Região a ser usada.

  3. No painel de navegação, escolha Clusters.

  4. Na página Clusters, escolha Create Cluster (Criar cluster).

  5. Em Cluster configuration (Configuração do cluster), em Cluster name (Nome do cluster), insira windows.

  6. (Opcional) Para ativar o Container Insights, expanda Monitoring (Monitoramento) e, em seguida, ative Use Container Insights (Usar o Conteiner Insights).

  7. (Opcional) Para ajudar a identificar seu cluster, expanda Tags (Etiquetas) e configure suas etiquetas.

    [Adicionar uma tag] Selecione Add tag (Adicionar tag) e faça o seguinte:

    • Em Key (Chave), insira o nome da chave.

    • Em Value (Valor), insira o valor da chave.

    [Remover uma tag] Escolha Remover à direita da chave e do valor da tag.

  8. Escolha Create (Criar).

Etapa 2: registrar uma definição de tarefa do Windows

Para executar contêineres do Windows no cluster do Amazon ECS, você deve registrar uma definição de tarefa. O exemplo de definição de tarefa a seguir exibe uma página da web simples na porta 8080 de uma instância de contêiner com a imagem de contêiner do mcr.microsoft.com/windows/servercore/iis.

Para registrar o exemplo de definição de tarefa no AWS Management Console
  1. No painel de navegação, escolha Task definitions (Definições de tarefa).

  2. Escolha Create new task definition (Criar nova definição de tarefa), Create new task definition with JSON (Criar nova definição de tarefa com JSON).

  3. Copie e cole o exemplo de definição de tarefa a seguir na caixa e escolha Save (Salvar).

    { "containerDefinitions": [ { "command": ["New-Item -Path C:\\inetpub\\wwwroot\\index.html -Type file -Value '<html> <head> <title>Amazon ECS Sample App</title> <style>body {margin-top: 40px; background-color: #333;} </style> </head><body> <div style=color:white;text-align:center> <h1>Amazon ECS Sample App</h1> <h2>Congratulations!</h2> <p>Your application is now running on a container in Amazon ECS.</p>'; C:\\ServiceMonitor.exe w3svc"], "entryPoint": [ "powershell", "-Command" ], "essential": true, "cpu": 2048, "memory": 4096, "image": "mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2019", "name": "sample_windows_app", "portMappings": [ { "hostPort": 80, "containerPort": 80, "protocol": "tcp" } ] } ], "memory": "4096", "cpu": "2048", "networkMode": "awsvpc", "family": "windows-simple-iis-2019-core", "executionRoleArn": "arn:aws:iam::012345678910:role/ecsTaskExecutionRole", "runtimePlatform": {"operatingSystemFamily": "WINDOWS_SERVER_2019_CORE"}, "requiresCompatibilities": ["FARGATE"] }
  4. Verifique suas informações e escolha Create (Criar).

Etapa 3: criar um serviço com sua definição de tarefa

Depois que tiver registrado a definição de tarefa, será possível colocar tarefas no cluster com ela. O procedimento a seguir cria um serviço com a definição de tarefa e coloca uma tarefa no cluster.

Para criar um serviço a partir de sua definição de tarefa com o console
  1. No painel de navegação, escolha Clusters e selecione o cluster que você criou em Etapa 1: criar um cluster.

  2. Na guia Services (Serviços), escolha Create (Criar).

  3. Em Deployment configuration (Configuração de implantação), especifique como a aplicação será implantada.

    1. Em Task definition (Definição de tarefa), escolha a definição de tarefa que você criou em Etapa 2: registrar uma definição de tarefa do Windows.

    2. Em Service name (Nome do serviço), insira um nome para o serviço.

    3. Em Desired tasks (Tarefas desejadas), insira 1.

  4. Em Redes, é possível criar um grupo de segurança ou escolher um grupo existente. Certifique-se de que o grupo de segurança que você usa tenha a regra de entrada listada em Pré-requisitos.

  5. Escolha Criar.

Etapa 4: visualizar o serviço

Depois que o serviço tiver ativado uma tarefa no cluster, será possível visualizar o serviço e abrir a página de teste do IIS em um navegador para verificar se o contêiner está em execução.

nota

Pode demorar até 15 minutos para a instância de contêiner baixar e extrair as camadas base de contêiner do Windows.

Para visualizar o serviço
  1. Abra o console em https://console.aws.amazon.com/ecs/v2.

  2. No painel de navegação, escolha Clusters.

  3. Escolha o cluster em que você executou o serviço.

  4. Na guia Serviços, em Nome do serviço, escolha o serviço que você criou em Etapa 3: criar um serviço com sua definição de tarefa.

  5. Escolha a guia Tarefas e, em seguida, escolha a tarefa em seu serviço.

  6. Na página da tarefa, na seção Configuração, em IP púbico, escolha endereço aberto.

Etapa 5: limpar

Ao terminar de usar um cluster do Amazon ECS, é necessário limpar os recursos associados a ele para evitar cobranças por recursos que você não está usando.

Alguns recursos do Amazon ECS, como tarefas, serviços, clusters e instâncias de contêiner, são eliminados por meio do console do Amazon ECS. Outros recursos, como instâncias do Amazon EC2, balanceadores de carga do Elastic Load Balancing e grupos do Auto Scaling, devem ser excluídos manualmente no console do Amazon EC2 ou com a exclusão da pilha do AWS CloudFormation que os criou.

  1. No painel de navegação, escolha Clusters.

  2. Na página Clusters, selecione o cluster que você criou para este tutorial.

  3. Escolha a guia Serviços.

  4. Selecione o serviço e, em seguida, escolha Excluir.

  5. No prompt de confirmação, insira delete e escolha Delete (Excluir).

    Espere até que o serviço seja excluído.

  6. Escolha Delete Cluster. No prompt de confirmação, insira delete nome-cluster (excluir nome-cluster) e escolha Delete (Excluir). A exclusão do cluster limpa os recursos associados que foram criados com o cluster, incluindo grupos do Auto Scaling, VPCs ou balanceadores de carga.