-
Which versions can be smoothly upgraded?
-
How to perform a smooth upgrade between compatible versions?
-
How to migrate Milvus from an online to an offline environment?

-
conf
-
db

tables: This folder stores all collections and partitions in Milvus.
test_table: This folder stores all data segment files within the collection named “test_table.”
test_partition: This folder stores all data segment files within the partition named “test_partition.”
-
In Milvus, collections and partitions are logically parent-child, but they are at the same level in the file structure. -
The relationship between collections and partitions can be found in the meta file.
-
wal
-
logs
| Milvus Version Upgrade Guide
-
Data Compatibility Check
Phase One |
v0.5.0 ~ v0.5.3 |
Phase Two |
v0.6.0 |
Phase Three |
v0.7.0 ~ v0.10.2 |
-
Server Upgrade
-
Client Upgrade
| Migration of Milvus from Online to Offline Environment
For scenarios where testing is done in an online environment but deployment needs to be in an offline environment, the migration can be achieved through three steps: installing the Milvus server in the offline environment, installing the Milvus client in the offline environment, and copying the Milvus directory.
-
Installing Milvus Server in Offline Environment
The official recommendation is to deploy the Milvus server using Docker, so this article mainly describes how to install the Docker version of Milvus in an offline environment. The key step for offline installation is obtaining the Milvus Docker image; once you have the Docker image, you can easily start the Milvus server using docker run.
Since Docker provides the docker save and docker load commands to help us package and load Docker images, you can pull the Milvus Docker image on an online machine, compress it into a TAR package using docker save, copy the image TAR package to the offline machine using portable storage media, and finally load the image using docker load. The entire process can be described using the flowchart below:

The corresponding Docker commands are as follows:
$ docker save milvusdb/milvus > milvus_image.tar $ docker load < milvus_image.tar
-
Installing Milvus Client in Offline Environment
Milvus provides clients in various languages; the following mainly introduces how to install the Milvus Python client pymilvus in an offline environment.
The first step: Download the pymilvus package (multiple WHL files) from an online machine to a specified folder.
pip3 download -d <your path> pymilvus
The second step: Copy the downloaded pymilvus package to the offline machine for installation.
pip3 install <your path>/*.whl
Through these two steps, you can successfully install the Milvus Python client in the offline environment.
-
Copying the Milvus Directory
The final step in migrating from an online to an offline environment is to copy the Milvus folder from the online machine to the offline machine. After copying, to ensure that Milvus Docker starts smoothly, you also need to manually delete the wal folder from the Milvus directory.
Once all the preparations are complete, you can start Milvus on the offline machine by using docker run to map the copied db directory, logs directory, and conf directory.
The above is a brief introduction to some strategies for Milvus migration and upgrades. We welcome more enthusiasts promoting unstructured data search to join the Milvus open-source community and witness the growth of Milvus together!
| Welcome to Join the Milvus Community
github.com/milvus-io/milvus | Source Code
milvus.io | Official Site
milvusio.slack.com | Slack Community
zhihu.com/org/zilliz-11/columns | Zhihu
zilliz.blog.csdn.net | CSDN Blog
space.bilibili.com/478166626 | Bilibili

-
Installing Milvus Server in Offline Environment

$ docker save milvusdb/milvus > milvus_image.tar $ docker load < milvus_image.tar
-
Installing Milvus Client in Offline Environment
pip3 download -d <your path> pymilvus
pip3 install <your path>/*.whl
Through these two steps, you can successfully install the Milvus Python client in the offline environment.
-
Copying the Milvus Directory
