IBM Cloud Databases : Redis sur IBM Cloud
Introduction
Pour déployer l'application GitGuardian, une instance Redis est requise. Cette page est dédiée à vous aider à configurer Redis sur IBM Cloud en utilisant IBM Cloud Databases for Redis.
IBM Cloud Databases for Redis est un déploiement Redis standard, et non Redis Cluster, et expose les 16 bases de données logiques sur lesquelles GitGuardian s'appuie.
Haute disponibilité
IBM Cloud Databases for Redis déploie une instance primaire et une réplique derrière un unique endpoint, avec un basculement coordonné par Redis Sentinel du côté d'IBM. Le basculement prend généralement moins de 30 secondes, pendant lesquelles l'application GitGuardian peut rencontrer des erreurs en lecture seule.
Installation
Depuis la console IBM Cloud
Pour créer une instance Redis depuis la console IBM Cloud, nous vous recommandons de suivre la documentation officielle.
Vous devez définir les champs suivants :
- Conservez la
Versionproposée. IBM Cloud provisionne Redis 8.2, que GitGuardian prend en charge. - Définissez les
Service endpointssurPrivate. - Allouez au moins 8 Go de RAM au total (4 Go par membre). Il s'agit de la plus petite allocation acceptée par IBM Cloud.
- Conservez la
maxmemory-policypar défaut (noeviction), que GitGuardian requiert pour sa file d'attente de tâches. - Définissez le mot de passe
adminaprès le provisionnement. Vous devez enregistrer cette valeur car elle est requise pour configurer l'application GitGuardian.
Avec la CLI
ibmcloud resource service-instance-create <instance-name> databases-for-redis standard <region> \
--service-endpoints private \
-p '{"members_host_flavor":"multitenant","members_memory_allocation_mb":"8192","members_disk_allocation_mb":"8192"}'
Avec Terraform
Pour créer une instance Redis avec Terraform, vous avez besoin de la ressource suivante :
En plus des champs requis par Terraform, nous exigeons que les champs suivants soient définis :
service = "databases-for-redis"service_endpoints = "private": gardez l'instance hors de l'internet public.- Conservez la
maxmemory-policypar défaut, à savoirnoeviction.
Authentification et TLS
IBM Cloud Databases for Redis requiert le nom d'utilisateur admin ainsi que son
mot de passe ; l'utilisateur Redis default n'est pas disponible. Définissez le nom d'utilisateur dans la
configuration Redis, ou utilisez une URL de la forme
rediss://admin:<password>@<host>:<port>.
Le TLS est obligatoire. Activez-le dans la configuration GitGuardian et laissez la vérification du certificat serveur désactivée, ce qui est la valeur par défaut :
redis:
main:
user: 'admin'
host: '<instance-id>.<deployment-id>.private.databases.appdomain.cloud'
port: <port>
existingSecret: 'gitguardian-redis-secret'
existingSecretKeys:
password: 'REDIS_PASSWORD'
tls:
enabled: true
requireServerCert: false
Le certificat CA d'IBM Cloud Databases ne comporte pas d'extension Key Usage. Activer
redis.main.tls.requireServerCert fait que l'application GitGuardian le rejette
lors de l'installation. Conservez la valeur par défaut : la connexion reste chiffrée.
Notre installation Helm prend en charge l'authentification Redis depuis IBM Cloud Databases tant qu'elle est gérée via un mécanisme de mot de passe et non via IBM Cloud IAM.