Zilliz Cloud vs self-hosted Milvus

Zilliz Cloud gives you managed Milvus with less day-to-day operating work, while self-hosted Milvus keeps every data path and dependency in your hands. This page helps regulated teams decide which model fits their data location, compliance and staffing constraints.

On this page

When Zilliz Cloud or self-hosted Milvus fits your team

Choose Zilliz Cloud when your team wants a managed Milvus service and can accept that the vendor operates the cluster; choose self-hosted Milvus Distributed when regulation or contract terms require the cluster, its metadata and its vectors to stay in infrastructure you control. Both options run the same Apache-2.0 codebase under the LF AI and Data Foundation, with Zilliz as its primary contributor, so the decision rests on who runs the system, where data sits and how much control you need, not on which features exist. Zilliz's documentation describes Free, Serverless, Dedicated and Bring Your Own Cloud options, and the Bring Your Own Cloud model is the one to examine first if you need a managed control plane but your data must stay in your own cloud account.

Self-hosted Milvus Distributed fits when your platform team already runs Kubernetes and can own the dependencies that the Milvus architecture requires: etcd for metadata, object storage such as MinIO, S3 or Azure Blob, and a write-ahead log such as Woodpecker, Kafka or Pulsar. The advantage is full control over network paths, backups, upgrades and encryption keys, but that control is paid for in on-call work and in staff time that recurs for as long as the cluster runs. Choose it when that staffing exists and the data-location rules are strict enough that a managed service is not an option.

Choose Zilliz Cloud when the team is small, the data-location rules allow a vendor-run service, and the main goal is to get vector search into production without building an operations practice. Before you sign, confirm in writing which regions, network paths, encryption and access controls apply to your tier, where backups are stored, how a deployment is exited, and who can see metadata. Ask your compliance lead to map those answers to your data classification policy, because a Free or Serverless tier may not meet the same requirements as a Dedicated or Bring Your Own Cloud deployment.

Zilliz Cloud vs self-hosted Milvus side by side

This table compares who operates Milvus, where data lives, what each option depends on, and how it is licensed and billed. Read it to see which questions a managed Zilliz Cloud plan answers for you and which ones still need confirmation with Zilliz before you rely on it.

RowZilliz Cloud (managed Milvus)Self-hosted Milvus
LicenseZilliz Cloud is a commercial managed service; confirm service terms with Zilliz. Milvus itself is open source.Milvus is Apache-2.0 licensed, under the LF AI and Data Foundation with Zilliz as its primary contributor.
Who operates the serviceZilliz operates the managed Milvus service, per Zilliz documentation. Confirm which operational tasks Zilliz owns on each tier.Your team installs, upgrades, backs up and monitors every component in your own environment.
Release linesConfirm with Zilliz which Milvus version and release line each cluster runs and how upgrades are scheduled.Two lines are maintained: v3.0.3 (October 14, 2026) and v2.6.25 (September 29, 2026), per the Milvus releases page.
Deployment optionsFree tier with no credit card, Serverless, Dedicated, and Bring Your Own Cloud.Milvus Lite (Python library), Standalone on one machine, or Distributed as a Kubernetes-native cluster.
Data locationDedicated and Bring Your Own Cloud options vary where data sits; confirm regions and whether data stays in your cloud account with Zilliz.Data stays wherever you deploy it, including air-gapped or on-premises networks you control.
Dependencies you runLittle or none on Serverless or Dedicated, per Zilliz documentation; confirm what Bring Your Own Cloud adds to your account.Distributed mode needs etcd for metadata, object storage (MinIO, S3 or Azure Blob) and a write-ahead log such as Woodpecker, Kafka or Pulsar.
Access control and authenticationConfirm which authentication, TLS and role controls each tier exposes and how they map to your identity provider.Milvus implements authentication, TLS encryption and role-based access control, which you configure and maintain.
Index and search optionsConfirm which index types, BM25 and hybrid search features are enabled on each tier.HNSW, IVF, FLAT, SCANN and DiskANN indexes, GPU indexing with CAGRA, BM25, sparse and hybrid search.
Licensing and billing modelFree tier, Serverless billed by usage and scaling to zero, and Dedicated resources; ask Zilliz for current rates and any SLA.No license fee for Milvus; you pay for infrastructure, staff time and support you choose to buy.

