Auto Scaling可以根據您設定的策略自動調整計算資源數量(即業務所需的執行個體數量),協助您高效應對業務流量波動,提高資源使用率,並節約成本。對於周期性有規律的業務波動,您可以通過定時任務實現在指定的時間點觸發伸縮規則,自動增加或減少一定數量的ECS執行個體。
適用情境
情境描述
業務需求周期性波動,需求量變化有規律,可以根據時間段來判斷流量高峰和低穀,按時間點自動增加或減少伺服器。
例如:某遊戲公司的業務量固定在每晚18點~23點的時間段內增長,需要增加伺服器,但在其他時段只需固定數量的伺服器保證日常營運。
解決方案
根據業務波動的時間點來設定定時任務,在相應的時間點自動觸發伸縮規則,從而實現定時自動擴縮容伺服器。
方案優勢
零備機成本
Auto Scaling可自動建立和釋放ECS執行個體,實現按需取用,無需備機。您只需針對日常業務流量保有計算資源。
自動擴縮容
通過定時任務實現在指定的時間點自動擴縮容,在滿足業務需求的同時節約資源和營運成本。
前提條件
首次使用Auto Scaling時,已完成RAM相關授權操作。
步驟一:建立伸縮組
伸縮組是Auto Scaling的核心單元,用於管理具有相同應用情境的執行個體集合。Auto Scaling將會在該伸縮組內增加或減少執行個體。
進入伸縮組管理頁面。
- 登入Auto Scaling控制台。
在左側導覽列中,單擊伸縮組管理。
在頂部功能表列處,選擇地區。
在頁面左上方,單擊建立伸縮組。
在通過表單建立頁簽下,完成伸縮組配置,然後單擊確認。
本文樣本採用以下配置,未提及的配置項保持預設。更多關於伸縮組的配置說明,請參見建立伸縮組。
配置項
樣本
描述
伸縮組名稱
test
輸入伸縮組名稱。格式要求請參考介面提示。
伸縮群組類型
ECS
選擇ECS,表示伸縮組內的執行個體類型為ECS執行個體。
組內執行個體配置資訊來源
從零開始建立
先不指定自動建立執行個體的模板。伸縮組建立完成後,您需要繼續建立伸縮配置。
組內最小執行個體數
1
設定伸縮組內執行個體數量的下限。當前執行個體數量低於下限時,伸縮組會自動添加執行個體,使得伸縮組內的執行個體數量等於下限。
組內最大執行個體數
5
設定伸縮組內執行個體數量的上限。當前執行個體數量超過上限時,伸縮組會自動移出執行個體,使得伸縮組內的執行個體數量等於上限。
網路類型
專用網路
選擇專用網路,表示伸縮組內的ECS執行個體的網路類型為專用網路。
專用網路
vpc-bp1jmxxau0lur929p****
選擇伸縮組內ECS執行個體所屬的專用網路。
選擇交換器
vsw-2zeknnyw2ewufbs4z****
vsw-2zesy03h8eaf9fe0l****
選擇伸縮組內ECS執行個體所屬的交換器。建議選擇多個交換器來提升擴容成功率。
步驟二:建立伸縮配置並啟用伸縮配置和伸縮組
伸縮配置是擴容時所增加的ECS執行個體的配置模板,包括執行個體付費模式、規格、儲存、網路等配置資訊。建立伸縮組配置後,您可以啟用伸縮配置,然後啟用伸縮組。
- 找到待操作的伸縮組,選擇任一種方式開啟伸縮組詳情頁面。
- 在伸縮組名稱/ID列,單擊伸縮組ID。
- 在操作列,單擊查看詳情。
- 在頁面上方,單擊執行個體配置來源頁簽。
在伸縮配置頁簽下,單擊建立伸縮配置。
在建立伸縮配置頁面,完成相關參數配置,單擊建立。
本樣本中採用以下配置,未提及的配置項保持預設。更多關於伸縮配置的配置說明,請參見建立伸縮配置(ECS執行個體)。
地區
配置項
樣本
描述
基礎資訊
伸縮配置名稱
test
輸入伸縮配置的名稱。格式要求請參考介面提示。
付費模式
隨用隨付
Auto Scaling服務免費,但您需要為擴容時所增加的ECS執行個體付費。本文採用隨用隨付方式作為樣本。更多資訊,請參見計費概述。
執行個體和鏡像
執行個體配置方式
指定執行個體屬性
選擇指定執行個體屬性方式來配置ECS執行個體的規格需求。
指定執行個體屬性群組合
2 vCPU,4 GiB記憶體,企業級
設定ECS執行個體的vCPU和記憶體需求。
選擇鏡像
公用鏡像Alibaba Cloud Linux 3.2104 LTS 64位
選擇用於部署ECS執行個體的鏡像。本文以公用鏡像作為樣本,實際業務情境請選用您已部署應用的自訂鏡像。
儲存
系統硬碟
ESSD雲端硬碟,40 Gib,PL0
為ECS執行個體選擇系統硬碟。
網路和安全性群組
公網IP
選中分配公網IPv4地址,預設按固定頻寬計費,頻寬值預設為1 Mbit/s。
按需選擇是否為ECS執行個體分配公網IP地址。按公網出方向實際發生的頻寬計費,頻寬費用合并在ECS執行個體中收取。
安全性群組
sg-bp18kz60mefsicfg****
選擇您提前建立好的安全性群組。如需建立安全性群組,請參見建立安全性群組。
管理設定
登入憑證
建立後設定
ECS執行個體建立完成後,再手動為ECS執行個體設定密碼。
在彈出的伸縮配置預覽對話方塊中,確認配置資訊,然後單擊確認建立。
在彈出的伸縮配置建立成功對話方塊中,單擊啟用配置。
在彈出的選用伸縮配置對話方塊中,單擊確定。
說明在一個伸縮組內,您必須啟用一個伸縮配置。啟用伸縮配置後,該伸縮配置處於生效狀態。
在彈出的啟用伸縮組對話方塊中,單擊確定。
啟用伸縮組後,Auto Scaling才會按照您的配置實現擴容和縮容。
本樣本伸縮組內的最小執行個體數為1,因此啟用伸縮組後,系統會基於伸縮配置自動建立一台ECS執行個體。您可以在伸縮組詳情頁面的執行個體列表頁簽下,選擇自動建立頁簽,查看執行個體資訊。
步驟三:建立伸縮規則
伸縮規則用來指定每次伸縮活動的規則,如增加或者減少ECS執行個體的數量。
在伸縮組詳情頁面,單擊伸縮規則與警示任務頁簽,然後單擊伸縮規則頁簽。
單擊建立伸縮規則,完成伸縮規則配置,然後單擊確認。
本樣本採用簡單規則。更多關於伸縮規則的配置說明,請參見配置伸縮規則。
配置項
描述
規則名稱
輸入規則名稱。格式要求請參考介面提示。
伸縮規則類型
本樣本採用簡單規則。更多關於伸縮規則的介紹,請參見伸縮規則概述。
執行的操作
設定觸發規則時,需要增加或減少多少執行個體。單次伸縮支援的最大執行個體數為1000台。
冷卻時間
可選項,單位為秒。不填寫則預設使用伸縮組的冷卻時間,更多資訊,請參見冷卻時間。
請重複該步驟,分別建立擴容規則和縮容規則。配置樣本如下:
伸縮規則
配置樣本
擴容規則
規則名稱:add
伸縮規則類型:簡單規則
執行的操作:增加1台
縮容規則
規則名稱:remove
伸縮規則類型:簡單規則
執行的操作:減少1台
步驟四:建立定時任務
定時任務是一種預設任務,可以在指定時間執行指定伸縮規則。
在伸縮組詳情頁面,單擊伸縮規則與警示任務頁簽,然後單擊定時任務頁簽。
單擊建立定時任務,完成任務配置,然後單擊確認。
需要關注的任務配置如下,未提及的配置項保持預設。更多關於定時任務的配置說明,請參見定時任務概述。
配置項
描述
任務名稱
輸入任務名稱。格式要求請參考介面提示。
執行時間
設定任務的觸發時間。
伸縮方式
選中選擇已有伸縮規則。
伸縮規則(簡單規則)
選擇要執行的伸縮規則。
週期
設定任務的週期。例如:按天,每1天執行一次。
請重複該步驟,分別建立觸發擴容規則和縮容規則的定時任務。配置樣本如下:
定時任務
配置樣本
定時擴容
任務名稱:scheduled-add
執行時間:2024年5月16日 18:00
伸縮方式:選擇已有伸縮規則
伸縮規則(簡單規則):add
週期:按天,每1天執行一次。
定時縮容
任務名稱:scheduled-remove
執行時間:2024年5月16日 23:00
伸縮方式:選擇已有伸縮規則
伸縮規則(簡單規則):remove
週期:按天,每1天執行一次。
驗證自動擴縮容效果
定時任務建立後,系統會自動按照任務的時間點來執行伸縮規則。
本樣本實現效果為:
每天18點自動增加1台ECS執行個體
每天23點自動減少1台ECS執行個體
您可以通過以下方式確認效果:
定時任務觸發時,在伸縮組詳情頁面的執行個體列表頁簽下,選擇自動建立頁簽,然後在執行個體列表中觀察執行個體數量變化。
定時任務觸發後,在伸縮組詳情頁面的伸縮活動頁簽下,查看是否已按時觸發伸縮活動,單擊伸縮活動ID可查看詳細資料。