日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

在Knative中使用MSE網(wǎng)關(guān)并實現(xiàn)自動彈性

在微服務(wù)架構(gòu)的業(yè)務(wù)場景下,推薦您使用MSE網(wǎng)關(guān)實現(xiàn)Knative服務(wù)的流量分發(fā)和路由。MSE網(wǎng)關(guān)是一款全托管免運維的網(wǎng)關(guān),支持實現(xiàn)基于請求的精準自動彈性,即精準地控制單個Pod的請求并發(fā)處理數(shù),能夠滿足大規(guī)模云原生分布式應(yīng)用的流量治理訴求。

前提條件

實現(xiàn)原理

在實際業(yè)務(wù)場景中,單個Pod處理請求的吞吐率有限,如果多個請求同時轉(zhuǎn)發(fā)到同一個Pod,會導致服務(wù)端過載異常。因此,您可能需要精準地控制單個Pod的請求并發(fā)處理數(shù)。例如,在AIGC場景下,由于單個請求會占用較多的GPU資源,您需要對每個Pod的并發(fā)處理請求數(shù)進行嚴格的限制。結(jié)合MSE網(wǎng)關(guān),Knative可以實現(xiàn)基于請求的精準自動彈性,以滿足大規(guī)模云原生分布式應(yīng)用的流量治理訴求。

如下圖所示,彈性插件MPA會從MSE網(wǎng)關(guān)獲取并發(fā)數(shù),并計算所需要的Pod數(shù)進行擴縮容,實現(xiàn)了基于實際請求負載的自動彈性。同時,MSE網(wǎng)關(guān)可以根據(jù)路由規(guī)則和條件,實現(xiàn)基于請求的精準轉(zhuǎn)發(fā),以滿足不同服務(wù)和版本的路由需求。

image.png

步驟一:部署MSE網(wǎng)關(guān)

  1. 登錄容器計算服務(wù)控制臺,在左側(cè)導航欄選擇集群

  2. 集群頁面,單擊目標集群ID,然后在左側(cè)導航欄,選擇應(yīng)用 > Knative

  3. 組件管理頁簽,單擊一鍵部署Knative,選擇MSE服務(wù)網(wǎng)關(guān),然后按照頁面指引完成Knative的部署。

步驟二:通過MSE網(wǎng)關(guān)訪問部署的服務(wù)

  1. 登錄容器計算服務(wù)控制臺,在左側(cè)導航欄選擇集群

  2. 集群頁面,單擊目標集群ID,然后在左側(cè)導航欄,選擇應(yīng)用 > Knative

  3. Knative頁面的服務(wù)管理頁簽下,選擇命名空間default,然后單擊使用模板創(chuàng)建,將以下YAML示例粘貼至模板,最后單擊創(chuàng)建

    創(chuàng)建一個名為helloworld-go的服務(wù)。

    重要

    請將下方代碼中的{REGION-ID}替換為您集群所在地域,以確保可以正確地訪問和使用鏡像。

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: helloworld-go
    spec:
      template:
        metadata:
          annotations:
            autoscaling.knative.dev/class: mpa.autoscaling.knative.dev # 表明使用MSE指標進行擴縮容,支持縮容到0。
            autoscaling.knative.dev/max-scale: '20' # 擴容Pod數(shù)上限是20。
        spec:
          containerConcurrency: 5 # 1個Pod能處理的最大并發(fā)數(shù)是5。
          containers:
          - image: registry-vpc.{REGION-ID}.aliyuncs.com/knative-sample/helloworld-go:73fbdd56 # {REGION-ID}為對應(yīng)集群所在的地域,如cn-hangzhou。
            env:
            - name: TARGET
              value: "Knative"

    若目標服務(wù)的狀態(tài)列顯示成功,表明服務(wù)已部署成功。

  4. 服務(wù)管理頁面的默認域名訪問網(wǎng)關(guān)列,分別獲取helloworld-go服務(wù)的域名和網(wǎng)關(guān)地址。

  5. 執(zhí)行以下命令,訪問helloworld-go服務(wù)。

    curl -H "host: helloworld-go.default.example.com" http://8.141.XX.XX # 網(wǎng)關(guān)IP和域名請以您的實際數(shù)據(jù)為準。

    預期輸出:

    Hello Knative!

步驟三:基于并發(fā)數(shù)實現(xiàn)自動彈性

  1. 安裝Hey壓測工具。

    關(guān)于Hey壓測工具的詳細信息,請參見Hey

  2. 執(zhí)行以下命令,對服務(wù)執(zhí)行壓測。

    # 發(fā)送100000個請求,并發(fā)數(shù)為50,請求超時時間為180秒。
    hey -n 100000 -c 50 -t 180 -host "helloworld-go.default.example.com" "http://8.141.XX.XX"

    預期輸出:

    Summary:
      Total:        86.0126 secs
      Slowest:      0.1672 secs
      Fastest:      0.0276 secs
      Average:      0.0337 secs
      Requests/sec: 1162.6199
      
      Total data:   1500000 bytes
      Size/request: 15 bytes
    
    Response time histogram:
      0.028 [1]     |
      0.042 [95291] |■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
      0.056 [4573]  |■■
      0.069 [64]    |
      0.083 [19]    |
      0.097 [2]     |
      0.111 [0]     |
      0.125 [0]     |
      0.139 [18]    |
      0.153 [23]    |
      0.167 [9]     |
    
    
    Latency distribution:
      10% in 0.0294 secs
      25% in 0.0305 secs
      50% in 0.0327 secs
      75% in 0.0367 secs
      90% in 0.0386 secs
      95% in 0.0405 secs
      99% in 0.0433 secs
    
    Details (average, fastest, slowest):
      DNS+dialup:   0.0000 secs, 0.0276 secs, 0.1672 secs
      DNS-lookup:   0.0000 secs, 0.0000 secs, 0.0000 secs
      req write:    0.0000 secs, 0.0000 secs, 0.0009 secs
      resp wait:    0.0336 secs, 0.0276 secs, 0.1671 secs
      resp read:    0.0000 secs, 0.0000 secs, 0.0009 secs
    
    Status code distribution:
      [200] 100000 responses

    輸出結(jié)果表明,持續(xù)發(fā)送了100000個請求,請求成功率為100%。

  3. 執(zhí)行如下命令,實時觀察Pod的擴縮容情況。

    說明

    這個命令會持續(xù)運行,直到您手動停止它。如果您只想觀察一段時間,可以按Ctrl + C組合鍵來終止命令的運行。

    kubectl get pods --watch

    image.png

(可選)步驟三:查看服務(wù)監(jiān)控數(shù)據(jù)

Knative提供開箱即用的可觀測能力,在Knative頁面單擊監(jiān)控大盤頁簽,即可查看目標Knative服務(wù)的監(jiān)控數(shù)據(jù)情況。關(guān)于大盤信息的詳細介紹,請參見查看Knative服務(wù)監(jiān)控大盤

image.png

相關(guān)文檔