Milvus on GCP - Run a Vector Database Without the Per-Query Bill
Every RAG pipeline gets to the same fork eventually: where do the vectors actually live. A managed vector database gets you moving fast, but the pricing is built around usage - pay per vector stored, pay per query run. That bill climbs right when the product starts working, which is a strange thing to get punished for. Self-hosting Milvus yourself means a Docker Compose file, the right dependency versions, and a handful of supporting services wired together before you've indexed a single embedding.
Meetrix packaged Milvus, the open-source vector database behind a lot of production RAG and semantic search systems, into a GCP Marketplace listing. Ports open, dependencies installed, ready to take connections a few minutes after you deploy it. Want to try it? Launch the Meetrix Milvus listing on GCP Marketplace.
What is Milvus?
Milvus is an open-source database built specifically to store and search embedding vectors - the numerical representations that text, images, audio, and video get turned into before a model can compare them for similarity. Instead of matching keywords, it finds the nearest vectors to a query in high-dimensional space. That's the mechanism underneath retrieval-augmented generation, semantic search, and recommendation systems that feel like they understood what you meant instead of just what you typed.
It's built for a scale most general-purpose databases were never designed for: collections running into the billions of vectors, with indexing algorithms tuned for approximate nearest-neighbor search specifically. A lot of production RAG stacks either run Milvus directly or run Zilliz's managed version of it, which is Milvus with a different pricing model attached.
What Usage-Based Vector Search Actually Costs
How Deployment Works
Setting up Milvus by hand means writing a Docker Compose file, pulling the right images, and opening the correct ports before you can run a single query. Through the Marketplace, it's four steps:
- Launch from GCP Marketplace Open the Meetrix Milvus listing, pick your region and machine type, and deploy. Milvus and its supporting services arrive pre-installed and already running.
- The Right Ports Are Already Open Deployment creates a firewall rule with SSH and Milvus's client port (19530) already configured. You're not guessing which port pymilvus needs or chasing a silent connection timeout.
- Wait for Boot, Then Connect Give the instance a few minutes to finish starting up, then connect with the pymilvus SDK using the default credentials and the instance's external IP on port 19530.
- Change the Default Password Swap out the default admin credentials before storing anything beyond test data. It's one command, and it closes the most obvious gap in a fresh deployment.
What Meetrix Brings to This Deployment
- No Manual Dependency Wrangling - Running Milvus yourself means getting its supporting services installed and correctly versioned together first. This listing ships with all of it already running, not a checklist you have to work through before your first query.
- Firewall Rules Set Correctly From the Start - SSH and the Milvus client port are open on launch. Nothing left to figure out by trial and error against a connection that just times out.
- Sized for Actual Vector Workloads - The recommended machine type is chosen for real ingestion and query load, not a demo-sized default that falls over the moment a production dataset lands on it.
- No Usage-Based Markup - You pay GCP compute costs, not a per-vector or per-query fee that climbs the more your product succeeds.
- People Who Actually Run This Stack - If you need help with instance sizing, index tuning, or scaling as your collection grows, you're talking to engineers who deploy Milvus regularly, not a support queue reading off a script.
Who Is Milvus on GCP Right For?
This deployment fits any team storing and searching embeddings at a scale where usage-based pricing starts to hurt. It's a strong match if you're:
- A team building a RAG pipeline that's outgrown pgvector or a simple in-memory index
- An ML engineer building semantic search over a large or fast-growing document set
- A product team building recommendations based on embedding similarity rather than manual rules
- A team matching images or video by content instead of by keyword or filename
- A startup that wants a self-hosted alternative to Pinecone or Zilliz Cloud's usage-based billing
- A compliance-conscious org that needs embeddings, and whatever they were derived from, to stay inside your own GCP project
- Anyone already running the rest of their AI stack on Google Cloud who'd rather not send vectors to a third-party service
Milvus on GCP by Meetrix vs Alternatives
| Feature | Milvus on GCP by Meetrix | Pinecone | Zilliz Cloud (Managed Milvus) | Self-Hosted Milvus (Manual) |
|---|---|---|---|---|
| Hosting | Your GCP project - fully self-hosted | Pinecone's cloud, no self-host option | Zilliz's managed cloud, or a self-hosted enterprise tier | Your Compute Engine VM, configured by you |
| Data Control | Complete - vectors never leave your project | Pinecone stores and indexes your vectors | Zilliz stores and indexes your vectors on the hosted tier | Complete, if configured correctly |
| Deployment Time | Minutes via GCP Marketplace | Instant (API signup) | Instant for the hosted tier | Hours - dependencies, ports, and config by hand |
| SSL & Auth | Firewall rule pre-configured, SSL optional if you put a domain in front of it | Managed by Pinecone | Managed by Zilliz on the hosted tier | Manual - easy to leave a port open to the world |
| Pricing Model | GCP compute costs only, no per-query fee | Usage-based, billed per stored vector and per query | Usage-based, billed per compute unit on the hosted tier | GCP compute costs only |
| GDPR / Data Residency | Choose your GCP region, vectors stay there | Limited region choice, Pinecone's terms apply | Limited region choice, Zilliz's terms apply | Your responsibility to configure |
| Support | Meetrix engineers, commercial SLA | Pinecone support tiers | Zilliz support tiers | Community forums only |
Resources
How Teams Use This in Production
Cutting Vector Search Costs Before Usage Ate the Margin
The problem
A startup building a RAG-powered support assistant was running on a managed vector database billed per stored vector and per query. As their embedding corpus and query volume grew, the bill grew faster than the feature's revenue could justify.
What we did
We deployed Milvus on a Meetrix GCP Marketplace instance sized for their corpus, migrated their embeddings across, and pointed their existing RAG pipeline at the new endpoint.
"The feature was working, which is exactly when the bill got scary. Moving to our own Milvus instance meant success stopped being the thing driving our infrastructure costs up." Founder, AI SaaS Company, United States
Keeping Clinical Embeddings Inside a Required EU Region
The problem
A healthcare AI company building clinical semantic search needed embeddings derived from patient records to stay inside a specific EU region. The managed vector database they'd been evaluating couldn't guarantee that level of region pinning on the plan they could afford.
What we did
We deployed Milvus inside their GCP project in europe-west3, locked the firewall down to their own network, and documented the setup for their compliance review.
"We couldn't get a straight answer about where our vectors would actually sit. Running Milvus inside our own project meant we could point at the region and prove it." Head of ML, Healthcare AI Company, Netherlands
Scaling Visual Search Past What a Free Tier Could Handle
The problem
An e-commerce company had built a "shop the look" image-similarity feature on a managed vector database's entry tier. As their catalog grew past a few million images, they kept hitting usage limits and unpredictable overage charges.
What we did
We deployed Milvus on a right-sized Compute Engine VM through the Meetrix GCP listing, re-indexed their full product catalog, and helped them plan instance sizing as ingestion kept growing.
"We kept hitting a wall that had nothing to do with our engineering and everything to do with someone else's pricing tier. Owning the database outright made that wall go away." Engineering Lead, E-commerce Company, Singapore
Frequently Asked Questions
What is Milvus actually used for?
Storing and searching embedding vectors at scale - the workload behind retrieval-augmented generation (RAG), semantic search, recommendation engines, and image or video similarity search. If your app turns text, images, or audio into vectors and needs to find the closest matches fast, that's what Milvus does.
Is Milvus free?
Milvus itself is open source. With this GCP Marketplace listing, you pay standard Google Cloud compute costs for the instance running it. There's no per-vector or per-query fee stacked on top the way there is with a managed vector database service.
Does this include a web-based admin UI?
Not bundled by default. Milvus itself doesn't ship one, and this deployment stays lean rather than adding containers you didn't ask for. If you want a UI, run Attu, the open-source Milvus management tool, in a separate container pointed at this instance's port 19530.
What's the default login, and is it safe to leave it?
The listing ships with a default admin user (root) and a default password for the first login. Change it right away if you're storing anything beyond test data - leaving default credentials on an instance reachable from the internet is asking for trouble.
Can I connect my existing RAG pipeline without rewriting it?
Yes. You connect with the standard pymilvus SDK, or any client that speaks the Milvus wire protocol, the same way you would against any other Milvus instance. Usually it's a one-line change - swap the host and port to point at the new instance.
How is this different from just deploying Milvus on GKE myself?
You still can, and some teams do for very specific cluster requirements. But standing up Milvus properly on Kubernetes means an etcd cluster, object storage, message queue, and the Milvus components all wired together correctly, which is a lot of moving parts to get right on a first pass. This listing gets you a working single-node instance in minutes, with the option to grow into something bigger once you know you need it.
Can this scale as my embedding collection grows?
Yes. Resize the underlying Compute Engine instance as your collection and query volume grow. For larger production workloads, Meetrix can help with instance sizing and index tuning as part of our support offering.
Run Your Own Vector Database on Google Cloud
Stop paying per query for a vector database you don't control. Deploy Milvus on Google Cloud in minutes, set up by a team that runs this stack every day.
Deploy on GCP Marketplace