本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業務造成影響,請務必仔細閱讀。
如果您的云消息隊列 Kafka 版實例的公網流量消耗遠小于購買的公網流量配置,或者分區的使用量遠小于購買的分區數量,您可以降低公網流量和分區數量配置,從而節約成本。本文介紹如何在云消息隊列 Kafka 版控制臺降低實例的公網流量、分區數量、流量規格和磁盤容量。
前提條件
降低實例的磁盤容量及流量規格功能目前尚在灰度中。
從穩定性考慮,原則上不支持同時進行跨度較大的流量規格降配和磁盤容量降配。
實例處于服務中或未部署狀態。
啟用公網的實例,公網流量應大于最低帶寬3 Mbps。
實例中沒有進行中的Topic引流任務。
目標分區數量大于已使用分區數量。
目標流量規格及磁盤容量高于當前使用量的1.3倍。
注意事項
降低實例配置可能會出現重啟風險、限速風險和禁寫風險。Serverless實例降低配置期間會額外增加暫停彈縮風險。
降低流量規格和磁盤容量之前,務必先查看監控,明確過去一段時間的峰值使用情況(建議您查看7天內的峰值數據),根據峰值謹慎評估目標降低數值,如評估不當,降配操作會影響在線業務的SLA。更多信息,請參見查看云監控數據。
重啟風險:降低實例配置會引發集群逐臺重啟,可能會出現如下風險:
客戶端會短暫斷開連接并重連,可能會造成少量報錯。
已經發送成功的消息,降低配置之后不會丟失。降配期間發送失敗的消息,建議重試發送,可在客戶端配置重試機制。
降配預計持續約30分鐘,降配的磁盤容量跨度越大,耗時越長。服務不會中斷,可能會導致消費的分區消息發生亂序,請謹慎評估業務影響,建議您在業務低峰期降低實例配置。
限速風險:目標降低流量規格評估不當,可能會出現如下風險:
目標流量規格低于已使用流量的1.3倍,高峰可能被限速。
目標流量規格低于已使用流量值,會立即被限速。
高QPS的實例,降低流量規格會導致請求集中,單次請求耗時增長,可能超出kafka客戶端配置的
SESSION_TIMEOUT_MS_CONFIG
。說明在單次降配中,建議您最多降至購買時流量規格的50%,觀察業務運行穩定后再行降配。例如,您購買了流量規格為alikafka.hw.30xlarge的實例,想要降至alikafka.hw.9xlarge,建議您先降至alikafka.hw.16xlarge,觀察降配后業務穩定再降至alikafka.hw.9xlarge。
禁寫風險:目標降低磁盤容量評估不當,可能會出現如下風險:
目標磁盤容量大小低于已使用磁盤量的1.3倍,高流量實例可能很快就會寫滿,進而導致提前刪除數據和禁寫。
目標磁盤容量大小低于已使用磁盤量,會觸發禁寫。
數據風險:當磁盤水位較高且持續高流量寫入時,為保證穩定性可能產生提前刪除數據截斷風險。
穩定性風險:由于云盤原生不支持容量降配,云消息隊列 Kafka 版實現磁盤容量降配需要額外消耗集群CPU,磁盤IO。處于較高資源使用水位的實例,執行磁盤容量降配可能產生穩定性風險。建議執行磁盤降配前,先檢查實例是否存在未治理的實例風險項,進行治理使實例達到較為健康的狀態后再執行。
暫停彈縮風險:Serverless實例升降配期間,暫停彈性伸縮,請確保在業務用量平穩期間操作。
適用場景及風險點
場景 | 風險 |
云消息隊列 Kafka 版非Serverless實例的流量使用量持續低于購買時的流量規格,需要降低實例的流量規格。 | 當前業務可能會被限速,請參見上文注意事項中的限速風險。 |
云消息隊列 Kafka 版非Serverless實例的磁盤使用率過小,需要縮小磁盤容量。 | 當前業務可能會被禁寫,請參見上文注意事項中的禁寫風險。 |
云消息隊列 Kafka 版非Serverless實例變更分區數或Topic數。降低后的數量不低于實際使用量。 說明 新購實例僅支持變更分區數,2022年08月26日之前購買的實例支持變更Topic數。 | 無。 |
云消息隊列 Kafka 版非Serverless實例下調公網帶寬。 | 無。 |
云消息隊列 Kafka 版Serverless實例下調保底用量計費規格。 | 降低后會暫停彈縮。 |
操作步驟
在概覽頁面的資源分布區域,選擇地域。
在實例列表頁面,單擊目標實例名稱。
在實例詳情頁面,單擊概覽區域右上角的降配。
在降配面板。設置公網流量、分區規格、流量規格和磁盤容量,閱讀并選中服務協議,然后單擊立即購買。
重要為了避免因帶寬不足觸發網絡限制,云消息隊列 Kafka 版會根據您選擇的實例規格,評估出最佳帶寬大小,請您根據界面提示,按一定倍數購買公網流量。
降低后的分區數量不能低于實際使用的分區數量。
當集群當前CPU等資源使用率較高時,為保證穩定性,降配頁面會限制流量規格降配。
在專業版(高寫版)/專業版(高讀版)實例中,僅alikafka.hw.60xlarge/alikafka.hr.60xlarge以下流量規格的實例支持降低流量規格,alikafka.hw.60xlarge/alikafka.hr.60xlarge及以上流量規格的實例暫不支持降低流量規格。
降低實例配置時,如果不涉及磁盤降配,所需的時間取決于實例規模,alikafka.hr.30xlarge或alikafka.hw.30xlarge及以下規格預計持續約30分鐘、alikafka.hr.60xlarge或alikafka.hw.60xlarge及以上規格預計持續1小時以上,一般情況下,實例規格越大,持續時間越長。如果需要磁盤降配,由于涉及歷史數據拷貝,耗時會變長,時長與磁盤數據量正相關。
在實例詳情頁面的基礎信息區域,實例狀態更新為升級中。待降配完成后,顯示降級后的規格。