Modificación de RDS Proxy - Amazon Aurora

Modificación de RDS Proxy

Puede cambiar determinadas configuraciones asociadas a un proxy después de crearlos. Para ello, modifique el propio proxy, su grupo de destino asociado o ambos. Cada proxy tiene un grupo de destino asociado.

importante

Los valores de los campos Client authentication type (Tipo de autenticación de cliente) y IAM authentication (Autenticación de IAM) se aplican a todos los secretos de Secrets Manager asociados a este proxy. Para especificar valores diferentes para cada secreto, modifique su proxy mediante la AWS CLI o la API.

Para modificar la configuración de un proxy
  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/.

  2. En el panel de navegación, seleccione Proxies.

  3. En la lista de proxies, elija el proxy cuya configuración desea modificar o vaya a su página de detalles.

  4. Para Actions (Acciones), elija Modify (Modificar).

  5. Introduzca o elija las propiedades que desea modificar. Puede modificar lo siguiente:

    • Proxy identifier (Identificador de proxy: escriba un nuevo identificador para cambiar el nombre del proxy.

    • Idle client connection timeout (Tiempo de espera de inactividad de conexión de cliente): especifique un período de tiempo de espera de conexión de cliente inactiva.

    • IAM role (Rol de IAM): cambie el rol de IAM utilizado para recuperar los secretos de Secrets Manager.

    • Secrets Manager secrets (Secretos de Secrets Manager): agregue o elimine secretos de Secrets Manager. Estos secretos corresponden a nombres de usuario y contraseñas de la base de datos.

    • Client authentication type (Tipo de autenticación de cliente): (solo PostgreSQL) cambie el tipo de autenticación de las conexiones del cliente al proxy.

    • IAM Authentication (Autenticación de IAM): requiera o no permita la autenticación de IAM para las conexiones al proxy.

    • Require Transport Layer Security (Requerir Transport Layer Security): active o desactive el requisito de Transport Layer Security (TLS).

    • VPC security group (Grupo de seguridad de VPC): agregue o quite grupos de seguridad de VPC para que los utilice el proxy.

    • Enable enhanced logging (Habilitar el registro optimizado): habilite o deshabilite el registro mejorado.

  6. Elija Modify.

Si no ha encontrado la configuración mostrada que desea cambiar, utilice el procedimiento siguiente para actualizar el grupo de destino del proxy. El grupo de destino asociado con un proxy controla la configuración relacionada con las conexiones de base de datos físicas. Cada proxy tiene un grupo de destino asociado llamado default, que se crea automáticamente junto con el proxy.

Solo puede modificar el grupo de destino desde la página de detalles del proxy, no desde la lista de la página Proxies.

Para modificar la configuración de un grupo de destino de proxy
  1. En la página Proxies, vaya a la página de detalles de un proxy.

  2. En Target groups (Grupos de destino), elija el enlace default. Actualmente, todos los proxies tienen un único grupo de destino denominado default.

  3. En la página de detalles del grupo de destino default (predeterminado) elija Modify (Modificar).

  4. Elija nuevas configuraciones para las propiedades que puede modificar:

    • Base de datos: elija un clúster de Aurora diferente.

    • Connection pool maximum connections (Conexiones máximas de grupo de conexión): ajuste el porcentaje de conexiones disponibles máximas que puede utilizar el proxy.

    • Session pinning filters (Filtros de fijación de sesión): (opcional) elija un filtro de fijación de sesión. De este modo se eluden las medidas de seguridad predeterminadas para multiplexar las conexiones de bases de datos en las conexiones del cliente. Actualmente, la configuración no es compatible con PostgreSQL. La única opción es EXCLUDE_VARIABLE_SETS.

      Si se habilita esta configuración, es posible que las variables de sesión de una conexión afecten a otras conexiones. Esto puede provocar errores o problemas de corrección si las consultas dependen de valores de variables de sesión establecidos fuera de la transacción actual. Considere la posibilidad de utilizar esta opción después de comprobar que sea seguro que sus aplicaciones compartan conexiones de bases de datos en las conexiones del cliente.

      Los siguientes patrones pueden considerarse seguros:

      • Instrucciones SET en las que no hay ningún cambio en el valor de la variable de sesión efectiva, es decir, no hay ningún cambio en la variable de sesión.

      • Cambia el valor de la variable de sesión y ejecuta una instrucción en la misma transacción.

      Para obtener más información, consulte Cómo evitar la fijación de RDS Proxy.

    • Connection borrow timeout (Tiempo de espera de préstamo de conexión): ajuste el intervalo de tiempo de espera de préstamo de la conexión. Esta configuración se aplica cuando el número máximo de conexiones ya se está utilizando para el proxy. La configuración determina cuánto tiempo espera el proxy a que una conexión esté disponible antes de devolver un error de tiempo de espera.

    • Initialization query (Consulta de inicialización): (opcional) agregue una consulta de inicialización o modifique la actual. Puede especificar una o más instrucciones de SQL para que el proxy se ejecute al abrir cada nueva conexión de base de datos. Normalmente, el ajuste se utiliza con instrucciones SET para asegurarse de que cada conexión tiene una configuración idéntica, como zona horaria y conjunto de caracteres. Para varias instrucciones, utilice punto y coma como separador. Puede incluir también varias variables en una sola instrucción SET, como SET x=1, y=2.

    No puede cambiar ciertas propiedades, como el identificador del grupo de destino y el motor de base de datos.

  5. Elija Modify target group (Modificar grupo de destino).

Para modificar un proxy mediante la AWS CLI, utilice los comandos modify-db-proxy, modify-db-proxy-target-group, deregister-db-proxy-targets y register-db-proxy-targets.

Con el comando modify-db-proxy, puede cambiar propiedades como las siguientes:

  • El conjunto de secretos de Secrets Manager utilizados por el proxy.

  • Si se requiere TLS.

  • El tiempo de espera del cliente inactivo.

  • Si se debe registrar información adicional de instrucciones de SQL para la depuración.

  • El rol de IAM utilizado para recuperar secretos de Secrets Manager.

  • Los grupos de seguridad utilizados por el proxy.

En el ejemplo siguiente se muestra cómo cambiar el nombre de un proxy existente.

aws rds modify-db-proxy --db-proxy-name the-proxy --new-db-proxy-name the_new_name

Para modificar la configuración relacionada con la conexión o cambiar el nombre del grupo de destino, utilice el comando modify-db-proxy-target-group. Actualmente, todos los proxies tienen un único grupo de destino denominado default. Cuando se trabaja con este grupo de destino, se especifica el nombre del proxy y default para el nombre del grupo de destino.

En el ejemplo siguiente se muestra cómo comprobar primero la configuración de MaxIdleConnectionsPercent de un proxy y, a continuación, cambiarla mediante el grupo de destino.

aws rds describe-db-proxy-target-groups --db-proxy-name the-proxy { "TargetGroups": [ { "Status": "available", "UpdatedDate": "2019-11-30T16:49:30.342Z", "ConnectionPoolConfig": { "MaxIdleConnectionsPercent": 50, "ConnectionBorrowTimeout": 120, "MaxConnectionsPercent": 100, "SessionPinningFilters": [] }, "TargetGroupName": "default", "CreatedDate": "2019-11-30T16:49:27.940Z", "DBProxyName": "the-proxy", "IsDefault": true } ] } aws rds modify-db-proxy-target-group --db-proxy-name the-proxy --target-group-name default --connection-pool-config ' { "MaxIdleConnectionsPercent": 75 }' { "DBProxyTargetGroup": { "Status": "available", "UpdatedDate": "2019-12-02T04:09:50.420Z", "ConnectionPoolConfig": { "MaxIdleConnectionsPercent": 75, "ConnectionBorrowTimeout": 120, "MaxConnectionsPercent": 100, "SessionPinningFilters": [] }, "TargetGroupName": "default", "CreatedDate": "2019-11-30T16:49:27.940Z", "DBProxyName": "the-proxy", "IsDefault": true } }

Con los comandos deregister-db-proxy-targets y register-db-proxy-targets, puede cambiar a qué clústeres de bases de datos de Aurora está asociado el proxy a través de su grupo de destino. Actualmente, cada proxy puede conectarse a un clúster de base de datos de Aurora. El grupo de destino realiza un seguimiento de los detalles de conexión de todas las instancias de base de datos en un clúster de Aurora.

El ejemplo siguiente comienza con un proxy asociado a un clúster de Aurora MySQL denominado cluster-56-2020-02-25-1399. El ejemplo muestra cómo cambiar el proxy para que pueda conectarse a un clúster diferente denominado provisioned-cluster.

Cuando se trabaja con un clúster de bases de datos de Aurora, se especifica la opción --db-cluster-identifier.

El siguiente ejemplo modifica un proxy Aurora MySQL. Un proxy Aurora PostgreSQL tiene el puerto 5432.

aws rds describe-db-proxy-targets --db-proxy-name the-proxy { "Targets": [ { "Endpoint": "instance-9814.demo.us-east-1.rds.amazonaws.com", "Type": "RDS_INSTANCE", "Port": 3306, "RdsResourceId": "instance-9814" }, { "Endpoint": "instance-8898.demo.us-east-1.rds.amazonaws.com", "Type": "RDS_INSTANCE", "Port": 3306, "RdsResourceId": "instance-8898" }, { "Endpoint": "instance-1018.demo.us-east-1.rds.amazonaws.com", "Type": "RDS_INSTANCE", "Port": 3306, "RdsResourceId": "instance-1018" }, { "Type": "TRACKED_CLUSTER", "Port": 0, "RdsResourceId": "cluster-56-2020-02-25-1399" }, { "Endpoint": "instance-4330.demo.us-east-1.rds.amazonaws.com", "Type": "RDS_INSTANCE", "Port": 3306, "RdsResourceId": "instance-4330" } ] } aws rds deregister-db-proxy-targets --db-proxy-name the-proxy --db-cluster-identifier cluster-56-2020-02-25-1399 aws rds describe-db-proxy-targets --db-proxy-name the-proxy { "Targets": [] } aws rds register-db-proxy-targets --db-proxy-name the-proxy --db-cluster-identifier provisioned-cluster { "DBProxyTargets": [ { "Type": "TRACKED_CLUSTER", "Port": 0, "RdsResourceId": "provisioned-cluster" }, { "Endpoint": "gkldje.demo.us-east-1.rds.amazonaws.com", "Type": "RDS_INSTANCE", "Port": 3306, "RdsResourceId": "gkldje" }, { "Endpoint": "provisioned-1.demo.us-east-1.rds.amazonaws.com", "Type": "RDS_INSTANCE", "Port": 3306, "RdsResourceId": "provisioned-1" } ] }

Para modificar un proxy mediante la API de RDS, utilice las operaciones ModifyDBProxy, ModifyDBProxyTargetGroup, DeregisterDBProxyTargets y RegisterDBProxyTargets.

Con ModifyDBProxy, puede cambiar propiedades como las siguientes:

  • El conjunto de secretos de Secrets Manager utilizados por el proxy.

  • Si se requiere TLS.

  • El tiempo de espera del cliente inactivo.

  • Si se debe registrar información adicional de instrucciones de SQL para la depuración.

  • El rol de IAM utilizado para recuperar secretos de Secrets Manager.

  • Los grupos de seguridad utilizados por el proxy.

Con ModifyDBProxyTargetGroup, puede modificar la configuración relacionada con la conexión o cambiar el nombre del grupo de destino. Actualmente, todos los proxies tienen un único grupo de destino denominado default. Cuando se trabaja con este grupo de destino, se especifica el nombre del proxy y default para el nombre del grupo de destino.

Con DeregisterDBProxyTargets y RegisterDBProxyTargets, puede cambiar con qué clúster de Aurora está asociado el proxy a través de su grupo de destino. Actualmente, cada proxy puede conectarse a un clúster de bases de datos de Aurora. El grupo de destino hace un seguimiento de los detalles de conexión de las instancias de base de datos en un clúster de Aurora.