随着人工智能大潮的風起雲湧, 視訊識别,語音識别,圖像識别,自然語言翻譯,AI畫匠等基于GPU的線上預測也在遍地開花。而彈性伸縮對于人工智能服務來說尤為重要,一方面是業務壓力峰值時巨大的計算力需求;另一方面當業務空閑時,GPU的空耗成本也是大家很難承受的。同時在與客戶的交流中,我們也發現客戶對于GPU資源的彈性伸縮也有很強的定制化需求,希望能自主要制觸發條件,并在此基礎上和自身業務名額相結合等等。

基于這種現實,我們提供了一套容器服務所擴容觸發器結合第三方監控架構influxDB+Grafana的報警伸縮方案。 具體來說,分為4個部分:
建立容器服務節點擴縮容觸發器
部署基于Grafana和InfluxDB的GPU監控應用
在Grafana中設定通知管道,通過Webhook調用縮擴容觸發器
定義觸發條件
a) 預先指定擴容機器的配置,以及彈性伸縮的上下限;無需使用者寫複雜API調用擴容
b) 當縮容時,系統自動判斷可以回收的機器;使用者隻需要觸發,對于縮容細節無需了解
擴容觸發器的URL通常為
縮容觸發器的URL通常為
在容器服務裡可以支援influxDB, 這裡我們的方案是部署 influxDB+Grafana,利用Grafana的報警機制
2. 單擊左側導航欄中的 節點。
3. 選擇您建立的GPU叢集, 并且将滑鼠挪動到任何一個節點資訊附近感歎号圖示。
4. 這時,可以看到目前節點的NODE_IP和NODE_ID。在本例子中,您的NODE_IP是 192.168.10.86 , NODE_ID是 1。請記住該資訊。 我們在下一步中将使用該資訊部署GPU監控應用。
5. 請将下面的應用模闆部署到叢集中, 單擊左側導航欄中的 應用, 并點選 建立應用 按鈕。
6. 在部署應用時,需要填寫模闆參數: NODE_IP, NODE_ID以及後續登入Grafana需要的ADMIN_PASSWORD, 點選确定後,監控應用就開始建立了。
7. 等監控應用建立成功後,在應用清單頁面,單擊本示例所建立應用的名稱 grafana
8. 在服務頁面點選 grafana 的 通路端點, 就可以登入 grafana 的登入界面
9. 在Grafana登入界面輸入使用者名admin和您之前設定的密碼(ADMIN_PASSWORD對應的值), 您就可以看到GPU的性能資料,其中包括叢集級别的和節點級别的。
點選 admin-> Alerting-> Notification channels
2. 點選右上角 New Channel,就可以進行通知管道的配置, 完成後點選儲存
Name: 通知管道名稱,這裡代表擴容,取名scale_out Type: 通知類型,這裡代選擇 webhook Url: webhook觸發的Url, 這裡前面獲得的彈性擴容Trigger Url Http Method: 這裡指觸發Trigger Url的Http Action,請選擇 POST
3. 這樣就可以在通知管道的清單頁面看到 scale_out這個通知管道
點選 admin->Dashboards->Home 回到Dashboard頁面,直接點選名額圖示題 GPU Usage, 然後選擇 <code>Edit</code>
2. 檢視 Metrics 标簽頁中三條sql語句, 其中c 對應的是叢集級别的GPU平均使用率, 這也是我們使用的報警條件;當然這個完全可以根據業務需要進行定制
3. 跳轉到 Alert 标簽頁, 點選 Create Alert
4. 設定 Alert Config, 這裡設定的名額是叢集GPU平均使用率大于45%時報警
Query: 請設定為C,即叢集級别的GPU使用率 IS ABOVE: 大于45, 代表使用率大于45%
5. 關聯通知管道, 單擊左側标題欄的 Notifications, 點選 <code>Send to</code>-><code>+</code>, 選擇之前建立的 scale_out 通知管道
6. 儲存好後,圖表的标題前會有一個灰色的心形标志, 這就代表設定完成,當對應名額達到配置的門檻值就會出發報警,具體報警資訊會觸發通知管道調用webhook
對叢集中的GPU施壓,可以看到Grafana的視圖中已經顯示報警
2. 同時登陸容器服務管理的叢集頁面可以看到GPU叢集的狀态是伸縮中
3. 當擴容完成後,可以看到容器叢集的節點數由2個增加到了3個.
4. 在Grafana的視圖中也可以看到GPU使用率已經回到正常範圍,叢集狀态恢複正常
本文為您提供了一套可以拼裝組合的GPU彈性伸縮方案,其中觸發器與伸縮觸發條件可以分離,觸發條件也可以有更靈活的配置性。您可以根據峰值時間寫一個crontab來觸發,也可以寫與您具體需求相符合的Alert條件, 滿足應用運作的需要。阿裡雲容器服務希望為您提供元語,幫助您因地制宜的定義符合自身場景的彈性縮擴容方案。