Mettre à niveau Embedded cluster
N'effectuez pas de rollback ou de downgrade sans consulter d'abord notre équipe de support. Certains scénarios peuvent nécessiter la restauration de la base de données à partir d'une sauvegarde antérieure à la mise à niveau en raison de la complexité de l'annulation de certaines migrations de base de données.
Les vérifications préliminaires (preflight checks) sont essentielles pour une installation réussie. Les règles suivantes s'appliquent :
- ❌ Échec des preflight checks : si les preflight checks échouent, la mise à niveau ne doit pas se poursuivre tant que l'environnement cible ne répond pas à toutes les exigences. Veuillez contacter notre équipe de support.
- ⚠️ Avertissements des preflight checks : si les preflight checks renvoient des avertissements, l'installation peut se poursuivre, mais il est recommandé de traiter ces avertissements afin de respecter nos recommandations.
Mise à niveau vers 2026.3
Si vous utilisez un déploiement Embedded cluster V2 (instances installées en 2025 ou après), vous devez supprimer manuellement le PodDisruptionBudget replicated avant de mettre à niveau vers 2026.3 :
- Vérifiez votre version actuelle. Ce problème ne concerne que les instances exécutant 2026.2.0. Si vous êtes sur une version antérieure, vous pouvez mettre à niveau directement vers 2026.3.0 sans aucune étape manuelle.
- Connectez-vous au nœud via SSH et supprimez le PodDisruptionBudget :
kubectl delete -n kotsadm pdb replicated
- Ouvrez la KOTS Admin Console et lancez la mise à niveau vers 2026.3.0 depuis l'onglet "Version History".
Mise à niveau vers 2026.1
Si vous utilisez un déploiement embedded cluster, cette version introduit de nouveaux sous-charts pour PostgreSQL et Valkey (anciennement Redis) :
- Mise à niveau de Valkey (anciennement Redis) : la migration de Redis vers Valkey est transparente et ne nécessite aucune action de votre part. Notez que le cache applicatif sera réinitialisé, sans affecter le fonctionnement normal de l'application.
- Mise à niveau de PostgreSQL : cette opération requiert une action manuelle obligatoire avant de lancer la mise à niveau.
En raison de la manière dont Kubernetes gère les objets StatefulSet, le StatefulSet PostgreSQL ne peut pas être mis à niveau automatiquement. Suivez ces étapes pour effectuer la migration en toute sécurité.
Étape 1 : Sauvegarder la base de données
Avant de procéder à la mise à niveau, vous devez sauvegarder votre base de données PostgreSQL à l'aide de l'outil de migration fourni dans le dépôt postgresql-bitnami-migration.
-
Téléchargez le script de sauvegarde depuis le dépôt.
-
Exécutez le script de sauvegarde pour créer un dump de la base de données :
./backup.sh --namespace gitguardian --output dump.sql.gz
- Stockez le fichier de sauvegarde (
dump.sql.gz) dans un emplacement sécurisé.
Étape 2 : Supprimer le StatefulSet PostgreSQL
Assurez-vous que le StatefulSet PostgreSQL est présent dans votre namespace :
kubectl get sts -n gitguardian
Supprimez le StatefulSet avant de démarrer la mise à niveau :
kubectl delete sts postgresql -n gitguardian
Étape 3 : Exécuter les preflight checks et procéder à la mise à niveau
Un preflight check pendant la mise à niveau vérifiera automatiquement que la suppression du StatefulSet a été effectuée. Si le preflight check réussit, procédez à la mise à niveau via la KOTS Admin Console.
Étape 4 : Restaurer la base de données
Une fois la mise à niveau terminée et tous les pods en cours d'exécution, restaurez la base de données à l'aide du script de restauration :
./restore.sh --namespace gitguardian --input dump.sql.gz
Vérifiez que vos paramètres et données ont été préservés en consultant le dashboard GitGuardian.
Pour des instructions détaillées sur les scripts de sauvegarde et de restauration, consultez le dépôt postgresql-bitnami-migration.
Mettre à niveau l'application GitGuardian
Avant la mise à niveau, assurez-vous de sauvegarder votre base de données PostgreSQL. Pour des instructions détaillées, consultez la page Backup.
L'application GitGuardian peut être mise à jour via la KOTS Admin Console dans l'onglet "Version History". Tout d'abord, vous devez vérifier les mises à jour. Cela peut être fait manuellement ou automatiquement. Ensuite, vous pouvez déployer une version plus récente en cliquant sur le bouton "Deploy".
Sur les Embedded clusters V2, mettre à jour l'application via la KOTS Admin Console met également à niveau le cluster Kubernetes si nécessaire.
Vous trouverez plus d'informations dans la documentation KOTS.

