30 marzo 2023

Como programar el stop de un Azure Kubernetes Service (AKS)

 Para programar el stop (o eliminación) de un servicio de Kubernetes en una fecha y hora específicas, puedes utilizar el objeto de tipo Job de Kubernetes. Un Job en Kubernetes es un objeto que crea una o más tareas y las ejecuta de manera cronológica en el clúster.

Sigue estos pasos para programar la eliminación de un servicio:

  1. Crea un archivo YAML que defina un objeto de tipo Job. Este archivo debe contener la especificación del cronograma para que el trabajo se ejecute en la fecha y hora deseada. Aquí hay un ejemplo de archivo YAML:
yaml
apiVersion: batch/v1 kind: Job metadata: name: stop-service-job spec: schedule: "*/30 * * * *" jobTemplate: spec: template: spec: containers: - name: stop-service-container image: <nombre_de_la_imagen_del_contenedor> command: ["sh", "-c", "kubectl delete service <nombre_del_servicio>"] restartPolicy: OnFailure
  1. En la sección "schedule", especifica la programación del trabajo utilizando la sintaxis de cron. En el ejemplo anterior, el trabajo se ejecutará cada 30 minutos.
  2. En la sección "command", especifica el comando para detener el servicio. En el ejemplo anterior, se utiliza el comando "kubectl delete service" para eliminar el servicio.
  3. Aplica el archivo YAML al clúster de Kubernetes usando el comando "kubectl apply -f <nombre_del_archivo_yaml>".

Una vez que se ha programado el trabajo, se ejecutará según lo especificado en la sección "schedule". El trabajo se encargará de eliminar el servicio en la fecha y hora programadas. Es importante tener en cuenta que, si el trabajo falla, Kubernetes intentará volver a ejecutarlo según lo especificado en la política de reinicio. Por lo tanto, debes asegurarte de que el trabajo esté configurado correctamente antes de aplicarlo al clúster.

No hay comentarios: