在 Azure 上使用 AKS 部署 Milvus
本主题描述如何使用 Azure Kubernetes Service (AKS) 和 Azure 门户 配置和创建集群。
前提条件
确保您的 Azure 项目已正确设置,并且您有权访问要使用的资源。如果您不确定访问权限,请联系您的管理员。
软件要求
或者,您可以使用预装了 Azure CLI、kubectl 和 Helm 的 Cloud Shell。
配置 Kubernetes 集群
- 登录 Azure 门户。
- 在 Azure 门户菜单或从主页页面,选择创建资源。
- 选择容器 > Kubernetes 服务。
- 在基础知识页面上,配置以下选项:
-
项目详细信息:
-
订阅:联系您组织的 Azure 管理员以确定您应该使用哪个订阅。
- 资源组:联系您组织的 Azure 管理员以确定您应该使用哪个资源组。
-
-
集群详细信息:
-
Kubernetes 集群名称:输入集群名称。
-
区域:选择一个区域。
-
可用性区域:根据需要选择可用性区域。对于生产集群,我们建议您选择多个可用性区域。
-
-
主节点池:
-
节点大小:我们建议您选择至少具有 16 GB RAM 的虚拟机,但您可以根据需要选择虚拟机大小。
-
缩放方法:选择缩放方法。
-
节点数量范围:选择节点数量的范围。
-
-
节点池:
-
启用虚拟节点:选中复选框以启用虚拟节点。
-
启用虚拟机规模集:我们建议您选择
已启用
。
-
-
网络:
-
网络配置:我们建议您选择
Kubenet
。 -
DNS 名称前缀:输入 DNS 名称前缀。
-
流量路由:
-
负载均衡器:
标准
。 -
HTTP 应用程序路由:不需要。
-
-
- 配置选项后,点击审查 + 创建,然后在验证完成后点击创建。创建集群需要几分钟时间。
连接到集群
- 导航到您在 Kubernetes 服务中创建的集群并点击它。
- 在左侧导航窗格中,点击
概述
。 - 在出现的概述页面上,点击连接以查看资源组和订阅。
设置订阅和凭据
- 运行以下命令设置您的订阅。
az account set --subscription EXAMPLE-SUBSCRIPTION-ID
- 运行以下命令下载凭据并配置 Kubernetes CLI 使用它们。
az aks get-credentials --resource-group YOUR-RESOURCE-GROUP --name YOUR-CLUSTER-NAME
对于以下过程,请使用相同的 shell。如果您切换到另一个 shell,请再次运行前面的命令。
使用 Azure Blob Storage 作为外部对象存储
Azure Blob Storage 是 Azure 版本的 AWS Simple Storage Service (S3)。
- 创建存储账户和容器
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 # 存储账户容器名称
cloudProvider: azure
useSSL: true
accessKey: "milvustesting1" # 存储账户名称
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 charts 的仓库并更新仓库以获取最新的 charts。然后我们安装一个 Milvus 实例并将其命名为 my-release。
注意配置 service.type
值,它表示我们希望通过 Layer-4 负载均衡器公开 Milvus 实例。
验证部署
一旦所有 pod 都在运行,运行以下命令获取外部 IP 地址。
kubectl get services|grep my-release-milvus|grep LoadBalancer|awk '{print $4}'
Hello Milvus
请参考 Hello Milvus,将 host 值更改为外部 IP 地址,然后运行代码。
下一步
如果您想了解如何在其他云上部署 Milvus: