Aller au contenu principal

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'appliquent en plus de l'installation Helm habituelle.

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 admin du cluster :

ibmcloud ks cluster config --cluster <cluster-name> --admin

Trafic sortant​

IBM Cloud bloque par défaut tout le trafic sortant des worker nodes des clusters VPC (outbound traffic protection). Les images de conteneurs et les services externes que GitGuardian contacte sont inaccessibles tant que vous n'avez pas choisi 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 sortantes au groupe de sécurité kube-<cluster-id> pour les destinations requises. IBM Cloud supprime ces règles lorsque vous exécutez ibmcloud ks security-group reset.

  • La conserver et répliquer les images GitGuardian dans IBM Cloud Container Registry, qui est accessible depuis le cluster via le réseau privé. Consultez l'installation en environnement air-gapped pour la configuration du registre privé.

Les bases de données managées et le stockage d'objets IBM Cloud sont contactés 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 à tous les volumes créés par GitGuardian, 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 qu'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​