> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mixpeek.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Supported environments

> The Kubernetes, GPU, storage and KubeRay configurations Customer-Hosted Mixpeek supports

Customer-Hosted Mixpeek supports qualified Kubernetes environments. The list is
deliberately narrow and grows when a deployment asks it to, because every entry
here is something we can run a qualification against and stand behind.

"Runs on any Kubernetes" is a claim nobody can test, so we do not make it.

## What a deployment requires

|                | Requirement                                                                     |
| -------------- | ------------------------------------------------------------------------------- |
| **Kubernetes** | EKS, GKE                                                                        |
| **Compute**    | NVIDIA GPU nodes at a known driver baseline                                     |
| **Storage**    | S3 or GCS for objects, plus approved CSI storage classes for persistent volumes |
| **KubeRay**    | operator versions Mixpeek qualifies (see the hard floor below)                  |
| **Install**    | the Mixpeek Helm chart                                                          |

## Qualification status

The table above is the configuration a deployment needs. This one is what a
qualification establishes per environment.

| Environment             | Status                                                                                                                                           |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| **GKE**                 | Mixpeek's own production runs here, and the qualification fixture builds a GKE cluster from scratch                                              |
| **EKS**                 | Supported. A deployment starts with a qualification run against your cluster, which is what establishes the configuration a general table cannot |
| **Other distributions** | Not qualified. Tell us what you run and we will scope the qualification                                                                          |

We keep these separate on purpose. A row here describes how a deployment on that
distribution is established, which is a more useful answer than a version number.

## Structural constraints

Two requirements are properties of the software rather than matrix results, so
they hold everywhere:

|                | Requirement         | Why                                                                                                                                              |
| -------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| **KubeRay**    | **≥ 1.1**, hard     | `submissionMode: HTTPMode` does not exist below it, so batch cannot be submitted at all                                                          |
| **Kubernetes** | **≥ 1.33** optional | Enables in-place vertical scaling (`pods/resize`) for Ray's autoscaler. On older clusters the rule is inert and Ray replaces pods to resize them |

## Your Ray version is not an input

Mixpeek ships its own Ray, Python and CUDA userspace in one image, and the
`RayService` it runs is ours. Whatever Ray you run elsewhere in the cluster has no
bearing on whether Mixpeek works.

That changes only for the
[shared-cluster integration](/docs/customer-hosted/existing-raycluster), which is scoped
per cluster. There the cluster is yours, so its runtime is an input, and that page
says what it costs.

## Getting a direct answer for your cluster

Ask Mixpeek to run the [qualification suite](/docs/customer-hosted/qualification)
against it. The report names the Kubernetes, KubeRay and storage configuration it
found and whether each check passed on them. That is an answer about your cluster,
which is worth more than a general claim about a matrix.

<Note>
  Compatibility results come from qualification runs rather than from a
  hand-maintained table, which is why this page sends you to a run against your own
  cluster instead of a list of version numbers.
</Note>
