本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
為 Amazon EC2 啟動類型建立 Amazon ECS 叢集
您可以建立叢集來定義任務和服務執行所在的基礎設施。
開始之前,請務必先完成 設定以使用 Amazon ECS。 中的步驟,並指派適當的 IAM 許可。如需詳細資訊,請參閱Amazon ECS 叢集範例。Amazon ECS 主控台提供簡單的方法,透過建立 AWS CloudFormation 堆疊來建立 Amazon ECS 叢集所需的資源。
為了使叢集建立程序盡可能簡單,主控台提供了許多可供選擇的預設選項,我們將在下方加以說明。主控台的大多數區段還有說明面板,以提供更多上下文。
您可以在建立叢集時註冊 Amazon EC2 執行個體,或在建立叢集之後用叢集註冊其他執行個體。
您可以修改下列預設選項:
-
變更執行個體啟動的子網路
-
變更用來控制容器執行個體流量的安全群組
-
將命名空間新增至叢集。
命名空間可讓您在叢集中建立的服務連線到命名空間中的其他服務,而不需要額外的組態。如需詳細資訊,請參閱互連 Amazon ECS 服務。
-
使用增強的可觀測性開啟 Container Insights,或 Container Insights。
CloudWatch Container Insights 會從您的容器化應用程式和微型服務收集、彙總及總結指標和日誌。Container Insights 還提供診斷資訊,例如容器重新啟動故障,您可以使用這些資訊快速隔離和解決這些問題。如需詳細資訊,請參閱使用具有增強可觀測性的 Container Insights 監控 Amazon ECS 容器。
2024 年 12 月 2 日, AWS 發佈了 Container Insights 並增強了 Amazon ECS 的可觀測性。此版本支援使用 Amazon EC2 和 Fargate 啟動類型的 Amazon ECS 叢集增強可觀測性。在 Amazon ECS 上以增強的可觀測性設定 Container Insights 之後,Container Insights 會自動收集從叢集層級到環境中容器層級的詳細基礎設施遙測,並在顯示各種指標和維度的儀表板中顯示您的資料。然後,您可以在 Container Insights 主控台上使用這些out-of-the-box儀表板,以進一步了解您的容器運作狀態和效能,並透過識別異常狀況更快速地解決問題。
我們建議您使用 Container Insights 搭配增強的可觀測性,而不是 Container Insights,因為它可在您的容器環境中提供詳細的可見性,從而減少解決的平均時間。
-
為您的受管儲存指派 AWS KMS 金鑰。如需有關如何建立金鑰的資訊,請參閱AWS Key Management Service 《 使用者指南》中的建立 KMS 金鑰。
-
為您的 Fargate 暫時性儲存指派 AWS KMS 金鑰。如需如何建立金鑰的資訊,請參閱AWS Key Management Service 《 使用者指南》中的建立 KMS 金鑰。
-
新增標籤以協助您識別叢集。
Auto Scaling 群組選項
如果使用 Amazon EC2 執行個體,則必須指定 Auto Scaling 群組來管理任務和服務執行所在的基礎設施。
當您選擇建立新的 Auto Scaling 群組時,系統會自動設定為以下行為:
-
Amazon ECS 管理 Auto Scaling 群組的縮減和水平擴展動作。
-
Amazon ECS 不會防止包含任務和位於 Auto Scaling 群組中的 Amazon EC2 執行個體在縮減動作期間被終止。如需詳細資訊,請參閱 AWS Auto Scaling 使用者指南中的執行個體保護。
您可以設定以下 Auto Scaling 群組屬性,以確定要為群組啟動的執行個體類型和數量:
-
Amazon ECS 最佳化 AMI。
-
執行個體類型。
-
連線到執行個體時證明您身分的 SSH 金鑰對。如需有關如何建立 SSH 金鑰的資訊,請參閱《Amazon EC2 使用者指南》中的 Amazon EC2 金鑰對和 Linux 執行個體。 Amazon EC2
-
要為 Auto Scaling 群組啟動的最小執行個體數量。
-
將為 Auto Scaling 群組啟動的最大執行個體數量。
為了水平擴展群組,最大值必須大於 0。
作為 AWS CloudFormation
堆疊的一部分,Amazon ECS 代表您建立 Amazon EC2 Auto Scaling 啟動範本和 Auto Scaling 群組。您為 AMI、執行個體類型和 SSH 金鑰對指定的值為啟動範本的一部分。範本字首會加上 EC2ContainerService-<
,這使得它們容易識別。Auto Scaling 群組的字首為 ClusterName
><
。ClusterName
>-ECS-Infra-ECSAutoScalingGroup
為 Auto Scaling 群組啟動的執行個體使用啟動範本。
網路選項
根據預設,執行個體會啟動至「區域」的預設子網路中。系統會使用安全群組,這些安全群組會控制目前與子網路相關聯的容器執行個體流量。您可以變更執行個體的子網路和安全群組。
您可以選擇現有的子網路。您可以使用現有的安全群組,也可以建立新的安全群組。當您建立新的安全群組時,您需要指定至少一個傳入規則。
傳入規則會決定哪些流量可以連接到您的容器執行個體,並包含下列屬性:
-
要允許的通訊協定
-
要允許的連接埠範圍
-
傳入流量 (來源)
若要允許來自特定位址或 CIDR 區塊的傳入流量,請針對來源使用自訂選項,且具有允許的 CIDR。
若要允許來自所有目的地的傳入流量,請針對來源使用隨處。此選項會自動新增 0.0.0.0/0 IPv4 CIDR 區塊和 ::/0 IPv6 CIDR 區塊。
若要允許來自本機電腦的傳入流量,請針對來源使用來源群組。這會自動將您本機電腦目前的 IP 地址新增為允許的來源。
建立新叢集 (Amazon ECS 主控台)
在開始之前,請指派適當的 IAM 許可。如需詳細資訊,請參閱Amazon ECS 叢集範例。
開啟主控台,網址為 https://console.aws.amazon.com/ecs/v2
。 -
從導覽列中選取要使用的「區域」。
-
在導覽窗格中,選擇叢集。
-
在 Clusters (叢集) 頁面上,選擇 Create cluster (建立叢集)。
-
在叢集組態下,設定下列項目:
-
在叢集名稱下輸入唯一的名稱。
名稱可以包含最多 255 個字母 (大小寫)、數字與連字號。
-
(選用) 若要讓 Service Connect 使用的命名空間與叢集名稱不同,請在命名空間中輸入唯一的名稱。
-
-
將 Amazon EC2 執行個體新增至叢集,展開基礎設施,然後選取 Amazon EC2 執行個體。
接下來,設定作為容量提供者的 Auto Scaling 群組:
-
要使用現有 Auto Scaling 群組,請從 Auto Scaling group (ASG) (Auto Scaling 群組 (ASG)) 中選取該群組。
-
若要建立 Auto Scaling 群組,請從 Auto Scaling group (ASG) (Auto Scaling 群組 (ASG)) 中選取 Create new group (建立新群組),然後提供有關該群組的下列詳細資訊:
-
針對佈建模型,選擇是否使用隨需執行個體或 Spot 執行個體。
-
如果您選擇使用 Spot 執行個體,對於配置策略,請選擇要用於執行個體的 Spot 容量集區 (執行個體類型和可用區域)。
對於大多數工作負載,您可以選擇價格容量最佳化。
如需詳細資訊,請參閱《Amazon EC2 使用者指南》中的 Spot 執行個體的分配策略。
-
針對容器執行個體 Amazon Machine Image (AMI),選擇 Auto Scaling 群組執行個體的 Amazon ECS 最佳化 AMI。
-
對於 EC2 instance type (EC2 執行個體類型),選擇適合您工作負載的執行個體類型。
如果 Auto Scaling 群組使用相同或類似的執行個體類型,則受管擴展效果最佳。
-
針對 EC2 執行個體角色,選擇現有的容器執行個體角色,或者您可以建立新的容器執行個體角色。
如需詳細資訊,請參閱Amazon ECS 容器執行個體 IAM 角色。
-
對於容量,輸入 Auto Scaling 群組中要啟動的最小執行個體數和最大執行個體數。
-
對於 SSH key pair (SSH 金鑰對),選擇在連線到執行個體時證明您身分的金鑰對。
-
若要允許較大的映像和儲存體,請在根 EBS 磁碟區大小中輸入 GiB 值。
-
-
-
(選用) 若要變更 VPC 和子網路,請在 Amazon EC2 執行個體的聯網能力下,執行下列任一操作:
-
若要移除子網路,請在 Subnets (子網路) 下,對您要移除之每一個子網路選擇 X。
-
若要變更為非預設 VPC,請在 VPC 下,選擇現有的 VPC,然後在子網路下選擇子網路。
-
選擇安全群組。在安全群組下,選擇以下其中一個選項:
-
若要使用現有的安全群組,請選擇使用現有安全群組,然後選擇安全群組。
-
若要建立安全群組,請選擇建立新的安全群組。然後,針對傳入規則選擇新增規則。
如需傳入規則的資訊,請參閱 網路選項。
-
-
若要自動將公有 IP 地址指派給 Amazon EC2 容器執行個體,針對自動指派公有 IP,請選擇下列其中一個選項:
-
使用子網路設定:當執行個體啟動的子網路為公有子網路時,將公有 IP 地址指派給行個體。
-
開啟:將公有 IP 位址指派給執行個體。
-
-
-
(選用) 使用 Container Insights,展開監控,然後選擇下列其中一個選項:
-
若要使用建議的 Container Insights 搭配增強型可觀測性,請選擇 Container Insights 搭配增強型可觀測性。
-
若要使用 Container Insights,請選擇 Container Insights。
-
-
(選用)
如果您使用執行期監控搭配手動選項,而且想要讓 GuardDuty 監控此叢集,請選擇新增標籤並執行下列動作:
-
針對金鑰,輸入
guardDutyRuntimeMonitoringManaged
-
針對數值,輸入
true
。
-
-
(選用) 加密受管儲存上的資料。在加密下,針對受管儲存,輸入您要用來加密受管儲存資料的 AWS KMS 金鑰 ARN。
-
(選用) 若要管理叢集標籤,請展開標籤,然後執行下列其中一項操作:
[新增標籤] 選擇新增標籤,並執行下列動作:
-
對於 Key (金鑰),輸入金鑰名稱。
-
對於 Value (值),進入金鑰值。
[移除標籤] 選擇標籤「金鑰」和「值」右側的移除。
-
-
選擇建立。
後續步驟
建立叢集之後,您可以為應用程式建立任務定義,然後將它們當做獨立任務或服務的一部分執行。如需詳細資訊,請參閱下列內容: