根據(jù)業(yè)務負載自動擴縮容ECS實例
彈性伸縮可以根據(jù)您設定的策略自動調(diào)整計算資源數(shù)量(即業(yè)務所需的實例數(shù)量),幫助您高效應對業(yè)務流量波動,提高資源利用率,并節(jié)約成本。對于無規(guī)律的業(yè)務波動,您可以通過報警任務來監(jiān)控業(yè)務負載,在監(jiān)控指標(如CPU使用率)達到報警閾值時觸發(fā)伸縮規(guī)則,自動增加或減少一定數(shù)量的ECS實例。
適用場景
場景描述
業(yè)務需求動態(tài)波動,無法預估所需的服務器數(shù)量和時間點,期望根據(jù)業(yè)務負載實時調(diào)整服務器數(shù)量。
例如:某新聞網(wǎng)站的流量難以預測,出現(xiàn)熱點新聞時,訪問量突增,新聞時效性降低后,訪問量回落。
解決方案
通過報警任務聯(lián)動云監(jiān)控,在指定的監(jiān)控指標滿足條件時自動觸發(fā)伸縮規(guī)則,從而實現(xiàn)根據(jù)業(yè)務負載自動擴縮容服務器。
方案優(yōu)勢
零備機成本
彈性伸縮可自動創(chuàng)建和釋放ECS實例,實現(xiàn)按需取用,無需備機。您只需針對日常業(yè)務流量保有計算資源。
自動擴縮容
通過云監(jiān)控實時監(jiān)控負載變化,實現(xiàn)自動擴縮容,在滿足業(yè)務需求的同時節(jié)約資源和運維成本。
前提條件
首次使用彈性伸縮時,已完成RAM相關授權操作。
已創(chuàng)建服務關聯(lián)角色AliyunServiceRoleForAutoScaling。具體操作,請參見服務關聯(lián)角色。
如果使用RAM用戶操作,您需要為RAM用戶添加AliyunESSFullAccess權限。具體操作,請參見為RAM用戶授權。
使用彈性伸縮增加實例時,請確保您的阿里云賬戶余額(即現(xiàn)金余額)和代金券的總值不小于100.00元人民幣。
重要如果您的阿里云賬戶余額(即現(xiàn)金余額)和代金券的總值小于100.00元人民幣,則將無法創(chuàng)建新的按量付費實例,從而導致彈性伸縮的擴容活動失敗。
步驟一:創(chuàng)建伸縮組
伸縮組是彈性伸縮的核心單元,用于管理具有相同應用場景的實例集合。彈性伸縮將會在該伸縮組內(nèi)增加或減少實例。
進入伸縮組管理頁面。
登錄彈性伸縮控制臺。
在左側(cè)導航欄中,單擊伸縮組管理。
在頂部菜單欄處,選擇地域。
在頁面左上角,單擊創(chuàng)建伸縮組。
在通過表單創(chuàng)建頁簽下,完成伸縮組配置,然后單擊創(chuàng)建。
本文示例采用以下配置,未提及的配置項保持默認。更多關于伸縮組的配置說明,請參見創(chuàng)建伸縮組。
配置項
示例
描述
伸縮組名稱
test
輸入伸縮組名稱。格式要求請參考界面提示。
伸縮組類型
ECS
選擇ECS,表示伸縮組內(nèi)的實例類型為ECS實例。
組內(nèi)實例配置信息來源
從零開始創(chuàng)建
先不指定自動創(chuàng)建實例的模板。伸縮組創(chuàng)建完成后,您需要繼續(xù)創(chuàng)建伸縮配置。
組內(nèi)最小實例數(shù)
1
設置伸縮組內(nèi)實例數(shù)量的下限。當前實例數(shù)量低于下限時,伸縮組會自動添加實例,使得伸縮組內(nèi)的實例數(shù)量等于下限。
組內(nèi)最大實例數(shù)
5
設置伸縮組內(nèi)實例數(shù)量的上限。當前實例數(shù)量超過上限時,伸縮組會自動移出實例,使得伸縮組內(nèi)的實例數(shù)量等于上限。
專有網(wǎng)絡
vpc-bp1jmxxau0lur929p****
選擇伸縮組內(nèi)ECS實例所屬的專有網(wǎng)絡。
選擇交換機
vsw-2zeknnyw2ewufbs4z****
vsw-2zesy03h8eaf9fe0l****
選擇伸縮組內(nèi)ECS實例所屬的交換機。建議選擇多個交換機來提升擴容成功率。
步驟二:創(chuàng)建伸縮配置并啟用伸縮配置和伸縮組
伸縮配置是擴容時所增加的ECS實例的配置模板,包括實例付費模式、規(guī)格、存儲、網(wǎng)絡等配置信息。創(chuàng)建伸縮組配置后,您可以啟用伸縮配置,然后啟用伸縮組。
找到待操作的伸縮組,選擇任一種方式打開伸縮組詳情頁面。
在伸縮組名稱/ID列,單擊伸縮組ID。
在操作列,單擊查看詳情。
在頁面上方,單擊實例配置來源頁簽。
在伸縮配置頁簽下,單擊創(chuàng)建伸縮配置。
在創(chuàng)建伸縮配置頁面,完成相關參數(shù)配置,單擊創(chuàng)建。
本示例中采用以下配置,未提及的配置項保持默認。更多關于伸縮配置的配置說明,請參見創(chuàng)建伸縮配置(ECS實例)。
區(qū)域
配置項
示例
描述
基礎信息
伸縮配置名稱
test
輸入伸縮配置的名稱。格式要求請參考界面提示。
付費模式
按量付費
彈性伸縮服務免費,但您需要為擴容時所增加的ECS實例付費。本文采用按量付費方式作為示例。更多信息,請參見計費概述。
實例和鏡像
實例配置方式
指定實例屬性
選擇指定實例屬性方式來配置ECS實例的規(guī)格需求。
指定實例屬性組合
2 vCPU,4 GiB內(nèi)存,企業(yè)級
設置ECS實例的vCPU和內(nèi)存需求。
選擇鏡像
公共鏡像Alibaba Cloud Linux 3.2104 LTS 64位
選擇用于部署ECS實例的鏡像。本文以公共鏡像作為示例,實際業(yè)務場景請選用您已部署應用的自定義鏡像。
存儲
系統(tǒng)盤
ESSD云盤,40 Gib,PL0
為ECS實例選擇系統(tǒng)盤。
網(wǎng)絡和安全組
公網(wǎng)IP
選中分配公網(wǎng)IPv4地址,默認按固定帶寬計費,帶寬值默認為1 Mbit/s。
按需選擇是否為ECS實例分配公網(wǎng)IP地址。按公網(wǎng)出方向?qū)嶋H發(fā)生的帶寬計費,帶寬費用合并在ECS實例中收取。
安全組
sg-bp18kz60mefsicfg****
選擇您提前創(chuàng)建好的安全組。如需創(chuàng)建安全組,請參見創(chuàng)建安全組。
管理設置
登錄憑證
創(chuàng)建后設置
ECS實例創(chuàng)建完成后,再手動為ECS實例設置密碼。
在彈出的伸縮配置預覽對話框中,確認配置信息,然后單擊確認創(chuàng)建。
在彈出的伸縮配置創(chuàng)建成功對話框中,單擊啟用配置。
在彈出的選用伸縮配置對話框中,單擊確定。
說明在一個伸縮組內(nèi),您必須啟用一個伸縮配置。啟用伸縮配置后,該伸縮配置處于生效狀態(tài)。
在彈出的啟用伸縮組對話框中,單擊確定。
啟用伸縮組后,彈性伸縮才會按照您的配置實現(xiàn)擴容和縮容。
本示例伸縮組內(nèi)的最小實例數(shù)為1,因此啟用伸縮組后,系統(tǒng)會基于伸縮配置自動創(chuàng)建一臺ECS實例。您可以在伸縮組詳情頁面的實例列表頁簽下,選擇自動創(chuàng)建頁簽,查看實例信息。
步驟三:創(chuàng)建伸縮規(guī)則
伸縮規(guī)則用來指定每次伸縮活動的規(guī)則,如增加或者減少ECS實例的數(shù)量。
在伸縮組詳情頁面,單擊伸縮規(guī)則與報警任務頁簽,然后單擊伸縮規(guī)則頁簽。
單擊創(chuàng)建伸縮規(guī)則,完成伸縮規(guī)則配置,然后單擊確認。
本示例采用簡單規(guī)則。更多關于伸縮規(guī)則的配置說明,請參見配置伸縮規(guī)則。
配置項
描述
規(guī)則名稱
輸入規(guī)則名稱。格式要求請參考界面提示。
伸縮規(guī)則類型
本示例采用簡單規(guī)則。更多關于伸縮規(guī)則的介紹,請參見伸縮規(guī)則概述。
執(zhí)行的操作
設置觸發(fā)規(guī)則時,需要增加或減少多少實例。單次伸縮支持的最大實例數(shù)為1000臺。
冷卻時間
可選項,單位為秒。不填寫則默認使用伸縮組的冷卻時間,更多信息,請參見冷卻時間。
請重復該步驟,分別創(chuàng)建擴容規(guī)則和縮容規(guī)則。配置示例如下:
伸縮規(guī)則
配置示例
擴容規(guī)則
規(guī)則名稱:add
伸縮規(guī)則類型:簡單規(guī)則
執(zhí)行的操作:增加1臺
縮容規(guī)則
規(guī)則名稱:remove
伸縮規(guī)則類型:簡單規(guī)則
執(zhí)行的操作:減少1臺
步驟四:創(chuàng)建報警任務
報警任務通過監(jiān)控特定的監(jiān)控指標,對數(shù)據(jù)指標進行實時的統(tǒng)計,當統(tǒng)計值滿足您指定的報警條件時,觸發(fā)報警并執(zhí)行您指定的伸縮規(guī)則。
在伸縮組詳情頁面,單擊伸縮規(guī)則和報警任務頁簽,然后單擊報警任務頁簽。
在報警任務(系統(tǒng))頁簽,單擊創(chuàng)建報警任務,完成任務配置,然后單擊確認。
說明本示例使用系統(tǒng)提供的指標創(chuàng)建報警任務,您也可以上報自有業(yè)務指標并創(chuàng)建報警任務。更多信息,請參見報警任務概述。
需要關注的任務配置如下,未提及的配置項保持默認。更多關于報警任務的配置說明,請參見配置報警任務。
配置項
描述
名稱
輸入任務名稱。格式要求請參考界面提示。
報警指標描述
設置監(jiān)控指標達到什么條件時觸發(fā)報警。您需要選擇一個或多個系統(tǒng)定義的監(jiān)控項,選擇多個系統(tǒng)定義的監(jiān)控項時,單擊添加指標繼續(xù)選擇即可。
該部分包含的配置項說明如下:
監(jiān)控項:系統(tǒng)監(jiān)控支持的監(jiān)控指標名稱。例如,(ECS)CPU使用率表示監(jiān)控伸縮組內(nèi)ECS實例的CPU使用率。
統(tǒng)計辦法:即判定云監(jiān)控指標值超出閾值范圍的規(guī)則,您可以圍繞平均值、最大值或最小值設置規(guī)則。例如,Average(平均值)>=70%表示伸縮組內(nèi)ECS實例的CPU使用率平均值不小于70%觸發(fā)報警。
報警觸發(fā)規(guī)則
選擇報警觸發(fā)的伸縮規(guī)則。
請重復該步驟,分別創(chuàng)建觸發(fā)擴容規(guī)則和縮容規(guī)則的報警任務。配置示例如下:
報警任務
配置示例
報警觸發(fā)擴容
名稱:alarm-add
報警指標描述:(ECS)CPU使用率>Average(平均值)>70%
報警觸發(fā)規(guī)則:add
報警觸發(fā)縮容
名稱:alarm-remove
報警指標描述:(ECS)CPU使用率>Average(平均值)<20%
報警觸發(fā)規(guī)則:remove
驗證自動擴縮容效果
報警任務創(chuàng)建后,系統(tǒng)會實時監(jiān)控伸縮組內(nèi)的指標數(shù)據(jù),在指標數(shù)據(jù)滿足條件時執(zhí)行伸縮規(guī)則。
本示例實現(xiàn)效果為:
伸縮組內(nèi)ECS實例的CPU使用率大于70%時,自動增加1臺ECS實例。
伸縮組內(nèi)ECS實例的CPU使用率小于20%時,自動減少1臺ECS實例。
您可以通過壓測工具來模擬測試,通過以下方式確認效果:
報警任務觸發(fā)時,在伸縮組詳情頁面的實例列表頁簽下,選擇自動創(chuàng)建頁簽,然后在實例列表中觀察實例數(shù)量變化。
報警任務觸發(fā)后,在伸縮組詳情頁面的伸縮活動頁簽下,查看是否已按時觸發(fā)伸縮活動,單擊伸縮活動ID可查看詳細信息。