Kubernetes Lab 7 - Cron Jobs
Problem
Your commander has a simple data process that is run periodically to check status. They would like to stop doing this manually in order to save time, so you have been asked to implement a cron job in the Kubernetes cluster to run this process.
- Create a cron job called xwing-cronjob using the
ibmcase/xwing-status:1.0
image. - Have the job run every second minute with the following cron expression:
*/2 * * * *
. - Pass the argument
/usr/sbin/xwing-status.sh
to the container.
Verification
- Run
kubectl get cronjobs.batch
andLAST-SCHEDULE
to see last time it ran - From a bash shell, run the following to see the logs for all jobs:
jobs=( $(kubectl get jobs --no-headers -o custom-columns=":metadata.name") )echo -e "Job \t\t\t\t Pod \t\t\t\t\tLog"for job in "${jobs[@]}"dopod=$(kubectl get pods -l job-name=$job --no-headers -o custom-columns=":metadata.name")echo -en "$job \t $pod \t"kubectl logs $poddone