Bring your own compute (BYOC)

Enterprise only

Bring your own compute (BYOC) is available on organizations with an Enterprise plan. Without it, the Bring your own compute menu item is hidden. See Plan permissions.

Enterprise organizations can run training on Kubernetes they operate: self-managed clusters in a data centre or VPC, or cloud Kubernetes such as EKS, GKE, or Nebius. Arena still hosts the UI, experiment state, and scheduling; jobs execute on your machines after you register the cluster and install the Arena agent into it.

BYOC classes appear on the same experiment Resources step as cloud classes.

Who can use it

Who

Requirement

What they can do

Org Admin on an Enterprise org

Profile menu → Bring your own compute

Register a cluster, install the agent, add and edit resource classes

Any org member on Enterprise

A connected cluster and at least one enabled class

Pick BYOC classes when building or editing experiments

Organizations that are not on Enterprise do not see Bring your own compute in the profile menu. Members do not open that page; ask an org Admin to configure BYOC for the org.

Moving an org to Enterprise is a contract or billing change (see Balance and plans), not a self-serve toggle.

Prerequisites

Before you connect hardware:

  • An Enterprise organization with an org Admin who can open Bring your own compute

  • Arena CLI installed if you plan to run install from your laptop (pip install "agilerl[arena]", then arena login)

  • Outbound network from your cluster to Arena (for the private tunnel Arena sets up during install)

  • Hardware that matches the class you define: for Advanced Training projects, worker classes need at least one GPU per worker node

Nebius is the only cloud Arena can create a cluster on, and that creation runs through the Arena CLI, not the web app. On the cluster form, Cloud provider is Custom or Nebius; after you register, the field is locked.

Cloud provider

What you do

Custom

Connect a Kubernetes cluster you already run (self-managed, EKS, GKE, or similar). Arena installs the training agent into it.

Nebius

Create the cluster with arena cluster provision nebius on a machine that has Nebius credentials, plus terraform and the Brev CLI (brev) on PATH — either register in Arena first, or register and install in the same command.

You need a working local kubectl context on the machine that runs Helm install. For Custom, that context points at the cluster you already run. For Nebius, wait until the CLI has created the cluster.

When runs on a cluster need the same files on every node, set a ReadWriteMany Ray data storage class under Advanced on the cluster form — see Shared Ray data storage.

Configure in Arena

  1. Open profile menu → Bring your own compute. Arena enables the BYOC provider for the org when the page loads.

  2. Register new cluster, then Install the agent into it.

  3. Expand the cluster row under BYOC clusters, click Add resource class, and set Name, worker CPU/GPU/memory, and Number of nodes (see Resource classes).

You can add many resource classes on the same cluster — each one is a separate worker pool. For example, one class for an NVIDIA L4 rack and another for A100 machines: use Name (and optional Description) to label the hardware (nvidia-l4, nvidia-a100). Arena has no GPU model picker for BYOC; set CPUs, GPUs (count), and Memory per worker to match those machines, and use Worker node placement so each class lands on the right nodes.

There is no provider off switch. To keep classes out of new experiment runs, Disable the class, or Disable or Archive the cluster. Class definitions stay in the table.

Install the agent on your cluster

Arena generates the agent’s connection settings for you. You do not configure AgileRL’s gateway manually.

Pick one path:

Path

When to use

Prerequisite

Arena CLI from terminal

Fastest path for a cluster you can reach from your machine

CLI installed (pip install "agilerl[arena]"), arena login, kubectl context for the cluster; run arena cluster register … --install (see Install a cluster)

Install with Helm instead

Your platform team runs Helm from CI or a jump host

Cluster registered; copy the Helm command and agent-helm-values.yaml from Install on the cluster row

Install package

Air-gapped hosts or no Arena CLI on your machine

Cluster registered; download arena-byoc-install-<cluster>.tar.gz, extract it on a bastion, follow INSTALL.md

Full steps: Install a cluster.

After install

  1. Confirm the cluster row shows Connected and the class Setup bundle column shows Current.

  2. Start or edit an experiment and pick your BYOC class on the Resources step.

More detail