Pendant les mises à niveau, les workers sont arrêtés mais les nouveaux commits sont toujours mis en file d'attente et seront traités après la mise à niveau. Les mises à niveau n'arrêtent pas le dashboard, mais elles introduisent un délai temporaire dans le traitement des messages et les alertes. Nous vous conseillons d'effectuer les mises à niveau pendant une période de faible trafic.
Mettre à niveau l'application GitGuardian en mode Airgap
Dans un environnement air-gapped, votre cluster n'a pas d'accès direct à Internet. Pour mettre à niveau, vous téléchargez le nouveau bundle air gap sur une machine qui a un accès Internet, vous le transférez vers votre environnement, puis vous rendez la nouvelle version disponible dans la KOTS Admin Console et la déployez.
Les étapes exactes dépendent de la façon dont votre instance a été installée. Suivez la section qui correspond à votre déploiement.
Embedded cluster (instances installées en 2025 ou après)
Sur un Embedded cluster, vous n'avez pas besoin d'installer ou de mettre à niveau KOTS séparément : KOTS est fourni avec l'application GitGuardian et est mis à niveau automatiquement lorsque vous déployez une nouvelle version. Vous devez uniquement rendre le nouveau bundle air gap disponible dans l'Admin Console.
Il existe deux façons de procéder. Le chargement depuis la ligne de commande est l'option recommandée : elle est plus rapide et permet de télécharger le bundle directement sur le nœud, sans avoir à le téléverser à nouveau via le navigateur.
Option 1 : Charger la nouvelle version depuis la ligne de commande (recommandée)
-
Sur une machine ayant accès à Internet, téléchargez le nouveau bundle air gap à l'aide de la même commande que celle utilisée pour l'installation, en remplaçant
your_licensepar l'ID de votre licence :LICENSE_ID=your_licensecurl -f "https://replicated.app/embedded/gitguardian/stable?airgap=true" -H "Authorization: $LICENSE_ID" -o gitguardian.tgztar -xvzf gitguardian.tgzCela extrait le binaire
gitguardianet le bundlegitguardian.airgap. -
Transférez à la fois le binaire
gitguardianet le bundlegitguardian.airgapvers le nœud sur lequel l'Embedded cluster est exécuté. -
Sur le nœud, depuis le répertoire contenant les deux fichiers, chargez le bundle pour rendre la nouvelle version disponible dans l'Admin Console :
sudo ./gitguardian update --airgap-bundle gitguardian.airgap -
Ouvrez la KOTS Admin Console, allez dans l'onglet Version History, et cliquez sur Deploy à côté de la nouvelle version.
Option 2 : Charger la nouvelle version depuis l'Admin Console
-
Sur une machine disposant d'un accès navigateur à l'Admin Console, téléchargez le nouveau bundle air gap à l'aide de la même commande que dans l'Option 1 (étape 1).
-
Dans l'Admin Console, allez dans l'onglet Version History et cliquez sur Upload new version, puis sélectionnez le bundle
gitguardian.airgap. -
Une fois le téléversement traité, cliquez sur Deploy à côté de la nouvelle version.
Sur les Embedded clusters, déployer une nouvelle version via l'Admin Console met également à niveau le cluster Kubernetes et KOTS si nécessaire. Aucune commande de mise à niveau KOTS distincte n'est requise.
Sur les installations Embedded cluster legacy (kURL) (instances installées en 2024 ou avant), la mise à niveau fonctionne différemment : téléchargez le dernier package air gap et relancez la même commande d'installation que celle décrite dans le guide d'installation, puis chargez le bundle de l'application depuis l'onglet Version History de l'Admin Console.
Existing cluster (KOTS)
L'installation KOTS sur des clusters existants sera dépréciée et non supportée après la version de juin 2026 (version 2026.6.0). Veuillez migrer vers l'installation Helm.
Sur un cluster existant, KOTS s'exécute en tant qu'application dans votre cluster et doit être mis à niveau séparément de l'application GitGuardian.
-
Mettez à niveau la KOTS Admin Console en suivant les instructions d'installation air gap : installez la dernière version du plugin KOTS sur votre machine, téléchargez le dernier bundle KOTS et téléversez ces images vers votre registre. Ensuite, au lieu d'exécuter la commande d'installation, mettez à niveau l'application KOTS exécutée dans le cluster :
kubectl kots admin-console upgrade --namespace <namespace>Si nécessaire, spécifiez le namespace Kubernetes avec
--namespace(le namespace par défaut est utilisé s'il n'est pas spécifié). -
Téléchargez le dernier bundle d'application depuis le portail de téléchargement. Ensuite, allez dans votre KOTS Admin Console, dans l'onglet Version History, cliquez sur Upload new version, téléversez le bundle, puis déployez-le.
Versions requises
La KOTS Admin Console affichera certaines versions comme "Required".

