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) ysite-b - Ejemplo de
Schedule(nightly a las 02:00 y 02:30) - Dos
values.yamlde Helm:helm/values-approach-a.yaml: crea BSL por defecto y Secret desde Helmhelm/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.caCerten los BSL. ServiceMonitorrequiere Prometheus Operator; ajustametadata.labels.releaseal valor que use tu Prometheus.- Importa el dashboard JSON en Grafana (datasource
prometheus).