ECS 是一種高度可擴展、高效能的容器編排服務,可讓您輕鬆地在Amazon Elastic Compute Cloud (EC2) 實例叢集或AWS Fargate上執行、停止和管理Docker 容器。 ECS 旨在透過自動執行管理和擴展容器基礎架構所涉及的許多任務來簡化容器化應用程式的部署。
無論從事什麼項目,如果基礎設施託管在AWS 上,很可能會發現由Amazon Elastic Container Service (ECS) 管理的容器化核心應用程序,因為它已經很成熟。因此,了解Amazon ECS 的定價結構對於有效管理成本至關重要。
我們Oncloud AI將透過本文幫助您簡單細分Amazon ECS 定價,將其與其他容器編排平台進行比較,討論優化成本的策略,並探索Amazon ECS 的AWS 免費套餐。
深入探討定價計算
我們必須根據您選擇的啟動類型(可以是Fargate必須根據選擇的啟動類型(可以是Fargate 、EC2 或Outposts )單獨計算ECS 的定價。此外,AWS 還提供ECS Anywhere,使能夠將ECS 實例編排用於本地實例
Fargate 啟動類型的定價
使用AWS Fargate時,您需要為容器化應用程式所需的vCPU 和記憶體資源量付費。 vCPU 和記憶體資源量從檢索容器映像的那一刻起計算,直到Amazon ECS 任務終止,四捨五入到最接近的秒數。最低收費為一分鐘。
號
影響定價的主要因素是計算資源的配置,其中包括:
- 指定時間內執行的ECS任務數
- 每個任務的執行時長
- 用於此任務的虛擬CPU (vCPU) 數量
- 任務所用的記憶體(以GB 為單位)
價格取決於所選的CPU 架構和作業系統。通常,具有ARM 處理器的Linux 是最實惠的選擇,而運行x86 上的Windows 是最昂貴的。
Windows 每小時vCPU 的額外費用來自作業系統授權費,也是按小時計費。
如果以Linux 和ARM 作為基線,按照百分比差異來重新表述這一點,我們可以看到Linux 尤其是X86 上的Windows 的價格要高得多。
總而言之,我們可以根據以下比較對Fargate 定價獲得一些簡單的見解:
- 如果應用程式與ARM 處理器相容,請利用它們,因為它們的成本效益顯著提高。
- 僅當確實沒有其他選擇時才使用Windows。
Amazon ECS 的Fargate Spot 定價
透過使用Fargate Spot,客戶可以執行能夠容忍可用容量中斷的Amazon ECS 任務,從而節省高達70% 的常規Fargate 成本。
在Amazon ECS 任務運行時有效的Spot 價格是您使用Fargate Spot 支付的價格。 AWS Fargate 設定Fargate Spot 價格,該價格根據Fargate Spot 容量的長期供需趨勢逐漸變化。您可以在AWS Fargate定價頁面上查看每個區域的當前vCPU-小時和GB-小時Spot 價格。
請記住僅對可中斷任務使用現貨定價,而不對需要連續執行的工作負載(例如面向客戶的Web 應用程式)使用現貨定價。
EC2 啟動類型定價
節省雲端資源至關重要,客戶可以根據客戶的需求採用多種技巧和竅門來實現節省和運算資源之間的最佳平衡。
使用Spot 實例
如前所述,競價型執行個體具有很大的節省潛力,但它們只應用於可中斷的工作負載。
這裡最棒的事情是,在客戶的服務的自動擴展策略中客戶可以指定一定數量的任務…
- 應該始終以按需模式運行,並且其餘的可以在可用時在現場實例上運行。
這樣,客戶就可以在成本最佳化和工作負載連續性之間保持平衡。
利用自動縮放
為了優化ECS 和Fargate 中的成本,可以利用自動擴展策略,根據應用程式的基線效能微調配置,確保叢集僅在必要時擴展,並根據每個應用程式的特定利用率(例如CPU 或磁碟利用率)設定閾值。
透過計劃擴展策略在不需要時停止實例
調度實例是降低成本的有效方法。例如,如果員工使用某個系統,那麼在週末或下班時間關閉系統是合乎邏輯的。另一種選擇是自動化批次調度,根據實例上執行所需的作業數量來操作實例。
客戶可以使用計劃擴展配置來安排ECS 工作負載,該配置可在ECS 和Fargate 中存取。
找到容器或實例大小的最佳點
若要正確調整應用程式的Fargate 運算資源大小,客戶可以使用CloudWatch 指標來監控應用程式隨時間變化的資源利用率。透過分析這些數據,客戶可以確定高效運行應用程式所需的最佳CPU 和記憶體量。
首先,客戶可以建立CloudWatch 警報來追蹤Fargate 任務的CPU 和記憶體使用情況。這些警報可以設定為在使用量超過特定閾值時觸發通知,讓客戶在影響效能之前採取措施。
收集到足夠的資料後,客戶可以使用CloudWatch 儀表板直觀地查看資源利用率趨勢並識別任何模式或異常。此資訊可用於調整分配給任務的CPU 和記憶體量,確保客戶不會過度配置資源並產生不必要的成本。
整體而言,使用CloudWatch 指標監控Fargate 資源利用率是優化效能和降低成本的強大工具。
利用折扣
擴展這個概念相對簡單:如果客戶清楚地了解客戶的專案至少需要一年的一定程度的計算資源,那麼強烈建議您利用前面討論過的可用計算節省計劃。透過這樣做,客戶可以確保整體雲端運算費用獲得大幅折扣。
這些運算節省計劃旨在為用戶提供具有成本效益的長期承諾解決方案,與按需定價模式相比,他們可以享受到顯著的節省。透過準確估計所需的資源並承諾一年或更長時間,客戶可以有效優化資源分配並大幅降低雲端運算服務的整體支出。
使用AWS Cost Explorer 和成本分配標籤
使用AWS Cost Explorer,客戶可以輕鬆分析成本結構,確定主要成本驅動因素,並透過檢查服務、區域、資源或實例類型詳細資訊來發現潛在的最佳化領域。
Cost Explorer 提供了一項重要的彈性功能,即成本分配標籤。這些標籤可以定義為衡量任何粒度等級的成本,並且可以根據需要進行建構和應用。此工具非常適合深入了解您的成本結構,讓客戶發現基礎設施的哪些特定部分會對您客戶的費用產生重大影響,無論是組件、子組件還是特定的服務群集。
另一個很棒的功能是使用類型過濾器,它顯示按AWS 區域分類的ECS 和Fargate 的使用時間。若要查看特定區域的Fargate 小時數,只需Fargate在搜尋框中輸入並包含適當的篩選器,例如USE1-Fargate-vCPU-Hours:perCPU(Hrs)顯示Fargate 實例的vCPU 小時數成本。客戶還可以找到具有相應過濾器(包括關鍵字)的現貨實例支出SpotUsage。
一般提示:使用AWS 預算
無法為單一服務或帳戶設定支出限額,導致所有費用都要支付。許多人因為擔心月底意外開支而拒絕了解雲端技術。
AWS 預算可用於建立超過特定成本閾值的警報。此外,AWS 還根據過去和目前的使用情況為客戶的帳戶提供成本預測,這也可用於觸發預算通知。
雖然預測會以特定間隔更新,但警報並非即時的。不過,如果客戶設定的支出限額被超出或即將被超出,客戶將透過電子郵件收到通知。
結論
總之,了解Amazon ECS 定價對於有效管理成本和優化資源利用率至關重要。
透過選擇正確的啟動類型、使用Spot 實例、採用自動擴展、調度工作負載以及使用CloudWatch 監控效能,您可以在容器化應用程式的成本效率和效能之間實現完美的平衡。
Oncloud AI身為AWS代理商,提供亞馬遜雲端服務,支援亞馬遜雲端伺服器AWS代付、AWS遷移、AWS維運託管等服務,如有相關需求可聯繫Oncloud AI。