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.
Création d'un proxy pour )
Vous pouvez utiliser Amazon RDS Proxy pour améliorer l'évolutivité, la disponibilité et la sécurité de vos applications de base de données en regroupant les connexions et en gérant les basculements de base de données de manière plus efficace. Cette rubrique explique comment créer un proxy. Avant de commencer, assurez-vous que votre base de données répond aux conditions requises, notamment les autorisations IAM et la configuration VPC.
Vous pouvez employer un proxy avec un cluster de base de données Aurora MySQL ou Aurora PostgreSQL.
Pour créer un proxy
-
Connectez-vous à la console Amazon RDS AWS Management Console et ouvrez-la à https://console.aws.amazon.com/rds/
l'adresse. -
Dans le panneau de navigation, sélectionnez Proxies.
-
Choisissez Création d'un proxy.
-
Configurez les paramètres suivants pour votre proxy.
Paramètre Description Famille de moteurs Protocole réseau de base de données reconnu par le proxy lorsqu'il interprète le trafic réseau à destination et en provenance de la base de données. Note
Pour utiliser , assurez-vous de conserver la base de données dans votre instance.
postgres
Consultez Résolution des problèmes liés à la postgres suppression.Identifiant du proxy Un nom unique au sein de votre identifiant de AWS compte et de votre AWS région actuelle. Expiration de la connexion client inactive Le proxy ferme une connexion client si celle-ci reste inactive pendant une période définie. Par défaut, il s'agit de 1 800 secondes (30 minutes). Une connexion est inactive lorsque l'application ne soumet pas de nouvelle demande dans le délai spécifié après avoir traité la demande précédente. Le proxy maintient la connexion à la base de données sous-jacente ouverte et la renvoie au pool de connexions, la rendant ainsi disponible pour les nouvelles connexions client.
Pour supprimer les connexions périmées de manière proactive, réduisez le délai d'inactivité des connexions client. Pour minimiser les coûts de connexion en cas de pics de charge de travail, augmentez le délai d'expiration.
Database (Base de données) Le cluster de base de données Aurora de l'instance de base auquel accéder via ce proxy. La liste inclut uniquement les instances et les clusters de base de données dotés de moteurs de base de données, de versions de moteur et d'autres paramètres compatibles. Si la liste est vide, créez une instance ou un cluster de base de données compatible avec RDS Proxy. Pour ce faire, suivez la procédure décrite dans Création d'un cluster de base de données Amazon Aurora. Réessayez ensuite de créer le proxy. Nombre maximal de connexions du pool de connexions Une valeur comprise entre 1 et 100 pour définir le pourcentage de max_connections
limite que le proxy RDS peut utiliser. Si vous avez l'intention d'utiliser un seul proxy avec cette instance ou ce cluster de base de données, définissez cette valeur sur 100. Pour plus d'informations sur la façon dont le proxy RDS utilise ce paramètre, consultezMaxConnectionsPercent.Filtres d'épinglage de session Empêche le proxy RDS d'épingler certains états de session détectés, ce qui contourne les mesures de sécurité par défaut pour le multiplexage des connexions. Actuellement, PostgreSQL ne prend pas en charge ce paramètre, et la seule option disponible est.
EXCLUDE_VARIABLE_SETS
Son activation peut affecter les variables de session d'une connexion sur les autres, ce qui peut entraîner des erreurs ou des problèmes d'exactitude si les requêtes reposent sur des variables de session définies en dehors de la transaction en cours. N'utilisez cette option qu'après avoir confirmé que vos applications peuvent partager des connexions de base de données en toute sécurité.Les modèles suivants sont considérés comme sûrs :
-
SET
instructions dans lesquelles aucune modification n'est apportée à la valeur effective de la variable de session. En d'autres termes, aucune modification n'est apportée à la variable de session. -
Vous modifiez la valeur de la variable de session et exécutez une instruction dans la même transaction.
Pour de plus amples informations, veuillez consulter Éviter d'épingler un proxy RDS.
Expiration du délai d'emprunt de connexion Si vous pensez que le proxy utilisera toutes les connexions de base de données disponibles, définissez le temps d'attente avant qu'il ne renvoie une erreur de temporisation. Vous pouvez spécifier jusqu'à cinq minutes. Ce paramètre s'applique uniquement lorsque le proxy a atteint le nombre maximum de connexions et que toutes sont en cours d'utilisation. Requête d'initialisation (Facultatif) Ajoutez une requête d'initialisation ou modifiez la requête en cours. Vous pouvez spécifier une ou plusieurs instructions SQL que le proxy doit exécuter lors de l'ouverture de chaque nouvelle connexion à la base de données. Le paramètre est généralement utilisé avec
SET
des instructions pour s'assurer que chaque connexion possède des paramètres identiques. Assurez-vous que la requête que vous ajoutez est valide. Pour inclure plusieurs variables dans une seuleSET
instruction, utilisez des séparateurs de virgules. Par exemple :SET
variable1
=value1
,variable2
=value2
Pour plusieurs instructions, utilisez des points-virgules comme séparateur.
Important
Comme vous pouvez accéder à la requête d'initialisation dans le cadre de la configuration du groupe cible, elle n'est pas protégée par des méthodes d'authentification ou cryptographiques. Toute personne ayant accès à l'affichage ou à la gestion de la configuration de votre groupe cible proxy peut consulter la requête d'initialisation. Vous ne devez pas ajouter de données sensibles, telles que des mots de passe ou des clés de chiffrement à longue durée de vie, à cette option.
AWS Identity and Access Management Rôle (IAM) Rôle IAM autorisé à accéder aux secrets de Secrets Manager, qui représentent les informations d'identification des comptes utilisateur de base de données que le proxy peut utiliser. Vous pouvez également créer un nouveau rôle IAM à partir du AWS Management Console.
Secrets Manager Choisissez au moins un secret Secrets Manager contenant les informations d'identification de l'utilisateur de base de données permettant au proxy d'accéder au cluster de base de données Aurora de l'instance de base de données . Type d'authentification du client Type d'authentification utilisé par le proxy pour les connexions des clients. Votre choix s'applique à tous les secrets de Secrets Manager que vous associez à ce proxy. Si vous devez spécifier un type d'authentification client différent pour chaque secret, créez votre proxy en utilisant plutôt l'API AWS CLI ou l'API. Authentification IAM S'il faut exiger ou interdire l'authentification IAM pour les connexions à votre proxy. Votre choix s'applique à tous les secrets de Secrets Manager que vous associez à ce proxy. Si vous devez spécifier une authentification IAM différente pour chaque secret, créez votre proxy en utilisant plutôt l'API AWS CLI ou l'API. Exigez la sécurité de la couche de transport Applique le protocole TLS/SSL pour toutes les connexions client. Le proxy utilise le même paramètre de chiffrement pour sa connexion à la base de données sous-jacente, que la connexion du client soit chiffrée ou non chiffrée.
Sous-réseaux Ce champ est prérempli avec tous les sous-réseaux associés à votre VPC. Vous pouvez supprimer tous les sous-réseaux dont le proxy n'a pas besoin, mais vous devez en conserver au moins deux.
Groupe de sécurité VPC Choisissez un groupe de sécurité VPC existant ou créez-en un nouveau à partir du. AWS Management Console Configurez les règles entrantes pour permettre à vos applications d'accéder au proxy et les règles sortantes pour autoriser le trafic provenant de vos bases de données cibles.
Note
Le groupe de sécurité doit autoriser les connexions entre le proxy et la base de données. Il sert à la fois à l'entrée de vos applications vers le proxy et à la sortie du proxy vers la base de données. Par exemple, si vous utilisez le même groupe de sécurité pour la base de données et le proxy, assurez-vous que les ressources de ce groupe de sécurité peuvent communiquer entre elles.
Lorsque vous utilisez un VPC partagé, évitez d'utiliser le groupe de sécurité par défaut du VPC ou un groupe associé à un autre compte. Sélectionnez plutôt un groupe de sécurité qui appartient à votre compte. S'il n'en existe aucun, créez-en un. Pour plus d'informations, consultez la section Travailler avec le partage VPCs.
RDS déploie un proxy dans plusieurs zones de disponibilité pour garantir une haute disponibilité. Pour activer la communication inter-AZ, la liste de contrôle d'accès réseau (ACL) de votre sous-réseau proxy doit autoriser la sortie sur le port du moteur et l'entrée sur tous les ports. Pour plus d'informations sur le réseau ACLs, voir Contrôler le trafic vers les sous-réseaux à l'aide du réseau ACLs. Si votre proxy et votre cible ont la même liste ACL réseau, vous devez ajouter une règle de trafic entrant de protocole TCP dans laquelle la source est définie sur le CIDR du VPC. Vous devez également ajouter une règle de sortie du protocole TCP spécifique au port du moteur dans laquelle la destination est définie sur le CIDR VPC.
Activer la journalisation améliorée Activez ce paramètre pour résoudre les problèmes de compatibilité ou de performance du proxy. Lorsqu'il est activé, le proxy RDS enregistre des informations de performance détaillées pour vous aider à déboguer le comportement SQL ou les performances et l'évolutivité des connexions proxy.
Activez ce paramètre uniquement pour le débogage et assurez-vous que les mesures de sécurité appropriées sont en place pour protéger les informations sensibles contenues dans les journaux. Pour minimiser les frais, RDS Proxy désactive automatiquement ce paramètre 24 heures après son activation. Utilisez-le temporairement pour résoudre des problèmes spécifiques.
-
-
Choisissez Création d'un proxy.
Pour créer un proxy à l'aide de AWS CLI, appelez la create-db-proxycommande avec les paramètres obligatoires suivants :
--db-proxy-name
--engine-family
--role-arn
--auth
--vpc-subnet-ids
La valeur --engine-family
est sensible à la casse.
Exemple
Pour LinuxmacOS, ou Unix :
aws rds create-db-proxy \ --db-proxy-name
proxy_name
\ --engine-family { MYSQL | POSTGRESQL | SQLSERVER } \ --authProxyAuthenticationConfig_JSON_string
\ --role-arniam_role
\ --vpc-subnet-idsspace_separated_list
\ [--vpc-security-group-idsspace_separated_list
] \ [--require-tls | --no-require-tls] \ [--idle-client-timeoutvalue
] \ [--debug-logging | --no-debug-logging] \ [--tagscomma_separated_list
]
Dans Windows :
aws rds create-db-proxy ^ --db-proxy-name
proxy_name
^ --engine-family { MYSQL | POSTGRESQL | SQLSERVER } ^ --authProxyAuthenticationConfig_JSON_string
^ --role-arniam_role
^ --vpc-subnet-idsspace_separated_list
^ [--vpc-security-group-idsspace_separated_list
] ^ [--require-tls | --no-require-tls] ^ [--idle-client-timeoutvalue
] ^ [--debug-logging | --no-debug-logging] ^ [--tagscomma_separated_list
]
Voici un exemple de valeur JSON pour l'option --auth
. Cet exemple applique un type d'authentification client différent à chaque secret.
[ { "Description": "proxy description 1", "AuthScheme": "SECRETS", "SecretArn": "arn:aws:secretsmanager:us-west-2:123456789123:secret/1234abcd-12ab-34cd-56ef-1234567890ab", "IAMAuth": "DISABLED", "ClientPasswordAuthType": "POSTGRES_SCRAM_SHA_256" }, { "Description": "proxy description 2", "AuthScheme": "SECRETS", "SecretArn": "arn:aws:secretsmanager:us-west-2:111122223333:secret/1234abcd-12ab-34cd-56ef-1234567890cd", "IAMAuth": "DISABLED", "ClientPasswordAuthType": "POSTGRES_MD5" }, { "Description": "proxy description 3", "AuthScheme": "SECRETS", "SecretArn": "arn:aws:secretsmanager:us-west-2:111122221111:secret/1234abcd-12ab-34cd-56ef-1234567890ef", "IAMAuth": "REQUIRED" } ]
Astuce
Si vous ne connaissez pas encore le sous-réseau IDs à utiliser pour le --vpc-subnet-ids
paramètre, consultez des exemples Configuration des prérequis réseau pour le proxy RDS pour les trouver.
Note
Le groupe de sécurité doit autoriser l'accès à la base de données à laquelle le proxy se connecte. Le même groupe de sécurité est utilisé pour l'entrée de vos applications vers le proxy, et pour la sortie du proxy vers la base de données. Par exemple, supposons que vous utilisiez le même groupe de sécurité pour votre base de données et votre proxy. Dans ce cas, assurez-vous de spécifier que les ressources de ce groupe de sécurité peuvent communiquer avec d'autres ressources du même groupe de sécurité.
Lorsque vous utilisez un VPC partagé, vous ne pouvez pas utiliser le groupe de sécurité par défaut pour le VPC ni un groupe appartenant à un autre compte. Choisissez un groupe de sécurité qui appartient à votre compte. S'il n'en existe aucun, créez-en un. Pour plus d'informations sur cette limitation, voir Travailler avec le partage VPCs.
Pour créer les associations appropriées pour le proxy, vous devez également utiliser la register-db-proxy-targetscommande. Spécifiez le nom du groupe cible default
. RDS Proxy crée automatiquement un groupe cible portant ce nom au moment de la création de chaque proxy.
aws rds register-db-proxy-targets --db-proxy-name
value
[--target-group-nametarget_group_name
] [--db-instance-identifiersspace_separated_list
] # rds db instances, or [--db-cluster-identifierscluster_id
] # rds db cluster (all instances)
Pour créer un proxy RDS, appelez l'opération Create de l'API Amazon RDS. DBProxy Vous transmettez un paramètre avec la structure AuthConfigde données.
RDS Proxy crée automatiquement un groupe cible nommé default
au moment de la création de chaque proxy. Vous associez un cluster de base de données Aurora d'une instance de base au groupe cible en appelant la fonction Register DBProxy Targets.