Skip to main content

OS compatibility reference

This page lists the systems on which the packages of the Navin Platform install, and the Kubernetes requirements of the Helm deployment. The verdicts are those of the guided installer os/install/navin-install (functions server_verdict and node_verdict, the same table as the Navin Manager) and of the package metadata.

Platform package navin-platform​

Control Plane API, worker and portal. Also valid for the navin-manager console package (same systems).

SystemVersionArchitecturePackagePythonVerdict
Ubuntu24.04x86_64navin-platform_<version>_amd64.debpython3.12Certified
Ubuntuother releasesanynonenoneRefused
DebiananyanynonenoneRefused (no python3.12 package)
RHEL, Rocky Linux, AlmaLinux, Oracle Linux, CentOS Stream9x86_64navin-platform-<version>-1.el9.x86_64.rpmpython3.11Certified
RHEL family8, 10anynonenoneRefused
FedoraanyanynonenoneRefused
Arch Linuxrollingx86_64navin-platform-<version>-1-x86_64.pkg.tar.zstthe Python of Arch Linux at build time (python>=3.14, python<3.15 for 1.0.0)Certified
Arch Linux derivativerollingx86_64samesameWarning

No aarch64 build of the platform package exists in release 1.0.0.

Dependencies​

DependencyUbuntu 24.04RHEL family 9Arch Linux
PostgreSQL 15 or newer (recommended, local database)postgresql (16)postgresql-server after dnf module enable postgresql:16 (default stream 13)postgresql (optional dependency)
Node.js 18.18 or newer (portal)nodejs (18.19)nodejs after dnf module enable nodejs:20nodejs>=18.18
Otherpython3.12-venv, openssl, adduser, systemdopenssl, systemd, util-linux, shadow-utilsopenssl, systemd, util-linux

The RPM scriptlets are plain shell and the payload is xz: an RPM built on another system behaves like one built on RHEL. On Arch Linux, pacman refuses a Python upgrade that would break the venv of the package until the Navin release built for the new Python is installed.

Node agent navin-manager-agent​

Installed on every node of a cluster managed by the Navin Manager. Python agent (all / noarch / any) and static Go agent (navin-manager-agent-go, x86_64 and aarch64).

SystemCertified releasesRefused (end of life)Other releases
RHEL, Rocky Linux, AlmaLinux8, 9, 107 and olderWarning
Oracle Linux8, 97 and olderWarning
CentOS Stream9, 108 and olderWarning
Ubuntu22.04, 24.0425.10 and older, except the certified onesWarning (newer than 25.10)
Debian1211 and olderWarning
Arch Linuxrolling (x86_64, aarch64)nonenone
Other system of a known familynonenoneWarning
Unknown familynonenoneRefused

Guided installer roles​

RoleSystems
standaloneUbuntu 24.04; RHEL, Rocky, Alma, Oracle Linux or CentOS Stream 9; Arch Linux (x86_64)
managerSame as standalone
nodeThe systems of the node agent above

Every host also needs root, systemd, a fully qualified host name that resolves and a synchronized clock.

Kubernetes deployment​

ItemRequirementSource
Kubernetes1.27 or newerkubeVersion: ">=1.27.0-0" of deploy/helm/enterprise-ai/Chart.yaml
Helm3.16 or newerservices/control-plane/tests/test_platform_deploy_env.py
CNICilium 1.16.5 (WireGuard, SPIFFE mutual authentication); global.networkPolicy=kubernetes renders plain NetworkPolicy objects insteaddeploy/terraform/modules/platform-bootstrap
AdmissionKyverno chart 3.3.4 (image signatures, Pod Security)same
Certificatescert-manager v1.16.2same
AutoscalingKEDA 2.16.1, HorizontalPodAutoscalersame
PostgreSQLCloudNativePG chart 0.23.0, image PostgreSQL 16.6same, deploy/data/postgres/cluster.yaml
BackupsVelero chart 8.1.0same
GPUNVIDIA GPU Operator v24.9.1, nodes labelled nvidia.com/gpu.present=truesame, values.yaml (vllm, ollama)
Sandbox runtimesRuntimeClass gvisor (handler runsc) and kata (handler kata-qemu): the nodes running sandboxes need these handlers in their container runtimevalues.yaml (sandbox.runtimeClasses)
StorageStorage class fast-ssd (data services), local-nvme (vLLM cache of the on premises profile)deploy/data/*, values-onprem-gpu.yaml

Image architectures stated in the chart: LiteLLM is pinned to a multi-arch index (linux/amd64, linux/arm64); the CPU image of vLLM is vllm/vllm-openai-cpu:v0.33.0-x86_64. Check the architectures of the other images in your registry before you add arm64 nodes.

The node operating system of a Kubernetes cluster is the one supported by the Kubernetes distribution, Cilium, the NVIDIA GPU Operator and the sandbox runtimes in the versions above; the platform adds no requirement of its own.

Docker Compose and local development​

MethodRequirement
Docker ComposeDocker Engine with the compose v2 plugin (make docker-check); NVIDIA container toolkit for the gpu profile
makePython 3.11 or newer, Node.js 20 or newer, redis-server, PostgreSQL binaries, Java 21 (Keycloak)