Skip to content

Jobs

A Kubernetes Job runs pods until a finite task completes. Use jobs on RemoteGPU for one-off work instead of keeping a long-running service online.

Typical examples include data preparation, one-time model setup, migrations, rendering tasks, evaluation runs, and ad hoc maintenance work.

Choose a workflow

Use the console when you want to create a one-off job quickly or review job status, pods, logs, and events in a namespace.

Use kubectl when your team runs batch workloads from manifests or CI. Apply full Job manifests through the namespace kubeconfig and Kubernetes exec API key auth.

When to use a job

A job is useful for:

  • one-off tasks that should stop after completion
  • work that can retry until completion criteria are met
  • GPU or CPU batch execution under the same workload policy rules as other workloads
  • one-off runs triggered from local tooling or CI with kubectl

For recurring execution, use a CronJob instead.

Supported job profile

AreaSupported behavior
Resource typebatch/v1 Job
Access pathConsole creation, plus kubectl for manifest create and update
Scheduling controlsStandard Kubernetes job controls such as completions, backoff limit, and parallelism
Plan selectionConsole-created jobs use the selected plan; kubectl jobs use the RemoteGPU runtime SKU label on the pod template
Workload policyJob pod templates follow the same namespace workload policy as other workloads

Create a job

Use Kubernetes > Jobs when you want to launch a simple one-off workload without writing a manifest first.

The console create flow supports:

  • namespace selection
  • job name
  • plan selection
  • container image
  • optional shell command

Use kubectl when you need manifest fields that are not exposed in the console form, such as parallelism, backoff policy, completions, labels, annotations, environment variables, volumes, or multi-container pod templates. The same namespace workload policy applies either way.

What to expect after creation

After a job is created:

  • RemoteGPU creates a Kubernetes Job in the selected namespace
  • the job follows the same workload policy and quota rules as other workloads
  • you can inspect job status, pods, logs, and events from the console
  • to run the work again, create a new job instance or apply a new manifest

Operational notes

  • Jobs are not a public HTTP surface. Traffic-serving applications usually use a deployment, service, and ingress.
  • Use a deployment for long-lived services.
  • Use a CronJob for recurring work.

Troubleshooting

SymptomWhat to check
kubectl apply is rejectedConfirm the job pod template includes one RemoteGPU runtime SKU label
Job is created but no pod runsInspect the job and pod events with kubectl describe job and kubectl describe pod
Job fails quicklyReview container logs with kubectl logs; also check the command, image, and required environment variables
Job retries more than expectedCheck backoffLimit, restartPolicy, and pod exit codes
You need to run the work againCreate a new job name or apply a new manifest for the next run

RemoteGPU customer documentation