Tengo un trabajo que quiero ejecutar regularmente en Kubernetes 1.19.3 (DigitalOcean).
Para este trabajo, necesito tomar una instantánea de un PVC y hacerle cosas. Sé cómo puedo ejecutar un trabajo y montar un volumen en el pod que ejecuta, pero me resulta difícil descubrir cómo tomar esa instantánea al comienzo de este trabajo.
¿Hay alguna forma de hacerlo?
La herramienta elegida para tomar instantáneas de PV en K8s es VolumeSnapshots .
El problema con ellos es que aún no vienen) con funcionalidad para activación periódica. Entonces, tendrías que crearlos desde un CronJob de K8s. Sin embargo, hacerlo no es muy sencillo, ya que su CronJob Pod necesitaría tener un cliente K8s instalado y requerir acceso al servidor API K8s con RBAC.
Hay un par de opciones para llegar allí, desde escribir su propia imagen desde cero hasta usar soluciones de código abierto basadas en los clientes de las bibliotecas de clientes k8s de este proyecto.
Al ver que la aplicación dinámica de manifiestos de K8 no es compatible con K8, de hecho comencé un proyecto de código abierto, que podría usar para este propósito: K8sCrud .