Las métricas básicas de EC2 no muestran procesos, uso detallado de disco ni logs de aplicación. Para cubrir esa brecha, Amazon CloudWatch Agent permite recolectar métricas adicionales del sistema y enviar archivos de log hacia CloudWatch.

Esta guía propone una implementación base con un enfoque conservador: cambios verificables, comandos claros, advertencias antes de acciones sensibles y una validación final para detectar errores antes de mover tráfico o datos reales.

El procedimiento está pensado para servidores Ubuntu/Debian y puede adaptarse a un Cloud Server de DonWeb Cloud, una instancia Linux propia o un entorno de laboratorio.

Qué vas a construir

Vas a instalar CloudWatch Agent en un servidor Linux y dejar una configuración base para recolectar:

  • Métricas de memoria.
  • Métricas de disco del filesystem raíz.
  • Logs desde /var/log/syslog.

El resultado esperado es una configuración documentada, con comandos de prueba y recomendaciones para pasar de laboratorio a producción.

Cuándo conviene usar CloudWatch Agent

Este enfoque es útil cuando:

  • Necesitas una solución operativa y repetible, no solo una explicación conceptual.
  • El servicio va a vivir en un servidor cloud y requiere seguridad básica desde el primer despliegue.
  • Necesitas dejar evidencia de configuración, pruebas y criterios de mantenimiento.
  • Quieres reducir configuraciones manuales difíciles de auditar.

Requisitos previos

Antes de empezar, asegúrate de contar con:

  • Cloud Server o servidor Ubuntu/Debian actualizado.
  • Usuario con permisos sudo o rol equivalente.
  • Acceso SSH o consola segura.
  • Backup previo si el servidor ya tiene datos o tráfico real.
  • Credenciales con mínimo privilegio si se usan comandos AWS.
  • Ventana de mantenimiento para cambios de red, firewall, runtime, base de datos o credenciales.

Flujo de trabajo recomendado

El flujo recomendado es:

  1. Preparar el entorno.
  2. Instalar los componentes necesarios.
  3. Configurar métricas y logs.
  4. Probar localmente.
  5. Reforzar seguridad y documentar mantenimiento.

Evita cambiar varias capas a la vez. Si algo falla, una modificación incremental es más fácil de revisar y revertir.

Comandos principales

Descarga el paquete del agente para Ubuntu en arquitectura amd64:

wget https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb

Instala el paquete:

sudo dpkg -i amazon-cloudwatch-agent.deb

Ejecuta el asistente de configuración:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard

Reinicia el servicio:

sudo systemctl restart amazon-cloudwatch-agent

Revisa el estado del agente:

sudo systemctl status amazon-cloudwatch-agent

Configuración base

Como punto de partida, puedes usar una configuración base para recolectar memoria, disco y logs del sistema:

{
  "metrics": {
    "metrics_collected": {
      "mem": {},
      "disk": {
        "resources": ["/"]
      }
    }
  },
  "logs": {
    "logs_collected": {
      "files": {
        "collect_list": [
          {
            "file_path": "/var/log/syslog",
            "log_group_name": "linux/syslog"
          }
        ]
      }
    }
  }
}

Paso 1: Preparar el servidor

Antes de ejecutar comandos, confirma que estás en el servidor correcto. Si el servicio ya recibe tráfico o contiene datos reales, trabaja dentro de una ventana de mantenimiento y asegúrate de tener una ruta de rollback.

Descarga el paquete de CloudWatch Agent:

wget https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb

Verifica la salida antes de continuar. Si hay errores de red, permisos o resolución DNS, corrígelos antes de instalar el paquete.

Paso 2: Instalar los componentes necesarios

Instala el paquete descargado:

sudo dpkg -i amazon-cloudwatch-agent.deb

Revisa que la instalación finalice sin errores. Si el comando falla, valida permisos, dependencias del sistema y que el archivo .deb se haya descargado correctamente.

Paso 3: Configurar métricas y logs

Puedes generar la configuración con el asistente interactivo:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard

También puedes partir de una configuración base como la siguiente:

{
  "metrics": {
    "metrics_collected": {
      "mem": {},
      "disk": {
        "resources": ["/"]
      }
    }
  },
  "logs": {
    "logs_collected": {
      "files": {
        "collect_list": [
          {
            "file_path": "/var/log/syslog",
            "log_group_name": "linux/syslog"
          }
        ]
      }
    }
  }
}

Antes de aplicar la configuración, revisa que el archivo de log exista y que el usuario o rol asociado tenga permisos suficientes para enviar información a CloudWatch.

Paso 4: Probar que funciona

Reinicia el agente para aplicar los cambios:

sudo systemctl restart amazon-cloudwatch-agent

Luego revisa el estado del servicio:

sudo systemctl status amazon-cloudwatch-agent

Valida que el agente quede activo y revisa los logs si el servicio no inicia correctamente.

Paso 5: Reforzar seguridad y dejar mantenimiento

Después de confirmar que el agente funciona, documenta la configuración aplicada y deja criterios mínimos de mantenimiento:

  • Qué métricas se recolectan.
  • Qué archivos de log se envían.
  • Qué usuario, rol o credencial se usa.
  • Qué permisos fueron necesarios.
  • Cómo revisar el estado del agente.
  • Qué hacer si el servicio deja de enviar métricas o logs.

Vuelve a revisar el estado cuando termines:

sudo systemctl status amazon-cloudwatch-agent

Problemas frecuentes

Permisos insuficientes: revisa el usuario, el grupo, el rol IAM o el contexto de ejecución antes de repetir comandos con más privilegios.

Puerto ocupado o cerrado: valida con ss -tulpn, reglas de firewall y security groups antes de asumir que la aplicación falló.

Variables de entorno ausentes: confirma archivos .env, secretos del orquestador y evita imprimir credenciales en logs.

El servicio inicia pero no responde: revisa healthchecks, logs, dependencias de base de datos y resolución DNS.

Rollback no definido: conserva una versión anterior, snapshot, backup o manifiesto previo antes de aplicar cambios sensibles.

Buenas prácticas para producción

  • Usa mínimo privilegio para usuarios, roles, contenedores y reglas de red.
  • Versiona configuraciones sin incluir secretos.
  • Prueba restauraciones de backup, no solo la creación del archivo.
  • Activa logs y alertas antes de necesitar diagnosticar un incidente.
  • Documenta quién puede ejecutar cambios y qué evidencia debe quedar.
  • Revisa periódicamente dependencias, imágenes y paquetes del sistema.

Advertencias de seguridad

No ejecutes estos pasos contra infraestructura de terceros ni contra producción sin autorización.

Los comandos y recomendaciones de seguridad están orientados a defensa, mitigación y auditoría autorizada. Si detectas credenciales expuestas, rota primero y luego investiga el alcance.

Paso 1: preparar el servidor comprobando que hay sudo disponible y backup realizado


Paso 2: instalar el paquete .deb del agente de CloudWatch en el servidor


Paso 3: configurar las métricas de memoria, disco y el log del sistema que se van a enviar
Paso 4: probar que funciona reiniciando el agente y validando el envío de métricas y logs
Paso 5: revisar el estado, los permisos y las alertas del agente ya en marcha

Cloud Servers by Donweb

Ya mides lo que hace tu servidor. Si prefieres facturación local, hay otra opción.
Alojamiento ultra rápido, escalable y con alta disponibilidad.

  • Performance que te sorprenderá
  • Rápida escalabilidad y sin limitaciones
  • Arquitectura de alta disponibilidad
  • Soporte experto y ejecutivos de cuenta
  • Pagos en tu moneda y facturación local

Compara con un Cloud Server local