6.65 Les services RDS, AURORA ET ELASTICACHE
AWS RDS (Relational Database Service) est un service managé de bases de données relationnelles pour les applications utilisant du SQL transactionnel. Il permet de créer une base dans le cloud entièrement maintenue et administrée par AWS. Les moteurs supportés sont PostgreSQL, MySQL, MariaDB (basé sur MySQL), Oracle, Microsoft SQL Server et Aurora — la base propriétaire d'Amazon, qui aura sa propre section de cours.
Pourquoi utiliser RDS plutôt que d'installer un moteur SQL sur une EC2 ? Parce que RDS est un service entièrement géré par AWS : approvisionnement automatique, maintien en conditions opérationnelles de l'OS, mises à jour et patches, sauvegardes continues, restauration à un instant T via Point-in-Time Recovery (PITR), dashboard de supervision, support des read replicas, déploiements multi-AZ pour la haute dispo et le DRP, et mises à jour de sécurité automatisées.
Scaling et stockage
- Scaling vertical : augmenter la taille de l'instance ou de l'EBS sous-jacent.
- Scaling horizontal en lecture : ajouter des read replicas.
- Stockage sous-jacent sur EBS gp2 ou io1.
- Pas d'accès SSH à l'instance (c'est un service managé).
- Visibilité limitée à la base de données, pas à l'OS.
Côté sauvegardes, RDS les active par défaut. Un dump complet est réalisé chaque jour pendant la maintenance window, et les logs de transactions sont sauvegardés toutes les 5 minutes. Cela permet une restauration point in time jusqu'à 5 minutes près, sur une fenêtre de rétention par défaut de 7 jours, extensible jusqu'à 35 jours.
Différents des backups automatiques, les snapshots manuels sont déclenchés à la demande par l'utilisateur. Leur intérêt principal : ils peuvent être conservés indéfiniment, bien au-delà des 35 jours autorisés pour les sauvegardes automatiques. C'est utile pour garder un point de restauration à 6 mois, 1 an ou plus, par exemple avant une migration majeure. La section suivante détaillera les répliques en lecture seule et le multi-AZ, qui sont les piliers de la disponibilité dans RDS, ainsi que les services Aurora et ElastiCache (cache mémoire pour Redis/Memcached).