Choisir votre méthode d'installation
Avant d'installer l'application, vous devrez choisir entre ces types d'installation :
- Existing Cluster using Helm (recommandé) - pour des déploiements sur des clusters Kubernetes existants à l'aide de charts Helm (inclut l'option GCP Marketplace),
- Embedded Cluster using KOTS - pour des installations tout-en-un qui créent leur propre cluster Kubernetes avec une interface de gestion web.
Ce guide expliquera les différences entre ces méthodes et vous aidera à déterminer laquelle convient le mieux à vos besoins.
Qu'est-ce que Helm ?
Helm est un gestionnaire de paquets pour Kubernetes, souvent qualifié d'« équivalent Kubernetes d'apt/yum/homebrew ». Il vous permet de définir, d'installer et de mettre à niveau les applications Kubernetes, même les plus complexes. Helm utilise des « charts », qui sont des ensembles de fichiers YAML décrivant un ensemble lié de ressources Kubernetes. Cet outil simplifie la gestion des applications Kubernetes en fournissant une commande unique pour déployer une application, gérer son cycle de vie et suivre l'historique des versions. Les configurations Helm peuvent être versionnées dans un dépôt Git et s'intègrent bien avec les outils CD tels qu'ArgoCD ou FluxCD.
La conformité FIPS (Federal Information Processing Standards) est disponible exclusivement pour les installations basées sur Helm. Si vous avez besoin de modules cryptographiques conformes FIPS pour la conformité réglementaire, vous devez choisir la méthode d'installation Helm. Pour plus de détails, consultez la page Recommandations de sécurité.
GCP Marketplace
GitGuardian est également disponible sur GCP Marketplace, la plateforme de Google Cloud pour découvrir, déployer et gérer des solutions logicielles tierces. Cela permet le déploiement sur des clusters Google Kubernetes Engine (GKE) avec une facturation consolidée via votre compte GCP.
Les principaux avantages du déploiement via GCP Marketplace sont la facturation consolidée sur votre facture GCP, la possibilité d'appliquer des remises d'utilisation engagée et la simplification des achats grâce aux accords GCP existants.
Le déploiement GCP Marketplace utilise Helm. Le déploiement initial s'effectue via la console GCP, mais les mises à niveau et la gestion continue sont effectuées directement avec Helm, ce qui signifie que vous bénéficiez de tous les avantages des installations basées sur Helm.
Pour plus de détails, consultez le guide de déploiement GCP Marketplace.
Qu'est-ce que KOTS ?
KOTS (Kubernetes Off-The-Shelf) est un framework conçu pour aider les éditeurs de logiciels à gérer le cycle de vie des applications Kubernetes d'une manière conviviale pour les clients en entreprise. Il fournit un ensemble d'outils et une interface utilisateur qui simplifient le déploiement, la gestion et le support des applications Kubernetes.
Qu'est-ce qu'une installation existing cluster
Vous pouvez installer l'application sur un cluster Kubernetes existant qui contient déjà des nœuds en utilisant Helm. Assurez-vous que ce cluster respecte les exigences système et réseau.
La section de préparation de la base de données vous aidera à les configurer correctement pour votre environnement.
Pour une preuve de concept ou des tests, vous pouvez rapidement déployer PostgreSQL et Redis dans votre cluster grâce aux presets helm-pg-redis-poc, qui fournissent des configurations Small/Medium/Large prêtes à l'emploi, alignées sur le guide Scaling. Pour la production, préférez les services managés de votre fournisseur cloud.

Si vous prévoyez d'installer GitGuardian sur un cluster OpenShift, veuillez consulter les directives détaillées pour l'installation d'un cluster OpenShift.
Qu'est-ce qu'une installation embedded cluster
L'installation Embedded est une installation « tout-en-un » où le cluster Kubernetes est créé sur votre machine, et tous les composants nécessaires à l'application sont installés. Cette méthode d'installation utilise KOTS (Kubernetes Off-The-Shelf) pour fournir une interface web conviviale pour le déploiement et la gestion.

