> This page is for Self-Hosted, version v3.0 (default).
> For other versions, use one of these documentation indexes:
> - v3.0 (default): https://docs.nvidia.com/run-ai/self-hosted/v3.0/llms.txt
> - v2.26: https://docs.nvidia.com/run-ai/self-hosted/v2.26/llms.txt
> - v2.25: https://docs.nvidia.com/run-ai/self-hosted/v2.25/llms.txt
> - v2.24: https://docs.nvidia.com/run-ai/self-hosted/v2.24/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/run-ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/run-ai/_mcp/server.

# Infrastructure Requirements

This page covers the hardware, operating system, Kubernetes, and storage requirements that must be in place in your Kubernetes cluster before installation begins. Where a requirement differs between the NVIDIA Run:ai control plane and the NVIDIA Run:ai cluster, it is called out separately.

<Note>

**Note**

See [Deployment Model](/run-ai/self-hosted/documentation/installation-and-configuration/system-requirements/deployment-model) for how the control plane and cluster are provisioned relative to each other.

</Note>

| Category | Requirement | Applies To | Details |
|---|---|---|---|
| Hardware | Control plane nodes, cluster nodes, and worker nodes provisioned | NVIDIA Run:ai control plane, NVIDIA Run:ai cluster, and worker nodes (sized separately) | See [Hardware](#hardware) |
| Operating System | Linux installed on all nodes | NVIDIA Run:ai control plane and NVIDIA Run:ai cluster (requirements differ) | See [Operating System](#operating-system) |
| Time Sync | Nodes synchronized using NTP | All nodes | See [Network Time Protocol](#network-time-protocol) |
| Distribution | Supported Kubernetes distribution installed and running | All nodes | See [Supported Distributions](#supported-distributions) |
| Runtime | Container runtime configured | All nodes | See [Container Runtime](#container-runtime) |
| Permissions | Cluster-admin access | All nodes | See [Permissions](#permissions) |
| Storage | Default storage class configured | NVIDIA Run:ai control plane | See [Default Storage Class](#default-storage-class) |
| Storage | Shared storage accessible from all worker nodes | NVIDIA Run:ai cluster | See [Shared Storage](#shared-storage) |

## Hardware

The following hardware requirements apply to all nodes in the deployment. By default, all NVIDIA Run:ai services run on all available nodes. For production deployments, set [node roles](/run-ai/self-hosted/documentation/installation-and-configuration/config/node-roles) to separate system nodes from worker nodes, reduce downtime, and avoid consuming CPU cycles on expensive GPU machines. If deploying the NVIDIA Run:ai control plane and NVIDIA Run:ai cluster on the same Kubernetes cluster, the system node requirements are additive - provision nodes that meet both sets of requirements combined.

### Supported Architectures

NVIDIA Run:ai supports the following CPU architectures:

* **x86** - Kubernetes and OpenShift
* **ARM** - Kubernetes and OpenShift

### NVIDIA Run:ai Control Plane - System Nodes

The following are the minimum requirements for NVIDIA Run:ai control plane system nodes. By default, all control plane services run on all available nodes in the control plane. To designate nodes to NVIDIA Run:ai control plane services, see [System nodes](/run-ai/self-hosted/documentation/installation-and-configuration/config/node-roles#system-nodes).

| Component  | Required Capacity |
|------------|-------------------|
| CPU        | 10 cores          |
| Memory     | 12 GB             |
| Disk space | 110 GB            |

### NVIDIA Run:ai Cluster - System Nodes

The following are the minimum requirements for NVIDIA Run:ai cluster system nodes. By default, all cluster services run on all available nodes in the cluster. To designate nodes to NVIDIA Run:ai cluster services, see [System nodes](/run-ai/self-hosted/documentation/installation-and-configuration/config/node-roles#system-nodes).

| Component  | Required Capacity |
|------------|-------------------|
| CPU        | 10 cores          |
| Memory     | 20 GB             |
| Disk space | 50 GB             |

### NVIDIA Run:ai Cluster - Worker Nodes

The NVIDIA Run:ai cluster supports x86 and ARM CPUs, and any NVIDIA GPUs supported by the NVIDIA GPU Operator. The list of supported GPUs depends on the version of the NVIDIA GPU Operator installed in the cluster. For supported GPU Operator versions, see the [Support Matrix](/run-ai/self-hosted/documentation/installation-and-configuration/support-matrix#operator-and-framework-versions). For the list of supported GPUs, see [Supported NVIDIA Data Center GPUs and Systems](https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/latest/platform-support.html#supported-nvidia-data-center-gpus-and-systems).

<Note>

**Note**

* NVIDIA DGX Spark, NVIDIA Jetson, and workstations are not supported.
* vGPU is not supported. NVIDIA Run:ai currently supports GPU passthrough only.

</Note>

The following are the minimum hardware requirements for each worker node. To designate nodes to NVIDIA Run:ai workloads, see [Worker nodes](/run-ai/self-hosted/documentation/installation-and-configuration/config/node-roles#worker-nodes).

| Component | Required Capacity |
|-----------|-------------------|
| CPU       | 2 cores           |
| Memory    | 4 GB              |

## Operating System

### NVIDIA Run:ai Control Plane

* Any **Linux** operating system supported by both Kubernetes and NVIDIA GPU Operator.
* Internal tests are performed on **Ubuntu 22.04** and **CoreOS** for OpenShift.

### NVIDIA Run:ai Cluster

* Any **Linux** operating system supported by both Kubernetes and NVIDIA GPU Operator.
* NVIDIA Run:ai on Google Kubernetes Engine (GKE) supports both Ubuntu and Container Optimized OS (COS).
  * COS is supported only with NVIDIA GPU Operator 24.6 and above, and NVIDIA Run:ai cluster version 2.19 and above.
* NVIDIA Run:ai on Elastic Kubernetes Service (EKS) does not support Bottlerocket or Amazon Linux.
* NVIDIA Run:ai on Oracle Kubernetes Engine (OKE) supports only Ubuntu.
* Internal tests are performed on **Ubuntu** and **CoreOS** for OpenShift.

## Network Time Protocol

All nodes must be synchronized using NTP (Network Time Protocol) for proper system functionality.

## Kubernetes

### Supported Distributions

The following Kubernetes distributions are supported for both the NVIDIA Run:ai control plane and NVIDIA Run:ai cluster:

* Vanilla Kubernetes
* OpenShift Container Platform (OCP)
* Elastic Kubernetes Service (EKS)
* Google Kubernetes Engine (GKE)
* Azure Kubernetes Service (AKS)
* Oracle Kubernetes Engine (OKE)
* Rancher Kubernetes Engine 2 (RKE2)

For the full list of compatible distributions and per-version compatibility, see the [Support Matrix](/run-ai/self-hosted/documentation/installation-and-configuration/support-matrix#nvidia-runai-compatible-distributions).

### Partner-Compatible Distributions

The following distributions are tested and validated by the partner, who is responsible for maintaining compatibility with NVIDIA Run:ai:

* Crusoe Managed Kubernetes (CMK)
* Mirantis k0rdent
* Rafay platform
* Spectro Cloud
* vCluster
* VMware vSphere Kubernetes Service (VKS)

For per-partner version compatibility, see the [Support Matrix](/run-ai/self-hosted/documentation/installation-and-configuration/support-matrix#partner-compatible-distributions).

### Container Runtime

NVIDIA Run:ai supports the following [container runtimes](https://kubernetes.io/docs/setup/production-environment/container-runtimes/):

* [Containerd](https://kubernetes.io/docs/setup/production-environment/container-runtimes/#containerd) (default in Kubernetes)
* [CRI-O](https://cri-o.io/) (default in OpenShift)

### Permissions

Both the Guided Installation and the Manual Helm path require **cluster-admin** permissions on the target Kubernetes cluster. Ensure your `kubectl` context is configured with a user that has cluster-admin or equivalent rights before proceeding.

## Storage

Two storage requirements apply before installation: a default storage class for the NVIDIA Run:ai control plane, and shared storage for the NVIDIA Run:ai cluster.

### Default Storage Class

<Note>

**Note**

Applies to Kubernetes only.

</Note>

The NVIDIA Run:ai control plane requires a **default storage class** to create persistent volume claims for NVIDIA Run:ai storage. The storage class, as per Kubernetes standards, controls the reclaim behavior - whether NVIDIA Run:ai persistent data is saved or deleted when the NVIDIA Run:ai control plane is deleted.

<Note>

**Note**

For a simple (non-production) storage class example, see [Kubernetes Local Storage Class](https://kubernetes.io/docs/concepts/storage/storage-classes/#local). The storage class will set the directory `/opt/local-path-provisioner` to be used across all nodes as the path for provisioning persistent volumes. Then set the new storage class as default:

```bash
kubectl patch storageclass local-path -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
```

</Note>

### Shared Storage

The NVIDIA Run:ai cluster requires shared storage so that training workloads can access data from any worker node in a uniform way - including training data, code, checkpoints, weights, and other machine-learning artifacts. Typical protocols are Network File Storage (NFS) or Network-Attached Storage (NAS). For more information, see [Shared Storage](/run-ai/self-hosted/documentation/installation-and-configuration/config/storage).