RDS : PostgreSQL sur AWS
Introduction
Pour déployer l'application GitGuardian, une instance PostgreSQL est requise. Cette page est dédiée à vous aider à mettre en place un PostgreSQL sur AWS via RDS.
Haute disponibilité
AWS gère le failover en mettant à jour un enregistrement DNS. Cela permet zéro indisponibilité pour la maintenance planifiée, les mises à niveau et redémarrages.
Installation
Depuis la console AWS
Pour créer un PostgreSQL depuis la console AWS, nous recommandons de suivre la documentation officielle.
Nous recommandons d'utiliser le template Production car il contient des valeurs par défaut sensées
pour un cluster prêt pour la production.
Vous devez définir les champs suivants :
- Assurez-vous que
Multi-AZ deploymentest défini surCreate a standby instance. - Assurez-vous que
Database authentication optionsest défini surPassword authentication. - Définissez
Master Usernameselon votre préférence ou conservez la valeur par défautpostgres. - Définissez le
Master passwordou auto-générez-le. Vous devez sauvegarder cette valeur car elle est nécessaire pour configurer l'application GitGuardian.
Avec Terraform
Pour créer une instance PostgreSQL avec TF, vous avez besoin des ressources suivantes :
En plus des champs requis par Terraform, nous exigeons que les champs suivants soient définis :
engine=postgres: le nom du moteur de base à utiliser pour ce cluster DB.username=<POSTGRES_USERNAME>: nom d'utilisateur du master DB user.password=<POSTGRES_PASSWORD>: mot de passe du master DB user.
Installation de plugins (comme pgvector)
Pour installer un plugin sur RDS, votre utilisateur a besoin du rôle rds_superuser. Ce rôle est accordé sur votre utilisateur master RDS par défaut.
Ce rôle n'est nécessaire que pour l'installation de plugins ; l'utilisateur configuré dans l'application GitGuardian n'a pas besoin de ce rôle.