Where vector data lives and what proof you can show an auditor

Both options put Milvus vectors, metadata and object storage somewhere specific, and that location decides which controls and evidence you own. The cards below separate what Zilliz Cloud handles from what your team must still produce, and what to request from the vendor in writing before you rely on either option.

Data location in Zilliz Cloud

Under Zilliz Cloud, the vectors, collection metadata and index files sit in infrastructure that Zilliz operates, and the region and deployment option you pick determine where that is. Ask Zilliz in writing which regions each option supports, where backups are stored, whether any data leaves that region for support or telemetry, and how deletion works when you end a cluster. Do not assume residency from the product name.

Bring-your-own-cloud boundary

Bring Your Own Cloud runs the managed service in an account you own, so the storage buckets and compute sit in your cloud boundary while Zilliz operates the control plane. Map exactly which components run in your account, which need outbound access to Zilliz, and who holds the keys to the buckets. Confirm the split with Zilliz in writing before you describe it to an assessor, because the boundary differs from fully self-hosted Milvus.

Authentication, TLS and role-based access

Self-hosted Milvus implements authentication, TLS encryption and role-based access control, so you configure these settings yourself and can show their state in your own environment. For Zilliz Cloud, ask which of these controls you can configure, which are fixed by the service, and how roles map to your identity provider. Record the answer for each control, since the auditor will ask who can read or write a collection.

Audit evidence you produce yourself

For self-hosted Milvus, your team generates the evidence: access configuration exports, TLS certificate inventories, role assignments, change records and backup test results. DeployOpen can prepare these controls and collect evidence, but it does not issue audit reports, attestations or certifications, and independent auditors make that determination. Decide early which evidence you will export on a schedule and where it is stored, because it is hard to reconstruct later.

Shared responsibility for patching and backups

With Zilliz Cloud, the vendor typically carries part of the patching and availability work, while with self-hosted Milvus your team carries all of it, including the etcd, object storage and message queue layers. Put the split in writing: who applies Milvus security fixes and on what timeline, who tests restores, and who owns the backup retention settings. Ask Zilliz for its documented responsibility matrix rather than inferring one from marketing pages.

Vendor compliance documents to request

Before you rely on Zilliz Cloud for a regulated workload, request its current independent reports, certifications, data processing terms, subprocessor list and incident response commitments directly from Zilliz, in writing. Confirm that each document covers the specific Zilliz Cloud option you plan to buy, including Serverless or bring-your-own-cloud, and its date and scope. Self-hosted Milvus does not come with these vendor documents, so your own evidence set replaces them.

Which Zilliz Cloud option matches your workload

The Free tier in Zilliz Cloud suits early evaluation: a team testing index choices, embedding models or a retrieval prototype before committing budget. Zilliz's documentation lists it with no credit card required, which lowers the barrier to a first test. It is a managed service, so the vector data is held in Zilliz's infrastructure rather than yours, and it is not the place to put regulated data that must stay in your own environment.

  • Who runs it: Zilliz operates the cluster, so you do not manage etcd, object storage or Kubernetes.
  • Where data sits: Vectors and metadata are stored in Zilliz-hosted infrastructure, so confirm the region and provider before loading any real records.
  • What to test: Index types, filtering and hybrid search against a representative sample, not production volume.
  • What changes later: Moving from a free cluster to a paid tier or to self-hosted Milvus means reloading data, so keep your embedding pipeline and schema in code.

Before you rely on this tier, confirm the current collection, storage and throughput limits in the Zilliz Cloud documentation, and check whether the features you need are included at this level.

What your team runs in each model

This table sets the day-to-day operating tasks of self-hosted Milvus against Zilliz Cloud, showing who performs each one and the skills your team needs. Read it as a split of responsibility: the managed service moves infrastructure work to the vendor, while identity, data classification, access reviews and evidence stay with you in both models.

