Conceitos básicos do console clássico do Amazon ECS usando contêineres do Windows no AWS Fargate - Amazon ECS

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

Conceitos básicos do console clássico do Amazon ECS usando contêineres do Windows no AWS Fargate

O console clássico do Amazon ECS está chegando ao fim da vida útil e não estará mais disponível após 4 de dezembro de 2023. Recomendamos que você mude imediatamente para o novo console do Amazon ECS para uma melhor experiência. Você pode revisar e seguir o novo roteiro do console Amazon ECS em. GitHub

O Amazon Elastic Container Service (Amazon ECS) é um serviço de gerenciamento de contêineres altamente escalável e rápido que facilita a execução, a interrupção e o gerenciamento de contêineres. Você pode hospedar os contêineres em uma infraestrutura sem servidor gerenciada pelo Amazon ECS ao iniciar serviços ou tarefas no AWS Fargate. Para obter uma visão geral ampla do Amazon ECS no Fargate, consulte O que é o AWS Fargate?.

Conceitos básicos do Amazon ECS no AWS Fargate usando o tipo de execução do Fargate para as tarefas. Nas regiões em que o Amazon ECS oferece suporte ao AWS Fargate, o assistente de primeira execução do Amazon ECS orienta você nos conceitos básicos do Amazon ECS usando o tipo de inicialização do Fargate. O assistente dá a opção de criar um cluster e executar um aplicativo web de exemplo. Se você já tiver uma imagem do Docker a ser iniciada no Amazon ECS, poderá criar uma definição de tarefa com essa imagem e usá-la no cluster.

Pré-requisitos

Antes de começar, certifique-se de ter concluído as etapas em Configuração para usar o Amazon ECS e que seu usuário da AWS tenha as permissões especificadas no exemplo de política do IAM AdministratorAccess ou Permissões do assistente da primeira execução do Amazon ECS.

O assistente executado pela primeira vez tenta criar automaticamente a função do IAM de execução da tarefa, o que é obrigatório para tarefas do Fargate. Para garantir que a experiência da primeira execução possa criar essa função do IAM, uma das seguintes opções deve ser verdadeira:

Etapa 1: Criar um cluster

Você pode criar um novo cluster chamado windows.

Para criar um cluster com o AWS Management Console
  1. Abra o console clássico do Amazon ECS em https://console.aws.amazon.com/ecs/.

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

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

  4. Escolha Networking only (Somente rede) e, em seguida, Next step (Próxima etapa).

  5. Em Cluster name (Nome do cluster), insira um nome para o cluster (neste exemplo, windows é o nome do cluster). São permitidos até 255 letras (caixa alta e baixa), números, hífens e sublinhados.

  6. Na seção Networking (Redes), configure a VPC na qual executar suas instâncias de contêiner. Por padrão, o assistente de criação de cluster cria uma nova VPC com duas sub-redes em zonas de disponibilidade diferentes e um security group aberto à Internet na porta 80. Essa é uma configuração básica que funciona bem para um serviço HTTP. No entanto, você pode modificar essas configurações seguindo as subetapas abaixo.

    1. Para criar uma nova VPC, selecione CreateVPC (Criar VPC).

    2. (Opcional) Se você escolher criar uma nova VPC, em CIDR Block (Bloco CIDR), insira um bloco CIDR para sua VPC. Para obter mais informações, consulte Sua VPC e suas sub-redes em Guia do usuário da Amazon VPC.

    3. Em Subnet 1 (Sub-rede 1) e Subnet 2 (Sub-rede 2), insira o intervalo de CIDR para cada sub-rede.

  7. Na seção Etiquetas, especifique a chave e o valor de cada etiqueta para associar ao cluster. Para obter mais informações, consulte Marcação dos recursos do Amazon ECS.

  8. Na seção CloudWatch Container Insights, escolha se o Container Insights deve ser habilitado para o cluster. Para obter mais informações, consulte Informações sobre CloudWatch contêineres do Amazon ECS.

  9. Escolha Create (Criar).

    nota

    Pode levar até 15 minutos para que as instâncias de contêiner do Windows seja registrada no cluster.

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. Abra o console clássico do Amazon ECS em https://console.aws.amazon.com/ecs/.

  2. No painel de navegação, selecione Task Definitions (Definições de tarefas).

  3. Na página Task Definitions (Definições de tarefas), escolha Create new Task Definition (Criar nova definição de tarefa).

  4. Na página Select launch type compatibilities (Selecionar compatibilidades do tipo de inicialização), escolha Fargate, Next step (Próxima etapa).

  5. Role para o final da página e escolha Configure via JSON (Configurar via JSON).

  6. Cole o JSON de definição de tarefa de exemplo abaixo na área de texto (substituindo o JSON preenchido) e escolha Save.

    Use um dos seguintes para operatingSystemFamily:

    • WINDOWS_SERVER_2019_FULL

    • WINDOWS_SERVER_2019_CORE

    • WINDOWS_SERVER_2022_FULL

    • WINDOWS_SERVER_2022_CORE

    { "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" ] }
  7. Verifique suas informações e escolha Create (Criar).