Vous pouvez également utiliser des bases de données externes à votre cluster Kubernetes embedded (et nous le recommandons). La section de préparation de la base de données vous aidera à les configurer correctement pour votre environnement.
Comment choisir entre ces options
Avant d'installer l'application, vous devrez prendre en compte les éléments suivants :
- disposez-vous des ressources et de l'expertise nécessaires pour gérer votre cluster Kubernetes ?
- avez-vous mis en place des politiques de sécurité dans votre cluster Kubernetes ?
- disposez-vous de l'expertise et des ressources pour gérer vos propres bases de données ?
- aurez-vous besoin d'un réglage fin de l'application ?
Si vous disposez déjà d'un cluster Kubernetes qui exécute différentes applications, avec des politiques de gestion et de sécurité précises et un mainteneur dédié dans vos équipes, vous devriez utiliser l'installation existing cluster avec Helm. L'application peut être installée dans un namespace dédié pour une meilleure isolation et organisation. Veuillez noter que vous aurez également besoin d'un accès à une base de données Postgres et à un cache Redis.
L'installation Helm offre de nombreuses options de configuration et s'intègre bien avec les pipelines d'automatisation et les pratiques Infrastructure as Code.
Si vous déployez sur Google Cloud Platform et que vous souhaitez consolider la facturation via votre compte GCP, envisagez d'utiliser le déploiement GCP Marketplace. Cela vous permet d'utiliser vos dépenses engagées GCP et simplifie les achats tout en tirant parti des services managés GCP (Cloud SQL, Memorystore, GKE).
Si vous ne disposez pas de ressources dédiées à la maintenance d'un cluster Kubernetes et de bases de données, préférez l'installation embedded, qui utilise KOTS pour fournir une interface web conviviale pour la configuration et la gestion. Cependant, veuillez noter que les installations embedded ne sont pas recommandées pour une utilisation en production et sont mieux adaptées aux essais ou à des fins de preuve de concept (PoC).
Matrice des fonctionnalités : Existing cluster (Helm) vs Embedded cluster (KOTS)
Cette matrice de fonctionnalités fournit une comparaison complète entre les installations Helm (pour les clusters existants) et les installations KOTS (pour les clusters embedded), en mettant en évidence leurs capacités et leurs principales différences.
| Nom de la fonctionnalité | Existing Cluster (Helm) | Embedded Cluster (KOTS) |
|---|---|---|
| Déploiement Infrastructure as Code (IaC) (recommandé) | Oui | Non |
| Déploiement via interface graphique (GUI) | Non | Oui |
| Déploiement airgap | Oui | Oui |
| Support OpenShift | Oui | Oui |
| PostgreSQL et Redis externes (recommandé) | Oui | Oui |
| PostgreSQL et Redis embedded | Non | Oui |
| Gestion des workloads (nombre de réplicas) | Oui | Oui |
| Gestion des ressources (requests/limits CPU/mémoire) | Oui | Oui |
| Proxy HTTP | Oui | Oui |
| CA personnalisée | Oui | Oui |
| Load balancer + Ingress | Oui | Oui |
| Support ARM | Oui | Non |
| Architecture orientée Ingress | Oui | Non |
| Horizontal Pod Autoscaling | Oui | Non |
| Systèmes externes d'agrégation de logs | Oui | Non |
| Generic Ephemeral Inline Volumes | Oui | Non |
| Worker premium de réessai de scan | Oui | Non |
| Node Affinity Scheduling | Oui | Non |
| Service mesh Istio | Oui | Non |
| Définir des labels personnalisés sur les pods | Oui | Non |
| Secrets Kubernetes existants | Oui | Non |
| Docker Registry privé | Oui | Non |
| Déploiement avec ArgoCD | Oui | Non |
| Déploiement avec FluxCD | Oui | Non |
| FIPS | Oui | Non |
| IPv6 | Oui | Non |
| GCP Marketplace | Oui | Non |