tareas programador historial deshabilitado cronjob scheduled-tasks kubernetes google-container-engine google-kubernetes-engine

scheduled tasks - programador - ¿Cómo puedo activar un trabajo programado de Kubernetes manualmente?



kubernetes jobs (6)

He creado un trabajo programado de Kubernetes , que se ejecuta dos veces al día de acuerdo con su programación. Sin embargo, me gustaría activarlo manualmente para fines de prueba. ¿Cómo puedo hacer esto?



Desafortunadamente, ninguna de las sintaxis de ejemplo anteriores funciona en Google Kubernetes Engine (GCP). Además, los documentos GKE están equivocados. :(

En Kubernetes 1.10.6.gke-2 , la sintaxis de trabajo es

kubectl create job <your-new-job-name> --from=cronjob/<name-of-deployed-cron-job> -n <target namespace>


EDITAR - Julio de 2018: vea la answer @ pedro_sland ya que esta característica ahora se ha implementado

Mi respuesta original a continuación seguirá siendo correcta para versiones anteriores de kubectl anteriores a v1.10.1

================================================== ======================

Además de crear un nuevo trabajo (como han sugerido las otras respuestas), no hay una forma actual de hacerlo. Es una solicitud de función con kubernetes ahora que puede rastrearse aquí: #47538


El problema #47538 que @jdf mencionó ahora está cerrado y esto ahora es posible. La implementación original se puede encontrar here pero la sintaxis ha cambiado.

Con kubectl v1.10.1 + el comando es:

kubectl create job --from=cronjob/<cronjob-name> <job-name>

Parece ser retrocompatible con clústeres más antiguos, ya que funcionó para mí en v0.8.x.


Puede crear un trabajo simple basado en su ScheduledJob. Si ya ejecuta un ScheduledJob, hay trabajos en el historial.

kubectl get jobs NAME DESIRED SUCCESSFUL AGE hello-1477281595 1 1 11m hello-1553106750 1 1 12m hello-1553237822 1 1 9m

Exporta uno de estos trabajos:

kubectl get job hello-1477281595 -o yaml > my_job.yaml

Luego edite el yaml un poco, borrando algunos campos innecesarios y ejecútelo manualmente:

kubectl create -f my_job.yaml kubectl delete -f my_job.yaml


Si desea probar el trabajo, cree una configuración de Job desde su configuración de trabajo Cron (ScheduledJob) y ejecútelo manualmente con el siguiente comando:

kubectl create -f ./job.yaml