Milvus向量数据库版本升级

创建时间:2025-3-11

更新时间:2025-8-8

作者:薄刀刀、散装DBA

联系方式:bulkdba,1511777

背景:当前版本无法使用分组搜索功能,通过升级版本解决,计划将milvus升级到2.4.15,其他组件保持不变。

当前版本 2.3.2

环境:

OS:Centos 7

milvus:2.3.2

部署方式:docker-compose部署的standalone

说明:将milvus升级到2.4.15,其他组件保持不变。

该教程介绍如何升级的操作步骤,升级到其他版本亦可参考。

防范未知风险,建议您先在测试环境进行演练实施,并进行数据的备份。

现在最新版本已经到2.5.14了,建议尽快升级到最新版本

  1. 升级路线,推荐 2.3.x------>2.3最新版------>2.4最新版------>2.5最新版。

  2. 2.4目前最稳定的小版本是 2.4.23。记住一个通用原则,第三位小版本号越大,越稳定。

0.查看当前版本号

复制代码
# docker ps -a
CONTAINER ID   IMAGE                                      COMMAND                  CREATED       STATUS                PORTS                                                                                      NAMES
c28f60290c69   milvusdb/milvus:v2.3.2                     "/tini -- milvus run..."   6 days ago    Up 6 days (healthy)   0.0.0.0:9091->9091/tcp, :::9091->9091/tcp, 0.0.0.0:19530->19530/tcp, :::19530->19530/tcp   milvus-standalone
7162bd9ddbce   minio/minio:RELEASE.2023-03-20T20-16-18Z   "/usr/bin/docker-ent..."   6 days ago    Up 6 days (healthy)   0.0.0.0:9000-9001->9000-9001/tcp, :::9000-9001->9000-9001/tcp                              milvus-minio
074fca2df980   quay.io/coreos/etcd:v3.5.5                 "etcd -advertise-cli..."   6 days ago    Up 6 days (healthy)   2379-2380/tcp                                                                              milvus-etcd
28ef549ebcc7   zilliz/attu:latest                         "docker-entrypoint.s..."   10 days ago   Up 10 days            0.0.0.0:8008->3000/tcp, :::8008->3000/tcp                                                  awesome_ishizaka

我们看到milvus的版本是2.3.2

1.下载私人镜像

cd milvus/

docker pull registry.cn-shenzhen.aliyuncs.com/hxlk8s/milvus:v2.4.15

查看

复制代码
# docker images
REPOSITORY                                        TAG                            IMAGE ID       CREATED         SIZE
zilliz/attu                                       latest                         07c64464c543   3 months ago    323MB
registry.cn-shenzhen.aliyuncs.com/hxlk8s/milvus   v2.4.15                        278de20b4f8d   4 months ago    1.6GB
milvusdb/milvus                                   v2.3.2                         4b6c62c2b5f8   16 months ago   868MB
milvusdb/milvus                                   v2.3.2                         4b6c62c2b5f8   16 months ago   868MB
minio/minio                                       RELEASE.2023-03-20T20-16-18Z   400c20c8aac0   24 months ago   252MB
minio/minio                                       RELEASE.2023-03-20T20-16-18Z   400c20c8aac0   24 months ago   252MB
quay.io/coreos/etcd                               v3.5.5                         673f29d03de9   2 years ago     182MB

看到,我们已经下载成功版本为2.4.15的镜像

2.打标签

打标签的目的是名称与 docker-compose.yml 文件定义的名称保持一致

docker tag <IMAGE ID> milvusdb/milvus:v<版本号>

示例:

docker tag 278de20b4f8d milvusdb/milvus:v2.4.15

复制代码
# docker images
REPOSITORY                                        TAG                            IMAGE ID       CREATED         SIZE
zilliz/attu                                       latest                         07c64464c543   3 months ago    323MB
milvusdb/milvus                                   v2.4.15                        278de20b4f8d   4 months ago    1.6GB
registry.cn-shenzhen.aliyuncs.com/hxlk8s/milvus   v2.4.15                        278de20b4f8d   4 months ago    1.6GB
milvusdb/milvus                                   v2.3.2                         4b6c62c2b5f8   16 months ago   868MB
milvusdb/milvus                                   v2.3.2                         4b6c62c2b5f8   16 months ago   868MB
minio/minio                                       RELEASE.2023-03-20T20-16-18Z   400c20c8aac0   24 months ago   252MB
minio/minio                                       RELEASE.2023-03-20T20-16-18Z   400c20c8aac0   24 months ago   252MB
quay.io/coreos/etcd                               v3.5.5                         673f29d03de9   2 years ago     182MB

发现这个有2个v2.4.15镜像,我们尝试删除一个

docker rmi <docker images:TAG>

示例:

docker rmi registry.cn-shenzhen.aliyuncs.com/hxlk8s/milvus:v2.4.15

Untagged: registry.cn-shenzhen.aliyuncs.com/hxlk8s/milvus:v2.4.15

Untagged: registry.cn-shenzhen.aliyuncs.com/hxlk8s/milvus@sha256:de**d3****aee29422e29f6

最后的效果:

复制代码
# docker images
REPOSITORY            TAG                            IMAGE ID       CREATED         SIZE
zilliz/attu           latest                         07c64464c543   3 months ago    323MB
milvusdb/milvus       v2.4.15                        278de20b4f8d   4 months ago    1.6GB
milvusdb/milvus       v2.3.2                         4b6c62c2b5f8   16 months ago   868MB
milvusdb/milvus       v2.3.2                         4b6c62c2b5f8   16 months ago   868MB
minio/minio           RELEASE.2023-03-20T20-16-18Z   400c20c8aac0   24 months ago   252MB
minio/minio           RELEASE.2023-03-20T20-16-18Z   400c20c8aac0   24 months ago   252MB
quay.io/coreos/etcd   v3.5.5                         673f29d03de9   2 years ago     182MB

3.删除容器

docker compose -f milvus-standalone-docker-compose.yml down

4.修改配置文件docker-compose.yml

复制代码
standalone:
    container_name: milvus-standalone
    image: milvusdb/milvus:v2.3.2
修改为:
  standalone:
    container_name: milvus-standalone
    image: milvusdb/milvus:v2.4.15

5.重新加载使用

docker compose -f milvus-standalone-docker-compose.yml up -d

6.attu登录查看新版本

http://192.168.10.1:8008/#/

说明:整个过程数据不会丢失