Utilisation des points de terminaison du proxy Amazon RDS - Amazon Relational Database Service

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.

Utilisation des points de terminaison du proxy Amazon RDS

En savoir plus sur les points de terminaison pour RDS Proxy et la façon de les utiliser. En utilisant des points de terminaison proxy, vous pouvez tirer parti des fonctionnalités suivantes :

  • Vous pouvez utiliser plusieurs points de terminaison avec un proxy pour surveiller et dépanner de façon indépendante les connexions provenant de différentes applications.

  • Vous pouvez utiliser un point de terminaison entre VPC pour autoriser l'accès aux bases de données d'un VPC à partir de ressources telles que des instances Amazon EC2 dans un autre VPC.

Présentation des points de terminaison proxy

Travailler avec des points de terminaison RDS Proxy implique les mêmes types de procédures qu'avec les points de terminaison d'instances RDS. Pour vous familiariser avec les points de terminaison RDS, consultez les informations dans Connexion à une instance de base de données exécutant le moteur de base de données MySQL et Connexion à une instance de base de données exécutant le moteur de base de données PostgreSQL.

Pour un point de terminaison proxy que vous créez, vous pouvez également associer le point de terminaison à un Virtual Private Cloud (VPC) différent de celui utilisé par le proxy lui-même. Cette action vous permet de vous connecter au proxy à partir d'un VPC différent, par exemple un VPC utilisé par une autre application au sein de votre organisation.

Pour plus d'informations sur les limites associées aux points de terminaison proxy, consultez Limites pour les points de terminaison proxy.

Dans les journaux RDS Proxy, chaque entrée est préfixée avec le nom du point de terminaison proxy associé. Ce nom peut être celui que vous avez spécifié pour un point de terminaison défini par l'utilisateur. Il peut également s'agir du nom spécial du point default de terminaison par défaut d'un proxy qui exécute des demandes de lecture/écriture.

Chaque point de terminaison du proxy possède son propre ensemble de CloudWatch mesures. Vous pouvez surveiller les métriques pour tous les points de terminaison d'un proxy. Vous pouvez également surveiller les métriques pour un point de terminaison spécifique, ou pour tous les points de terminaison en lecture/écriture ou en lecture seule d'un proxy. Pour plus d'informations, consultez Surveillance des métriques du proxy RDS avec Amazon CloudWatch.

Un point de terminaison de proxy utilise le même mécanisme d'authentification que le proxy auquel il est associé. RDS Proxy configure automatiquement des permissions et des autorisations pour le point de terminaison défini par l'utilisateur, conformément aux propriétés du proxy associé.

Points de terminaison proxy de cluster de base de données multi-AZ

Par défaut, le point de terminaison auquel vous vous connectez lorsque vous utilisez RDS Proxy avec un cluster de base de données multi-AZ a une capacité de lecture/écriture. Par conséquent, ce point de terminaison envoie toutes les demandes à l'instance d'écriture du cluster. Toutes ces connexions sont prises en compte dans la valeur max_connections de l'instance d'écriture. Si votre proxy est associé à un cluster de base de données multi-AZ, vous pouvez créer des points de terminaison supplémentaires en lecture/écriture ou en lecture seule pour ce proxy.

Vous pouvez utiliser un point de terminaison en lecture seule avec votre proxy pour les requêtes en lecture seule. Vous le faites de la même façon que vous utilisez le point de terminaison de lecteur pour un cluster de base de données multi-AZ. Cela vous permet de tirer avantage de l'évolutivité de lecture d'un cluster de base de données multi-AZ avec une ou plusieurs instances de base de données de lecteur. Vous pouvez exécuter plus de requêtes et créer plus de connexions simultanément à l'aide d'un point de terminaison en lecture seule et en ajoutant d'autres instances de base de données de lecteur à votre cluster de base de données multi-AZ selon vos besoins. Ces points de terminaison du lecteur peuvent améliorer la capacité de mise à l'échelle de lecture de vos applications exigeantes en requêtes. Les points de terminaison du lecteur peuvent également améliorer la disponibilité de vos connexions si une instance de base de données de lecteur dans votre cluster devient indisponible.