Operating taskSelf-hosted Milvus (your team)Zilliz Cloud (vendor plus your team)
ProvisioningYour team sizes nodes, picks a deployment mode (Standalone or Distributed) and builds the Kubernetes deployment. Skills: Kubernetes, Helm, capacity planning.The vendor provisions Serverless, Dedicated or bring-your-own-cloud clusters. Your team chooses the option and region. Confirm which regions and cloud accounts are available for your data.
ScalingYour team scales proxies, coordinators and worker nodes, and the etcd, object storage and log tier that each depends on. Skills: Kubernetes autoscaling, storage tuning.Scaling of Serverless and Dedicated capacity is handled by the service. Your team reviews cost and performance limits. Ask how scaling events affect latency and whether they are visible in your logs.
Upgrades across v2.6 and v3.0 release linesYour team tests and applies upgrades across the v2.6 and v3.0 release lines (v2.6.25 and v3.0.3 are the latest published tags) and plans data and index compatibility. Skills: change management, staging environments, rollback planning.The vendor schedules platform upgrades. Your team confirms the Milvus version in use, tests client SDK compatibility and agrees on maintenance windows. Ask for the upgrade notice period in writing.
etcd and object storage operationsYour team runs etcd for metadata and MinIO, S3 or Azure Blob for object storage, including backup, quorum health and capacity. Skills: distributed key-value stores, storage administration.Metadata and object storage sit inside the managed service. Your team confirms where data is stored, its residency and how deletion is handled. Confirm this in the contract, not from the product page.
Write-ahead log operationYour team operates the chosen log backend (Woodpecker, Kafka or Pulsar), including retention, lag and broker health. Skills: messaging system operations.The vendor operates the write-ahead log. Your team reviews ingestion lag and error reports through the console or API where available. Confirm which metrics you can export.
Kubernetes operationsYour team owns cluster lifecycle, node pools, ingress, network policy and pod security for Distributed deployments. Skills: Kubernetes administration, GitOps.Not applicable to Serverless or Dedicated. For bring-your-own-cloud, your team still runs the cloud account, network paths and IAM roles that the service uses. Skills: cloud networking, IAM.
Backups and recoveryYour team designs, tests and stores backups of etcd, object storage and index state, and rehearses restore. Skills: backup engineering, recovery testing.The vendor documents its backup and recovery behavior. Your team sets retention needs, requests restore tests where offered and records recovery objectives. Confirm restore scope in writing.
Monitoring, on-call and incident responseYour team builds dashboards and alerts across every component, runs on-call rotation and writes incident runbooks. Skills: observability, on-call engineering.The vendor handles platform incidents. Your team owns application-level alerts, escalation paths and the contract's support terms. Confirm response times and the support tier in the order form.
Security patching and access controlYour team patches Milvus, the Kubernetes layer and dependent services, and configures authentication, TLS and role-based access control. Skills: vulnerability management, Milvus RBAC administration.The vendor patches the managed platform. Identity, data classification, access reviews and audit evidence remain with your team in both models. Ask for the vendor's compliance documentation before relying on it.

What drives the cost of each hosting model

Zilliz Cloud costs are paid to Zilliz for the service, and the mix depends on the tier. On Serverless, you pay usage-based billing, and clusters scale to zero when idle, so spend tracks query and storage activity. On Dedicated, you pay for dedicated resources whether or not they are busy, so cost tracks the capacity you size. Under bring-your-own-cloud, Zilliz runs the service in your cloud account, which means you carry a second bill from your cloud provider for compute, storage and network. The facts supplied for this page do not state Zilliz pricing, so request current rates for each tier in writing, along with what counts as a billable unit and what the bring-your-own-cloud cloud-account charges will look like in your region.

Self-hosted Milvus moves the costs to hardware or cloud compute, object storage, etcd, the write-ahead log, Kubernetes and people. The Milvus architecture uses etcd for metadata, MinIO, S3 or Azure Blob for object storage, and Woodpecker, Kafka or Pulsar as the write-ahead log, so each of those is a separate line item to size, back up and monitor. Staff time is usually the largest recurring cost, covering on-call, version upgrades across the v2.6 and v3.0 release lines, backup and restore tests, and capacity planning. Support contracts with a commercial vendor are an additional recurring line if you want one. One-time costs include architecture design, migration from any existing store, hardening, and documentation for auditors.

For a fixed-scope implementation, the quote should list each deliverable and the party who pays for each component. DeployOpen works from a written scope agreed before work starts, and it does not publish a price list, so the quote follows from that scope. Ask for the one-time items (design, migration, hardening, evidence and documentation) as separate lines from any retainer for ongoing support, upgrades or testing. Ask which cloud, cluster and storage costs stay with your accounts, and which assumptions the quote depends on, such as vector count, dimension, environments and retention. Compare that with Zilliz's quoted tier and cloud-account charges to see where recurring cost actually sits.

