ECS 集群層 - AWS OpsWorks

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

ECS 集群層

重要

該 AWS OpsWorks Stacks 服務於 2024 年 5 月 26 日終止使用壽命,並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載移轉至其他解決方案。如果您對移轉有任何疑問,請透過 AWS Re: post 或透過進AWS 階 Support 與 AWS Support 團隊聯絡。

Amazon 彈性容器服務 (Amazon ECS) 管理亞馬遜彈性運算雲端 (Amazon EC2) 執行個體 (稱為容器執行個體) 叢集上的 Docker 容器。ECS 叢集層代表 Amazon ECS 叢集,並透過提供下列功能來簡化叢集管理:

  • 簡化的容器執行個體佈建及管理

  • 容器執行個體作業系統及套件更新

  • 使用者許可管理

  • 容器執行個體效能監控

  • Amazon Elastic Block Store (Amazon EBS) 磁碟區管理

  • 公有和彈性 IP 地址管理

  • 安全群組管理

ECS 群集層具有以下限制和要求:

  • layer 僅適用於在 VPC 中執行的 Chef 11.10 或 Chef 12 Linux 堆疊,包含預設 VPC

  • layer 的執行個體必須執行以下任一作業系統。

    • Amazon Linux 2

    • Amazon Linux 2018.03

    • Amazon Linux 2017.09

    • Amazon Linux 2017.03

    • Amazon Linux 2016.09

    • Amazon Linux 2016.03

    • Amazon Linux 2015.09

    • Amazon Linux 2015.03

    • Ubuntu 18.04 LTS

    • Ubuntu 16.04 LTS

    • Ubuntu 14.04 LTS

    • 自訂

  • layer 的執行個體上的 AWS OpsWorks Stacks 代理程式版本必須為 3425-20150727112318 或更新版本。

將 ECS 叢集層新增至堆疊

AWS OpsWorks 堆疊可簡化現有 Amazon ECS 叢集的容器執行個體啟動和維護程序。若要建立或啟動其他 Amazon ECS 實體,例如叢集和任務,請使用 Amazon ECS 主控台、命令列界面 (CLI) 或 API。如需詳細資訊,請參閱 Amazon 彈性容器服務開發人員指南。) 然後,您可以透過建立 ECS 叢集層來將叢集與堆疊相關聯,以便在 AWS OpsWorks Stacks 中管理叢集。

您可以將叢集與堆疊建立關聯,如下所示:

  • 每個堆疊可以有一個 ECS 叢集層,代表單一叢集。

  • 一個叢集只能與一個堆疊建立關聯。

在將 ECS 叢集層新增至堆疊之前,您必須先更新通常命名的 AWS OpsWorks 堆疊 AWS Identity and Access Management (IAM) 服務角色aws-opsworks-service-role,以允許 AWS OpsWorks 堆疊代表您與 Amazon ECS 互動。如需服務角色的詳細資訊,請參閱允許 AWS OpsWorks 堆疊代表您採取行動

第一次建立 ECS 叢集層時,主控台會提供「更新」按鈕,您可以選擇指示「 AWS OpsWorks 堆疊」來為您更新角色。 AWS OpsWorks 「堆疊」接著會顯示「新增層次」頁面,讓您可以將圖層新增至堆疊。您只需要更新服務角色一次。然後,您可以使用更新的角色將 ECS 叢集層新增至任何堆疊。

注意

若您偏好的話,您可以透過將 ecs:* 許可新增至現有的政策來手動更新服務角色的政策,如下所示:

{ "Statement": [ { "Action": [ "ec2:*", "iam:PassRole", "cloudwatch:GetMetricStatistics", "elasticloadbalancing:*", "rds:*", "ecs:*" ], "Effect": "Allow", "Resource": ["*"] } ] }

將叢集與堆疊建立關聯需要兩項操作:使用堆疊註冊叢集,然後建立關聯 layer。St AWS OpsWorks acks 主控台結合了這些步驟;圖層建立會自動註冊指定的叢集。如果您使用 AWS OpsWorks Stack API、CLI 或 SDK,則必須使用不同的作業來註冊叢集並建立關聯的層。若要使用主控台將 ECS 叢集層新增至堆疊,請選擇 [層],選擇 [+ 層] 或 [新增],然後選擇 ECS 叢集層類型。

Add Layer (新增 Layer) 頁面包含下列組態選項:

ECS 叢集

您想要在堆疊中註冊的 Amazon ECS 叢集。

EC2 Instance profile (EC2 執行個體描述檔)

