Skip to main content
Version: Next

Kubernetes Application Mode

Kubernetes Application Mode creates an independent Kubernetes application for one SeaTunnel job. A batch/v1 Job hosts the only Zeta master. The master requests a fixed number of worker Pods. Every process uses the same SeaTunnel image, and worker and application resources are cleaned up when the job terminates.

Use it when Kubernetes manages compute resources and jobs require isolated resources, dependencies, and failure boundaries. Execution uses the native Zeta Engine without Flink or Spark.

Runtime layout​

ComponentKubernetes resourceResponsibility
Application masterOne Job PodStart the Zeta master, create workers, submit the job, and coordinate cleanup
WorkerN regular PodsJoin the isolated Hazelcast cluster and provide fixed task slots
Job configurationInline master environment; optional mounted job.confkubernetes.job-config-file selects a ConfigMap or Secret file; unset keeps the submitted -c file
Runtime configurationExisting or created ConfigMapMounted read-only by the master and workers with seatunnel.yaml, Hazelcast, JVM option and logging files
Master discoveryMaster Pod IPWorkers join the advertised Pod IP over TCP; the headless Service only selects the master Pod
CheckpointPVC or supported remote storagePreserve recoverable state outside the application
caution

Losing the master or any worker fails the current Job. Workers are not replaced and no standby master is started. A new application can restore from a durable checkpoint.

Capabilities​

AreaSupported in this release
Submissionsubmit, status, cancel; submission returns as soon as the Job is started, --wait opts into waiting
TopologyOne master and a fixed number of workers, each with its own CPU, memory and slots; one native job per application
Job configurationSubmitted -c file or a file mounted from a Secret/ConfigMap; ${VAR} placeholders resolved inside the Pod
Secrets and ConfigMapsReference existing objects, which SeaTunnel never creates or deletes, or let it create owned ones; every mounted key declares its full path and uses subPath
EnvironmentPer-variable kubernetes.env.* and whole-object envFrom, sourced from literals, Secrets or ConfigMaps
Runtime filesEngine, Hazelcast, JVM-options and Log4j2 file selection, each of which can be disabled
SchedulingNamespace, ServiceAccount, image pull Secrets, labels, annotations, node selectors and tolerations
Storage and recoveryCheckpoint PVC mount and recovery of an earlier job through application.restore-job-id
LifecycleWorker loss or master exit fails the application; cancel removes every owned resource and keeps referenced ones; finished Jobs are retained for kubernetes.finished-job-retention-seconds
note

Not in this release: HA master failover, worker replacement or autoscaling, arbitrary Pod templates, affinity/PriorityClass, Kerberos and REST/HTTPS. A failed application can be resumed from its last durable checkpoint with application.restore-job-id.

Prerequisites​

  • Kubernetes 1.24 or later with batch/v1 Jobs, suspended Jobs, and Job TTL support.
  • kubectl and a submitter kubeconfig, or a suitable in-cluster identity.
  • An existing namespace, ServiceAccount, and minimal RBAC.
  • An existing ConfigMap with the SeaTunnel runtime configuration, or the kubernetes.configmap.<entry>.data route that has SeaTunnel create one.
  • Hazelcast TCP connectivity between master and worker Pods.
  • A cluster that can pull an image containing SeaTunnel, the Kubernetes provider, and job plugins.
  • Submission permission to create and manage Jobs and Services, plus the Secret/ConfigMap entries the deployment creates; worker Pods are created by the application ServiceAccount.
PhaseDocumentContent
Understand deploymentCluster architectureJob, worker Pods, Service, Secret, ConfigMap, and storage relationships
Run the first jobQuick startBuild an image, create RBAC, and submit a job
Operate an applicationCommandsSubmit, inspect, wait for, and cancel an application
Tune deploymentConfigurationComplete Kubernetes and shared application options
Configure recoveryCheckpoint recoveryPVC, HDFS, object storage, and explicit recovery
TroubleshootFAQStatus, cancellation, logs, cleanup, and common failures

See the shared Application Mode overview for common behavior.