彈性伸縮可以根據您設定的策略自動調整計算資源數量(即業務所需的實例數量),幫助您高效應對業務流量波動,提高資源利用率,并節約成本。對于周期性有規律的業務波動,您可以通過定時任務實現在指定的時間點觸發伸縮規則,自動增加或減少一定數量的ECS實例。
適用場景
場景描述
業務需求周期性波動,需求量變化有規律,可以根據時間段來判斷流量高峰和低谷,按時間點自動增加或減少服務器。
例如:某游戲公司的業務量固定在每晚18點~23點的時間段內增長,需要增加服務器,但在其他時段只需固定數量的服務器保證日常運營。
解決方案
根據業務波動的時間點來設置定時任務,在相應的時間點自動觸發伸縮規則,從而實現定時自動擴縮容服務器。
方案優勢
零備機成本
彈性伸縮可自動創建和釋放ECS實例,實現按需取用,無需備機。您只需針對日常業務流量保有計算資源。
自動擴縮容
通過定時任務實現在指定的時間點自動擴縮容,在滿足業務需求的同時節約資源和運維成本。
前提條件
步驟一:創建伸縮組
伸縮組是彈性伸縮的核心單元,用于管理具有相同應用場景的實例集合。彈性伸縮將會在該伸縮組內增加或減少實例。
進入伸縮組管理頁面。
登錄彈性伸縮控制臺。
在左側導航欄中,單擊伸縮組管理。
在頂部菜單欄處,選擇地域。
在頁面左上角,單擊創建伸縮組。
在通過表單創建頁簽下,完成伸縮組配置,然后單擊創建。
本文示例采用以下配置,未提及的配置項保持默認。更多關于伸縮組的配置說明,請參見創建伸縮組。
配置項
示例
描述
伸縮組名稱
test
輸入伸縮組名稱。格式要求請參考界面提示。
伸縮組類型
ECS
選擇ECS,表示伸縮組內的實例類型為ECS實例。
組內實例配置信息來源
從零開始創建
先不指定自動創建實例的模板。伸縮組創建完成后,您需要繼續創建伸縮配置。
組內最小實例數
1
設置伸縮組內實例數量的下限。當前實例數量低于下限時,伸縮組會自動添加實例,使得伸縮組內的實例數量等于下限。
組內最大實例數
5
設置伸縮組內實例數量的上限。當前實例數量超過上限時,伸縮組會自動移出實例,使得伸縮組內的實例數量等于上限。
專有網絡
vpc-bp1jmxxau0lur929p****
選擇伸縮組內ECS實例所屬的專有網絡。
選擇交換機
vsw-2zeknnyw2ewufbs4z****
vsw-2zesy03h8eaf9fe0l****
選擇伸縮組內ECS實例所屬的交換機。建議選擇多個交換機來提升擴容成功率。
步驟二:創建伸縮配置并啟用伸縮配置和伸縮組
伸縮配置是擴容時所增加的ECS實例的配置模板,包括實例付費模式、規格、存儲、網絡等配置信息。創建伸縮組配置后,您可以啟用伸縮配置,然后啟用伸縮組。
找到待操作的伸縮組,選擇任一種方式打開伸縮組詳情頁面。
在伸縮組名稱/ID列,單擊伸縮組ID。
在操作列,單擊查看詳情。
在頁面上方,單擊實例配置來源頁簽。
在伸縮配置頁簽下,單擊創建伸縮配置。
在創建伸縮配置頁面,完成相關參數配置,單擊創建。
本示例中采用以下配置,未提及的配置項保持默認。更多關于伸縮配置的配置說明,請參見創建伸縮配置(ECS實例)。
區域
配置項
示例
描述
基礎信息
伸縮配置名稱
test
輸入伸縮配置的名稱。格式要求請參考界面提示。
付費模式
按量付費
彈性伸縮服務免費,但您需要為擴容時所增加的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實例設置密碼。
在彈出的伸縮配置預覽對話框中,確認配置信息,然后單擊確認創建。
在彈出的伸縮配置創建成功對話框中,單擊啟用配置。
在彈出的選用伸縮配置對話框中,單擊確定。
說明在一個伸縮組內,您必須啟用一個伸縮配置。啟用伸縮配置后,該伸縮配置處于生效狀態。
在彈出的啟用伸縮組對話框中,單擊確定。
啟用伸縮組后,彈性伸縮才會按照您的配置實現擴容和縮容。
本示例伸縮組內的最小實例數為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可查看詳細信息。