iT邦幫忙

2021 iThome 鐵人賽

DAY 9
0
  • ASG 是用來:
    • scale out (增加 EC2 個體) 以符合增加的工作量
    • scale in (減少 EC2 個體) 以符合減少的工作量
    • 確保運行的機器數目有在最少和作多的數目界限內
    • 可以自動將新的個體註冊到 load balancer

ASG 屬性

  • ASG 在啟動時需要提供以下資訊
    • AMI 和個體類型
    • EC2 會用到的 user data
    • EBS
    • Sceurity Groups
    • SSH key pair
  • 初始容量,最大和最小數目
  • 網路及 subnet 相關資訊
  • Load balancer 資訊
  • Sacling 的 policies

Auto scaling

  • 可以依據 CloudWatch alarm 做 scale
    • 例如, monitor 一個像是平均 CPU 利用率的 metric
    • 當然 metric 的計算是基於 ASG 內的所有 個體
  • 現在有支援的規則
    • Target Average CPU Usage
    • Number of requests on the ELB per instance
    • Average Network In
    • Average Network Out
    • 以上這些需要在 Scaling policy 的類型選 "Create a target tracking scaling policy" 才會有這些 Metric
    • based on 客製化的 metric (如, 已連線的使用者數目)

Dynamic Scaling Policies

  • Target Tracking Scaling
    • 根據特定指標的目標做 scaling, 增加或減少容量
    • 例如將 ASG CPU 的平均利用率維持在 45%
  • Simple / Step Scaling
    • 漸進式 scaling
    • 例如當 CPU > 65%, 增加 2 個 EC2 個體, 當 CPU < 30% 時減少為一個 EC2 個體
  • Scheduled Actions
    • 如果知道服務被使用的模式時, 可用排程的方式

Scaling cooldown

  • 在觸發做 scaling 後會有一段 cooldown 時間, 預設是 300 秒
  • 在這段期間 ASG 不會增加或終止個體
  • 這樣有助於防止因過時的指標而啟動額外的 scaling
  • 所以使用一個馬上能用的 AMI 可以減少啟動時間, 快速就緒, 減少 cooldown 時間

上一篇
[DAY 08] Elastic Load Balancer
下一篇
[DAY 10] AWS RDS
系列文
邁向 AWS Certified Solutions Architect - Associate16
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言