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