Cancelamento do registro de uma instância externa do Amazon ECS - Amazon Elastic Container Service

Cancelamento do registro de uma instância externa do Amazon ECS

Recomendamos que você cancele o registro da instância no Amazon ECS e no AWS Systems Manager quando concluir o uso de uma instância externa. Depois do cancelamento do registro, a instância externa não poderá mais aceitar novas tarefas.

Se você tiver tarefas em execução na instância de contêiner quando cancelar o registro, estas tarefas permanecerão em execução até serem interrompidas por outros meios. Contudo, essas tarefas não serão mais monitoradas ou gerenciadas pelo Amazon ECS. Se essas tarefas da instância externa fizerem parte de um serviço do Amazon ECS, o programador de serviços iniciará uma nova cópia das tarefas em uma instância diferente, se possível.

Após cancelar o registro da instância, limpe os recursos da AWS restantes na instância. Depois, você pode registrá-la em um novo cluster.

Procedimento

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

  2. Na barra de navegação, escolha a região em que sua instância externa está registrada.

  3. No painel de navegação, escolha Clusters e selecione o cluster que hospeda a instância externa.

  4. Na página Cluster : name, escolha a guia Infrastructure (Infraestrutura).

  5. Em Container instances (Instâncias de contêiner), selecione o ID da instância externa para cancelar o registro. Você será redirecionado para a página de detalhes da instância do contêiner.

  6. Na página Container Instance : id, escolha Deregister.

  7. Revise a mensagem de cancelamento do registro. Selecione Cancelar o registro no AWS Systems Manager para também cancelar o registro da instância externa como uma instância gerenciada no Systems Manager. Escolha Cancelar registro.

    nota

    É possível cancelar o registro da instância externa como uma instância gerenciada do Systems Manager no console do Systems Manager. Para obter instruções, consulte Deregistering managed instances no Guia do usuário do AWS Systems Manager.

  8. Após cancelar o registro da instância, limpe os recursos da AWS no servidor on-premises ou na VM.

    Sistema operacional Etapas

    Linux

    1. Interrompa o agente de contêiner do Amazon ECS e os serviços do SSM Agent na instância.

      sudo systemctl stop ecs amazon-ssm-agent
    2. Remova os pacotes do Amazon ECS e do Systems Manager.

      Para CentOS 7, CentOS 8 e RHEL 7

      sudo yum remove -y amazon-ecs-init amazon-ssm-agent

      Para SUSE Enterprise Server 15

      sudo zypper remove -y amazon-ecs-init amazon-ssm-agent

      Para Debian e Ubuntu

      sudo apt remove -y amazon-ecs-init amazon-ssm-agent
    3. Remova os diretórios restantes.

      sudo rm -rf /var/lib/ecs /etc/ecs /var/lib/amazon/ssm /var/log/ecs /var/log/amazon/ssm
    Windows
    1. Interrompa o agente de contêiner do Amazon ECS e os serviços do SSM Agent na instância.

      Stop-Service AmazonECS
      Stop-Service AmazonSSMAgent
    2. Remova o pacote do Amazon ECS.

      .\ecs-anywhere-install.ps1 -Uninstall
AWS CLI
  1. Você precisa do ID da instância e do ARN da instância de contêiner para cancelar o registro da instância de contêiner. Se você não tiver esses valores, execute os comandos a seguir

    Execute o comando a seguir para obter o ID da instância.

    Você usa o ID da instância (instanceID) para obter o ARN (containerInstanceARN) da instância de contêiner.

    instanceId=$(aws ssm describe-instance-information --region "{{ region }}" | jq ".InstanceInformationList[] |select(.IPAddress==\"{{ IPv4 Address }}\") | .InstanceId" | tr -d'"'

    Execute os seguintes comandos.

    Você usa o containerInstanceArn como parâmetro no comando para cancelar o registro da instância (deregister-container-instance).

    instances=$(aws ecs list-container-instances --cluster "{{ cluster }}" --region "{{ region }}" | jq -c '.containerInstanceArns') containerInstanceArn=$(aws ecs describe-container-instances --cluster "{{ cluster }}" --region "{{ region }}" --container-instances $instances | jq ".containerInstances[] | select(.ec2InstanceId==\"{{ instanceId }}\") | .containerInstanceArn" | tr -d '"')
  2. Execute o comando a seguir para drenar a instância.

    aws ecs update-container-instances-state --cluster "{{ cluster }}" --region "{{ region }}" --container-instances "{{ containerInstanceArn }}" --status DRAINING
  3. Depois que a instância de contêiner terminar de ser drenada, execute o comando a seguir para cancelar o registro da instância.

    aws ecs deregister-container-instance --cluster "{{ cluster }}" --region "{{ region }}" --container-instance "{{ containerInstanceArn }}"
  4. Execute o comando a seguir para remover instâncias de contêiner do SSM.

    aws ssm deregister-managed-instance --region "{{ region }}" --instance-id "{{ instanceId }}"
  5. Após cancelar o registro da instância, limpe os recursos da AWS no servidor on-premises ou na VM.

    Sistema operacional Etapas

    Linux

    1. Interrompa o agente de contêiner do Amazon ECS e os serviços do SSM Agent na instância.

      sudo systemctl stop ecs amazon-ssm-agent
    2. Remova os pacotes do Amazon ECS e do Systems Manager.

      sudo (yum/apt/zypper) remove amazon-ecs-init amazon-ssm-agent
    3. Remova os diretórios restantes.

      sudo rm -rf /var/lib/ecs /etc/ecs /var/lib/amazon/ssm /var/log/ecs /var/log/amazon/ssm
    Windows
    1. Interrompa o agente de contêiner do Amazon ECS e os serviços do SSM Agent na instância.

      Stop-Service AmazonECS
      Stop-Service AmazonSSMAgent
    2. Remova o pacote do Amazon ECS.

      .\ecs-anywhere-install.ps1 -Uninstall