Installer sur IBM Cloud
GitGuardian a été testé sur IBM Cloud Kubernetes Service (IKS) sur une infrastructure VPC, avec IBM Cloud Databases for PostgreSQL, IBM Cloud Databases for Redis et IBM Cloud Object Storage pour ClickHouse. Pour Red Hat OpenShift sur IBM Cloud, suivez également la page OpenShift.
Plusieurs points spécifiques à IBM Cloud s'ajoutent à l'installation Helm classique.
Version de Kubernetes
Créez le cluster sur une version de Kubernetes prise en charge. IBM Cloud propose sa version la plus récente par défaut, qui peut être plus récente que ce que GitGuardian prend en charge.
Accès au cluster
Les permissions à l'échelle du cluster, nécessaires pour créer le namespace GitGuardian, sont fournies avec la configuration d'administration du cluster :
ibmcloud ks cluster config --cluster <cluster-name> --admin
Trafic sortant
IBM Cloud bloque par défaut tout le trafic sortant des nœuds worker des clusters VPC (protection du trafic sortant). Les images de conteneurs et les services externes que GitGuardian contacte sont inaccessibles tant que vous ne choisissez pas l'une des options suivantes :
-
Désactiver la protection :
ibmcloud ks vpc outbound-traffic-protection disable --cluster <cluster-name> -
La conserver et ajouter des règles de trafic sortant au groupe de sécurité
kube-<cluster-id>pour les destinations requises. IBM Cloud supprime ces règles lorsque vous exécutezibmcloud ks security-group reset. -
La conserver et copier les images GitGuardian dans IBM Cloud Container Registry, qui est accessible depuis le cluster via le réseau privé. Consultez Installation air-gapped pour la configuration du registre privé.
Les bases de données managées et le stockage objet IBM Cloud sont accessibles via le réseau privé dans tous les cas.
Stockage
La classe de stockage par défaut ibmc-vpc-block-10iops-tier est basée sur SSD et
fournit des volumes ReadWriteOnce, ce qui convient à chaque volume que GitGuardian crée,
y compris les volumes ClickHouse.
N'utilisez pas IBM Cloud File Storage pour ClickHouse.
Ingress et TLS
Un Service Kubernetes de type LoadBalancer crée un load balancer VPC IBM Cloud.
Installez un contrôleur ingress tel que ingress-nginx, puis enregistrez le nom d'hôte
du load balancer auprès d'IBM Cloud pour obtenir un nom d'hôte public et un
certificat TLS :
ibmcloud ks nlb-dns create vpc-gen2 --cluster <cluster-name> --lb-host <load-balancer-hostname>
IBM Cloud crée un nom d'hôte <cluster-name>-<hash>-0001.<region>.containers.appdomain.cloud
et stocke son certificat dans un Secret du namespace default. Copiez
ce Secret dans le namespace GitGuardian et référencez-le en tant que
ingress.tls.existingSecret, ou utilisez votre propre domaine et certificat. Consultez
Ingress.
Services managés
- PostgreSQL : IBM Cloud Databases for PostgreSQL
- Redis : IBM Cloud Databases for Redis
- Stockage objet ClickHouse : IBM Cloud Object Storage et sa destination de sauvegarde