Files
2026-03-25 00:05:57 +01:00

2.0 KiB

Job (Kubernetes)

#kubernetes #workload #słownik

Co to jest?

Job to zasób Kubernetes tworzący pod który wykonuje zadanie i kończy się. W odróżnieniu od Deployment (pody działają ciągle), Job tworzy pod który ma zakończyć się sukcesem.

Zachowanie

Job created → Pod created → Pod runs → Pod completes (exit code 0) → Job Succeeded
                                      → Pod fails (exit code != 0) → Job retries or Failed

Kluczowe cechy

Cecha Opis
Run-to-completion Pod kończy się po wykonaniu zadania
Retry policy Konfigurowalny backoffLimit (ile razy retry)
Parallelism Wiele podów jednocześnie (parallelism)
TTL cleanup Automatyczne usuwanie po N sekundach
Completions Ile podów musi zakończyć się sukcesem

Przykład

apiVersion: batch/v1
kind: Job
metadata:
  name: agent-run-001
spec:
  backoffLimit: 0          # Bez retries
  ttlSecondsAfterFinished: 300  # Usuń po 5 minutach
  template:
    spec:
      restartPolicy: Never
      containers:
        - name: agent
          image: agent-runner:v1

Job vs inne workloady

Workload Lifecycle Restart Use case
Job Run-to-completion Never/OnFailure Batch, one-shot
Deployment Long-running Always Web services
CronJob Periodic Job Never/OnFailure Scheduled batch
DaemonSet One per node Always Node agents
StatefulSet Ordered, stable Always Databases

Użycie w Sympozium

AgentRun w trybie task = Kubernetes Job:

Każde wywołanie agenta tworzy Job z:

  • Agent container (LLM loop)
  • IPC Bridge sidecar
  • Skill sidecars
  • backoffLimit: 0 (brak retry - lepsze logowanie błędów)
  • restartPolicy: Never

Po zakończeniu controller zbiera logi, wynik i token usage ze statusu poda.

Więcej: Model efemerycznych agentów | Cykl życia AgentRun


Powiązane: Deployment | Model efemerycznych agentów | Pod