You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无k8s集群如何多机部署Milvus分布式集群 支持docker-compose吗

核心结论
  • 原生docker-compose为单主机容器编排工具,无法直接实现跨多节点的分布式Milvus集群部署,仅能在单台机器上拉起分布式版本用于功能测试,强行拆分compose文件到多机启动会遇到服务发现失败、网络不通、数据持久化不一致等难以排查的问题。
  • 无可用k8s集群的场景下,跨多机部署分布式Milvus有两种成熟可落地的方案,均不需要提前搭建完整k8s环境。
方案一:Docker Swarm + 调整后的compose配置部署(测试/小规模环境首选,操作逻辑和docker-compose基本一致)
  • 前置准备:所有待部署节点安装相同版本的Docker,选定1台配置较高的节点作为Swarm管理节点,执行docker swarm init初始化集群,其余节点作为工作节点,执行管理节点输出的join命令加入集群;节点间防火墙放开2377、7946、4789端口,保证Swarm集群内部通信正常。
  • 网络配置:在管理节点执行docker network create -d overlay milvus-cluster-net创建跨主机overlay网络,保证部署在不同节点的服务可以通过服务名直接互通。
  • 配置改造:基于官方分布式Milvus的compose模板做调整:
    • 所有服务统一接入刚才创建的overlay网络
    • 给每个服务添加deploy.placement.constraints配置,按照规划把组件调度到指定节点:比如RootCoord、DataCoord、QueryCoord、IndexCoord这几个管控类组件调度到管理节点,DataNode、QueryNode、IndexNode、Proxy这类计算/接入组件分散调度到不同工作节点;如果etcd、消息队列、MinIO这些依赖也要跨节点部署,同步添加对应的调度规则
    • 提前在所有节点创建好对应的数据持久化目录,和compose里的挂载路径保持一致,避免容器调度到对应节点时找不到目录
  • 部署执行:在管理节点执行docker stack deploy -c milvus-distributed.yaml milvus即可拉起整个跨节点集群,后续扩缩容只需要调整compose文件里对应组件的副本数,重新执行上述命令即可生效。
方案二:裸机二进制逐节点部署(生产环境首选,稳定性高、资源开销低)
  • 前置准备:先单独部署好Milvus的三类核心依赖,保证依赖集群跨节点状态正常、网络互通:
    • 3节点及以上奇数节点的etcd集群,用于存储元数据
    • Pulsar或Kafka集群,作为消息存储和流转组件
    • MinIO或其他S3协议兼容的对象存储集群,用于存储向量数据、索引文件
  • 组件规划:根据机器硬件配置分配Milvus各组件的部署位置:RootCoord、DataCoord、QueryCoord、IndexCoord四个管控组件可以分散部署在2-3台节点做高可用,DataNode、QueryNode、IndexNode、Proxy根据算力需求部署在多台工作节点,其中QueryNode可以根据数据量灵活扩副本。
  • 配置修改:每个部署Milvus组件的节点上传对应版本的组件二进制包,修改同目录下的milvus.yaml配置文件,统一填写etcd、消息队列、对象存储的集群访问地址,所有组件配置相同的cluster.name参数。
  • 启动流程:按照先管控组件、后工作节点、最后接入层的顺序启动:先启动所有Coord组件,确认日志无报错后,再启动DataNode、IndexNode、QueryNode,最后启动Proxy组件对外暴露服务访问端口;可以给每个组件配置systemd规则,实现开机自启、异常自动重启。
注意事项
  • 两种方案都不需要依赖k8s,其中Swarm方案的操作逻辑和docker-compose高度相似,适合快速搭建测试集群;裸机二进制方案没有额外的容器编排层开销,适合生产环境长期运行。
  • 不要尝试用原生docker-compose跨节点拼凑集群,这类非标准部署方式没有官方适配,遇到问题几乎没有可参考的排查方案。

内容的提问来源于stack exchange,提问作者Jack

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 14:06:22