Uso de las métricas de Amazon CloudWatch para analizar el uso de los recursos de Aurora PostgreSQL - Amazon Aurora

Uso de las métricas de Amazon CloudWatch para analizar el uso de los recursos de Aurora PostgreSQL

Aurora envía automáticamente datos de métricas a CloudWatch en periodos de 1 minuto. Puede analizar el uso de los recursos de Aurora PostgreSQL mediante métricas de CloudWatch. Puede evaluar el rendimiento de la red y el uso de la red con las métricas.

Evaluación del rendimiento de la red con CloudWatch

Cuando el uso del sistema se acerca a los límites de recursos para el tipo de instancia, el procesamiento puede ralentizarse. Puede utilizar CloudWatch Logs Insights para supervisar el uso de sus recursos de almacenamiento y asegurarse de que haya suficientes recursos disponibles. Cuando sea necesario, se puede cambiar la instancia de base de datos por una clase de instancia mayor.

El procesamiento del almacenamiento de Aurora puede ser lento debido a:

  • El ancho de banda de la red entre el cliente y la base de datos es insuficiente.

  • El ancho de banda de red al subsistema de almacenamiento es insuficiente.

  • Hay una carga de trabajo grande para su tipo de instancia.

Puede consultar CloudWatch Logs Insights para generar un gráfico del uso de los recursos de almacenamiento de Aurora con el fin de supervisar los recursos. El gráfico muestra el uso de la CPU y las métricas para ayudarte a decidir si debe escalar verticalmente a un tamaño de instancia mayor. Para obtener información sobre la sintaxis de consulta de CloudWatch Logs Insights, consulte Sintaxis de consulta de CloudWatch Logs Insights.

Para usar CloudWatch, debe exportar los archivos de registro de Aurora PostgreSQL a CloudWatch. También se puede modificar el clúster existente para exportar registros a CloudWatch. Para obtener más información acerca de la exportación de registros a CloudWatch, consulte Activación de la opción de publicación de registros en Amazon CloudWatch.

Necesita el Resource ID (ID de recurso) de su instancia de base de datos para consultar CloudWatch Logs Insights. El Resource ID (ID de recurso) está disponible en la pestaña Configuration (Configuración) de la consola:

Para consultar las métricas de almacenamiento de recursos en sus archivos de registro:
  1. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.

    Aparece la página de inicio de información general de CloudWatch.

  2. Si es necesario, cambie la Región de AWS. En la barra de navegación, elija la Región de AWS donde se encuentran sus recursos de AWS. Para obtener más información, consulte Puntos de conexión y Regiones de .

  3. En el panel de navegación, elija Logs (Registros) y, luego, Logs Insights.

    Aparece la página Logs Insights.

  4. Seleccione los archivos de registro de la lista desplegable para analizarlos.

  5. Introduzca la siguiente consulta en el campo y sustittuya <resource ID> por el ID de recurso de su clúster de base de datos:

    filter @logStream = <resource ID> | parse @message "\"Aurora Storage Daemon\"*memoryUsedPc\":*,\"cpuUsedPc\":*," as a,memoryUsedPc,cpuUsedPc | display memoryUsedPc,cpuUsedPc #| stats avg(xcpu) as avgCpu by bin(5m) | limit 10000

  6. Haga clic en Run query (Ejecutar consulta).

    Se muestra el gráfico de utilización del almacenamiento.

    La siguiente imagen muestra la página Logs Insights y la visualización del gráfico.

Evaluación de la utilización de instancias de base de datos con métricas de CloudWatch

Puede usar las métricas de CloudWatch para observar el rendimiento de su instancia y descubrir si su clase de instancia proporciona recursos suficientes para sus aplicaciones. Para obtener información sobre los límites de la clase de instancia de base de datos, vaya a Especificaciones de hardware para clases de instancia de base de datos para Aurora y busque las especificaciones de la clase de instancia de base de datos para encontrar el rendimiento de la red.

Si el uso de la instancia de base de datos está cerca del límite de las clases de instancia, es posible que el rendimiento comience a disminuir. Las métricas de CloudWatch pueden confirmar esta situación para que pueda planificar el escalado vertical manual a una clase de instancia más grande.

Combine los siguientes valores de métricas de CloudWatch para averiguar si se acerca al límite de clases de instancia:

  • NetworkThroughput: rendimiento de red que reciben y transmiten los clientes para cada instancia en el clúster de base de datos de Aurora. Este valor de rendimiento no incluye el tráfico de red entre las instancias del clúster de bases de datos y el volumen de clúster.

  • StorageNetworkThroughput: rendimiento de red que recibe el subsistema de almacenamiento de Aurora y que cada instancia del clúster de bases de datos de Aurora envía al subsistema de almacenamiento de Aurora.

Sume la métrica NetworkThroughput a StorageNetworkThroughput para determinar el rendimiento de red recibido y enviado al subsistema de almacenamiento de Aurora por cada instancia del clúster de base de datos de Aurora. El límite de clases de instancia para su instancia debe ser mayor que la suma de estas dos métricas combinadas.

Puede utilizar las siguientes métricas para revisar detalles adicionales del tráfico de red de las aplicaciones cliente al enviar y recibir:

  • NetworkReceiveThroughput: rendimiento de red recibido de los clientes por cada instancia del clúster de base de datos de Aurora PostgreSQL. Este desempeño no incluye el tráfico de red entre las instancias del clúster de bases de datos de y el volumen de clúster.

  • NetworkTransmitThroughput: rendimiento de red enviado a los clientes por cada instancia del clúster de bases de datos de Aurora. Este desempeño no incluye el tráfico de red entre las instancias del clúster de bases de datos de y el volumen de clúster.

  • StorageNetworkReceiveThroughput: rendimiento de red recibido del subsistema de almacenamiento de Aurora por cada instancia del clúster de bases de datos.

  • StorageNetworkTransmitThroughput: rendimiento de red enviado al subsistema de almacenamiento de Aurora por cada instancia del clúster de bases de datos.

Sume todas estas métricas para evaluar cómo está el uso de la red con respecto al límite de las clases de instancias. El límite de las clases de instancias debe ser mayor que la suma de estas métricas combinadas.

Los límites de la red y el uso de la CPU para el almacenamiento son mutuos. Cuando aumenta el rendimiento de la red, también aumenta la utilización de la CPU. La supervisión del uso de la CPU y la red proporciona información sobre cómo y por qué se agotan los recursos.

Para ayudar a minimizar el uso de la red, puede considerar lo siguiente:

  • Utilizar una clase de instancia mayor.

  • Utilizar estrategias de partición pg_partman.

  • Dividir las solicitudes de escritura en lotes para reducir las transacciones generales.

  • Redirigir la carga de trabajo de solo lectura a una instancia de solo lectura.

  • Eliminar los índices no utilizados.

  • Comprobar si hay objetos sobrecargados y VACUUM. En el caso de una sobrecarga grave, utilice la extensión de PostgreSQL pg_repack. Para obtener más información acerca de pg_repack, consulte Reorganize tables in PostgreSQL databases with minimal locks (Reorganizar tablas en bases de datos PostgreSQL con los bloqueos mínimos).