Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Proxy Amazon RDS pour Aurora
Le proxy Amazon RDS vous permet d’autoriser vos applications à grouper et à partager des connexions de bases de données pour améliorer leur capacité de mise à l’échelle. Le proxy RDS rend les applications plus résistantes aux échecs de base de données en les connectant automatiquement à une instance de base de données de secours tout en préservant les connexions des applications. En utilisant le proxy RDS, vous pouvez appliquer l'authentification AWS Identity and Access Management (IAM) aux clients qui se connectent au proxy, et le proxy peut se connecter aux bases de données à l'aide de l'authentification de base de données IAM ou des informations d'identification stockées dans. AWS Secrets Manager
Avec le proxy RDS, vous pouvez gérer des pics imprévisibles de trafic des bases de données. Ces pics peuvent également occasionner des problèmes liés à la surallocation de connexions ou à la création de connexions à un rythme élevé. Le proxy RDS établit un groupe de connexions de bases de données et réutilise les connexions de ce groupe. Cette approche évite la surcharge de mémoire et d’UC liée à l’ouverture d’une nouvelle connexion de base de données à chaque fois. Pour protéger une base de données contre cette congestion, vous pouvez contrôler le nombre de connexions créées.
Le proxy RDS met en file d’attente ou limite les connexions des applications qui ne peuvent pas être servies immédiatement à partir du groupe de connexions. Bien que les latences puissent augmenter, votre application peut continuer à évoluer sans échouer brusquement ou surcharger la base de données. Si les demandes de connexion dépassent les limites que vous définissez, le proxy RDS rejette les connexions des applications (en d’autres termes, il déleste la charge). Parallèlement, il conserve des performances prévisibles pour la charge pouvant être desservie par RDS avec la capacité disponible.
Vous pouvez réduire la surcharge pour traiter des informations d’identification et établir une connexion sécurisée pour chaque nouvelle connexion. Le proxy RDS peut gérer une partie de ce travail pour le compte de la base de données.
Le proxy RDS est entièrement compatible avec les versions de moteur qu’il prend en charge. Vous pouvez activer le proxy RDS pour la plupart des applications sans modifier le code. Pour obtenir la liste des versions de moteur prises en charge, consultez Régions et moteurs de base de données Aurora pris en charge pour Proxy Amazon RDS.
Disponibilité des régions et des versions
Pour plus d'informations sur la prise en charge des versions du moteur de base de données et la disponibilité du proxy RDS dans un environnement donné Région AWS, consultezRégions et moteurs de base de données Aurora pris en charge pour Proxy Amazon RDS.
Quotas et limites pour le proxy RDS
Voici les quotas et les limites qui s’appliquent au proxy RDS :
-
Chaque Compte AWS identifiant est limité à 20 proxies. Si votre application nécessite davantage de proxies, demandez une augmentation via la page Service Quotas dans la AWS Management Console. Sur la page Service Quotas, sélectionnez Amazon Relational Database Service (Amazon RDS) et localisez les proxys pour demander une augmentation de quota. AWS peut automatiquement augmenter votre quota ou attendre l’examen de votre demande par Support.
-
Chaque proxy peut avoir jusqu'à 200 secrets associés à Secrets Manager, limitant ainsi les connexions à un maximum de 200 comptes utilisateurs différents lors de l'utilisation de secrets.
-
Chaque proxy a un point de terminaison par défaut. Vous pouvez également ajouter jusqu’à 20 points de terminaison de proxy pour chaque proxy. Vous pouvez créer, afficher, modifier et supprimer ces points de terminaison.
-
Dans un cluster Aurora, toutes les connexions qui utilisent le point de terminaison proxy par défaut sont gérées par l’instance de rédacteur Aurora. Pour effectuer l’équilibrage des charges de travail exigeantes en lecture, vous pouvez créer un point de terminaison en lecture seule pour un proxy. Ce point de terminaison transmet des connexions au point de terminaison du lecteur du cluster. De cette façon, vos connexions proxy peuvent tirer avantage de l’évolutivité de lecture Aurora. Pour plus d’informations, consultez Présentation des points de terminaison proxy.
-
Vous pouvez utiliser un proxy RDS avec des clusters Aurora sans serveur v2, mais pas avec des clusters Aurora sans serveur v1.
-
Votre proxy RDS doit se trouver dans le même cloud privé virtuel (VPC) que la base de données. Le proxy peut ne pas être accessible au public, contrairement à la base de données. Par exemple, si vous effectuez un prototypage de votre base de données sur un hôte local, vous ne pouvez pas vous connecter à votre proxy à moins de mettre en place les exigences de réseau nécessaires pour autoriser la connexion au proxy. C’est le cas, car votre hôte local se trouve en dehors du VPC du proxy.
Note
Pour les clusters de bases de données Aurora, vous pouvez activer l’accès entre VPC. Pour ce faire, créez un point de terminaison supplémentaire pour un proxy et spécifiez un VPC, des sous-réseaux et des groupes de sécurité différents avec ce point de terminaison. Pour plus d’informations, consultez Accès aux bases de données Aurora via VPCs.
-
Vous ne pouvez pas utiliser le proxy RDS avec un VPC dont la location est définie sur
dedicated. -
Pour les types de réseaux de points de IPv6 terminaison, configurez votre VPC et vos sous-réseaux pour qu'ils soient pris en charge uniquement. IPv6 Pour les deux types de réseaux de connexion IPv4 et ceux de connexion IPv6 cible, configurez votre VPC et vos sous-réseaux pour qu'ils prennent en charge le mode double pile.
-
Si vous utilisez le proxy RDS avec un cluster d'instance de base de données sur lequel l'authentification IAM est activée, le proxy peut se connecter à la base de données à l'aide de l'authentification IAM ou des informations d'identification stockées dans Secrets Manager. Les clients qui se connectent au proxy doivent s'authentifier à l'aide des informations d'identification IAM. Pour obtenir des instructions de configuration détaillées, consultez Configuration des informations d'identification de base de données pour le proxy RDS et Configuration de l’authentification IAM pour RDS Proxy
-
Vous ne pouvez pas utiliser le proxy RDS avec DNS personnalisé lorsque vous utilisez la validation du nom d’hôte SSL.
-
Chaque proxy peut être associé à un cluster de bases de données unique. Toutefois, vous pouvez associer plusieurs proxies au même cluster de bases de données.
Le proxy épingle la session à la connexion en cours si la taille de texte de l’instruction est supérieure à 16 ko.
-
Certaines régions ont des restrictions de zone de disponibilité (AZ) à prendre en compte lors de la création de votre proxy. La région USA Est (Virginie du Nord) ne prend pas en charge le proxy RDS dans la zone de disponibilité
use1-az3. La région USA Ouest (Californie du Nord) ne prend pas en charge le proxy RDS dans la zone de disponibilitéusw1-az2. Lorsque vous sélectionnez des sous-réseaux lors de la création de votre proxy, assurez-vous de ne pas sélectionner de sous-réseaux dans les zones de disponibilité mentionnées ci-dessus. -
Actuellement, le proxy RDS ne prend en charge aucune clé de contexte de condition globale.
Pour plus d’informations sur les clés de contexte de condition globale, consultez Clés de contexte de condition globales AWS dans le Guide de l’utilisateur IAM.
-
Vous ne pouvez pas utiliser le proxy RDS avec RDS Custom for SQL Server.
-
Pour refléter toute modification du groupe de paramètres de base de données sur votre proxy, un redémarrage de l’instance est nécessaire même si vous avez choisi d’appliquer vos modifications immédiatement. Pour les paramètres au niveau du cluster, un redémarrage à l’échelle du cluster est requis.
-
Votre proxy crée automatiquement l’utilisateur de base de données
rdsproxyadminlorsque vous enregistrez une cible proxy. Il s’agit d’un utilisateur protégé essentiel à la fonctionnalité du proxy. Vous devez éviter d’altérer l’utilisateurrdsproxyadminde quelque manière que ce soit. La suppression ou la modification de l’utilisateurrdsproxyadminou de ses autorisations peut entraîner l’indisponibilité totale du proxy pour votre application.
Pour connaître les limites supplémentaires pour chaque moteur de base de données, consultez les sections suivantes :
Limites supplémentaires pour Aurora MySQL
Les limites supplémentaires suivantes s’appliquent au proxy RDS avec les bases de données Aurora MySQL :
-
La prise en charge du proxy RDS pour l’authentification
caching_sha2_passwordnécessite une connexion sécurisée (TLS). -
La prise en charge du proxy RDS pour
caching_sha2_passwordest connue pour présenter des problèmes de compatibilité avec certaines versions du pilote go-sql. -
Lorsque vous utilisez le pilote MySQL 8.4 C, l’API
mysql_stmt_bind_named_parampeut former des paquets mal formés si le nombre de paramètres dépasse le nombre d’espaces réservés dans une instruction préparée. Cela entraîne des réponses incorrectes. Pour plus d’informations, consultez Signalement de bogue MySQL. -
Actuellement, tous les proxies écoutent sur le port 3306 pour MySQL. Les proxys se connectent toujours à votre base de données à l’aide du port spécifié dans les paramètres de la base de données.
-
Vous ne pouvez pas utiliser le proxy RDS avec des bases de données MySQL autogérées dans EC2 des instances.
-
Vous ne pouvez pas utiliser le proxy RDS avec une instance de base de données RDS for MySQL dont le paramètre
read_onlydans son groupe de paramètres de base de données est défini sur1. -
Le proxy RDSvne prend pas en charge le mode compressé de MySQL. Par exemple, il ne prend pas en charge la compression utilisée par les options
--compressou-Cde la commandemysql. -
Les connexions à la base de données qui traitent une commande
GET DIAGNOSTICpeuvent renvoyer des informations inexactes lorsque le proxy RDS réutilise la même connexion à la base de données pour exécuter une autre requête. Cela peut se produire quand le proxy RDS multiplexe les connexions à la base de données. -
Certaines instructions et fonctions SQL, telles que
SET LOCAL, peuvent modifier l’état de connexion sans provoquer d’épinglage. Pour connaître le comportement d’épinglage le plus récent, consultez Contournement de l’épinglage d’un proxy RDS. -
L’utilisation de la fonction
ROW_COUNT()dans une requête à instructions multiples n’est pas prise en charge. -
Le proxy RDS ne prend pas en charge les applications clientes qui ne peuvent pas gérer plusieurs messages de réponse dans un seul enregistrement TLS.
-
Le proxy RDS ne prend pas en charge les mots de passe doubles MySQL.
-
Le proxy RDS peut ne pas fonctionner comme prévu lorsque vous configurez le paramètre
init_connectdans votre groupe de paramètres de base de données RDS pour définir les variables d’état de session. Définissez plutôt la requête d’initialisation pour que votre proxy exécute les instructions d’initialisation de session lorsque vous utilisez le proxy pour vous connecter à votre base de données.
Important
Pour les proxies associés aux bases de données MySQL, ne définissez pas le paramètre de configuration sql_auto_is_null sur true ou sur une valeur différente de zéro dans la requête d’initialisation. Cela pourrait entraîner un comportement incorrect de l’application.
Limites supplémentaires pour Aurora PostgreSQL
Les limites supplémentaires suivantes s’appliquent au proxy RDS avec les bases de données Aurora PostgreSQL :
Le proxy RDS ne prend pas en charge les filtres d’épinglage de session pour PostgreSQL.
-
Actuellement, tous des proxies écoutent sur le port 5432 pour PostgreSQL.
-
Pour PostgreSQL, RDS Proxy ne prend actuellement pas en charge l’annulation d’une requête d’un client en émettant un
CancelRequest. C’est le cas par exemple lorsque vous annulez une requête longue dans une session psql interactive à l’aide de Ctrl+C. -
Les résultats de la fonctionnalité PostgreSQL lastval
ne sont pas toujours précis. Pour contourner ce problème, utilisez l’instruction INSERT avec la clause RETURNING. Le proxy RDS ne prend actuellement pas en charge le mode de réplication de streaming.
-
La
postgresbase de données par défaut doit exister sur l'instance RDS pour PostgreSQL pour que le proxy RDS fonctionne. Ne supprimez pas cette base de données même si votre application utilise des bases de données différentes. -
Si vous utilisez
ALTER ROLEpour modifier le rôle de l’utilisateur avecSET ROLE, les connexions suivantes entre cet utilisateur et le proxy risquent de ne pas utiliser ce paramètre de rôle, si ces connexions sont épinglées. Pour éviter cela, lorsque vous utilisez un proxy, utilisezSET ROLEdans la requête d’initialisation du proxy. Pour plus d’informations, consultez Requête d’initialisation dans Création d’un proxy pour Amazon Aurora.
Important
Pour des proxies existants avec des bases de données PostgreSQL, si vous modifiez l’authentification de la base de données pour utiliser uniquement SCRAM, le proxy devient indisponible pendant 60 secondes maximum. Pour éviter ce problème, effectuez l’une des actions suivantes :
Veillez à ce que la base de données permette à la fois l’authentification
SCRAMetMD5.Pour utiliser uniquement l’authentification
SCRAM, créez un nouveau proxy, migrez le trafic de votre application vers ce nouveau proxy, puis supprimez le proxy précédemment associé à la base de données.