Microsoft Azure ofrece una amplia gama de servicios de bases de datos completamente gestionados, abarcando bases de datos relacionales, NoSQL y en memoria, con gestión de infraestructura automatizada. Dentro de esta oferta, encontramos Azure Database for MySQL, un servicio de base de datos relacional potenciado por la edición comunitaria de MySQL. Este servicio te permite alojar una base de datos MySQL en Azure, dándote la flexibilidad de elegir entre una arquitectura de servidor único (Single Server) o una arquitectura de servidor flexible (Flexible Server), adaptándose a diversas necesidades de rendimiento, disponibilidad y costos.

La gestión de bases de datos en la nube implica no solo su despliegue y operación, sino también un monitoreo constante para asegurar su rendimiento óptimo y disponibilidad. Herramientas como Cisco Cloud Observability desempeñan un papel crucial en este aspecto, categorizando a Azure Database for MySQL como una instancia de base de datos, que puede contener una colección de bases de datos. Estas herramientas recogen métricas esenciales tanto para las instancias de Servidor Único como para las de Servidor Flexible, proporcionando visibilidad sobre el estado y comportamiento de tu base de datos.

Para poder monitorear estas entidades en detalle, es necesario configurar las conexiones adecuadas a la nube. Una vez establecidas, se puede acceder a una visibilidad detallada, incluyendo la posibilidad de análisis del rendimiento de consultas y la resolución de problemas de manera más eficiente mediante la instalación de herramientas de monitoreo de bases de datos específicas.
Monitoreo de Azure Database for MySQL
La visibilidad sobre las entidades de Azure se presenta típicamente en páginas de observación dedicadas. Para Azure Database for MySQL, las métricas se muestran para instancias específicas tanto en vistas de lista como en vistas detalladas. Acceder a la vista detallada para una entidad de Azure Database for MySQL es un proceso sencillo que te permite profundizar en su rendimiento y configuración.
Para mostrar la vista detallada de una entidad de Azure Database for MySQL, generalmente debes navegar a la página de Observación. Dentro de las categorías de Base de Datos y Almacenamiento, seleccionas las Instancias de Base de Datos SQL (aunque el servicio sea MySQL, la categorización en algunas herramientas de monitoreo puede ser amplia). Una vez en la vista de lista, puedes aplicar filtros, como seleccionar el botón de Azure, para mostrar únicamente las entidades de base de datos de Azure. Desde esta lista filtrada, haciendo clic en el Nombre de una base de datos específica, accedes a su vista detallada.
La vista detallada es un panel comprensivo que presenta métricas, indicadores clave de rendimiento (KPIs) y propiedades (atributos) relacionados con la base de datos que has seleccionado. Esta información es vital para diagnosticar problemas, optimizar el rendimiento y planificar la capacidad.
Métricas Clave e Indicadores de Rendimiento
El monitoreo efectivo de Azure Database for MySQL se basa en la recolección y análisis de diversas métricas e indicadores clave de rendimiento (KPIs). Estas métricas proporcionan una visión cuantitativa del estado operativo y el rendimiento de la instancia de base de datos. Aunque existen métricas comunes a ambos tipos de servidor (Single y Flexible), algunas pueden tener descripciones o aplicaciones ligeramente diferentes.
A continuación, se detallan algunas de las métricas y KPIs importantes disponibles para Azure Database for MySQL:
| Nombre de Visualización | Métrica de Origen | Descripción | Aplica a |
|---|---|---|---|
| Utilización de CPU (%) | cpu_percent | Porcentaje de CPU en uso. | Servidor Único |
| Utilización de CPU (%) | cpu_percent | Porcentaje total de utilización de CPU para procesar todas las tareas en tu servidor durante un período seleccionado. Incluye la carga de trabajo de tu servidor Flexible y procesos de Azure MySQL. Ayuda a encontrar si tu servidor tiene más carga de la que puede manejar. | Servidor Flexible |
| Créditos de CPU Restantes (Count) | cpu_credits_remaining | Cantidad de créditos de CPU restantes. | Servidor Flexible |
| Créditos de CPU Usados (Count) | cpu_credits_consumed | Cantidad de créditos de CPU que han sido consumidos. | Servidor Flexible |
| Conexiones a Base de Datos (Count) | active_connections / active_connection | El número de conexiones activas al servidor. Para Servidor Flexible, incluye hilos de azure_superuser. | Ambos |
| Conexiones Fallidas (Count) | connections_failed / aborted_connections | Número total de intentos fallidos de conexión a tu servidor MySQL, por ejemplo, debido a credenciales incorrectas. | Ambos |
| Utilización de Memoria (%) | memory_percent | Porcentaje de memoria en uso. Para Servidor Flexible, es el porcentaje total en uso en el servidor, incluyendo carga de base de datos y otros procesos de Azure MySQL. | Ambos |
| Utilización de E/S (%) | io_consumption_percent | Porcentaje de E/S en uso. No aplicable para servidores de nivel Básico (Basic tier). Para Servidor Flexible, es el porcentaje de E/S (lectura y escritura) en uso durante un período seleccionado. | Ambos (Excepto Basic tier) |
| Utilización de Almacenamiento (%) | storage_percent | Porcentaje de almacenamiento utilizado del máximo del servidor. | Ambos |
| Rendimiento de Recepción de Red (Bytes) | network_bytes_ingress | Tráfico de red entrante a través de conexiones activas. Para Servidor Flexible, es la suma total del tráfico entrante, incluyendo tráfico a la base de datos y características de Azure MySQL. | Ambos |
| Rendimiento de Transmisión de Red (Bytes) | network_bytes_egress | Tráfico de red saliente a través de conexiones activas. Para Servidor Flexible, es la suma total del tráfico saliente, incluyendo tráfico desde la base de datos y características de Azure MySQL. | Ambos |
| Porcentaje de Almacenamiento de Logs del Servidor | serverlog_storage_percent | Porcentaje de almacenamiento de logs del servidor utilizado del máximo permitido. | Servidor Único |
Monitorear estas métricas te permite entender cómo se están utilizando los recursos, identificar posibles cuellos de botella (como alta utilización de CPU o memoria) y detectar problemas de conexión o almacenamiento antes de que afecten a los usuarios. La distinción entre métricas para Servidor Único y Flexible es importante para entender las particularidades de cada arquitectura.
Propiedades y Atributos de la Instancia
Además de las métricas de rendimiento, la vista detallada de una instancia de Azure Database for MySQL también presenta propiedades (atributos) que describen la configuración y el estado actual del servidor. Estas propiedades son fundamentales para la gestión, la identificación y la comprensión de las características de la instancia.
Aquí se listan algunas de las propiedades importantes:
| Nombre de Visualización | Nombre de Propiedad | Descripción | Aplica a |
|---|---|---|---|
| Nombre de SKU | name | El nombre de la SKU, por ejemplo, Standard_D32s_v3. | Ambos |
| Nivel de SKU | tier | El nivel de la SKU particular, por ejemplo, GeneralPurpose. | Ambos |
| Nombre de SKU de Almacenamiento | storageSku | El nombre de la SKU del almacenamiento del servidor. | Servidor Flexible |
| Rol de Replicación | replicationRole | El rol de replicación (Maestro/Réplica). | Ambos |
| Estado de Alta Disponibilidad | highAvailability | El estado de la configuración de alta disponibilidad del servidor. | Servidor Flexible |
| Copia de Seguridad Geo-Redundante | geoRedundantBackup | Define si la copia de seguridad geo-redundante está habilitada. | Ambos |
| Creado En | createdAt | La marca de tiempo de creación del recurso. | Ambos |
| Tamaño (GB) | storageSizeGB | El tamaño máximo de almacenamiento permitido para un servidor. | Ambos |
| Versión | version | La versión del servidor MySQL. | Ambos |
| Estado | state | El estado de un servidor (por ejemplo, Ready, Dropped). | Ambos |
| Días de Retención de Copia de Seguridad | backupRetentionDays | Días de retención de copia de seguridad para el servidor. | Ambos |
| ID | id | El ID de recurso completo para el recurso. Ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. | Ambos |
| Nombre | name | El nombre del recurso. | Ambos |
| Tipo | type | El tipo de servicio gestionado. | Ambos |
| Host | fullyQualifiedDomainName | El nombre de dominio completo de un servidor. | Ambos |
| Grupo de Recursos | N/A | El nombre del grupo de recursos al que pertenece el servidor. | Ambos |
| Ubicación | location | La ubicación de Azure donde reside el recurso. | Ambos |
| Crecimiento Automático de Almacenamiento | storageAutogrow / autoGrow | Especifica si el crecimiento automático de almacenamiento está habilitado. Posibles valores: Enabled, Disabled. | Ambos |
| ID del Servidor Maestro | masterServerId / sourceServerResourceId | El ID del servidor maestro de una réplica de servidor. Para Servidor Flexible, es el ID del servidor de origen para restaurar (requerido cuando createMode es PointInTimeRestore). | Ambos |
Estas propiedades son esenciales para la administración del ciclo de vida del servidor, la configuración de la replicación, la gestión de copias de seguridad y la identificación precisa de la instancia dentro del entorno de Azure. La habilidad para ver rápidamente el estado, la versión o la configuración de almacenamiento es fundamental para la operación diaria.
Retención y Purga de Datos de Monitoreo (TTL)
Para todas las entidades de nube e infraestructura monitoreadas por ciertas herramientas, como se describe en la información proporcionada, existen políticas definidas para la retención y purga de datos, conocidas como Time-To-Live (TTL). Estas políticas determinan cuánto tiempo se conservan los datos antes de ser eliminados.
Según la información, la retención TTL para las entidades de nube e infraestructura es de 180 minutos, lo que equivale a 3 horas. Esto significa que los datos de monitoreo recientes están disponibles para análisis y visualización durante este período.
La purga TTL, que define cuánto tiempo se mantienen los datos antes de su eliminación permanente, es de 525,600 minutos. Esta cantidad de minutos se traduce exactamente en 365 días, es decir, un año completo. Esta política asegura que los datos históricos de monitoreo estén disponibles para análisis a largo plazo, cumplimiento y auditoría durante un período considerable antes de ser automáticamente purgados del sistema.
Preguntas Frecuentes
¿Qué es Azure Database for MySQL?
Es un servicio de base de datos relacional completamente gestionado en Azure, basado en la edición comunitaria de MySQL. Permite alojar bases de datos MySQL en la nube de Azure.
¿Qué tipos de servidor puedo usar con Azure Database for MySQL?
Puedes utilizar la arquitectura de Servidor Único (Single Server) o la de Servidor Flexible (Flexible Server) para alojar tu base de datos MySQL en Azure.
¿Cómo se categoriza Azure Database for MySQL en herramientas de monitoreo como Cisco Cloud Observability?
Se categoriza como una instancia de base de datos, que representa una colección de bases de datos. Las métricas se recogen a nivel de instancia.
¿Qué necesito para monitorear Azure Database for MySQL?
Debes configurar conexiones a la nube y, para visibilidad detallada como el perfilado de consultas, instalar herramientas de monitoreo de bases de datos específicas.
¿Dónde puedo ver las métricas y propiedades de mi instancia de Azure Database for MySQL?
Generalmente, en la página de Observación de la herramienta de monitoreo, navegando a la sección de bases de datos y accediendo a la vista detallada de la instancia específica.
¿Qué métricas clave se monitorean?
Métricas como utilización de CPU, memoria, conexiones activas y fallidas, utilización de E/S y almacenamiento, y rendimiento de red son monitoreadas, con algunas diferencias entre Servidor Único y Flexible.
¿Qué tipo de propiedades puedo ver para mi servidor MySQL en Azure?
Propiedades como el nombre y nivel de la SKU, versión del servidor, estado, tamaño de almacenamiento, configuración de copias de seguridad (incluida la geo-redundancia), rol de replicación y detalles de red son visibles.
¿Cuánto tiempo se guardan los datos de monitoreo?
Los datos de retención inmediata se guardan por 180 minutos (3 horas), y los datos de purga se mantienen por 525,600 minutos (365 días).
Azure Database for MySQL proporciona una solución robusta y gestionada para bases de datos MySQL en la nube. La capacidad de monitorear métricas y propiedades clave, como las descritas, es fundamental para garantizar el rendimiento, la estabilidad y la disponibilidad de tus bases de datos, permitiéndote reaccionar proactivamente ante posibles problemas y optimizar tu entorno en la nube. La distinción entre las arquitecturas de Servidor Único y Servidor Flexible, así como las particularidades de sus métricas y propiedades, subraya la importancia de entender la configuración específica de tu instancia para un monitoreo y gestión efectivos.
Si quieres conocer otros artículos parecidos a Azure Database para MySQL: Gestión y Monitoreo puedes visitar la categoría Bases de datos.

Aprende mas sobre MySQL