自動(dòng)性能擴(kuò)展
當(dāng)業(yè)務(wù)持續(xù)發(fā)展和數(shù)據(jù)量增加、新業(yè)務(wù)或新功能上線等導(dǎo)致數(shù)據(jù)庫流量增加、計(jì)算資源不足時(shí),擴(kuò)容數(shù)據(jù)庫計(jì)算規(guī)格(CPU和內(nèi)存)是一種有效的方式。數(shù)據(jù)庫自治服務(wù)DAS支持自動(dòng)擴(kuò)容數(shù)據(jù)庫實(shí)例的計(jì)算規(guī)格,以便快速彈性適配高峰流量。并且支持在流量下降時(shí)進(jìn)行規(guī)格回縮,避免資源浪費(fèi)。
前提條件
目標(biāo)數(shù)據(jù)庫實(shí)例為:
數(shù)據(jù)庫
地域
RDS MySQL高可用云盤系列(通用型和獨(dú)享型)、高可用本地盤系列(通用型)、三節(jié)點(diǎn)企業(yè)系列(通用型)
PolarDB MySQL版的集群版
自動(dòng)性能擴(kuò)展功能依賴異常檢測,目標(biāo)數(shù)據(jù)實(shí)例所屬的地域必須支持異常檢測。目前支持的地域有:
華東1(杭州)、華東2(上海)、華南1(深圳)、華南2(河源)、華南3(廣州)、華北1(青島)、華北2(北京)、華北3(張家口)、華北5(呼和浩特)、華北6(烏蘭察布)、華東5(南京)、華東6(福州)、西南1(成都)、鄭州、中國(香港)、日本(東京)、韓國(首爾)、新加坡、馬來西亞(吉隆坡)、印度尼西亞(雅加達(dá))、菲律賓(馬尼拉)、泰國(曼谷)、阿聯(lián)酋(迪拜)、沙特(利雅得)、德國(法蘭克福)、美國(硅谷)、美國(弗吉尼亞)和英國(倫敦)
說明RDS MySQL數(shù)據(jù)庫實(shí)例已下線的規(guī)格,不支持自動(dòng)性能擴(kuò)展功能,您可以按照需要先變更數(shù)據(jù)庫實(shí)例的規(guī)格,然后再使用自動(dòng)性能擴(kuò)展功能。變更數(shù)據(jù)庫實(shí)例規(guī)格的具體操作請參見變更配置。
賬戶內(nèi)需要有足夠的余額支撐擴(kuò)容。
已創(chuàng)建DAS服務(wù)關(guān)聯(lián)角色。
說明若您尚未創(chuàng)建DAS服務(wù)關(guān)聯(lián)角色,開啟自動(dòng)性能擴(kuò)展功能將在執(zhí)行自動(dòng)性能擴(kuò)展前為您自動(dòng)創(chuàng)建。
自動(dòng)擴(kuò)容流程
自動(dòng)擴(kuò)容
開啟自動(dòng)擴(kuò)容后,當(dāng)觀測窗口內(nèi)數(shù)據(jù)庫實(shí)例的CPU平均利用率達(dá)到設(shè)置的閾值時(shí):
在擴(kuò)容狀態(tài)下,可能遇到一些極端場景,如發(fā)生HA切換、主機(jī)資源嚴(yán)重不足、與現(xiàn)有管控流程沖突造成擴(kuò)容的資源被回收,建議核心實(shí)例短期使用彈性自動(dòng)擴(kuò)容功能衡量峰值CPU上限,長期建議根據(jù)業(yè)務(wù)高峰CPU使用情況升級實(shí)例規(guī)格。
對于RDS MySQL高可用系列云盤版和PolarDB MySQL版的集群版實(shí)例:
DAS將根據(jù)當(dāng)前實(shí)例的負(fù)載情況,在擴(kuò)容規(guī)格上限范圍內(nèi)自動(dòng)選擇合適的規(guī)格執(zhí)行擴(kuò)容操作。完成擴(kuò)容后,DAS會(huì)繼續(xù)監(jiān)測CPU利用率,如果再次滿足自動(dòng)擴(kuò)容的條件會(huì)繼續(xù)擴(kuò)容,直到擴(kuò)容至您設(shè)置的規(guī)格上限。
對于RDS MySQL高可用系列本地盤版(通用型)和RDS MySQL三節(jié)點(diǎn)企業(yè)系列(通用型)實(shí)例:
DAS會(huì)在原規(guī)格的基礎(chǔ)上,將CPU核數(shù)提升2倍。例如原規(guī)格的CPU核數(shù)為4核,則會(huì)提升至8核。同時(shí),實(shí)例的IOPS會(huì)同步上升,每提升1核,IOPS增加1000。若主機(jī)中沒有足夠的CPU資源,則擴(kuò)容不會(huì)進(jìn)行。
說明僅支持在原規(guī)格的基礎(chǔ)上將CPU核數(shù)提升2倍,無法在提升后的CPU核數(shù)上繼續(xù)提升。例如提升后的CPU核數(shù)為8核,此時(shí)無法再提升至16核。
自動(dòng)回縮
當(dāng)實(shí)例開啟了自動(dòng)回縮功能,并且在此之后發(fā)生了自動(dòng)擴(kuò)容,那么在滿足回縮條件時(shí),系統(tǒng)將根據(jù)之前擴(kuò)容提升時(shí)的規(guī)格等級逐步自動(dòng)回縮實(shí)例規(guī)格,直至恢復(fù)到本次自動(dòng)擴(kuò)容前的狀態(tài)。但是,如果自動(dòng)擴(kuò)容發(fā)生在啟用自動(dòng)回縮功能之前,即便后來開啟了自動(dòng)回縮功能,系統(tǒng)也不會(huì)對之前的擴(kuò)容進(jìn)行回縮處理。
對于RDS MySQL高可用系列云盤版和PolarDB MySQL版的集群版實(shí)例:
開啟自動(dòng)回縮后,如果實(shí)例不在靜默期,且縮容觀測窗口期間CPU利用率小于30%的時(shí)間占比超過99%,則系統(tǒng)將自動(dòng)逐級回縮實(shí)例規(guī)格,直到回縮至擴(kuò)容前規(guī)格。
重要縮容觀測窗口時(shí)長為
觀測窗口+10分鐘
。例如,觀測窗口設(shè)置為30分鐘時(shí),縮容觀測窗口為40分鐘。對于RDS MySQL高可用系列云盤版實(shí)例,自動(dòng)回縮功能僅保證在新架構(gòu)(kindcode=18)版本上穩(wěn)定運(yùn)行。您可以通過API查詢實(shí)例架構(gòu)版本,詳情請參見DescribeDBInstanceAttribute - 查詢實(shí)例詳情。
對于RDS MySQL高可用系列本地盤版(通用型)和RDS MySQL三節(jié)點(diǎn)企業(yè)系列(通用型)實(shí)例:
在選定的縮容觀測窗口期間,CPU利用率低于30%的時(shí)間占比超過99%,系統(tǒng)會(huì)自動(dòng)將CPU核數(shù)以及IOPS回縮至擴(kuò)容前規(guī)格。
開啟自動(dòng)性能擴(kuò)展功能后,系統(tǒng)會(huì)以最新的配置參數(shù)為準(zhǔn)對數(shù)據(jù)庫實(shí)例進(jìn)行監(jiān)控,當(dāng)數(shù)據(jù)庫實(shí)例滿足自動(dòng)擴(kuò)容或自動(dòng)回縮條件時(shí),系統(tǒng)會(huì)對數(shù)據(jù)庫實(shí)例進(jìn)行自動(dòng)擴(kuò)容或自動(dòng)回縮。
關(guān)于自動(dòng)性能擴(kuò)展的詳細(xì)技術(shù)解讀,請參見DAS Auto Scaling彈性能力。
費(fèi)用說明
對于RDS MySQL數(shù)據(jù)庫實(shí)例:
高可用系列本地盤版(通用型)和三節(jié)點(diǎn)企業(yè)系列(通用型):按量付費(fèi),每小時(shí)扣費(fèi)一次。
計(jì)費(fèi)方式:(單核費(fèi)用 x 增加的CPU核數(shù)) x 擴(kuò)容時(shí)長(分鐘)
例如,杭州地域下的某實(shí)例的CPU規(guī)格為4核,觸發(fā)性能自動(dòng)擴(kuò)容后增加至8核,擴(kuò)容時(shí)間為30分鐘,而杭州地域的單價(jià)為0.54元/小時(shí)/核,則計(jì)費(fèi)為:
0.54(單價(jià)) x 4(額外增加的核數(shù)) x 0.5(小時(shí)數(shù)) = 1.08元
。高可用系列云盤版:按照擴(kuò)容后的實(shí)例規(guī)格進(jìn)行收費(fèi)。升級規(guī)格產(chǎn)生的費(fèi)用與地域、升級后規(guī)格等配置相關(guān),請前往購買頁面查看。
對于PolarDB MySQL版數(shù)據(jù)庫實(shí)例:
具體的費(fèi)用說明,請參見變更配置費(fèi)用說明。
若您的業(yè)務(wù)量波動(dòng)較大且頻繁,推薦您購買PolarDB計(jì)算包并配合DAS的自動(dòng)擴(kuò)容和回縮功能一起使用,當(dāng)集群配置發(fā)生調(diào)整時(shí),計(jì)算包能根據(jù)當(dāng)前規(guī)格自動(dòng)進(jìn)行抵扣。
說明若您使用的PolarDB MySQL版集群購買方式為包年包月,則需要將其轉(zhuǎn)為按量付費(fèi)后才能使用計(jì)算包進(jìn)行抵扣,詳情請參見轉(zhuǎn)換計(jì)算付費(fèi)類型:包年包月轉(zhuǎn)按量付費(fèi)。
場景示例
若您通過DAS開啟自動(dòng)性能擴(kuò)展,在業(yè)務(wù)高峰期時(shí)DAS會(huì)自動(dòng)觸發(fā)擴(kuò)容,彈性擴(kuò)容后,讀寫流量提升一倍,CPU利用率由90%以上降至25%,高負(fù)載持續(xù)運(yùn)行近10個(gè)小時(shí)。當(dāng)流量回落,CPU利用率降至25%以下,DAS自動(dòng)觸發(fā)規(guī)格回縮操作,回縮至變配前的規(guī)格。
整個(gè)過程,DAS通過彈性伸縮適配高峰流量,有效保障了線上業(yè)務(wù)穩(wěn)定性。
影響
對于RDS MySQL高可用系列云盤版和PolarDB MySQL版的集群版實(shí)例,在變更配置生效期間,可能會(huì)出現(xiàn)一次約30秒的閃斷,請確保應(yīng)用具有重連機(jī)制。
對于PolarDB MySQL版的集群版實(shí)例,只能對整個(gè)集群進(jìn)行規(guī)格升降級,無法對集群中的單個(gè)節(jié)點(diǎn)進(jìn)行規(guī)格升降級。
為保障更出色的性能和穩(wěn)定性,如果實(shí)例的小版本非最新,在變更配置時(shí),系統(tǒng)會(huì)將實(shí)例的小版本升級至最新。
擴(kuò)容操作只會(huì)在主實(shí)例上進(jìn)行。 如果主實(shí)例擴(kuò)容后觸發(fā)了主備切換,那么:
主實(shí)例(原備實(shí)例)在滿足擴(kuò)容、縮容觸發(fā)條件時(shí),系統(tǒng)會(huì)自動(dòng)對主實(shí)例(原備實(shí)例)進(jìn)行擴(kuò)容、縮容操作。
備實(shí)例(原主實(shí)例)在滿足縮容觸發(fā)條件時(shí),系統(tǒng)會(huì)自動(dòng)將被備實(shí)例(原主實(shí)例)回縮至原規(guī)格。
操作步驟
登錄DAS控制臺(tái)。
在左側(cè)導(dǎo)航欄中,單擊實(shí)例監(jiān)控。
找到目標(biāo)實(shí)例,單擊實(shí)例ID,進(jìn)入目標(biāo)實(shí)例詳情頁。
在左側(cè)導(dǎo)航欄中,單擊自治中心。
在自治中心頁,單擊右側(cè)的自治功能開關(guān)。
在 頁簽中,打開自治功能開關(guān)。
在優(yōu)化和限流頁簽設(shè)置如下參數(shù):
對于RDS MySQL數(shù)據(jù)庫實(shí)例,RDS MySQL高可用系列云盤版請勾選自動(dòng)性能擴(kuò)展,RDS MySQL高可用系列本地盤版(通用型)和RDS MySQL三節(jié)點(diǎn)企業(yè)系列(通用型)請勾選自動(dòng)資源彈性,并設(shè)置如下參數(shù):
實(shí)例類型
參數(shù)
說明
通用
CPU平均利用率不小于
自動(dòng)擴(kuò)容的觸發(fā)閾值。當(dāng)CPU平均利用率大于或等于設(shè)置的值時(shí),就會(huì)觸發(fā)自動(dòng)擴(kuò)容。
高可用系列云盤版實(shí)例
觀測窗口
實(shí)例性能的觀測時(shí)間。系統(tǒng)會(huì)在選定的觀測期間周期性檢測實(shí)例的CPU利用率,當(dāng)CPU平均利用率達(dá)到觸發(fā)閾值時(shí),就會(huì)觸發(fā)自動(dòng)擴(kuò)容。
重要縮容觀測窗口時(shí)長為
觀測窗口+10分鐘
。例如,觀測窗口設(shè)置為30分鐘時(shí),縮容觀測窗口為40分鐘。規(guī)格上限
自動(dòng)擴(kuò)容的規(guī)格上限。如果達(dá)到了自動(dòng)擴(kuò)容的閾值,DAS會(huì)逐級擴(kuò)容規(guī)格并繼續(xù)監(jiān)測CPU平均利用率,如在觀測窗口內(nèi)再次達(dá)到自動(dòng)擴(kuò)容的閾值,會(huì)繼續(xù)擴(kuò)容,直到擴(kuò)容至您設(shè)置的規(guī)格上限。
重要當(dāng)實(shí)例規(guī)格為1核 2GB時(shí),觸發(fā)自動(dòng)擴(kuò)容會(huì)將實(shí)例直接擴(kuò)容至4核 8GB。此時(shí),規(guī)格上限最小需要設(shè)置為4核 8GB,否則會(huì)自動(dòng)擴(kuò)容失敗。
自動(dòng)回縮
開啟自動(dòng)回縮后,如果實(shí)例不在靜默期,且縮容觀測窗口(
觀測窗口+10分鐘
)期間CPU利用率小于30%的時(shí)間占比超過99%,DAS將自動(dòng)逐級回縮實(shí)例規(guī)格,直到回縮至原始規(guī)格。靜默期
兩次自動(dòng)擴(kuò)容或自動(dòng)回縮的最小時(shí)間間隔。在靜默期內(nèi),DAS會(huì)持續(xù)進(jìn)行觀測,但不會(huì)觸發(fā)自動(dòng)擴(kuò)容或縮容。若在靜默期與觀測窗口同時(shí)結(jié)束,且該觀測窗口內(nèi)CPU利用率達(dá)到調(diào)整閾值,DAS會(huì)在靜默期和觀測窗口同時(shí)結(jié)束時(shí)觸發(fā)自動(dòng)規(guī)格調(diào)整。
高可用系列本地盤版(通用型)和三節(jié)點(diǎn)企業(yè)系列(通用型)實(shí)例
擴(kuò)容觀測窗口
實(shí)例性能的觀測時(shí)間。系統(tǒng)會(huì)在選定的觀測期間周期性檢測實(shí)例的CPU利用率,當(dāng)CPU平均利用率達(dá)到觸發(fā)閾值時(shí),則會(huì)觸發(fā)自動(dòng)擴(kuò)容。
回縮觀測窗口
實(shí)例性能的回縮觀測時(shí)間。系統(tǒng)會(huì)在選定的回縮觀測期間周期性檢測實(shí)例的CPU利用率,當(dāng)CPU利用率低于30%的時(shí)間占比超過99%,則會(huì)觸發(fā)自動(dòng)性能回縮。
對于PolarDB MySQL版數(shù)據(jù)庫實(shí)例,勾選自動(dòng)擴(kuò)容和自動(dòng)回縮,并設(shè)置如下參數(shù):
重要勾選自動(dòng)擴(kuò)容后,在整個(gè)觀測窗口內(nèi)如果CPU平均利用率大于或等于設(shè)定值,則在觀測窗口結(jié)束后,PolarDB將根據(jù)集群負(fù)載進(jìn)行擴(kuò)容。例如閾值為70%,觀測窗口期是5分鐘,自動(dòng)擴(kuò)容的時(shí)間是10分鐘,所以當(dāng)集群某節(jié)點(diǎn)在觀測窗口內(nèi)的平均CPU利用率超過70%時(shí),將對集群進(jìn)行擴(kuò)容。對集群進(jìn)行擴(kuò)容時(shí),將根據(jù)實(shí)時(shí)讀寫流量情況選擇增加節(jié)點(diǎn)或升配的擴(kuò)容方式,讀流量主導(dǎo)時(shí)默認(rèn)將增加只讀節(jié)點(diǎn),寫流量主導(dǎo)時(shí)將提升集群規(guī)格。而在主節(jié)點(diǎn)實(shí)例負(fù)載過高等特殊情況,將選擇提升集群規(guī)格。
勾選自動(dòng)回縮后,如果實(shí)例不在靜默期,且縮容觀測窗口(
觀測窗口+10分鐘
)期間觸發(fā)自動(dòng)擴(kuò)容節(jié)點(diǎn)的CPU平均利用率小于30%的時(shí)間占比超過99%,則系統(tǒng)將自動(dòng)逐級回縮PolarDB MySQL版集群規(guī)格,直到回縮至原始規(guī)格。若擴(kuò)容時(shí)增加只讀節(jié)點(diǎn),則縮容時(shí)將逐個(gè)減少只讀節(jié)點(diǎn);若擴(kuò)容時(shí)提升集群規(guī)格,則縮容時(shí)將進(jìn)行規(guī)格降級。注意,對于PolarDB MySQL版的集群版實(shí)例,只能對整個(gè)集群進(jìn)行規(guī)格升降級,無法對集群中的單個(gè)節(jié)點(diǎn)進(jìn)行規(guī)格升降級。
參數(shù)名稱
參數(shù)說明
CPU平均利用率不小于
自動(dòng)擴(kuò)容的觸發(fā)閾值。當(dāng)CPU平均利用率大于或等于設(shè)置的值時(shí),就會(huì)觸發(fā)自動(dòng)擴(kuò)容。
規(guī)格上限
自動(dòng)擴(kuò)容的規(guī)格上限。觸發(fā)自動(dòng)擴(kuò)容后,會(huì)逐級擴(kuò)容PolarDB的集群規(guī)格,例如從4核到8核再到16核,直到升級至擴(kuò)容規(guī)格的上限。
只讀節(jié)點(diǎn)數(shù)量上限
自動(dòng)擴(kuò)容只讀節(jié)點(diǎn)的數(shù)量上限。觸發(fā)自動(dòng)擴(kuò)容后,系統(tǒng)會(huì)根據(jù)實(shí)際情況增加1~2個(gè)PolarDB的只讀節(jié)點(diǎn),直到增加至上限。
說明自動(dòng)擴(kuò)容的節(jié)點(diǎn)會(huì)加入集群默認(rèn)地址,自定義地址需要配置新節(jié)點(diǎn)自動(dòng)加入。關(guān)于如何配置新節(jié)點(diǎn)自動(dòng)加入,詳情請參見配置數(shù)據(jù)庫代理。
觀測窗口
在整個(gè)觀察窗口期內(nèi),若CPU平均利用率大于等于設(shè)定值,則在觀測窗口結(jié)束后,DAS將根據(jù)集群的實(shí)時(shí)讀寫流量情況選擇增加節(jié)點(diǎn)或升配的擴(kuò)容方式。例如觀測窗口期是5分鐘,自動(dòng)擴(kuò)容的時(shí)間是10分鐘,所以您需要等待15分鐘左右才能看到自動(dòng)擴(kuò)容的效果。
重要縮容觀測窗口時(shí)長為
觀測窗口+10分鐘
。例如,觀測窗口設(shè)置為30分鐘時(shí),縮容觀測窗口為40分鐘。靜默期
兩次自動(dòng)擴(kuò)容或自動(dòng)回縮的最小間隔時(shí)間。在靜默期內(nèi),DAS會(huì)持續(xù)進(jìn)行觀測,但不會(huì)觸發(fā)自動(dòng)擴(kuò)容或縮容。若在靜默期與觀測窗口同時(shí)結(jié)束,且該觀測窗口內(nèi)CPU利用率達(dá)到調(diào)整閾值,DAS會(huì)在靜默期和觀測窗口同時(shí)結(jié)束時(shí)觸發(fā)自動(dòng)規(guī)格調(diào)整。
單擊確定。
配置告警模板進(jìn)行告警訂閱,以便及時(shí)了解數(shù)據(jù)庫實(shí)例的自動(dòng)性能擴(kuò)展情況。
系統(tǒng)會(huì)推薦告警模板并添加對應(yīng)自治事件的告警規(guī)則,您可以依照系統(tǒng)提示進(jìn)行配置。
說明如果您已經(jīng)為實(shí)例配置了告警模板,請依照系統(tǒng)提示,在告警模板添加對應(yīng)自治事件的告警規(guī)則。
如果您需要自行設(shè)置告警模板和告警規(guī)則,請參見配置告警模板和配置告警規(guī)則。
選擇需要告警通知的告警聯(lián)系組。
單擊添加聯(lián)系人,添加新的告警聯(lián)系人。
單擊新增聯(lián)系組,添加新的告警聯(lián)系組。
單擊目標(biāo)聯(lián)系人后的修改或移除,修改或刪除已有聯(lián)系人的信息。
詳細(xì)操作請參見管理告警聯(lián)系人。
單擊提交配置,并在彈出的對話框中確認(rèn)告警配置。
常見問題
Q:如果實(shí)例規(guī)格已達(dá)到所屬系列的規(guī)格上限,無法進(jìn)行擴(kuò)容,如何處理?
A:推薦購買實(shí)例其他系列的更高規(guī)格,例如RDS MySQL的高可用獨(dú)享規(guī)格最大支持104核 768GB。然后將實(shí)例遷移至新購的實(shí)例。數(shù)據(jù)庫實(shí)例的規(guī)格信息和遷移方案,請參照:
RDS MySQL:RDS MySQL產(chǎn)品規(guī)格和RDS實(shí)例間數(shù)據(jù)遷移。
PolarDB MySQL版:PolarDB MySQL版產(chǎn)品規(guī)格和PolarDB MySQL版間遷移。
相關(guān)文檔
對于RDS MySQL實(shí)例,您可以將實(shí)例計(jì)費(fèi)方式轉(zhuǎn)換為Serverless,使實(shí)例具備CPU、內(nèi)存的實(shí)時(shí)彈性能力。詳細(xì)操作請參見按量付費(fèi)轉(zhuǎn)Serverless。
說明如果實(shí)例的計(jì)費(fèi)方式是包年包月,可以先轉(zhuǎn)為包年包月轉(zhuǎn)按量付費(fèi),然后再轉(zhuǎn)為Serverless。
如果您的業(yè)務(wù)流量高峰發(fā)生在固定的時(shí)間,您可以使用定時(shí)自動(dòng)彈性伸縮,可以根據(jù)預(yù)設(shè)的策略定時(shí)擴(kuò)容實(shí)例的規(guī)格,并且在設(shè)置的擴(kuò)容持續(xù)時(shí)間結(jié)束后會(huì)自動(dòng)恢復(fù)到原規(guī)格。
如果您的實(shí)例類型不支持自動(dòng)性能擴(kuò)展功能,您可以使用手動(dòng)變配,擴(kuò)容或者回縮實(shí)例規(guī)格,詳細(xì)操作:
RDS MySQL請參見變更配置。
PolarDB MySQL版請參見手動(dòng)變配。