Moving vectors between Zilliz Cloud and self-hosted Milvus

This sequence moves a Milvus workload in either direction with a written inventory, a residency check, validated recall and filtering, a controlled client cutover and a documented retirement of the old cluster and its backups.

  1. Inventory collections, indexes and access design

    The current owner lists every collection, its schema, index type and parameters, partitions, database and partition-key layout, and the roles and users that reach it. Platform engineering and the data owner sign off on the list. Done means the inventory is stored in version control and each collection has a named owner, an expected vector count and a target index. Because both sides run the same Apache-2.0 Milvus codebase, confirm the exact versions in use on each side against the Milvus releases page before assuming schema and index behavior carry over.

  2. Confirm data residency and target placement

    Security and compliance leads record where the vectors, source documents and derived metadata may live, including regions, cloud accounts and any data center or air-gapped network. Ask Zilliz in writing which region, deployment option (Serverless, Dedicated or Bring Your Own Cloud) and storage location apply to the account, and confirm the answer against your own environment. Done means a signed residency decision names the target cluster, the storage location and the people who approved it.

  3. Export or re-ingest the source data

    The migration team chooses between exporting stored vectors and payloads and re-embedding the source documents into the target. Re-ingestion gives a clean index but depends on the embedding model being pinned and reproducible. Export depends on the tooling and access your current deployment allows, so confirm data movement paths, throughput limits and any egress charges with Zilliz and with your cloud provider before scheduling the copy. Done means row counts and checksums per collection match between source and target.

  4. Validate recall, filtering and multi-tenant isolation

    Run a fixed set of reference queries against source and target, comparing top-k results, scalar filter outcomes and hybrid or BM25 queries where used. Test that each tenant or partition key returns only its own rows and that the roles defined in the inventory are denied access to other tenants. Done means the results are recorded in a test report with agreed acceptance thresholds set by the data owner, and any gap is either fixed or accepted in writing.

  5. Cut over clients and rotate credentials

    Application teams point their Milvus clients at the new endpoint in a staging environment first, then in production during a window agreed with the business owner. New credentials are issued for the target, authentication and TLS settings are checked, and the old credentials are scheduled for revocation. Downtime depends on how writes are paused and replayed, so confirm the expected impact with Zilliz and in your own change plan. Done means production traffic runs on the target and the monitoring dashboards show normal query latency and error rates.

  6. Retire the old cluster and its backups

    After a period set by your retention policy, the team stops writes to the old cluster, takes a final archive if required, and deletes the cluster, its object storage buckets, etcd or metadata snapshots and any copies in backup systems. Confirm with Zilliz how a Serverless or Dedicated cluster is deleted and what the provider retains. Done means a written decommission record lists each deleted resource, the date, the approver and the evidence of deletion for audit.

Questions buyers ask before choosing a Milvus hosting model

What drives the total cost of running Milvus yourself versus buying Zilliz Cloud?

The biggest cost difference is who pays for operations. With self-hosted Milvus Distributed, you pay for the compute and storage for etcd, object storage, the message queue and the Milvus worker nodes, plus the engineering time to install, upgrade, back up and monitor them. With Zilliz Cloud, you pay the vendor for a managed service, and the bill depends on the tier: the Free tier, Serverless clusters billed by usage, Dedicated clusters with reserved resources, or Bring Your Own Cloud. Ask for a written breakdown that separates one-time setup from recurring infrastructure, support and staff time, and ask how each option's price scales with vector count, query volume and retention. DeployOpen does not publish prices. Its quotes follow from a written, fixed scope.

How long does a self-hosted Milvus rollout take, and what sets that time?

The timeline depends on the deployment mode, the number of environments and how much of your platform already exists. Milvus Lite and Standalone are far simpler to stand up than Distributed, which runs as a Kubernetes-native cluster with etcd, object storage and a write-ahead log such as Woodpecker, Kafka or Pulsar. The main variables are whether you already run Kubernetes and an object store your security team approves, how authentication, TLS and role-based access control must be wired to your identity systems, how backups and disaster recovery are tested, and how many review cycles your change process requires. Request a written schedule tied to named milestones and a list of your prerequisites before work starts.

Can an in-house team run Milvus Distributed on its own?

