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 à l'aide de 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 un primaire et un réplica 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, période durant laquelle l'application GitGuardian peut rencontrer des erreurs de 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 valeur par défaut de
maxmemory-policy(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.
En utilisant 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"}'
En utilisant Terraform
Pour créer une instance Redis à l'aide de 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 valeur par défaut de
maxmemory-policy:noeviction.
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>.
TLS est obligatoire. Activez-le dans la configuration GitGuardian et gardez 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 amène l'application GitGuardian à le rejeter
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.