Files
kubernetes/velero/README.md
2025-08-27 01:46:41 +02:00

1.3 KiB

Velero + MinIO (c2et.net)

Este paquete contiene:

  • namespace.yaml
  • Secrets de credenciales (cloud-credentials-site-a, cloud-credentials-site-b)
  • BackupStorageLocation (BSL) por YAML: default (site-a) y site-b
  • Ejemplo de Schedule (nightly a las 02:00 y 02:30)
  • Dos values.yaml de Helm:
    • helm/values-approach-a.yaml: crea BSL por defecto y Secret desde Helm
    • helm/values-approach-b.yaml: sin BSL/Secret; los aplicas tú en YAML (GitOps)
  • ServiceMonitor (si usas Prometheus Operator)
  • Dashboard de Grafana (JSON)

Flujo recomendado (GitOps, Approach B)

# 1) Instala Velero por Helm sin BSL ni secrets
helm repo add vmware-tanzu https://vmware-tanzu.github.io/helm-charts
helm upgrade --install velero vmware-tanzu/velero -n velero --create-namespace -f helm/values-approach-b.yaml

# 2) Aplica Secrets, BSLs y Schedules
kubectl apply -f namespace.yaml
kubectl apply -f secrets/secret-site-a.yaml -f secrets/secret-site-b.yaml
kubectl apply -f bsl/bsl-default-site-a.yaml -f bsl/bsl-site-b.yaml
kubectl apply -f schedules/schedules.yaml

Notas

  • MinIO requiere s3ForcePathStyle=true.
  • Si usas CA propia, añade spec.config.caCert en los BSL.
  • ServiceMonitor requiere Prometheus Operator; ajusta metadata.labels.release al valor que use tu Prometheus.
  • Importa el dashboard JSON en Grafana (datasource prometheus).