Para registrar o exemplo de definição de tarefa no AWS CLI
  1. Crie um arquivo chamado windows_fargate_sample_app.json.

  2. Abra o arquivo com o editor de texto da sua preferência e adicione o exemplo de JSON acima ao arquivo e salve-o.

  3. Usando a AWS CLI, execute o seguinte comando para registrar a definição de tarefa no Amazon ECS.

    nota

    Certifique-se de que sua AWS CLI esteja configurada para usar a mesma região na qual existe seu cluster do Windows ou adicione a opção --region your_cluster_region ao comando.

    aws ecs register-task-definition --cli-input-json file://windows_fargate_sample_app.json

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

Depois que tiver registrado a definição de tarefa, você poderá 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. Na página de confirmação de registro Task Definition: windows_fargate_sample_app (Definição de tarefa), escolha Actions (Ações), Create Service (Criar serviço).

  2. Na página Create Service, insira as informações a seguir e escolha Create service.

    • Launch type (Tipo de inicialização): Fargate

    • Platform operating system (Sistema operacional da plataforma): WINDOWS_SERVER_2019_FULL, WINDOWS_SERVER_2019_CORE, WINDOWS_SERVER_2022_FULL ou WINDOWS_SERVER_2022_CORE

    • Cluster: janelas

    • Service name (Nome do serviço): windows_fargate_sample_app

    • Service type (Tipo de serviço): REPLICA

    • Número de tarefas: 1

    • Deployment type (Tipo de implantação): atualização contínua

Para criar um serviço de sua definição de tarefa com a AWS CLI
  • Usando a AWS CLI, execute o seguinte comando para criar seu serviço.

    aws ecs create-service --cluster windows --task-definition windows-simple-iis --desired-count 1 --service-name windows_fargate_sample_app

Etapa 4: Visualizar o serviço

Depois que o serviço tiver ativado uma tarefa no cluster, você poderá 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 clássico do Amazon ECS em https://console.aws.amazon.com/ecs/.

  2. Na página Clusters, escolha o cluster windows.

  3. Na guia Services (Serviços), selecione o serviço windows_fargate_sample_app.

  4. Na página Service: windows_fargate_sample_app (Serviço), escolha o ID da tarefa em seu serviço.

  5. Na página Task, expanda o contêiner windows_fargate para visualizar suas informações.

  6. Nas Network bindings do contêiner, você deve ver um endereço IP External Link e um link de combinação de portas. Escolha esse link para abrir a página de teste do IIS no seu navegador.

    
                        Captura de tela da aplicação de exemplo do Amazon ECS. A saída indica: “Your application is now running on Amazon ECS” (Sua aplicação agora está em execução no Amazon ECS).

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. Abra o console clássico do Amazon ECS em https://console.aws.amazon.com/ecs/.

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

  3. Na página Clusters, selecione o cluster a ser excluído.

  4. Escolha Delete Cluster. No prompt de confirmação, insira delete me 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.