結合ECI伸縮組與應用型負載平衡器ALB,快速搭建跨可用性區域彈性高可用的大模型推理服務。
方案概覽
本方案採用跨可用性區域高可用架構,將搭載推理服務的ECI執行個體分散部署於單地區的多個可用性區域,實現可用性區域級容災。通過負載平衡進行智能流量調度,並使用Object Storage Service作為模型倉庫,確保商務持續性與資料可靠性。本方案架構如圖所示。
方案優勢
避免單點故障(高可用):使用多台伺服器來分攤業務負載,從而提高服務承載能力,避免出現單一服務故障造成的服務中斷。
Auto Scaling:使用伸縮組管理推理服務叢集可以一鍵調整ECI數量,快速橫向擴充。同時還支援設定自動調整的機制,實現根據業務負載按需擴充。
搭建流程
規劃叢集網路。建立Virtual Private Cloud和多個可用性區域的交換器,以搭建叢集的基礎網路環境。
建立Object Storage ServiceBucket。該Bucket用於儲存模型權重檔案。
配置執行個體RAM角色。後續ECI執行個體將扮演該角色,訪問步驟2中建立的Object Storage ServiceBucket。
準備鏡像緩衝。在ECI控制台建立鏡像緩衝以加快執行個體啟動速度,並將模型權重檔案下載到Object Storage ServiceBucket。
建立應用負載平衡ALB執行個體。該ALB執行個體將作為服務訪問入口。
建立伸縮組。建立伸縮組並綁定ALB,確保新擴容的ECI執行個體自動加入ALB的後端伺服器組。
開啟服務。調整伸縮組的期望執行個體數以啟動服務,並等待服務啟動完成。
1. 規劃叢集網路
首先需要規劃叢集網路,並根據規劃建立專用網路和交換器。為實現高可用性,請儘可能將ECI等資源分布在多個可用性區域,以規避單個可用性區域故障導致的服務不可用。本方案以雙可用性區域為例,您需要建立一個Virtual Private Cloud以及兩個可用性區域的交換器。操作步驟如下:
您也可以複用已有的Virtual Private Cloud,以跳過該步驟。
在控制台。根據以下指引建立1個專用網路及2個交換器。
①②:單擊建立專用網路。

③:地區。華東1(杭州)。
④:名稱。
vpc-ess-hangzhou。⑤:IPv4網段。選擇使用192.168.0.0/16。

交換器1:
⑥:名稱。
vSwitch-j。⑦:可用性區域。杭州可用性區域J。
⑧:IPv4網段。192.168.0.0/24。
⑨:單擊添加建立交換器2。

交換器2:
⑩:名稱。
vSwitch-k。⑪:可用性區域。杭州可用性區域K。
⑫:IPv4網段。192.168.1.0/24。

完成配置後單擊確定,等待專用網路建立完成。
2. 建立Object Storage ServiceBucket
網路環境搭建完成後,需建立Object Storage Service的儲存空間(Bucket),用於儲存模型權重檔案,後續ECI執行個體會從該Bucket中讀模數型權重檔案。操作步驟如下:
您也可以複用已有的Object Storage Service的Bucket,以跳過該步驟。
完成配置後單擊完成建立。
3. 建立執行個體RAM角色
本步驟需要建立執行個體RAM角色,並為該角色設定訪問Object Storage ServiceBucket的許可權,後續ECI執行個體將扮演該角色,讀取Bucket中的模型權重檔案。操作步驟如下:
在控制台建立執行個體RAM角色。關鍵配置項說明如下。
①:單擊建立角色。

②:信任主體類型。選擇雲端服務。
③:信任主體名稱。選擇Elastic Compute Service。
④:單擊確定後,根據介面提示設定執行個體RAM角色的名稱。

在控制台建立以下自訂權限原則。
①:單擊建立權限原則。
②:單擊指令碼編輯。


