ServicesvLLM on Kubernetes

Your own language models on vLLM and Kubernetes, with data in house and costs you can plan

Your own language models answer on your own GPUs, so confidential data stays in house and cost follows capacity you plan rather than a bill per request. We deploy vLLM, a serving engine built for many users at once, on your Kubernetes cluster, on premise or on EKS or AKS. We size the GPUs from measured load and connect it all to your gateway, monitoring and release process. We usually work with the platform team that has to keep open-weight models running reliably for the whole company.

From a model choice to a service your teams use

  1. 1

    Workload and model choice: which tasks, how many requests at once, and which open-weight models pass your own test cases.

  2. 2

    Measurement on rented or existing GPUs before any hardware is bought: answer times and throughput under your expected load.

  3. 3

    Deployment: vLLM on GPU nodes with Helm and Terraform, autoscaling on queue length and cache use, model files cached close to the nodes.

  4. 4

    Operation: monitoring, model upgrades in stages with regression tests, and a gateway in front so teams use one API.

What changes for your business

Serving your own models makes two things possible that a public API cannot: data that may not leave your infrastructure can be used with AI, and a task that runs all day costs what the GPUs cost, however many requests it makes. You also keep control of the model version, so answers do not change because a provider updated its model.

Many companies are preparing for this. In a 2026 survey of 106 IT leaders at small and mid-sized companies in Germany, Austria and Switzerland, run by CIO and Computerwoche with Dell, 20% had started building local server infrastructure for AI. GPUs are a large purchase, so we measure on your workload before anything is bought.

When serving your own models makes sense

Serving your own models is worth it when data may not leave your infrastructure, when one task runs at a steady high volume, or when you need full control over the model version. It is usually the wrong choice for a small group of users, for very uneven usage, or for tasks where only the largest commercial models are good enough.

What drives the cost is the GPU class and count, how busy the GPUs are, the model size and the effort to run the service. We compare these drivers with what the same work would cost through an API before you decide.

Sizing GPUs from measurements

"How many GPUs do we need for 50 users?" has no answer without the details: how many requests arrive at the same time, how long the documents and answers are, which model size and quantisation pass your tests, and which answer times your users accept. With many concurrent requests, the GPU memory for the KV cache usually runs out before compute does.

So we measure first, on rented GPUs or hardware you already have, with your own prompts and documents. You buy servers once you have seen the numbers.

Running vLLM on Kubernetes

vLLM runs well on Kubernetes once the GPU-specific parts are handled.

  • GPU node pools with the drivers and device plugin your cluster needs, on premise or on EKS or AKS.
  • Model files cached close to the nodes, so a new replica does not download gigabytes before it can answer.
  • Autoscaling on vLLM's own metrics, such as waiting requests and cache use, because CPU load stays low while the GPU does the work.
  • Readiness checks that wait until the model is loaded, and rollouts that keep enough capacity while a new version starts.
  • Dashboards and alerts for answer times, queue length, errors and GPU use, in the monitoring you already run.

vLLM, KServe or llm-d

vLLM is the serving engine. KServe adds a standard way to describe and roll out model services on Kubernetes, and llm-d is a newer project for spreading inference with vLLM across many GPUs. In our judgement, most companies start well with plain vLLM deployments behind a gateway, and add these layers when the number of models or GPUs makes them worth it.

Quality before a model goes live

A smaller or quantised model can be cheaper and faster but worse at your task. Before a model goes live, and before every upgrade, we run your regression tests against the model it would replace and only switch when quality holds.

Questions

Do our own models pay off compared with an API?

When data may not leave your infrastructure, the question is mostly settled. Otherwise it depends on how high and steady the load is, the GPU class and how busy it is kept, and the effort to run the service. We compare those drivers with the same work through an API, using measurements on your own workload, before you buy.

What do our data protection officer and works council need to know?

That prompts and answers are processed on your own GPUs and nothing goes to a model provider, what vLLM and the gateway log, who can see those logs and how long they are kept. We document that for both. The decision on lawful use stays with you, advised by your data protection officer and lawyers.

How many GPUs do we need for our users?

It depends on how many requests arrive at once, how long the inputs and answers are, the model size that passes your tests and the answer times you need. We measure these on rented or existing GPUs before you buy anything.

Should we buy GPU servers or rent first?

Rent or use what you have first, measure with your own workload, then buy. Hardware chosen from a data sheet is the most common expensive mistake we see in this area.

Ollama or vLLM?

Ollama is convenient for one person on one machine. vLLM is built to serve many users at once by batching their requests, which is what a company service needs.

Can it run on EKS or AKS instead of our own servers?

Yes. The same deployment runs on GPU node groups in your AWS or Azure account, which is often the quickest way to measure before deciding on your own hardware.

Why does autoscaling on CPU not work for vLLM?

The GPU does the work while CPU load stays low, and because vLLM reserves GPU memory up front, memory use does not show load either. Scaling on vLLM's own metrics, such as waiting requests, reacts to real load.

Does quantisation hurt quality?

It can, and how much depends on the model and the task. We test the quantised model on your own cases against the full version before it serves users.

Do we need Kubernetes at all?

Not for one model on one server. Kubernetes pays off when you run several models or replicas, need rolling upgrades, or already operate a cluster.

Talk to an engineer

Bring the tasks you want to keep in house and a rough number of users. The call takes 30 minutes and needs no access to your systems.

Booking runs on Google Calendar.

Prefer to write first? Leave your email and a few lines, and we reply with times.

The button prepares an email in your own email program, for you to send. Privacy policy (draft)