跳到主要内容

在 Azure 上使用 AKS 部署 Milvus

本主题描述如何使用 Azure Kubernetes Service (AKS) 和 Azure 门户 配置和创建集群。

前提条件

确保您的 Azure 项目已正确设置,并且您有权访问要使用的资源。如果您不确定访问权限,请联系您的管理员。

软件要求

或者,您可以使用预装了 Azure CLI、kubectl 和 Helm 的 Cloud Shell

安装 Azure CLI 后,请确保您已正确进行身份验证。

配置 Kubernetes 集群

  1. 登录 Azure 门户。
  2. 在 Azure 门户菜单或从主页页面,选择创建资源
  3. 选择容器 > Kubernetes 服务
  4. 基础知识页面上,配置以下选项:
  • 项目详细信息

    • 订阅:联系您组织的 Azure 管理员以确定您应该使用哪个订阅。

      • 资源组:联系您组织的 Azure 管理员以确定您应该使用哪个资源组。
  • 集群详细信息

    • Kubernetes 集群名称:输入集群名称。

    • 区域:选择一个区域。

    • 可用性区域:根据需要选择可用性区域。对于生产集群,我们建议您选择多个可用性区域。

  • 主节点池

    • 节点大小:我们建议您选择至少具有 16 GB RAM 的虚拟机,但您可以根据需要选择虚拟机大小。

    • 缩放方法:选择缩放方法。

    • 节点数量范围:选择节点数量的范围。

  • 节点池

    • 启用虚拟节点:选中复选框以启用虚拟节点。

    • 启用虚拟机规模集:我们建议您选择已启用

  • 网络

    • 网络配置:我们建议您选择Kubenet

    • DNS 名称前缀:输入 DNS 名称前缀。

    • 流量路由

      • 负载均衡器标准

      • HTTP 应用程序路由:不需要。

  1. 配置选项后,点击审查 + 创建,然后在验证完成后点击创建。创建集群需要几分钟时间。

连接到集群

  1. 导航到您在 Kubernetes 服务中创建的集群并点击它。
  2. 在左侧导航窗格中,点击概述
  3. 在出现的概述页面上,点击连接以查看资源组和订阅。

设置订阅和凭据

您可以使用 Azure Cloud Shell 执行以下过程。
  1. 运行以下命令设置您的订阅。
az account set --subscription EXAMPLE-SUBSCRIPTION-ID
  1. 运行以下命令下载凭据并配置 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: