跳到主要内容
版本:v2.6.x

使用 Docker Compose 升级 Milvus 集群

本主题介绍如何使用 Docker Compose 升级您的 Milvus。

通常情况下,您 可以通过更换镜像来升级 Milvus。但在从 v2.1.x 升级至 v2.6.22 之前,您需要 先迁移元数据

说明

消息队列限制:升级至 Milvus v2.6.22 时,必须保留当前的消息队列选择。升级过程中不支持在不同的消息队列系统之间切换。未来版本将支持更改消息队列系统。

通过更换镜像升级 Milvus

通常情况下,你可以按以下步骤升级 Milvus:

  1. docker-compose.yaml 中修改 Milvus 镜像标签。

请注意,你需要修改 Proxy、所有 coordinator 以及所有 worker node 的镜像标签。

YAML
...
rootcoord:
container_name: milvus-rootcoord
image: milvusdb/milvus:v2.6.22
...
proxy:
container_name: milvus-proxy
image: milvusdb/milvus:v2.6.22
...
querycoord:
container_name: milvus-querycoord
image: milvusdb/milvus:v2.6.22
...
querynode:
container_name: milvus-querynode
image: milvusdb/milvus:v2.6.22
...
indexcoord:
container_name: milvus-indexcoord
image: milvusdb/milvus:v2.6.22
...
indexnode:
container_name: milvus-indexnode
image: milvusdb/milvus:v2.6.22
...
datacoord:
container_name: milvus-datacoord
image: milvusdb/milvus:v2.6.22
...
datanode:
container_name: milvus-datanode
image: milvusdb/milvus:v2.6.22
  1. 运行以下命令执行升级。

    Shell
    docker compose down
    docker compose up -d

迁移元数据

  1. 停止所有 Milvus 组件。

    Shell
    docker stop <milvus-component-docker-container-name>
  2. 为元数据迁移准备配置文件 migrate.yaml

    YAML
    # migration.yaml
    cmd:
    # Option: run/backup/rollback
    type: run
    runWithBackup: true
    config:
    sourceVersion: 2.1.4 # Specify your milvus version
    targetVersion: 2.6.22
    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
  3. 运行迁移容器。

    Shell
    # 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
  4. 使用新的 Milvus 镜像重新启动 Milvus 组件。

    Shell
    Update the milvus image tag in the docker-compose.yaml
    docker compose down
    docker compose up -d

下一步