Saltar al contenido principal

jobs

Los Jobs en kubernetes son una forma de automatizar tareas en kubernetes. A diferencia de los Pods, los Jobs tienen número de ejecuciones definido y un tiempo de ejecución limitado.

Estos recursos se suelen utilizar para tareas de mantenimiento que se ejecutan de forma puntual y recurrente.

Sintaxis básica

Este sería un ejemplo de sintáxis básica de un Job:

apiVersion: batch/v1
kind: Job
metadata:
name: test-job
spec:
completions: 5 # Número de ejecuciones
template:
spec:
containers:
- name: test
image: busybox
command: ["/bin/sleep"]
args: ["3"]
restartPolicy: Never

El parámetro diferenciador del Jobs frente a los Pods es el completions. Este define el número de ejecuciones que se realizarán y una vez que se alcanza el número de ejecuciones, el Job se detendrá.

Si vemos el estado de un Job en kubernetes, podemos ver que está en estado Pending si no se ha iniciado, Running si se está ejecutando y Succeeded si se ha terminado con éxito.