🚀 免費嘗試 Zilliz Cloud,完全托管的 Milvus,體驗速度提升 10 倍!立即嘗試

milvus-logo
LFAI
主頁
  • 管理指南
    • 縮放

擴充 Milvus 集群

Milvus 支援其元件的水平擴充。這意味著您可以根據自己的需要,增加或減少每種類型的工作節點數量。

本主題將介紹如何擴展 Milvus 叢集。我們假設您在擴充之前已經安裝了 Milvus 叢集。此外,我們建議您在開始之前先熟悉Milvus 架構

本教學以擴充三個查詢節點為例。若要縮放其他類型的節點,請在命令列中以對應的節點類型取代queryNode

有关如何使用 Milvus Operator 扩展群集的信息,请参阅使用 Milvus Operator 扩展群集

什麼是水平縮放?

水平縮放包括縮出和縮入。

縮放

縮放是指增加叢集中的節點數量。與擴充不同的是,向外擴充不需要您為群集中的一個節點分配更多的資源。相反,縮放是透過增加節點來水平擴展群集。

Scaleout 縮放

Scaleup 擴充

根據Milvus 架構,無狀態工作節點包括查詢節點、資料節點、索引節點和代理。因此,您可以擴展這些類型的節點,以滿足您的業務需求和應用場景。您可以手動或自動縮放 Milvus 集群。

一般而言,如果您建立的 Milvus 叢集使用率過高,您就需要將其縮減。以下是一些可能需要縮減 Milvus 叢集的典型情況:

  • CPU 和記憶體使用率在一段時間內偏高。
  • 查詢吞吐量變高。
  • 需要更高的索引速度。
  • 需要處理大量的大型資料集。
  • 需要確保 Milvus 服務的高可用性。

向內擴展

向內擴充是指減少叢集中的節點數量。一般來說,如果您所建立的 Milvus 叢集使用率不足,您就需要擴充叢集。以下是一些需要擴充 Milvus 叢集的典型情況:

  • CPU 和記憶體使用率在一段時間內偏低。
  • 查詢吞吐量變低。
  • 不需要更高的索引速度。
  • 要處理的資料集大小很小。
我們不建議大幅減少工作者節點的數量。例如,如果群集中有五個資料節點,我們建議每次減少一個資料節點,以確保服務可用性。如果第一次嘗試縮放之後,服務是可用的,您可以繼續進一步減少資料節點的數量。

先決條件

執行kubectl get pods 以取得您建立的 Milvus 叢集中的元件清單及其工作狀態。

NAME                                            READY   STATUS       RESTARTS   AGE
my-release-etcd-0                               1/1     Running      0          1m
my-release-milvus-datacoord-7b5d84d8c6-rzjml    1/1     Running      0          1m
my-release-milvus-datanode-665d4586b9-525pm     1/1     Running      0          1m
my-release-milvus-indexcoord-9669d5989-kr5cm    1/1     Running      0          1m
my-release-milvus-indexnode-b89cc5756-xbpbn     1/1     Running      0          1m
my-release-milvus-proxy-7cbcc8ffbc-4jn8d        1/1     Running      0          1m
my-release-milvus-pulsar-6b9754c64d-4tg4m       1/1     Running      0          1m
my-release-milvus-querycoord-75f6c789f8-j28bg   1/1     Running      0          1m
my-release-milvus-querynode-7c7779c6f8-pnjzh    1/1     Running      0          1m
my-release-milvus-rootcoord-75585dc57b-cjh87    1/1     Running      0          1m
my-release-minio-5564fbbddc-9sbgv               1/1     Running      0          1m 
Milvus 只支援新增工作節點,不支援新增協調器元件。

擴充 Milvus 叢集

您可以手動或自動擴充 Milvus 叢集。如果啟用自動擴充,當 CPU 和記憶體資源消耗達到您設定的值時,Milvus 叢集會自動縮小或擴大。

目前,Milvus 2.1.0 只支援手動縮放。

縮放

執行helm upgrade my-release milvus/milvus --set queryNode.replicas=3 --reuse-values 來手動縮放查詢節點。

如果成功,查詢節點上會新增三個執行中的 Pod,如以下範例所示。

NAME                                            READY   STATUS    RESTARTS   AGE
my-release-etcd-0                               1/1     Running   0          2m
my-release-milvus-datacoord-7b5d84d8c6-rzjml    1/1     Running   0          2m
my-release-milvus-datanode-665d4586b9-525pm     1/1     Running   0          2m
my-release-milvus-indexcoord-9669d5989-kr5cm    1/1     Running   0          2m
my-release-milvus-indexnode-b89cc5756-xbpbn     1/1     Running   0          2m
my-release-milvus-proxy-7cbcc8ffbc-4jn8d        1/1     Running   0          2m
my-release-milvus-pulsar-6b9754c64d-4tg4m       1/1     Running   0          2m
my-release-milvus-querycoord-75f6c789f8-j28bg   1/1     Running   0          2m
my-release-milvus-querynode-7c7779c6f8-czq9f    1/1     Running   0          5s
my-release-milvus-querynode-7c7779c6f8-jcdcn    1/1     Running   0          5s
my-release-milvus-querynode-7c7779c6f8-pnjzh    1/1     Running   0          2m
my-release-milvus-rootcoord-75585dc57b-cjh87    1/1     Running   0          2m
my-release-minio-5564fbbddc-9sbgv               1/1     Running   0          2m

縮放

執行helm upgrade my-release milvus/milvus --set queryNode.replicas=1 --reuse-values 以擴充查詢節點。

如果成功,查詢節點上的三個執行中 Pod 將減少為一個,如以下範例所示。

NAME                                            READY   STATUS    RESTARTS   AGE
my-release-etcd-0                               1/1     Running   0          2m
my-release-milvus-datacoord-7b5d84d8c6-rzjml    1/1     Running   0          2m
my-release-milvus-datanode-665d4586b9-525pm     1/1     Running   0          2m
my-release-milvus-indexcoord-9669d5989-kr5cm    1/1     Running   0          2m
my-release-milvus-indexnode-b89cc5756-xbpbn     1/1     Running   0          2m
my-release-milvus-proxy-7cbcc8ffbc-4jn8d        1/1     Running   0          2m
my-release-milvus-pulsar-6b9754c64d-4tg4m       1/1     Running   0          2m
my-release-milvus-querycoord-75f6c789f8-j28bg   1/1     Running   0          2m
my-release-milvus-querynode-7c7779c6f8-pnjzh    1/1     Running   0          2m
my-release-milvus-rootcoord-75585dc57b-cjh87    1/1     Running   0          2m
my-release-minio-5564fbbddc-9sbgv               1/1     Running   0          2m

下一步

免費嘗試托管的 Milvus

Zilliz Cloud 無縫接入,由 Milvus 提供動力,速度提升 10 倍。

開始使用
反饋

這個頁面有幫助嗎?