Supervisar tus recursos en la nube es tan importante como desplegarlos. Saber cuándo una máquina virtual se detiene, identificar patrones en los logs y recibir notificaciones oportunas marca la diferencia entre una infraestructura reactiva y una verdaderamente confiable. A continuación se explica cómo aprovechar las herramientas de monitoring, logging y alertas dentro de Google Cloud Platform para construir un esquema de supervisión completo.
¿Cómo explorar los logs de tus máquinas virtuales?
Desde el menú de navegación de la consola de Google Cloud, al dirigirte a tus máquinas virtuales, cada una ofrece un menú con tres puntos en el lado derecho. Al seleccionar ver sus logs [01:06], se despliegan los registros asociados a ese recurso. Esto no es más que un salto directo a la sección de Logging, uno de los servicios integrados en la suite de StackDriver.
Dentro de Logging puedes filtrar por distintos recursos:
- Máquinas virtuales específicas.
- Servicios como BigQuery para análisis de grandes volúmenes de datos.
- Load balancers y recursos de red.
- Datos generales del proyecto.
También es posible segmentar por niveles de severidad: errores críticos, errores estándar, advertencias, información y debugging [02:22]. Los bloques de tiempo permiten acotar la búsqueda a periodos específicos, lo que facilita la investigación de incidentes.
¿Qué información revelan los filtros de logs?
Al expandir un registro individual puedes ver detalles como quién desencadenó el evento —ya sea tu propia cuenta o una cuenta de servicio— [03:05]. Los filtros permiten seleccionar únicamente los registros que hacen match con cierto patrón o, al contrario, los que no coinciden. Por ejemplo, al filtrar por eventos de detención de máquinas, la consola muestra todas las instancias que fueron apagadas en cualquier parte del proyecto [03:40].
¿Cómo crear métricas personalizadas y dashboards?
Una vez que tienes los logs filtrados, puedes crear una métrica directamente desde el visor [04:03]. El proceso es sencillo:
- Asignas un nombre descriptivo a la métrica.
- Defines que cuente los eventos relevantes.
- La métrica se agrega a la sección de métricas definidas por el usuario.
Desde la lista de métricas personalizadas puedes visualizar cada una en el explorador de métricas. Es necesario asociar la métrica a un recurso —como las máquinas virtuales— y elegir un agregador; por ejemplo, que sume el total de eventos ocurridos [05:00].
Con esa métrica lista, se genera un tablero (dashboard) personalizado. En el caso mostrado, el tablero llamado Stop Dashboard Platzi reportó con precisión las dos máquinas que fueron detenidas durante la práctica [10:25].
¿Cómo configurar alertas y políticas de notificación?
Más allá de un tablero visual, las alertas garantizan que recibas información oportuna. Para crearlas, seleccionas la métrica personalizada y defines una condición [06:06]:
- Estableces un umbral: si el número de eventos de apagado supera cero, uno, dos o el valor que consideres tolerable.
- Defines el comportamiento: que esté arriba, sea igual, se incremente o que el valor esté ausente.
Esa condición se asocia a una política (policy), que al cumplirse dispara las notificaciones. Los canales disponibles incluyen [07:42]:
- Correo electrónico.
- Aplicación móvil de Google Cloud.
- Integraciones con PagerDuty, PubSub, Slack, SMS.
- Webhooks para servicios externos.
Es recomendable incluir instrucciones claras en la documentación de la alerta, como los pasos para reiniciar las máquinas afectadas [08:18].
¿Por qué instalar agentes de logging y monitoring?
Las métricas estándar que ofrece la consola —encendido, apagado, estado básico— son limitadas. Para obtener métricas más finas y personalizadas, es necesario instalar agentes en las máquinas virtuales [09:10].
El procedimiento requiere conectarse vía SSH a la instancia y ejecutar dos scripts:
- El agente de logging, basado en Fluentd, que captura registros detallados del sistema operativo.
- El agente de monitoring, que recopila métricas de rendimiento como CPU, memoria y disco.
Antes de ejecutarlos, se deben ajustar los permisos de los archivos con chmod [09:45]. Una vez instalados, las APIs de StackDriver para logging y monitoring quedan habilitadas, permitiendo generar un esquema de supervisión completamente personalizado.
El explorador de métricas también soporta la supervisión de contenedores, instancias de Redis, rutas de red e incluso entornos multinube donde coexisten recursos de Google Cloud y AWS en un solo panel consolidado [11:18].
Si ya estás trabajando con máquinas virtuales en Google Cloud, experimenta creando tu primera métrica personalizada y comparte con tu equipo qué patrones encuentras en los logs.