mobarrio / cloudwatch_wrapper

Repositorio para realizar consultas a Cloudwatch via API REST utilizando AWS-SDK + NodeJS
MIT License
1 stars 2 forks source link

cloudwatch_wrapper

Repositorio para realizar consultas a Cloudwatch via API REST utilizando AWS-SDK + NodeJS El objetivo es que mediante una llamada HTTP podamos extraer datos de CloudWatch sin la necesidad de instalar paqueteria adisional en nuestro servidor de Zabbix.

Esquema de conexion

Instalacion de Docker-Compose

# curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
# ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# chmod 755 /usr/local/bin/docker-compose
# docker-compose --version

AWS-SDK Credentials

El acceso se realiza via el archivo de credenciales.

# cat /root/.aws/credentials
[default]
aws_access_key_id = AKI5GDGSDSDS4ASFRET4
aws_secret_access_key = SFgkl43DFSDF45rgfGDF56tHGF45SDFSVsdtgD3f
aws_session_token = 

Utilizar la imagen de Dockerhub

# docker-compose up -d

Compilar y arrancar el contenedor

# docker-compose -f docker-compose.build.yml up -d

Parar el contenedor

# docker-compose down

Generar clave RSA 256

# ssh-keygen -t rsa -b 4096 -m PEM -f config/jwtRS256.key

Usuarios y Password

Usr admin
Psw zabbix

Zabbix Demo Template

Template Macros

{$BASICTOKEN}  - Token Basic para poder conectarnos a la API
{$REGION}      - Region de AWS
{$API_SERVER}  - IP y puerto en que escucha la API. Ej. http://10.1.2.100:3000

LLD macros

{#ACCOUNT}    - Tipo de cuenta a la que estamos conectados.
{#TOKEN}      - Bearer token para poder conectarnos a la API y recolectar metricas.
{#TTL}        - TTL del Bearer token.

Hosts Macros

{$REDISDBNAME} - ElastiCache DBName solo pare los ejemplos de monitorizacion de ElastiCache.

Video

CloudWatch

Imagenes

Zabbix Latest Data

Login Help API Help Get Bearer Token Verify Bearer Token List Metrics Get Metrics