本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用角色允許 Amazon ECS 管理叢集
Amazon Elastic Container Service 使用 AWS Identity and Access Management (IAM) 服務連結角色。服務連結角色是直接連結至 Amazon ECS 的一種特殊 IAM 角色類型。服務連結角色是由 Amazon ECS 預先定義,並包含該服務代表您呼叫其他 AWS 服務所需的所有許可。
服務連結角色可讓設定 Amazon ECS 更為簡單,因為您不必手動新增必要的許可。Amazon ECS 定義其服務連結角色的許可,除非另有定義,否則僅有 Amazon ECS 可以擔任其角色。定義的許可包括信任政策和許可政策,且該許可政策無法附加至其他 IAM 實體。
您必須先刪除服務連結角色的相關資源,才能將其刪除。如此即可保護 Amazon ECS 資源,避免您不小心移除資源的存取許可。
如需有關支援服務連結角色的其他 服務的資訊,請參閱AWS 使用 IAM 的服務,並在服務連結角色欄中尋找具有是的服務。選擇具有連結的是,以檢視該服務的服務連結角色文件。
Amazon ECS 的服務連結角色許可
Amazon ECS 使用名為 AWSServiceRoleForECS 的服務連結角色:這是允許 Amazon ECS 管理叢集的角色。
AWSServiceRoleForECS 服務連結角色信任下列服務可擔任該角色:
-
ecs.amazonaws.com
名稱為 AmazonECSServiceRolePolicy 的角色許可政策允許 Amazon ECS 針對指定資源完成下列動作:
-
動作:使用適用於 Amazon ECS 任務的
awsvpc網路模式時,Amazon ECS 會管理與任務關聯的彈性網路介面的生命週期。這也包括 Amazon ECS 新增至彈性網路介面的標籤。 -
動作:將負載平衡器與 Amazon ECS 服務搭配使用時,Amazon ECS 會使用負載平衡器來管理資源的註冊和取消註冊。
-
動作:使用 Amazon ECS 服務探索時,Amazon ECS 會管理必要的 Route 53 和 AWS Cloud Map 資源,供服務探索使用。
-
動作:使用 Amazon ECS 服務自動擴展時,Amazon ECS 會管理所需的 Amazon EC2 Auto Scaling 資源。
-
動作:Amazon ECS 會建立和管理 CloudWatch 警示和日誌串流,以協助監控 Amazon ECS 資源。
-
動作:使用 Amazon ECS Exec 時,Amazon ECS 會管理必要的許可,以便對您的任務啟動 Amazon ECS Exec 工作階段。
-
動作:使用 Amazon ECS Service Connect 時,Amazon ECS 會管理必要的 AWS Cloud Map 資源,以便使用此功能。
-
動作:使用 Amazon ECS 容量提供者時,Amazon ECS 會管理修改 Amazon EC2 Auto Scaling 群組及其 Amazon EC2 執行個體所需的許可。
-
動作:Amazon ECS 可以更新 Amazon ECS 管理之服務的服務 AWS Cloud Map 屬性。
-
動作:Amazon ECS 可以在啟動和停止任務時叫用 Amazon EC2 佈建和取消佈建 ENI。
-
動作:Amazon ECS 可以為與事件 Windows 相關聯的服務和叢集擷取 Amazon EC2 事件 Windows。
您必須設定許可,以允許您的使用者、群組或角色建立、編輯或刪除服務連結角色。如需詳細資訊,請參閱 IAM 使用者指南中的服務連結角色許可。
建立 Amazon ECS 的服務連結角色
您不需要手動建立服務連結角色,當您在 、 或 AWS API 中建立叢集 AWS 管理主控台,或建立 AWS CLI或更新服務時,Amazon ECS 會為您建立服務連結角色。
重要
此服務連結角色可以顯示在您的帳戶,如果您於其他服務中完成一項動作時,可以使用支援此角色的功能。Amazon ECS 自 2017 年 1 月 1 日開始支援服務連結角色,若您在這之前就有使用此服務,則 Amazon ECS 會在帳戶中建立 AWSServiceRoleForECS 角色。若要進一步了解,請參閱我的 中出現的新角色 AWS 帳戶。
您也可以使用 IAM 主控台透過 AWSServiceRoleForECS 使用案例建立服務連結角色。在 AWS CLI 或 AWS API 中,使用 IAM 建立具有服務名稱ecs.amazonaws.com的服務連結角色。如需詳細資訊,請參閱《IAM 使用者指南》中的「建立服務連結角色」。如果您刪除此服務連結角色,您可以使用此相同的程序以再次建立該角色。
若您刪除此服務連結角色,之後需要再次建立,您可以在帳戶中使用相同程序重新建立角色。在建立叢集,或者建立或更新服務時,Amazon ECS 會再次為您建立服務連結角色。
如果您刪除這個服務連結角色,則可使用相同的 IAM 程序再次建立該角色。
編輯 Amazon ECS 的服務連結角色
Amazon ECS 不允許您編輯 AWSServiceRoleForECS 服務連結角色。因為有各種實體可能會參考服務連結角色,所以您無法在建立角色之後變更角色名稱。然而,您可使用 IAM 來編輯角色描述。如需詳細資訊,請參閱《IAM 使用者指南》中的編輯服務連結角色。
刪除 Amazon ECS 的服務連結角色
您不需要手動刪除 AWSServiceRoleForECS 角色。當您刪除 AWS CLI、 AWS 管理主控台或 AWS API 中所有區域中的叢集時,Amazon ECS 會為您清除資源並刪除服務連結角色。
若您不再使用需要服務連結角色的功能或服務,我們建議您刪除該角色。如此一來,您就沒有未主動監控或維護的未使用實體。然而,務必清除您的服務連結角色,之後才能以手動方式將其刪除。
清除服務連結角色
在您使用 IAM 刪除服務連結角色之前,您必須先刪除該角色所使用的任何資源。
注意
若 Amazon ECS 服務在您試圖刪除資源時正在使用該角色,刪除可能會失敗。若此情況發生,請等待數分鐘後並再次嘗試操作。
刪除 AWSServiceRoleForECS (主控台) 所使用的 Amazon ECS 資源
-
將所有區域中所有 Amazon ECS 服務的所需計數都縮減到 0,然後刪除該服務。如需詳細資訊,請參閱更新 Amazon ECS 服務及使用主控台刪除 Amazon ECS 服務。
-
強制將所有容器執行個體從所有區域中的所有叢集取消註冊。如需詳細資訊,請參閱取消註冊 Amazon ECS 容器執行個體。
-
刪除所有區域中的所有 Amazon ECS 叢集。如需詳細資訊,請參閱刪除 Amazon ECS 叢集。
刪除 AWSServiceRoleForECS (CLI) 使用的 Amazon ECS 資源AWS
-
將所有區域中所有 Amazon ECS 服務的所需計數都縮減到 0,然後刪除該服務。如需詳細資訊,請參閱 AWS Command Line Interface 參考中的 update-service 和 delete-service。
-
強制將所有容器執行個體從所有區域中的所有叢集取消註冊。如需詳細資訊,請參閱 deregister-container-instance。
-
刪除所有區域中的所有 Amazon ECS 叢集。如需更多詳細資訊,請參閱 delete-cluster。
刪除 AWSServiceRoleForECS (API) 所使用的 Amazon ECS 資源
-
將所有區域中所有 Amazon ECS 服務的所需計數都縮減到 0,然後刪除該服務。如需詳細資訊,請參閱 Amazon ECS API Reference 中的 UpdateService 與 DeleteService。
-
強制將所有容器執行個體從所有區域中的所有叢集取消註冊。如需詳細資訊,請參閱 DeregisterContainerInstance。
-
刪除所有區域中的所有 Amazon ECS 叢集。如需詳細資訊,請參閱 DeleteCluster。
手動刪除服務連結角色
使用 IAM 主控台 AWS CLI、 或 AWS API 來刪除 AWSServiceRoleForECS 服務連結角色。如需詳細資訊,請參閱《IAM 使用者指南》中的刪除服務連結角色。
Amazon ECS 服務連結角色的支援區域
Amazon ECS 在所有提供服務的區域中支援使用服務連結角色。如需詳細資訊,請參閱 AWS Regions and endpoints。