Points de terminaison de lecteur pour les clusters de base de données multi-AZ

Avec RDS Proxy, vous pouvez créer et utiliser des points de terminaison de lecteur. Cependant, ces points de terminaison ne fonctionnent que pour des proxies associés à des clusters de base de données multi-AZ. Si vous utilisez l'interface de ligne de commande (CLI) ou l'API RDS, vous pouvez voir l'attribut TargetRole avec une valeur de READ_ONLY. Vous pouvez tirer parti de ces proxys en modifiant la cible d'un proxy d'une instance de base de données RDS à un cluster de base de données multi-AZ.

Vous pouvez créer des points de terminaison en lecture seule appelés points de terminaison de lecteur et y accéder lorsque vous utilisez RDS Proxy avec des clusters de base de données multi-AZ.

Amélioration de la disponibilité des applications par les points de terminaison du lecteur

Il peut arriver qu'une instance de lecteur de votre cluster devienne indisponible. Dans ce cas, les connexions qui utilisent un point de terminaison de lecteur d'un proxy de base de données peuvent récupérer plus rapidement que celles qui utilisent le point de terminaison de lecteur d'un cluster de base de données multi-AZ. RDS Proxy achemine les connexions uniquement vers l'instance de lecteur disponible du cluster. La mise en cache DNS ne provoque pas de retard lorsqu'une instance devient indisponible.

Si la connexion est multiplexée, RDS Proxy dirige les requêtes suivantes vers une autre instance de lecteur sans aucune interruption de votre application. Si une instance de lecteur est indisponible, toutes les connexions client au point de terminaison de cette instance sont fermées.

Si la connexion est épinglée, la requête suivante sur la connexion retourne une erreur. Toutefois, votre application peut se reconnecter immédiatement au même point de terminaison du proxy. RDS Proxy achemine la connexion vers une autre instance de base de données du lecteur qui se trouve dans l'état available. Lorsque vous vous reconnectez manuellement, RDS Proxy ne vérifie pas le décalage de réplication entre l'ancienne instance de lecteur et la nouvelle.

Si votre cluster de base de données multi-AZ n'a pas d'instances de lecteur disponibles, RDS Proxy tente de se connecter à un point de terminaison de lecteur disponible. Si aucune instance de lecteur n'est disponible pendant la période de délai d'expiration de l'emprunt de connexion, la tentative de connexion échoue. Si une instance de lecteur devient disponible, la tentative de connexion aboutit.

Amélioration de la capacité de mise à l'échelle des requêtes par les points de terminaison du lecteur

Les points de terminaison de lecteur d'un proxy peuvent améliorer l'évolutivité des requêtes du cluster de base de données multi-AZ de la manière suivante :

  • Dans la mesure du possible, RDS Proxy utilise la même instance de base de données de lecteur pour tous les problèmes de requêtes utilisant une connexion de point de terminaison de lecteur particulière. De cette façon, un ensemble de requêtes associées sur les mêmes tables peut tirer avantage de la mise en cache, de l'optimisation du plan, etc., sur une instance de base de données particulière.

  • Si une instance de base de données de lecteur devient indisponible, l'effet sur votre application sera différent selon que la séance est multiplexée ou épinglée. Si la séance est multiplexée, RDS Proxy achemine toutes les requêtes ultérieures vers une autre instance de base de données de lecteur sans que vous ayez à intervenir. Si la séance est épinglée, votre application obtient une erreur et doit se reconnecter. Vous pouvez vous reconnecter au point de terminaison du lecteur immédiatement et RDS Proxy achemine la connexion vers une instance de base de données de lecteur disponible. Pour plus d'informations sur le multiplexage et l'épinglage des séances proxy, consultez Présentation des concepts RDS Proxy.

Accès à des bases de données RDS dans des VPC

Par défaut, les composants de votre pile technologique RDS sont tous dans le même VPC Amazon. Par exemple, supposons qu'une application s'exécutant sur une instance Amazon EC2 se connecte à une instance de base de données Amazon RDS. Dans ce cas, le serveur d'applications et la base de données doivent se trouver tous les deux dans le même VPC.

Avec RDS Proxy, vous pouvez configurer l'accès à une instance de base de données Amazon RDS d'un cluster de bases dans un VPC à partir des ressources d'un autre VPC, telles que les instances EC2. Par exemple, votre organisation peut avoir plusieurs applications qui accèdent aux mêmes ressources de base de données. Chaque application peut se trouver dans son propre VPC.

Pour activer l'accès entre VPC, vous créez un nouveau point de terminaison pour le proxy. Le proxy lui-même réside dans le même VPC que l'instance de base de données Amazon RDS. Toutefois, le point de terminaison entre VPC réside dans l'autre VPC, de même que les autres ressources telles que les instances EC2. Le point de terminaison entre VPC est associé à des sous-réseaux et des groupes de sécurité du même VPC que les instances EC2 et les autres ressources. Ces associations vous permettent de vous connecter au point de terminaison à partir des applications qui, autrement, ne peuvent pas accéder à la base de données en raison des restrictions de VPC.

Les étapes suivantes vous expliquent comment créer et accéder à un point de terminaison entre VPC via RDS Proxy :

  1. Créez deux VPC ou choisissez-en deux que vous utilisez déjà pour RDS. Chaque VPC doit disposer de ses propres ressources réseau associées, telles qu'une passerelle Internet, des tables de routage, des sous-réseaux et des groupes de sécurité. Si vous n'avez qu'un seul VPC, vous pouvez consulter Mise en route avec Amazon RDS à propos des étapes de configuration d'un autre VPC à suivre pour utiliser RDS avec succès. Vous pouvez également examiner votre VPC existant dans la console Amazon EC2 pour voir les types de ressources à connecter entre elles.

  2. Créez un proxy de base de données associé à l'instance de base de données Amazon RDS à laquelle vous voulez vous connecter. Suivez la procédure décrite dans Création d'un RDS Proxy.

  3. Sur la page Details (Détails) de votre proxy dans la console RDS, dans la section Proxy endpoints (Points de terminaison proxy), cliquez sur Create endpoint (Créer un point de terminaison). Suivez la procédure décrite dans Création d'un point de terminaison proxy.

  4. Choisissez si le point de terminaison entre VPC doit être en lecture/écriture ou en lecture seule.

  5. Au lieu d'accepter la valeur par défaut du même VPC que l'instance de base de données RDS, sélectionnez un autre VPC. Ce VPC doit se trouver dans la même région AWS que le VPC dans lequel se trouve le proxy.

  6. Maintenant, au lieu d'accepter les valeurs par défaut pour les sous-réseaux et les groupes de sécurité du même VPC que l'instance de base de données RDS, effectuez de nouvelles sélections. Basez vos sélections sur les sous-réseaux et des groupes de sécurité du VPC que vous avez sélectionné.

  7. Vous n'avez pas besoin de modifier les paramètres des secrets Secrets Manager. Les mêmes informations d'identification fonctionnent pour tous les points de terminaison de votre proxy, indépendamment du VPC dans lequel réside chaque point de terminaison.

  8. Attendez que le nouveau point de terminaison atteigne l'état Available (Disponible).

  9. Notez le nom complet du point de terminaison. Il s'agit de la valeur se terminant par Region_name.rds.amazonaws.com que vous fournissez dans le cadre de la chaîne de connexions pour votre application de base de données.

  10. Accédez au nouveau point de terminaison à partir d'une ressource située dans le même VPC que le point de terminaison. Un moyen simple de tester ce processus consiste à créer une instance EC2 dans ce VPC. Connectez-vous ensuite à l'instance EC2 et exécutez les psql commandes mysql or pour vous connecter en utilisant la valeur du point de terminaison dans votre chaîne de connexion.

Création d'un point de terminaison proxy

Pour créer un point de terminaison proxy
  1. Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans le panneau de navigation, sélectionnez Proxies.

  3. Cliquez sur le nom du proxy pour lequel vous voulez créer un nouveau point de terminaison.

    La page de détails concernant ce proxy apparaît.

  4. Dans la section Proxy endpoints (Points de terminaison proxy), cliquez sur Create proxy endpoint (Créer un point de terminaison proxy).

    La fenêtre Create proxy endpoint (Créer un point de terminaison proxy) apparaît.

  5. Pour Proxy endpoint name (Nom du point de terminaison proxy), saisissez le nom descriptif de votre choix.

  6. Pour Target role (Rôle cible), choisissez si le point de terminaison doit être en lecture/écriture ou en lecture seule.

    Les connexions qui utilisent des points de terminaison en lecture/écriture peuvent effectuer toutes sortes d'opérations, telles que des instructions en langage de définition des données (DDL), des instructions en langage de manipulation des données (DML) et des requêtes. Ces points de terminaison se connectent toujours à l'instance principale du cluster de base de données RDS. Vous pouvez utiliser des points de terminaison de lecteur/écriture pour les opérations générales de base de données lorsque vous utilisez un seul point de terminaison dans votre application. Vous pouvez également utiliser des points de terminaison en lecture/écriture pour les opérations administratives, les applications de traitement des transactions en ligne (OLTP) et les tâches extract-transform-load (ETL).

    Les connexions qui utilisent un point de terminaison en lecture seule ne peuvent effectuer que des requêtes. RDS Proxy peut utiliser l'une des instances de lecteur pour chaque connexion au point de terminaison. De cette façon, une application exigeante en requêtes peut tirer avantage de la capacité de clustering du cluster de base de données multi-AZ. Ces connexions en lecture seule n'imposent aucune surcharge à l'instance principale du cluster. Vos requêtes de reporting et d'analyse ne ralentissent donc pas les opérations d'écriture de vos applications OLTP.

  7. Pour Virtual Private Cloud (VPC), choisissez la valeur par défaut pour accéder au point de terminaison à partir des mêmes instances EC2 ou d'autres ressources que celles utilisées normalement pour accéder au proxy ou à sa base de données associée. Pour configurer l'accès entre VPC pour ce proxy, choisissez un VPC autre que le VPC par défaut. Pour plus d'informations sur l'accès entre VPC, consultez Accès à des bases de données RDS dans des VPC.

  8. Pour Subnets (Sous-réseaux), RDS Proxy renseigne par défaut les mêmes sous-réseaux que le proxy associé. Pour restreindre l'accès au point de terminaison à une partie seulement de la plage d'adresses du VPC pouvant s'y connecter, supprimez un ou plusieurs sous-réseaux.

  9. Pour Groupes de sécurité VPC, vous pouvez sélectionner un groupe de sécurité existant ou en créer un. RDS Proxy renseigne par défaut le ou les mêmes groupes de sécurité que le proxy associé. Si les règles d'entrée et de sortie du proxy sont appropriées pour ce point de terminaison, conservez le choix par défaut.

    Si vous choisissez de créer un nouveau groupe de sécurité, donnez-lui un nom sur cette page. Modifiez ensuite les paramètres du groupe de sécurité depuis la console EC2.

  10. Cliquez sur Create proxy endpoint (Créer un point de terminaison proxy).

Pour créer un point de terminaison proxy, utilisez la AWS CLI create-db-proxy-endpointcommande.

Incluez les paramètres requis suivants :

  • --db-proxy-name value

  • --db-proxy-endpoint-name value

  • --vpc-subnet-ids list_of_ids. Séparez les ID de sous-réseau par des espaces. Vous n'avez pas à spécifier l'ID du VPC lui-même.

Vous pouvez également ajouter les paramètres facultatifs suivants :

  • --target-role { READ_WRITE | READ_ONLY }. Ce paramètre a pour valeur par défaut READ_WRITE. Lorsque le proxy est associé à un cluster de base de données multi-AZ, un cluster contenant uniquement une instance de base de données d'écriture, vous ne pouvez pas le spécifierREAD_ONLY. Pour plus d'informations sur l'utilisation prévue des points de terminaison en lecture seule avec les de bases de données multi-AZ, consultez. Points de terminaison de lecteur pour les clusters de base de données multi-AZ

  • --vpc-security-group-ids value. Séparez les ID de groupe de sécurité par des espaces. Si vous omettez ce paramètre, RDS Proxy utilise le groupe de sécurité par défaut pour le VPC. RDS Proxy détermine le VPC en fonction des ID de sous-réseau que vous spécifiez pour le paramètre --vpc-subnet-ids.

Exemple

L'exemple suivant crée un point de terminaison proxy nommé my-endpoint.

Pour LinuxmacOS, ou Unix :

aws rds create-db-proxy-endpoint \ --db-proxy-name my-proxy \ --db-proxy-endpoint-name my-endpoint \ --vpc-subnet-ids subnet_id subnet_id subnet_id ... \ --target-role READ_ONLY \ --vpc-security-group-ids security_group_id ]

Dans Windows :

aws rds create-db-proxy-endpoint ^ --db-proxy-name my-proxy ^ --db-proxy-endpoint-name my-endpoint ^ --vpc-subnet-ids subnet_id_1 subnet_id_2 subnet_id_3 ... ^ --target-role READ_ONLY ^ --vpc-security-group-ids security_group_id

Pour créer un point de terminaison proxy, utilisez l'action CreateDB ProxyEndpoint de l'API RDS.

Affichage des points de terminaison proxy

Pour afficher les détails d'un point de terminaison proxy
  1. Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans le panneau de navigation, sélectionnez Proxies.

  3. Dans la liste, sélectionnez le proxy dont vous souhaitez afficher le point de terminaison. Cliquez sur le nom du proxy pour afficher la page contenant ses détails.

  4. Dans la section Proxy endpoints (Points de terminaison proxy), sélectionnez le point de terminaison que vous voulez afficher. Cliquez sur son nom pour afficher la page contenant ses détails.

  5. Examinez les paramètres dont les valeurs vous intéressent. Vous pouvez vérifier les propriétés suivantes :

    • Indique si le point de terminaison est en lecture/écriture ou en lecture seule.

    • Adresse de point de terminaison que vous utilisez dans une chaîne de connexions à la base de données.

    • Le VPC, les sous-réseaux et les groupes de sécurité associés au point de terminaison.

Pour afficher un ou plusieurs points de terminaison du proxy, utilisez la AWS CLI describe-db-proxy-endpointscommande.

Vous pouvez ajouter les paramètres facultatifs suivants :

  • --db-proxy-endpoint-name

  • --db-proxy-name

L'exemple suivant décrit le point de terminaison proxy my-endpoint.

Exemple

Pour LinuxmacOS, ou Unix :

aws rds describe-db-proxy-endpoints \ --db-proxy-endpoint-name my-endpoint

Dans Windows :

aws rds describe-db-proxy-endpoints ^ --db-proxy-endpoint-name my-endpoint

Pour décrire un ou plusieurs points de terminaison du proxy, utilisez l'opération ProxyEndpointsDescribeDB de l'API RDS.

Modification d'un point de terminaison proxy

Pour modifier un ou plusieurs points de terminaison proxy
  1. Connectez-vous à la AWS Management Console et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/.

  2. Dans le panneau de navigation, sélectionnez Proxies.

  3. Dans la liste, sélectionnez le proxy dont vous voulez modifier le point de terminaison. Cliquez sur le nom du proxy pour afficher son

  4. Dans la section Proxy endpoints (Points de terminaison proxy), sélectionnez le point de terminaison que vous voulez modifier. Vous pouvez le sélectionner dans la liste ou cliquer sur son nom pour afficher la page contenant ses détails.

  5. Sur la page de détails du proxy, dans la section Proxy endpoints (Points de terminaison proxy), cliquez sur Edit (Modifier). Ou, sur la page de détails du point de terminaison du proxy, pour Actions, sélectionnez Modifier.

  6. Modifiez les valeurs des paramètres que vous souhaitez remplacer.

  7. Sélectionnez Save Changes.

Pour modifier un point de terminaison du proxy, utilisez la AWS CLI modify-db-proxy-endpointcommande avec les paramètres obligatoires suivants :

  • --db-proxy-endpoint-name

Précisez les modifications apportées aux propriétés du point de terminaison à l'aide d'un ou plusieurs des paramètres suivants :

  • --new-db-proxy-endpoint-name

  • --vpc-security-group-ids. Séparez les ID de groupe de sécurité par des espaces.

L'exemple suivant renomme le point de terminaison proxy my-endpoint à new-endpoint-name.

Exemple

Pour LinuxmacOS, ou Unix :

aws rds modify-db-proxy-endpoint \ --db-proxy-endpoint-name my-endpoint \ --new-db-proxy-endpoint-name new-endpoint-name

Dans Windows :

aws rds modify-db-proxy-endpoint ^ --db-proxy-endpoint-name my-endpoint ^ --new-db-proxy-endpoint-name new-endpoint-name

Pour modifier un point de terminaison proxy, utilisez l'opération ProxyEndpointModifyDB de l'API RDS.

Suppression d'un point de terminaison proxy

Vous pouvez supprimer un point de terminaison pour votre proxy de la façon suivante, depuis la console.

Note

Vous ne pouvez pas supprimer le point de terminaison du proxy par défaut que RDS Proxy crée automatiquement pour chaque proxy.

Lorsque vous supprimez un proxy, RDS Proxy supprime automatiquement tous les points de terminaison qui lui sont associés.

Pour supprimer un point de terminaison proxy en utilisant AWS Management Console
  1. Dans le panneau de navigation, sélectionnez Proxies.

  2. Dans la liste, sélectionnez le proxy dont vous voulez supprimer un point de terminaison. Cliquez sur le nom du proxy pour afficher la page contenant ses détails.

  3. Dans la section Proxy endpoints (Points de terminaison proxy), sélectionnez le point de terminaison que vous voulez supprimer. Vous pouvez sélectionner un ou plusieurs points de terminaison dans la liste ou cliquer sur le nom d'un seul point de terminaison pour afficher sa page de détails.

  4. Sur la page de détails du proxy, dans la section Proxy endpoints (Points de terminaison proxy), cliquez sur Delete (Supprimer). Ou, sur la page de détails du point de terminaison du proxy, pour Actions, choisissez Supprimer.

Pour supprimer un point de terminaison proxy, exécutez la delete-db-proxy-endpointcommande avec les paramètres obligatoires suivants :

  • --db-proxy-endpoint-name

La commande suivante supprime le point de terminaison proxy nommé my-endpoint.

Pour LinuxmacOS, ou Unix :

aws rds delete-db-proxy-endpoint \ --db-proxy-endpoint-name my-endpoint

Dans Windows :

aws rds delete-db-proxy-endpoint ^ --db-proxy-endpoint-name my-endpoint

Pour supprimer un point de terminaison proxy avec l'API RDS, exécutez l'opération DeleteDB. ProxyEndpoint Spécifiez le nom du point de terminaison proxy pour le paramètre DBProxyEndpointName.

Limites pour les points de terminaison proxy

Les points de terminaison du proxy RDS présentent les limites suivantes :

  • Chaque proxy possède un point de terminaison par défaut que vous pouvez modifier, mais pas créer ou supprimer.

  • Le nombre maximal de points de terminaison définis par l'utilisateur pour un proxy est de 20. Un proxy peut ainsi avoir jusqu'à 21 points de terminaison : le point de terminaison par défaut, plus 20 que vous créez.

  • Lorsque vous associez des points de terminaison supplémentaires à un proxy, RDS Proxy détermine automatiquement les instances de base de données à utiliser dans votre cluster pour chaque point de terminaison.