本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
取消註冊 Amazon ECS 外部執行個體
我們建議您在完成執行個體 AWS Systems Manager 之後,從 Amazon ECS 和 取消註冊執行個體。取消註冊後,外部執行個體即不再接受新的任務。
如果在您取消註冊容器執行個體時,還有執行中的任務,則這些任務會繼續執行,直到透過一些其他方式停用為止。不過,Amazon ECS 不再監控或負責這些任務。如果外部執行個體中的這些任務是 Amazon ECS 服務的一部分,則服務排程器可能會在不同的執行個體上啟動該任務的另一個副本。
取消註冊執行個體後,請清除執行個體上剩餘的 AWS 資源。然後,您可以將它註冊到新的叢集。
程序
- AWS Management Console
-
開啟主控台,網址為 https://console.aws.amazon.com/ecs/v2
。 -
從導覽列中選擇註冊外部執行個體所在的區域。
-
在導覽窗格中選擇 Clusters (叢集),並選取託管外部執行個體的叢集。
-
在 Cluster :
name
(叢集:名稱) 頁面上,選擇 Infrastructure (基礎基礎設施) 索引標籤。 -
在 Container instances (容器執行個體) 中,選擇要取消註冊的外部執行個體 ID。系統會將您重新導向至容器執行個體詳細資訊頁面。
-
在 Container Instance :
id
(容器執行個體:ID) 頁面中選擇 Deregister (取消註冊)。 -
檢閱取消註冊訊息。選取 Deregister from AWS Systems Manager (從 AWS Systems Manager中取消註冊),也將作為 Systems Manager 受管執行個體來取消註冊外部執行個體。選擇 Deregister (取消註冊)。
注意
在 Systems Manager 主控台中,可作為 Systems Manager 受管執行個體來取消註冊外部執行個體。如需說明,請參閱AWS Systems Manager 《 使用者指南》中的在混合多雲端環境中取消註冊受管節點。
-
取消註冊執行個體後,請清除現場部署伺服器或 VM 上的 AWS 資源。
作業系統 步驟 Linux
-
停用執行個體上的 Amazon ECS 容器代理程式和 SSM Agent 服務。
sudo systemctl stop ecs amazon-ssm-agent
-
移除 Amazon ECS 和 Systems Manager 套件。
對於 CentOS 7、CentOS 8 和 RHEL 7
sudo yum remove -y amazon-ecs-init amazon-ssm-agent
對於 SUSE Enterprise Server 15
sudo zypper remove -y amazon-ecs-init amazon-ssm-agent
對於 Debian 和 Ubuntu
sudo apt remove -y amazon-ecs-init amazon-ssm-agent
-
移除剩餘的目錄。
sudo rm -rf /var/lib/ecs /etc/ecs /var/lib/amazon/ssm /var/log/ecs /var/log/amazon/ssm
Windows -
停用執行個體上的 Amazon ECS 容器代理程式和 SSM Agent 服務。
Stop-Service AmazonECS
Stop-Service AmazonSSMAgent
-
移除 Amazon ECS 套件。
.\ecs-anywhere-install.ps1 -Uninstall
-
- AWS CLI
-
-
您需要執行個體 ID 和容器執行個體 ARN,才能取消註冊容器執行個體。如果您沒有這些值,請執行下列命令
執行下列命令以取得執行個體 ID。
您可以使用執行個體 ID (
instanceID
) 取得容器執行個體 ARN (containerInstanceARN
)。instanceId=$(aws ssm describe-instance-information --region "{{
region
}}" | jq ".InstanceInformationList[] |select(.IPAddress==\"{{ IPv4 Address }}\") | .InstanceId" | tr -d'"'執行下列命令。
您可以在命令中使用
containerInstanceArn
做為參數來取消註冊執行個體 (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 '"') -
執行下列命令以消耗執行個體。
aws ecs update-container-instances-state --cluster "{{
cluster
}}" --region "{{region
}}" --container-instances "{{containerInstanceArn
}}" --status DRAINING -
容器執行個體完成消耗後,執行下列命令以取消註冊執行個體。
aws ecs deregister-container-instance --cluster "{{
cluster
}}" --region "{{region
}}" --container-instance "{{containerInstanceArn
}}" -
使用下列命令從 SSM 移除容器執行個體。
aws ssm deregister-managed-instance --region "{{
region
}}" --instance-id "{{instanceId
}}" -
取消註冊執行個體後,請清除現場部署伺服器或 VM 上的 AWS 資源。
作業系統 步驟 Linux
-
停用執行個體上的 Amazon ECS 容器代理程式和 SSM Agent 服務。
sudo systemctl stop ecs amazon-ssm-agent
-
移除 Amazon ECS 和 Systems Manager 套件。
sudo (yum/apt/zypper) remove amazon-ecs-init amazon-ssm-agent
-
移除剩餘的目錄。
sudo rm -rf /var/lib/ecs /etc/ecs /var/lib/amazon/ssm /var/log/ecs /var/log/amazon/ssm
Windows -
停用執行個體上的 Amazon ECS 容器代理程式和 SSM Agent 服務。
Stop-Service AmazonECS
Stop-Service AmazonSSMAgent
-
移除 Amazon ECS 套件。
.\ecs-anywhere-install.ps1 -Uninstall
-
-