使用 AKS 在 Azure 上部署 Milvus
本主題描述如何使用Azure Kubernetes Service(AKS) 和Azure 入口網站佈建和建立叢集。
先決條件
確保您的 Azure 專案已設定妥當,且您有存取要使用的資源的權限。如果您不確定您的存取權限,請聯絡您的管理員。
軟體需求
或者,您可以使用預先安裝了 Azure CLI、kubectl 和 Helm 的Cloud Shell。
佈建 Kubernetes 叢集
- 登入 Azure 入口網站。
- 在 Azure 入口網站功能表上或從首頁,選擇建立資源。
- 選擇容器>Kubernetes 服務。
- 在Basics頁面上,設定下列選項:
專案詳細資訊:
訂閱:請聯絡您組織的 Azure 管理員,以確定您應該使用的訂閱。
- 資源群組:聯繫您組織的 Azure 管理員,以確定應該使用哪個資源群組。
群集詳細資訊:
Kubernetes 群集名稱:輸入群集名稱。
區域:選擇一個區域。
可用性區域:根據需要選擇可用性區域。對於生產群集,建議您選擇多個可用性區域。
主要節點池:
節點大小:我們建議您選擇最低 16 GB 記憶體的虛擬機器,但您也可以根據需要選擇虛擬機器大小。
擴充方式:選擇擴充方式。
節點數量範圍:選擇節點數的範圍。
節點池:
Enable virtual nodes(啟用虛擬節點):選取核取方塊以啟用虛擬節點。
啟用虛擬機器規模集:建議您選擇
enabled
。
網路:
網路組態:我們建議您選擇
Kubenet
。DNS 名稱前綴:輸入 DNS 名稱前綴。
流量路由:
負載平衡器:
Standard
。HTTP 應用程式路由:不需要。
- 設定選項後,按一下檢閱 + 建立,驗證完成後再按一下建立。建立群集需要幾分鐘時間。
連接至群集
- 導覽到您在 Kubernetes 服務中建立的群集,然後按一下它。
- 在左側導覽窗格中,按一下
Overview
。 - 在顯示的「總覽」頁面上,按一下「連線」以檢視資源群組和訂閱。
設定訂閱和憑證
- 執行以下指令以設定訂閱。
az account set --subscription EXAMPLE-SUBSCRIPTION-ID
- 執行下列指令下載憑證,並設定 Kubernetes CLI 以使用憑證。
az aks get-credentials --resource-group YOUR-RESOURCE-GROUP --name YOUR-CLUSTER-NAME
使用 Azure Blob Storage 作為外部物件儲存
Azure Blob Storage 是 AWS Simple Storage Service (S3) 的 Azure 版本。
- 建立儲存帳戶和容器
az storage account create -n milvustesting1 -g MyResourceGroup -l eastus --sku Standard_LRS --min-tls-version TLS1_2
az storage container create -n testmilvus --account-name milvustesting1
- 取得秘鑰,使用第一個值
az storage account keys list --account-name milvustesting2
- 新增 values.yaml
cluster:
enabled: true
service:
type: LoadBalancer
extraConfigFiles:
user.yaml: |+
common:
storageType: remote
minio:
enabled: false
externalS3:
enabled: true
host: core.windows.net
port: 443
rootPath: my-release
bucketName: testmilvus # the storage account container name
cloudProvider: azure
useSSL: true
accessKey: "milvustesting1" # the storage account name
secretKey: "<secret-key>"
部署 Milvus
現在 Kubernetes 叢集已準備就緒。讓我們馬上部署 Milvus。
helm repo add milvus https://zilliztech.github.io/milvus-helm/
helm repo update
helm install -f values.yaml my-release milvus/milvus
在前面的指令中,我們在本機新增 Milvus Helm 圖表的 repo,並更新 repo 以取得最新的圖表。然後,我們安裝一個 Milvus 實例,並命名為my-release。
請注意配置service.type
的值,它表示我們希望透過 Layer-4 負載平衡器來揭露 Milvus 的實例。
驗證部署
所有 pod 都執行後,執行下列指令以取得外部 IP 位址。
kubectl get services|grep my-release-milvus|grep LoadBalancer|awk '{print $4}'
你好 Milvus
請參考Hello Milvus,將 host 值變更為外部 IP 位址,然後執行程式碼。
下一步
如果您想學習如何在其他雲端部署 Milvus: