使用 Docker Compose 升级 Milvus 集群
本主题介绍如何使用 Docker Compose 升级您的 Milvus。
通常情况下,您可以通过更换镜像来升级 Milvus。但在从 v2.1.x 升级至 v2.6.24 之前,您需要先迁移元数据。
消息队列限制:升级至 Milvus v2.6.24 时,必须保留当前的消息队列选择。升级过程中不支持在不同的消息队列系统之间切换。未来版本将支持更改消息队列系统。
通过更换镜像升级 Milvus
通常情况下,您可以按以下步骤升级 Milvus:
在
docker-compose.yaml中修改 Milvus 镜像标签。请注意,您需要修改代理、所有协调器以及所有工作节点的镜像标签。
... rootcoord: container_name: milvus-rootcoord image: milvusdb/milvus:v2.6.24 ... proxy: container_name: milvus-proxy image: milvusdb/milvus:v2.6.24 ... querycoord: container_name: milvus-querycoord image: milvusdb/milvus:v2.6.24 ... querynode: container_name: milvus-querynode image: milvusdb/milvus:v2.6.24 ... indexcoord: container_name: milvus-indexcoord image: milvusdb/milvus:v2.6.24 ... indexnode: container_name: milvus-indexnode image: milvusdb/milvus:v2.6.24 ... datacoord: container_name: milvus-datacoord image: milvusdb/milvus:v2.6.24 ... datanode: container_name: milvus-datanode image: milvusdb/milvus:v2.6.24运行以下命令执行升级。
docker compose down docker compose up -d
迁移元数据
停止所有 Milvus 组件。
docker stop <milvus-component-docker-container-name>为元数据迁移准备配置文件
migrate.yaml。# migration.yaml cmd: # Option: run/backup/rollback type: run runWithBackup: true config: sourceVersion: 2.1.4 # Specify your milvus version targetVersion: 2.6.24 backupFilePath: /tmp/migration.bak metastore: type: etcd etcd: endpoints: - milvus-etcd:2379 # Use the etcd container name rootPath: by-dev # The root path where data is stored in etcd metaSubPath: meta kvSubPath: kv运行迁移容器。
# Suppose your docker-compose run with the default milvus network, # and you put migration.yaml in the same directory with docker-compose.yaml. docker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml使用新的 Milvus 镜像重新启动 Milvus 组件。
Update the milvus image tag in the docker-compose.yaml docker compose down docker compose up -d
下一步
- 您可能还想了解如何:
- 如果您已准备好将集群部署到云端: