Skip to main content
This guide walks you through setting up Chamber for your organization, from signup to submitting your first workload.

Prerequisites

  • A Kubernetes cluster with GPU nodes
  • kubectl access to your cluster
  • helm v3 installed

Step 1: Create Your Organization

1

Sign up

Go to app.usechamber.io/signup and create your account.
2

Create organization

After signing in, you’ll be prompted to create an organization. This is your top-level tenant in Chamber.
3

Invite team members

Navigate to Settings > Members to invite colleagues to your organization.

Step 2: Connect Your Cluster

Install the Chamber agent in your Kubernetes cluster to sync workload state with the control plane.
# Get your cluster token from the Chamber dashboard
# Navigate to Settings > Cluster Tokens > Create Token

# Install the agent
helm install chamber-agent oci://public.ecr.aws/q4a1a5s3/chamber-agent-chart \
  --set clusterToken=YOUR_CLUSTER_TOKEN \
  --set clusterName=my-gpu-cluster

Step 3: Create Your First Team

Teams represent teams or projects in your organization. They form a hierarchy for organizing capacity allocation.
1

Navigate to Teams

In the Chamber dashboard, click Teams in the sidebar.
2

Create root team

Click Create Team and enter:
  • Name: e.g., “ML Platform”
  • Description: Brief description of the team/project
3

Add projevts (optional)

Create sub-teams for different teams or projects under your root team.

Step 4: Allocate Capacity

Reserve GPU capacity for your team from your connected cluster.
1

View capacity pools

Navigate to Capacity Pools to see your connected clusters.
2

Create reservation

Click on a pool, then Create Reservation:
  • Select the team to receive capacity
  • Specify the number of GPUs to reserve
Start with a small reservation and adjust based on utilization metrics. You can always increase or redistribute capacity later.

Step 5: Submit a Workload

With capacity reserved, your team can now submit GPU workloads.
Example Job
apiVersion: batch/v1
kind: Job
metadata:
  name: training-job
  labels:
    chamber.io/team: ml-platform       # Links workload to team
    chamber.io/workload-class: reserved # Use reserved capacity
spec:
  template:
    spec:
      containers:
      - name: trainer
        image: your-training-image:latest
        resources:
          limits:
            nvidia.com/gpu: 4
      restartPolicy: Never
Workloads without the chamber.io/workload-class label default to elastic and will use idle capacity.

Next Steps