Si vous avez plusieurs versions à mettre à niveau, vous devrez effectuer la mise à niveau vers chaque version requise entre votre version actuelle et votre version cible.
Après chaque déploiement, vous devez attendre que l'application soit entièrement mise à niveau. À cet effet, vous pouvez surveiller le statut des pods et attendre que tous les pods soient actifs et tous les jobs terminés.
watch kubectl get po -n <namespace>
L'application est redémarrée lorsque tous les pods sont dans le statut running :
Every 2.0s: kubectl get po -n default gitguardian-example: Thu Jul 4 06:11:24 2024
NAME READY STATUS RESTARTS AGE
beat-677d68bb9f-8f5lp 1/1 Running 0 23m
kotsadm-56dd9b7866-cv4jc 1/1 Running 0 30m
kotsadm-rqlite-0 1/1 Running 0 33m
kurl-proxy-kotsadm-7cdfc47bf4-nr55l 1/1 Running 0 33m
nginx-578786cd47-6ccfh 1/1 Running 0 23m
nginx-578786cd47-cx899 1/1 Running 0 23m
post-deploy-f77kq 0/1 Completed 0 23m
postgresql-0 1/1 Running 0 29m
pre-deploy-hnpbq 0/1 Completed 0 28m
redis-master-0 1/1 Running 0 29m
replicated-76bff7f9bb-zb2lb 1/1 Running 0 23m
webapp-hook-5745c9995-6p7ph 1/1 Running 0 23m
webapp-internal-api-55fdd98d4d-9x25r 1/1 Running 1 (22m ago) 23m
webapp-internal-api-long-b98b68fb-x6q7s 1/1 Running 0 23m
webapp-public-api-7d4b7f8956-2jvf4 1/1 Running 0 23m
worker-email-755dd6db6b-4drhj 1/1 Running 0 23m
worker-email-755dd6db6b-6lrhc 1/1 Running 0 23m
worker-long-tasks-54875654d8-jl57k 1/1 Running 0 23m
worker-long-tasks-54875654d8-mh47g 1/1 Running 0 23m
worker-realtime-ods-7b844db9c6-6rcsl 1/1 Running 0 23m
worker-realtime-ods-7b844db9c6-hb8lq 1/1 Running 0 23m
worker-scanners-55fc98d756-mrqsx 1/1 Running 0 23m
worker-scanners-55fc98d756-rz6xz 1/1 Running 0 23m
worker-worker-85bff7dc8f-6zs98 1/1 Running 0 23m
worker-worker-85bff7dc8f-vd5vx 1/1 Running 0 23m
Nous avons défini un TTL (Time To Live) de 30 jours pour les jobs pre-deploy et post-deploy afin de permettre la récupération des logs si nécessaire. Il est recommandé de ne pas supprimer ces pods, car ils peuvent être utiles pour le dépannage.
Mettre à niveau KOTS
Veuillez vous rappeler que des mises à niveau régulières de KOTS sont nécessaires. Les versions de GitGuardian sont testées en profondeur avec la dernière version de KOTS. Pour garantir une fonctionnalité et une compatibilité complètes, certaines fonctionnalités peuvent ne pas se comporter comme prévu sur les anciennes versions de KOTS. Nous vous recommandons fortement de rester à jour avec les versions les plus récentes.
Pour vérifier la version du plugin KOTS, exécutez la commande suivante :
kubectl kots version
Si une mise à jour est disponible, suivez les instructions et exécutez cette commande :
curl https://kots.io/install | bash
Pour existing cluster, vous devrez mettre à niveau l'application KOTS exécutée dans le cluster :
L'installation KOTS sur des clusters existants sera dépréciée et non supportée après la version de juin 2026 (version 2026.6.0). Veuillez migrer vers l'installation Helm.
kubectl kots admin-console upgrade -n <namespace>
Pour les installations Embedded cluster (instances installées en 2025 ou après), KOTS est mis à niveau automatiquement avec l'application GitGuardian.
Pour les installations Embedded cluster legacy (kURL) (instances installées en 2024 ou avant), relancez simplement la même commande d'installation que celle décrite dans le guide d'installation.
⚠️ Pendant la mise à niveau, vous serez invité (éventuellement plusieurs fois) avec une question Y/N pour drainer le nœud et appliquer la mise à niveau. Vous devez répondre Y pour continuer. Comme cette étape supprime tous les pods sur le nœud, il y aura une brève interruption pendant la mise à niveau et vous devez planifier en conséquence.
🌐 Si vous utilisez un proxy HTTP, assurez-vous de suivre les instructions.
Pour plus d'instructions sur la mise à niveau de KOTS, consultez la documentation Replicated.
Dans certains cas, les preflight checks peuvent ne pas détecter correctement le changement de version de l'admin KOTS, entraînant des échecs même en utilisant la version minimale requise de KOTS. Pour résoudre ce problème, suivez ces étapes :
- Naviguez vers la KOTS Admin Console.
- Allez dans Config > Advanced Options.
- Ajustez le nombre de répliques de workers d'e-mail (par exemple, de 2 à 1).
- Déployez votre changement de configuration.
- Cliquez sur le lien Check for update.
- Exécutez à nouveau les preflight checks.
- Une fois les preflight checks terminés, annulez le changement en rétablissant la valeur d'origine du nombre de répliques de workers d'e-mail.
Mettre à niveau Kubernetes sur Embedded Cluster legacy (kURL) (instances installées en 2024 ou avant)
Pour mettre à niveau votre version de Kubernetes pour l'embedded cluster, suivez ces étapes :
- Relancez simplement la même commande d'installation que celle décrite dans le guide d'installation.
⚠️ Pendant la mise à niveau, vous serez invité (éventuellement plusieurs fois) avec une question Y/N pour drainer le nœud et appliquer la mise à niveau. Vous devez répondre Y pour continuer. Comme cette étape supprime tous les pods sur le nœud, il y aura une brève interruption pendant la mise à niveau et vous devez planifier en conséquence.
🌐 Si vous utilisez un proxy HTTP, assurez-vous de suivre les instructions.
- Pour vérifier la version de Kubernetes, exécutez la commande suivante :
kubectl version