AWS Cloud Watch
Es un servicio que permite monitorear nuestros recursos de AWS así
como nuestras aplicaciones en tiempo real. La forma en que trabaja
esta basada en la definición de métricas, básicamente existen
métricas para cualquier servicio de AWS. Si bien podemos revisarlas
en cualquier momento la idea es automatizar el monitoreo creando
alarmas y enviando notificaciones basadas en las alarmas.
Hablando un poco más sobre las métricas estas pertenecen a un
namespace y tienen un timestamp asociado a ellas. Ademas las métricas
cuentan con atributos específicos llamados dimensiones, cada métrica
puede tener hasta 10 dimensiones. También podemos crear nuestras
propias métricas para monitorear nuestro servicios como lo puede ser
información especifica del sistema operativo. Los datos de nuestras
métricas son conservados por 2 semanas y en caso de que quisiéramos
conservarlos por más tiempo podemos exportarlos a S3.
Las ofertas de monitoreo son basic y detailed. El monitoreo básico
envía datos a CloudWatch cada 5 minutos para un limitado número de
métricas previamente seleccionadas sin cargo. Esta opción es la que
se usa por default. El monitoreo detallado envía datos cada minuto y
permite agregar más datos por un costo adicional. Usando esta opción
podemos tener mejores tiempos de respuesta frente a algunas
eventualidades que puedan presentar nuestros servicios.
Adicionalmente los CloudWatch Dashboards nos permite visualizar de
manera simple y práctica nuestras métricas. Estos Dashboards son
globales y permiten personalizar valores como husos horarios o
periodos de tiempo de visualización. Es la forma más rápida de
ver comportamientos de nuestras métricas.
Amazon CloudWatch Logs
Nuestras
aplicaciones, instancias u otros servicios pueden enviar logs a
CloudWatch usando el SDK, pero los más comunes son los siguientes:
- Elastic Beanstalk
- EC2
- AWS Lambda
- VPC Flow Logs
- API Gateway
- CloudTrail
- CloudWatch Log agents
- Route 53
Los logs
generalmente son exportados a S3 para archivarlos o enviados a
clusters de ElasticSearch para ser analizados.
Existen la
posibilidad de definir filtros para nuestros logs usando filter
expressions, así como el uso de consultas definidas para
exploraciones más concretas usando Insights.
CloudWatch usa log streams para almacenar lo log events de una sola fuente. Y estos son agrupados en log groups.Todo log stream debe estar asociado a un grupo y el periodo de retención de los log groups determina el tipo que se conservaran esos streams. Es posible eliminar log streams, pero no entradas individuales.
CloudWatch usa log streams para almacenar lo log events de una sola fuente. Y estos son agrupados en log groups.Todo log stream debe estar asociado a un grupo y el periodo de retención de los log groups determina el tipo que se conservaran esos streams. Es posible eliminar log streams, pero no entradas individuales.
Es importante
otorgar los permisos pertinentes para el IAM que utilizaremos para el
correcto envió de logs a CloudWatch Logs.
Para nuestras
instancias es posible instalar un agente que se encargue de enviar
los datos directamente a CloudWatch Logs. Usando Amazon Linux es muy
simple solo hay que acceder a nuestra instancia usando ssh y
con una cuenta con los permisos suficientes instalar awslogs,
posteriormente habrá que revisar que la información sobre la región
de nuestra instancia es correcta revisando el archivo
“/etc/awslogs/awscli.conf”. Una vez instalado y revisado que la
configuración es correcta es necesario iniciar el servicio awslogsd.
AWS CloudWatch
Alarms
Son usadas para
provocar notificaciones en base a nuestras métricas definidas.
Generalmente los receptores de estas notificaciones son ASC, EC2
Actions o SNS.
Existen tres tipos
de alarmas: OK, INSUFFICIENT_DATA y ALARM.
AWS CloudWatch
Events
Crea JSON con
información relevante sobre los cambios ocurridos. Hay 2 tipos de
Eventos:
- Scehdule
- Event pattern
No hay comentarios.:
Publicar un comentario