En kubernetes también se pueden crear tareas programadas con crons o correr una tarea simple, que realizarla a mano sería más costoso, como por ejemplo dejar preinstalado wordpress en un volumen. Para estos menesteres están los jobs y los cronjobs.
El siguiente ejemplo es un job que nos deja una instalación de wordpress en el volumen files-pvc, que después se puede «atachar» a un pod de apache (por ejemplo).
apiVersion: batch/v1 kind: Job metadata: name: wordpress-install spec: template: spec: containers: - name: install image: bash command: ["/bin/sh", "-c"] args: - cd /root; wget https://wordpress.org/latest.tar.gz && tar -xzvf latest.tar.gz && cp -r wordpress/* /var/www/html/ && \ cd /root; rm -rf latest.tar.gz wordpress volumeMounts: - name: files-pvc mountPath: "/var/www/html" volumes: - name: files-pvc persistentVolumeClaim: claimName: files-pvc restartPolicy: OnFailure
En el siguiente ejemplo, ejecutamos un cron cada 5 minutos, que hace un curl a un cron de wordpress:
apiVersion: batch/v1 kind: CronJob metadata: name: cron wordpress spec: schedule: "*/5 * * * *" jobTemplate: spec: template: spec: containers: - name: cron_wp image: bash args: - /bin/sh - -c - curl http://www.miweb.com/wp-cron.php restartPolicy: OnFailure
Te recordamos que en Occentus Network somos Kubernetes Certified Service Provider (KCSP) y que gracias a esta certificación ofrecemos Kubernetes Service, así como consultoría y formación a empresas que eligen Kubernetes.