A team with strong Kubernetes and storage skills can run Milvus Distributed, but it needs to own several moving parts at once: the proxies, coordinator and worker nodes, the etcd metadata store, the object storage backend and the chosen write-ahead log. Check whether you can staff on-call coverage for each component, rehearse restores from object storage and etcd snapshots, and upgrade between the two supported release lines, v2.6.25 and v3.0.3, without downtime for your applications. If any of these gaps exist, ask a services partner to document the runbooks, or consider a managed option. DeployOpen plans, implements, hardens, backs up, upgrades and documents self-hosted platforms in your infrastructure, and offers ongoing support as a retainer.

Does Bring Your Own Cloud keep our vector data inside our own cloud account?

Bring Your Own Cloud is designed to run the managed service in infrastructure you control, but the exact boundary of what stays in your account, what the vendor operates and where control-plane metadata flows is something you must confirm in writing. Ask Zilliz for the data flow diagram, the list of resources created in your account, who holds the keys, where logs and backups are written and which personnel can access the environment. Compare that answer with self-hosting, where every component, including etcd and object storage, lives in accounts and networks your team controls. Do not rely on a marketing description alone when a regulator or auditor will ask.

What compliance evidence must we produce ourselves?

Whichever hosting model you pick, the evidence for your own controls remains your responsibility. For a self-hosted Milvus cluster, that includes configuration baselines, the TLS and authentication settings, role-based access control assignments, encryption and key management for object storage, logging, backup test records and change records. For a managed service, you still need the vendor's own assurance documents and your contract terms, plus evidence of how you configure access and data residency. DeployOpen prepares systems, controls and evidence for compliance assessments, but it does not issue audit reports, attestations or certifications. Independent auditors and certification bodies do that work. Ask which framework applies to your workload before you scope the evidence.

How do we exit a managed Milvus service without losing data?

Plan the exit before you sign. Confirm which export paths the service supports for collections, schemas, indexes, partitions and access settings, and whether vector data can be read back in a format your self-hosted cluster can load. Because Milvus is Apache-2.0 licensed, the software itself is not locked to one vendor, but the operational setup, such as your object storage layout, Kubernetes configuration and access model, will need to be rebuilt. Ask for a written exit procedure, the expected downtime window, the retention period after termination and how embeddings are deleted from the provider. Test a restore into a non-production environment before you depend on it.

What does DeployOpen's fixed-scope work cover for a Milvus deployment?

DeployOpen works in your own infrastructure, which may be your cloud accounts, data centers or air-gapped networks. Most engagements are fixed-scope, so the scope, deliverables and timelines are agreed in writing before work starts. For Milvus, a typical written scope would name the deployment mode, the etcd and object storage design, the write-ahead log choice, the authentication, TLS and role-based access controls, backup and restore testing, upgrade procedures and documentation. Ongoing support, upgrades and continuous testing are available as retainers. DeployOpen does not publish a price list, so ask for a quote that follows from the written scope.

How DeployOpen scopes, delivers and supports self-hosted Milvus

DeployOpen plans, implements, integrates, hardens, backs up, documents and supports self-hosted open-source platforms inside your own cloud accounts, data centers or air-gapped networks. For a Milvus decision, that means we start from where your vectors must live and who must be able to reach them, then work out the operating surface you would be taking on.

How we scope

  • We confirm which data location, residency and network rules apply before naming any deployment mode.
  • The written scope lists the Milvus release line, deployment mode, and each dependency we will install or configure.
  • Engagements are fixed-scope, with deliverables and timelines agreed in writing before work starts.

How we build

  • We size and deploy the etcd, object storage, write-ahead log and Kubernetes components your chosen mode requires.
  • We configure authentication, TLS and role-based access control, then test them against your identity and network policies.
  • Multi-tenancy, index choices and backup routines are set up and tested against your own collection layout.

How we hand over

  • Handover documentation covers architecture, upgrade steps, access model and the runbooks your operators will use.
  • We walk your platform and security teams through restore tests so recovery is shown, not assumed.
  • Evidence for compliance assessments is prepared as documented controls, while independent auditors issue any formal opinion.

How we support

  • Ongoing support, upgrades and continuous testing are available as retainers after handover.
  • Upgrades between Milvus release lines are planned in writing, with testing against your workloads first.
  • Ask us to confirm support scope, response expectations and exclusions in the quote before committing.

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.