Skip to content

Deployments

A Kubernetes Deployment runs and updates a replicated application workload in a namespace. Use deployments on RemoteGPU for long-running containers such as web apps, workers, and services.

Choose a workflow

Use the console when you want guided setup, quick edits, and a UI view of the deployment status.

Use kubectl when your team manages deployments from manifests or CI. Include the RemoteGPU runtime SKU label in the pod template so the workload can be scheduled with the right plan.

What a deployment controls

A deployment brings together the main runtime settings for an application:

  • container image
  • replica count
  • RemoteGPU plan for scheduling and defaults
  • container port that later services can target
  • optional probes and environment settings

A deployment does not make your application reachable by itself. To send traffic to it, create a service. To make that service public, create an ingress.

Before you create a deployment

Before you create the deployment:

  • Choose the namespace where the workload should run.
  • Decide whether the workload needs internal traffic, public traffic, or no network exposure.
  • Decide whether the workload needs persistent data through a PersistentVolumeClaim.
  • Pick a plan that matches the workload's CPU, memory, and GPU needs.

Create a deployment

From the console:

  1. Open Kubernetes / Deployments.
  2. Select a namespace.
  3. Click Create deployment.
  4. Fill in the deployment form.
Console fieldDescription
Deployment nameKubernetes deployment name in the selected namespace
ImageThe container image to run
Replica countDesired running pod count
PlanThe RemoteGPU SKU for scheduling and defaults
Container portThe application port that later services may target

Set Replica count to 0 to stop compute while keeping the deployment.

The container port is only a hint for the runtime and later service creation. It does not create a public URL.

Choosing a plan

The plan you pick in the console maps to a RemoteGPU SKU.

The console plan picker handles the SKU for console-created deployments.

With kubectl, add the runtime SKU label to the deployment pod template:

yaml
metadata:
  labels:
    remotegpu.ai/runtime-sku: gpu-h100-1x

Missing or conflicting runtime SKU labels prevent the deployment from being accepted.

Console and kubectl operate on the same deployment

The console and kubectl both operate on the live Kubernetes deployment:

  • deployments created in the console appear in kubectl
  • deployments applied with kubectl appear in the console
  • updates and scale changes made in either place are reflected in the other view

Scaling a deployment to 0 is supported from both the console and kubectl. Services and ingresses can remain configured, but they will not have backing pods until you scale the deployment back above 0.

Troubleshooting

SymptomWhat to check
kubectl apply is rejectedConfirm the pod template includes one RemoteGPU runtime SKU label
Pods stay pendingCheck the selected plan, namespace quota, and pod events with kubectl describe pod
The console shows a deployment but traffic does not reach itConfirm the deployment has ready pods, then create or inspect the matching service
A public URL has no backendConfirm the deployment is scaled above 0 and the service selector matches the deployment pod labels
Image startup failsInspect pod logs and events from the console or with kubectl logs and kubectl describe pod

For example, use remotegpu.ai/runtime-sku: cpu-shared-8g for a shared CPU deployment.

  • Read Services to expose the deployment inside the cluster.
  • Read Ingresses to publish a service with HTTP routing.
  • Read Storage to attach persistent storage.

RemoteGPU customer documentation