Files
argocd/helm/.tls-secrets-sync/ops/README.md

1.7 KiB

Synchronisation des Secrets TLS

Ce chart gère la synchronisation des secrets TLS depuis le cluster OPS vers les autres clusters (DEV, RCT, PRD).

Structure

  • Chart.yaml : Définition du chart Helm
  • values.yaml : Configuration par défaut
  • templates/ : Templates Kubernetes
    • namespace-certificates.yaml : Namespace pour les certificats sur OPS
    • secret-*.yaml : Secrets de référence (optionnel)
    • sync-job-*.yaml : Jobs de synchronisation
    • rbac-secret-sync.yaml : RBAC pour les Jobs

Utilisation

Option 1 : Synchronisation manuelle via script (Recommandée)

Utilisez le script scripts/sync-tls-secret.sh :

./scripts/sync-tls-secret.sh homarr-dev-tls cluster-ops certificates-ops cluster-dev homarr-dev

Option 2 : Synchronisation automatique via Jobs

Les Jobs Kubernetes tentent de synchroniser automatiquement, mais nécessitent que les contextes kubectl soient configurés dans le pod.

Option 3 : Synchronisation via CronJob

Créez un CronJob qui exécute le script de synchronisation périodiquement.

Configuration

Les secrets sont synchronisés depuis :

  • Source : Namespace certificates-ops sur cluster OPS
  • Destination : Namespaces des applications sur clusters DEV/RCT/PRD

Ajout d'un nouveau secret à synchroniser

  1. Ajoutez une entrée dans apps/applicationset-tls-secrets-sync.yaml
  2. Créez un template sync-job-<app>-<env>.yaml si nécessaire
  3. Ou utilisez directement le script sync-tls-secret.sh

Notes importantes

  • Les contextes kubectl doivent être configurés pour accéder aux différents clusters
  • Le namespace de destination doit exister sur le cluster cible
  • Les secrets sont copiés avec leurs données, mais les métadonnées sont nettoyées