③:該策略代表某個Bucket的全部許可權。權限原則指令碼內容如下。
重要設定以下自訂策略時,請將
<bucket_name>替換為您所建立的儲存空間的Bucket 名稱。{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": "oss:*", "Resource": [ "acs:oss:*:*:<bucket_name>", "acs:oss:*:*:<bucket_name>/*" ] } ] }完成配置後單擊確定,根據介面提示設定權限原則名稱。
在控制台為執行個體RAM角色授權。
①②:單擊新增授權。
③:授權主體。選擇之前建立的執行個體RAM角色。
④:權限原則。選擇之前建立的自訂權限原則。

完成配置後單擊確認新增授權。
4. 準備鏡像緩衝和模型權重檔案
由於本方案中ECI執行個體使用的鏡像檔案較大,因此需要在ECI控制台建立鏡像緩衝,以加快執行個體啟動速度。同時還需要將模型權重檔案下載到Object Storage ServiceBucket,以提升模型載入速度。
在控制台建立ECI鏡像緩衝。
①②:單擊建立鏡像緩衝。

③④:地區及可用性區域。地區與步驟1中VPC地區保持一致,可用性區域與步驟1中建立的交換器可用性區域保持一致(任選一個)。
⑤⑥:網路。選擇步驟1中建立的VPC和交換器(交換器任選一個)。
⑦:Elastic IP Address。選擇已有Elastic IP Address,若沒有,請單擊Elastic IP Address控制台開始建立。建立完成後,單擊
重新整理後重新選擇Elastic IP Address。⑧:安全性群組。選擇一個安全性群組,如果沒有安全性群組,請單擊建立安全性群組,建立完成後,需回到該頁面重新選擇安全性群組。
⑨:鏡像緩衝名。vllm。
⑩:緩衝大小。100GB。
⑪:鏡像。
egs-registry.cn-hangzhou.cr.aliyuncs.com/egs/vllm。⑫:版本號碼。
0.6.4.post1-pytorch2.5.1-cuda12.4-ubuntu22.04。

等待鏡像建立完成。鏡像緩衝建立需15分鐘左右,請耐心等待。您可以在控制台鏡像快取頁面,查看建立進度。

在控制台啟動一台臨時ECI執行個體,用於將模型權重檔案下載到Object Storage Service。
①②:單擊建立彈性容器組。

③:付費模式。隨用隨付。
④:地區。地區與步驟1中VPC地區保持一致,本文為華東1(杭州)為例。
⑤:專用網路。選擇步驟1中建立的Virtual Private Cloud。
⑥:交換器。選擇步驟1中建立的交換器。
⑦:安全性群組。根據介面提示設定。

容器組配置:
⑧:CPU。2vCPU。
⑨:記憶體。4GiB。
⑩:容器運行退出後。選擇失敗後重啟。

容器組進階配置:
⑪:展開進階配置。
⑫:開啟自動匹配鏡像緩衝。
⑬:選擇並添加OSS持久化儲存。
⑭:名稱。
oss-data。⑮:Bucket。選擇步驟2建立的Bucket。
⑯:RAM角色。選擇步驟3建立的執行個體RAM角色。
⑰:臨時儲存大小。設定為100GiB。

容器配置:
⑱:鏡像。
egs-registry.cn-hangzhou.cr.aliyuncs.com/egs/vllm。⑲:鏡像版本。
0.6.4.post1-pytorch2.5.1-cuda12.4-ubuntu22.04。⑳:啟動命令。將以下命令分別複製到如圖所示位置。
/bin/bash -c git-lfs clone https://www.modelscope.cn/models/deepseek-ai/DeepSeek-R1-Distill-Qwen-7B.git /oss-data/DeepSeek-R1-Distill-Qwen-7B該命令含義:使用git-lfs將模型從魔搭社區的倉庫複製到
/oss-data/DeepSeek-R1-Distill-Qwen-7B目錄下。
容器進階配置:
㉑:展開container-1 進階配置。
㉒:CPU。2vCPU。
㉓:記憶體。4GiB。
㉔:開啟儲存功能並添加掛載。
㉕:選擇
oss-data。㉖:容器內掛載路徑。
/oss-data。㉗:單擊下一步: 其他設定。

㉘:Elastic IP Address。選擇自動建立。
㉙:頻寬峰值。設定為200Mbps。
㉚:單擊配置確認,根據介面提示完成ECI執行個體的建立。

ECI建立完成後,會自動開始下載模型權重檔案。請耐心等待。您可以在等待期間,同時進行步驟5和步驟6的操作。
5. 建立應用負載平衡ALB執行個體
在開始建立ECI叢集前,需先建立應用型負載平衡ALB作為叢集訪問入口。具體操作如下:
在控制台建立ALB執行個體。
①②:單擊建立應用型負載平衡。

③:地區。選擇華東1(杭州),與步驟1中建立的VPC保持一致。
④:執行個體網路類型。選擇公網,選擇公網才能對外提供服務。
⑤:VPC。選擇步驟1中建立的VPC。
⑥:可用性區域和交換器。選擇步驟1中建立的交換器。
⑦:執行個體名稱。
alb-eci-deepseek-7B。⑧:單擊立即購買,然後根據介面提示完成ALB執行個體建立操作。


在控制台為ALB執行個體建立監聽及後端伺服器組。
①②:找到上一步建立的ALB執行個體,單擊操作列下的建立監聽。
如果沒有找到ALB執行個體,請在頁面左上方切換地區。

③:選擇HTTP協議。
④:監聽連接埠設定為80。
⑤:單擊下一步。
⑥:單擊建立伺服器組。


⑦:伺服器群組類型。選擇伺服器類型。
⑧:伺服器組名稱。
eci-deepseek-7B。⑨:VPC。選擇步驟1建立的VPC,會自動選中。
⑩:選擇後端協議。HTTP。
⑪⑫:開啟健全狀態檢查。
⑬:健全狀態檢查方法。選擇GET。
⑭:健全狀態檢查路徑。設定為
/health。後續推理服務啟動後,會通過檢查/health路徑判斷服務啟動狀態。⑮⑯⑰:單擊建立,單擊下一步,單擊提交,等待建立完成。





6. 建立伸縮組
建立伸縮組並綁定ALB,伸縮組負責自動建立和管理ECI執行個體,並確保新擴容的ECI執行個體自動加入ALB的後端伺服器組以實現負載平衡。
在Auto Scaling控制台建立伸縮組並關聯ALB。
①②③:單擊建立伸縮組。

④:伸縮組名稱。
deepseek-7B-servers。⑤:伸縮群組類型。選擇ECI。
⑥:組內執行個體配置資訊來源。選擇從零開始建立。
⑦:組內最小執行個體數。設定為0,伸縮組執行個體數下限。
⑧:組內最大執行個體數。設定為10,伸縮組執行個體數上限。
⑨:專用網路。選擇步驟1建立的VPC。
⑩:交換器。選擇步驟1建立的所有交換器。
⑪:單擊展開進階配置。

進階配置:
⑫⑬:開啟期望執行個體數,並配置期望執行個體數為0,代表先建立一個空的伸縮組。
⑭:單擊添加伺服器組,並選擇伺服器組類型為ALB。
⑮:伺服器組。選擇步驟5建立的伺服器組。
⑯:連接埠。選擇
30000。後續ECI中部署的推理服務會使用該連接埠對外提供服務。⑰:單擊建立。等待伸縮組建立完成,可根據介面提示建立伸縮配置。


在Auto Scaling控制台建立伸縮配置。
伸縮配置用於定義伸縮組中執行個體的模板,伸縮組在擴容時,會以伸縮配置為模板建立新執行個體。操作步驟如下。
①②③:找到上一步建立的伸縮組,單擊伸縮組ID進入伸縮組詳情頁。

④⑤⑥:單擊。

⑦:付費模式。選擇隨用隨付。
⑧:選擇安全性群組。

容器組配置:
⑨:選擇指定規格。
⑩:執行個體規格。
ecs.gn7i-c8g1.2xlarge。⑪:勾選自動匹配鏡像緩衝。
⑫:展開進階配置。
⑬⑭⑮⑯:選擇OSS持久化儲存。並配置Bucket和執行個體RAM角色。
⑰:臨時儲存大小。100GiB。
⑱:GPU驅動版本。
tesla=550。
容器配置:
⑲:鏡像。
egs-registry.cn-hangzhou.cr.aliyuncs.com/egs/vllm。⑳:鏡像版本。
0.6.4.post1-pytorch2.5.1-cuda12.4-ubuntu22.04。㉑:啟動命令。將以下命令分別複製到如圖所示位置。
/bin/bash -c vllm serve /oss-data/DeepSeek-R1-Distill-Qwen-7B --port 30000 --served-model-name DeepSeek-R1-Distill-Qwen-7B --tensor-parallel-size 1 --max-model-len=16384 --enforce-eager --dtype=half --api-key api-key-example-abc123該命令代表從Object Storage Service中讀模數型權重檔案,並在
30000連接埠啟動推理服務,api-key為api-key-example-abc123。
㉒:展開container-1 進階配置。
㉓:CPU。設定為8vCPU。
㉔:記憶體。設定為30GiB。
㉕:GPU。設定為1。
㉖㉗:開啟儲存功能並添加儲存。
㉘:容器內掛載路徑。/oss-data
㉙:單擊下一步: 其他設定。

㉚:Elastic IP Address。選擇自動建立。
㉛:峰值頻寬。200Mbps。
㉜:單擊配置確認,並根據介面提示完成伸縮配置的建立。

㉝㉞㉟:根據介面提示啟用伸縮配置並啟動伸縮組。



7. 開啟服務
進行本步驟操作前,請確保步驟4中的模型權重檔案已完成下載。
在完成上述所有步驟後,您可以通過調整伸縮組期望執行個體數,觸發伸縮組的擴容活動。本文以擴容5台ECI執行個體為例,具體操作如圖所示。
調整期望執行個體數後,建立執行個體的操作可能會有延遲。您可以在伸縮活動頁簽下,查看伸縮組中進行中的伸縮活動。
|
|
後續步驟
使用Dify與大模型對話
釋放本文資源
應用於生產環境
如果要將該方案應用於生產,您可以參考以下建議完善架構。
建立自動調整機制,按業務負載自動擴縮容伸縮組執行個體數量,節省成本。例如基於GPU記憶體使用量率配置警示任務實現自定擴縮容、基於ALB的單機QPS監控指標自動擴縮容。
使用NAT Gateway,無需為所有執行個體配置Elastic IP Address。本樣本中,ECI執行個體通過配置Elastic IP Address實現拉取公網鏡像。在實際生產中,您可以使用NAT Gateway提供ECI執行個體的公網訪問能力。
為ALB佈建網域名並添加HTTPS協議支援。推薦使用自訂網域名作為叢集訪問入口,同時配置HTTPS協議支援以提升安全性。更多資訊,請參見為ALB添加CNAME記錄、添加HTTPS監聽。