叢集的亞馬遜彈性運算雲端 (Amazon EC2) 執行個體設定檔。此設定檔授予在叢集容器執行個體上執行的應用程式存取其他 AWS 服務 (包括 Amazon ECS) 的權限。當您建立第一個 ECS 叢集層時,請選擇具有 ECS 存取權的新設定檔直接 AWS OpsWorks 堆疊以建立必要的設定檔,此設定檔會命名為。aws-opsworks-ec2-role-with-ecs然後,您可以將該設定檔用於所有後續 ECS 叢集層。如需執行個體描述檔的詳細資訊,請參閱指定在 EC2 執行個體上執行之應用程式的許可

您可以藉由編輯 layer 的組態指定其他設定,包含:

管理 ECS 叢集

建立 ECS 叢集層之後,您可以使用 AWS OpsWorks Stack 來管理叢集,如下所示:

佈建及管理容器執行個體

一開始,ECS 叢集層不會包含任何容器執行個體,即使原始叢集已包含。一個選項是透過使用下列項目的適當組合,管理 layer 的執行個體:

注意

如果 Amazon ECS 不支持堆棧的默認操作系統,則必須明確指定支持的操作系統-Amazon Linux 2,Amazon Linux 2018.03,Amazon Linux 2017.09,Amazon Linux 2017.03,Amazon Linux 2016.09,Amazon。請勿使用 ECS 最佳化 AMI 在 ECS 層中建立執行個體,因為此 AMI 已包含 ECS 代理程式。 AWS OpsWorks Stack 也會在執行個體設定程序期間嘗試安裝 ECS 代理程式,而衝突可能會導致安裝失敗。

如需詳細資訊,請參閱最佳化應用程式伺服器的數目。 AWS OpsWorks 堆疊會將 AWS OpsWorks-ECS 叢集安全群組指派給每個執行個體。每個新執行個體完成啟動後, AWS OpsWorks Stacks 會透過安裝 Docker 和 Amazon ECS 代理程式,然後將執行個體向叢集註冊,將其轉換為容器執行個體。

如果您偏好使用現有的容器執行個體,可以在堆疊中註冊它們,並將它們指派給 ECS 叢集層。請注意,執行個體必須執行支援的作業系統,Amazon Linux 2015.03 或更新版本、Ubuntu 14.04 LTS 或更新版本。

注意

容器執行個體不能同時屬於 ECS 叢集層和另一個內建層。不過,容器執行個體可以屬於 ECS 叢集層和一或多個自訂層

執行作業系統及套件更新

新執行個體完成開機後, AWS OpsWorks Stacks 會安裝最新的更新。然後,您可以使用「 AWS OpsWorks 堆疊」將容器執行個體保持在最新狀態。如需詳細資訊,請參閱 管理安全性更新

管理使用者許可

AWS OpsWorks 堆疊提供簡單的方式來管理容器執行個體的權限,包括管理使用者的安全殼層金鑰。如需詳細資訊,請參閱 管理使用者許可管理 SSH 存取

監控效能指標

AWS OpsWorks 堆疊提供多種方式來監控堆疊、層級或個別執行個體的效能指標。如需詳細資訊,請參閱 監控

您可以透過 Amazon ECS 處理其他管理任務,例如建立任務或服務。如需詳細資訊,請參閱《Amazon Elastic Container Service 開發人員指南》

注意

若要直接前往 Amazon ECS 主控台上的叢集頁面,請選擇「執行個體」,然後選擇「ECS 叢集」(位於 ECS 叢集層區段右上角附近)。

從堆疊刪除 ECS 叢集層

當您不再需要叢集時,請刪除 ECS 叢集層並取消註冊關聯的叢集。從堆疊移除叢集需要兩項操作:取消註冊叢集,然後刪除關聯 layer。 AWS OpsWorks 堆疊主控台結合了這些步驟;圖層刪除會自動取消註冊指定的叢集。如果您使用 AWS OpsWorks Stack API、CLI 或 SDK,則必須使用個別作業來取消註冊叢集並刪除關聯的層。

使用控制台刪除 ECS 叢集層
  1. 如果您想要控制關閉任務的方式,請使用 Amazon ECS 主控台、API 或 CLI 來縮減和刪除叢集的服務。如需詳細資訊,請參閱清理您的 Amazon ECS 資源

  2. 停止 layer 的執行個體,然後刪除執行個體。當您停止容器執行個體時, AWS OpsWorks Stacks 會自動停止任何執行中的工作、從叢集中取消註冊執行個體,並終止執行個體。

    注意

    若您有已使用堆疊註冊的現有容器執行個體,您可以從 layer 取消指派執行個體,然後取消註冊他們,使執行個體回歸 ECS 的控制。

  3. 刪除圖層。 AWS OpsWorks 堆疊會取消註冊關聯的叢集,但不會將其刪除。該群集仍保留在 Amazon ECS 中。