全部產品
Search
文件中心

Platform For AI:通過關聯負載平衡NLB調用

更新時間:Jan 09, 2025

開啟VPC高速直連後,您可以將EAS服務掛載至在阿里雲上建立的網路負載平衡(NLB)執行個體。這樣不僅能夠通過NLB統一管理和調度您的EAS服務,還能充分利用其強大的存取控制功能,尤其適合需要負載平衡能力的高Cellular Data Package。本文為您介紹如何掛載NLB執行個體。

前提條件

計費說明

使用NLB會產生一定的費用,詳細的計費說明,請參見NLB計費規則

調用原理

原理介紹:

  • 在您指定的Virtual Private Cloud和交換器下,建立NLB執行個體。確保該網路環境與開啟VPC高速直連使用的專用網路和交換器相同。

  • 部署或更新服務時開啟VPC高速直連並掛載NLB執行個體和監聽連接埠,EAS會將交換器下的ENI掛載到EAS的Pod上,同時在NLB執行個體添加TCP監聽,從而實現通過NLB網域名稱:監聽連接埠訪問EAS服務。

掛載NLB

您可以在部署服務或更新服務時,通過在JSON設定檔中添加以下關鍵參數來掛載NLB執行個體。關於如何部署和更新EAS服務,請參見服務部署:控制台命令使用說明

"cloud": {
        "networking": {
            "vpc_id": "vpc-bp15jr4ggze4rvow39****",
            "vswitch_id": "vsw-bp11dobkizy0jjsgn****",
            "security_group_id": "sg-bp1dz9lad9s0615r****"
        }
    },
"networking": {
        "nlb": [
            {
               "id": "nlb-5q4sp7u6oorkha****",
                "listener_port": 9090
            }
        ]
    }
重要

如上述代碼所示,掛載NLB執行個體的配置(networking)與cloud位於同一層級。

參數

描述

cloud

networking

vpc_id

通過配置VPC、交換器和安全性群組來啟用VPC高速直連。

重要
  • 請使用與NLB執行個體一致的專用網路。

  • 請確保安全性群組未被其他雲產品使用,並保證交換器可用IP數量與執行個體數相匹配。

  • 安全性群組的入方向配置需確保EAS執行個體IP及其8080連接埠在授權的IP和連接埠範圍內。

vswitch_id

security_group_id

networking

nlb

id

表示已建立的NLB執行個體ID。

listener_port

自訂連接埠,部署服務時,EAS會自動將其建立為NLB執行個體的監聽連接埠。服務部署成功後,您可以通過NLB網域名稱:監聽連接埠訪問EAS服務。

說明
  • 由於EAS引擎監聽固定的8080連接埠,因此連接埠需要避開8080連接埠。

  • 請使用未被NLB監聽的連接埠,以避免衝突。

驗證網路連通性

服務部署成功後,驗證NLB網域名稱:監聽連接埠的網路連通性:

  1. 您可以登入網路型負載平衡NLB控制台,在目標NLB執行個體DNS名稱列,查看NLB網域名稱。image

  2. 執行命令telnet 網域名稱 監聽連接埠,驗證NLB網域名稱連通性。

    其中監聽連接埠是您部署服務時定義的listener_port;網域名稱為上述步驟查詢的DNS網域名稱。

    • 公網NLB:在本地終端中執行命令進行驗證。

    • 私網NLB:在專用網路內的終端機器上,執行命令進行驗證。

    樣本結果如下所示:image

後續您可以通過NLB網域名稱和連接埠來調用EAS服務。樣本如下,您的調用命令和結果以實際為準。

# 樣本命令  
curl http://<NLB網域名稱>:<監聽連接埠>/api/predict/<service_name> -H 'Authorization:<service_token>' -d '[{"浙江的省會城市是 哪裡?"}]'
# 樣本結果
{"response":"浙江的省會城市是杭州。","history":[["[{\"浙江的省會城市是哪裡?\"}]","浙江的省會城市是杭州。"]]}

其中:

  • http://<NLB網域名稱>:<監聽連接埠>/api/predict/<service_name>:是服務訪問地址,您可以在模型線上服務(EAS)頁面,單擊目標服務名稱,然後在基本資料地區單擊查看調用資訊進行查看。您需要將訪問地址中的共用網關網域名稱地址替換為<NLB網域名稱>:<監聽連接埠>,其中:

    • <NLB網域名稱>:替換為上述步驟查詢的DNS名稱。

    • <監聽連接埠>:替換為部署服務時設定的listener_port。

  • <service_token>:查詢方法同上。