id: eks.md title: Deploy a Milvus Cluster on EKS related_key: cluster

summary: Learn how to deploy a Milvus cluster on EKS

在 EKS 部署 Milvus 集群

本文介绍在 Amazon EKS 上部署 Milvus 集群的操作步骤。

本文假设你对 AWS 访问管理有基本的了解。如果你不熟悉它,请参阅 AWS Identity and Access Management 文档

先决条件

所需软件

云安全

  • EKS,EC2,和 S3 的访问权限
  • 访问密钥
  • 秘密访问密钥

部署集群

你可以在 Google 云端硬盘下载模板配置文件。

  1. 预置 Milvus 集群。更多信息请参见预置 Milvus 集群

  2. Milvus 集群预置完成后,使用集群的区域和名称运行以下命令。

    1. aws eks --region ${aws-region} update-kubeconfig --name ${cluster-name}
  3. 创建 kubectl 文件,运行命令 kubectl get svc。如果成功,将在输出中显示一个集群。

    1. NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
    2. kubernetes ClusterIP 172.20.0.1 <none> 443/TCP 106m
  4. 运行以下命令启动预置的 Milvus 集群。使用 S3 作为存储时,需要访问密钥和 S3 存储桶。

    1. helm upgrade --install --set cluster.enabled=true --set externalS3.enabled=true --set externalS3.host='s3.us-east-2.amazonaws.com' --set externalS3.port=80 --set externalS3.accessKey=${access-key} --set externalS3.secretKey=${secret-key} --set externalS3.bucketName=${bucket-name} --set minio.enabled=False --set service.type=LoadBalancer milvus milvus/milvus
  5. 再次运行 kubectl get svc 以获取负载平衡器的 IP 地址,将它用作 Milvus 集群的 IP 地址。

运行 kubectl get pods 查看集群中正在运行的 Pod。

伸缩集群

当前,Milvus 集群仅支持手动伸缩。运行以下命令以修改不同类型的节点实例的数量。

有关数据节点、索引节点、查询节点和代理的更多信息,请参阅存储/计算分离
  1. helm upgrade --install --set cluster.enabled=true --set dataNode.replicas=1 --set indexNode.replicas=1 --set queryNode.replicas=1 --set proxy.replicas=1 --set externalS3.enabled=true --set externalS3.host='s3.us-east-2.amazonaws.com' --set externalS3.port=80 --set externalS3.accessKey=${access-key} --set externalS3.secretKey=${secret-key} --set externalS3.bucketName=${bucket-name} --set minio.enabled=False --set service.type=LoadBalancer milvus milvus/milvus

运行以上命令后,运行 kubectl get pods 以查看新创建的节点实例。

更多内容

如果你想学习如何在其他云上部署 Milvus: