iT邦幫忙

2025 iThome 鐵人賽

DAY 15
1
Build on AWS

AWS 雲原生,學起來比泡咖啡還快系列 第 15

DAY15 - Auto Scaling:演員太紅?加開人數!

  • 分享至 

  • xImage
  •  

ECS 服務自動擴展 (Service Auto Scaling)

Service Auto Scaling 使你可以根據 Amazon CloudWatch 指標,自動調整 ECS 服務的任務數量,從而提高應用的彈性與資源效率。設定自動擴展後,ECS 可以根據負載狀況,自動調整所需的容器數量,以確保系統運行高效且穩定。

https://ithelp.ithome.com.tw/upload/images/20250917/20145462nHa711PNXI.png

使用 Service Auto Scaling

  1. 勾選 Service Auto Scaling 選項,並設定 ECS 服務根據負載自動調整任務數量。
  2. 進入 服務詳細資訊 頁面中的 服務自動擴展區段,可以設定進階擴展行為,包含:
    • 預測性擴展
    • 排程擴展動作

任務數量上下限

  • 任務數量下限:設定自動擴展時最少的任務數量,避免過度縮減。
  • 任務數量上限:設定自動擴展時最多的任務數量,避免擴展過度。

擴展政策類型

選擇 ECS 服務所使用的自動擴展政策類型:

目標追蹤 (Target Tracking)

  • 根據特定指標(如 CPU 使用率)是否高於或低於「目標值」來調整任務數量。
  • 例如,設定目標 CPU 使用率為 50%,當 CPU 使用率超過此值時,會觸發自動擴展;低於此值時會進行縮減。

步驟擴展 (Step Scaling)

  • 根據 CloudWatch 警示的違規程度,採取分級調整策略(步驟調整)。
  • 這種方式適用於需要更細緻控制調整幅度的場景,像是當負載急劇變化時可以有更精細的調整。

其他設定項目

  • 政策名稱:為此自動擴展策略命名,以便識別。
  • ECS 服務指標:選擇用來驅動擴展的指標(例如:CPU、Memory)。
  • 目標值:設定觸發自動擴展的數值門檻。
  • 擴展冷卻時間:設定擴展後的冷卻時間,在此時間內不會再次觸發擴展動作。預設值為 300 秒。
  • 縮減冷卻時間:設定縮減後的冷卻時間,避免任務頻繁進行增加與移除操作。
  • 關閉縮減:防止服務在低負載情況下自動縮減任務。

使用建議

情境 建議政策
一般應用,負載穩定波動 使用 目標追蹤(簡單設定,自動調整)
高度變化的服務,需自訂反應 使用 步驟擴展(進階控制)
想防止閃縮(flapping)問題 調高冷卻時間、設置下限任務數

架構小提醒

  • 監控指標:務必選擇與應用負載密切相關的 CloudWatch 指標,如 CPU、Memory 使用率等,確保能夠有效反映負載變化。
  • 冷卻時間設定:適當設置冷卻時間可以防止擴展或縮減過於頻繁,導致不必要的資源浪費或服務中斷。
  • 測試與調整:在實際運行中,根據應用的具體需求定期檢視並調整擴展策略,以實現最佳的性能和資源利用。

上一篇
DAY14 - ALB 入場:觀眾終於能看到服務
下一篇
DAY16 - EKS vs ECS:雙胞胎的差異
系列文
AWS 雲原生,學起來比泡咖啡還快20
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
dreamer_hou
iT邦新手 4 級 ‧ 2025-09-18 09:07:31

按贊、訂閱加分享~~~

我要留言

立即登入留言