ATTENTIONS: THE
MAIN
BRANCH MAY BE IN AN UNSTABLE OR EVEN BROKEN STATE DURING DEVELOPMENT.
Milvus is a cloud-native, open-source vector database built to manage embedding vectors generated by machine learning models and neural networks. It extends the capabilities of best-in-class approximate nearest neighbor (ANN) search libraries (e.g. Faiss, NMSLIB, Annoy) and features on-demand scalability, and high availability.
The Milvus Operator provides an easy and solid solution to deploy and manage a full Milvus service stack including both the milvus components and its relevant dependencies such as etcd, pulsar and minio to the target Kubernetes clusters in a scalable and high-available way. The Milvus Operator defines a Milvus
custom resources on top of Kubernetes Custom Resources. The Kubernetes API can then be used in a declarative way to manage Milvus deployment stack and ensure its scalability and high-availability operation.
Install or upgrade to latest version with helm:
helm repo add milvus-operator https://zilliztech.github.io/milvus-operator/
helm repo update milvus-operator
helm -n milvus-operator upgrade --install --create-namespace milvus-operator milvus-operator/milvus-operator
Or with kubectl & raw manifests:
kubectl apply -f https://raw.githubusercontent.com/zilliztech/milvus-operator/v0.9.8/deploy/manifests/deployment.yaml
For more infomation Check Installation Instructions
kubectl apply -f https://raw.githubusercontent.com/zilliztech/milvus-operator/main/config/samples/demo.yaml
Note: The demo instance starts a standalone milvus & its dependencies with the least resources requests. It is not suitable for production environment. For more deployment examples please check https://github.com/zilliztech/milvus-operator/blob/main/config/samples
Versions of the underlying components are listed below:
Components | Milvus | Pulsar / Kafka | Etcd | MinIO |
---|---|---|---|---|
Versions | v2.3.11 [1] |
2.8.2 / 3.1.0 | 3.5.5-2 | RELEASE.2023-03-20T20-16-18Z |
[1]
Version of milvus is the default version we will use, you can set it to other version. The Compatibility with milvus releases is showed below.
Milvus Versions | <=v2.0.0-rc8 | v2.0.0-pre-ga | >=v2.0.0 |
---|---|---|---|
Compatibility | ✖️ | ✔️ | ✔️ |
Milvus Operator Versions | <0.4.0 | >=0.4.0 |
---|---|---|
Compatibility | ✖️ | ✔️ |
Use helm:
helm upgrade --install milvus-operator \
-n milvus-operator --create-namespace \
https://github.com/zilliztech/milvus-operator/releases/download/v0.9.8/milvus-operator-0.9.8.tgz
Or use kubectl & raw manifests:
kubectl apply -f https://raw.githubusercontent.com/zilliztech/milvus-operator/v0.9.8/deploy/manifests/deployment.yaml
- Installation
- Install KinD for development
- Administration Guides:
- Milvus CRD Reference
- How it works