Qué Hace Tu Asterisk Cuando No Miras
Qué Hace Tu Asterisk Cuando No Miras
Qué Hace Tu Asterisk Cuando No Miras
CUANDO NO MIRAS
Elio Rojano
Quién Soy…
• Elio Rojano @hellc2
• Linuxero y defensor del Software Libre
• Más de 12 años trabajando diariamente con VoIP y Asterisk
• Creador de la web sinologic.net
• Co-creador de la comunidad Asterisk-ES
• Consultor y desarrollador de software
• Lector de libros sobre gatitos, perritos y cerditos desde hace 2 años
Introducción
Introducción
Asterisk cuenta con un interfaz para ver qué hace en tiempo real.
C.L.I.
Console Line Interface
Introducción
Por desgracia, existen ciertas razones por las que no podemos estar
siempre del CLI controlando qué ocurre en nuestro Asterisk…
/etc/asterisk [logfiles]
/var/log/asterisk/messages
/var/log/asterisk/full
Logs
Por esta regla de tres, si cada aplicación guarda su archivo de log,
tendremos un directorio /var/log con cientos de archivos, cada uno de
una aplicación diferente.
Para evitar esto, se utiliza una herramienta/protocolo llamado syslog
syslog
514/UDP
9
…
Logs
SNMP
Servicios
Sistema Operativo
Hardware
Visión Global
Y se obtenían algunas páginas y gráficas muy interesantes:
CACTI MRTG
RRDTOOL
Sistemas de Monitorización
ELK Graphite InfluxData
Mostrar
Servicios
Hardware
Capturar
Sistemas de Monitorización
SNMP
Simple Network Management Protocol
Mostrar
Un protocolo muy útil y práctico aunque poco intuitivo
Mostrar
StatsD
https://github.com/etsy/statsd
Almacenar
13 - 14 …
Capturar
Sistemas de Monitorización
Mostrar
CollectD
https://collectd.org/
Almacenar
SNMP …
Capturar
Sistemas de Monitorización
Mostrar Logstash
Telegraf
Graylog
CollectD
Almacenar
SNMP
Capturar
Sistemas de Monitorización
Almacenador
Mostrar
Output plugins
Almacenar Capturador
Input plugins
Capturar
Sistemas de Monitorización
Asistentes a la conferencia
2016-11-16 12:24:31 25
2016-11-16 12:24:32 26
2016-11-16 12:24:33 26
Capturar 2016-11-16 12:24:34 25
Sistemas de Monitorización
• Bases de datos no relacionales
• Basados en SQL, pero bastante limitadas
Mostrar • Para ser rápidos, se sacrifican funcionalidades
• Almacenan valores simples (decimales, enteros, …)
• La gestión se suele hacer vía JSON o interfaz web
Almacenar
Capturar
Sistemas de Monitorización
influxDB MQTT
Mostrar Graylog
Elasticsearch
Librato
Almacenar Kinesis
Kafka Datadog
Capturar Graphite
Sistemas de Monitorización
Almacenar
Capturar
Sistemas de Monitorización
Conceptos triviales…
Mostrar
Gauges (indicador)
Almacenar
Counter (contadores)
Capturar
Sistemas de Monitorización
Almacenar
Capturar
Sistemas de Monitorización
Aplicaciones web con editores de estilo para
personalizar los datos y gráficas que queremos ver.
Mostrar
Almacenar
Capturar
Sistemas de Monitorización
Aplicaciones web con editores de estilo para
personalizar los datos y gráficas que queremos ver.
Mostrar
Almacenar
Capturar
Sistemas de Monitorización
Aplicaciones web con editores de estilo para
personalizar los datos y gráficas que queremos ver.
Mostrar
Almacenar
Capturar
Grafana
Sistemas de Monitorización
Aplicaciones web con editores de estilo para
personalizar los datos y gráficas que queremos ver.
Mostrar
Almacenar
Capturar
Chronograph
Sistemas de Monitorización
Aplicaciones web con editores de estilo para
personalizar los datos y gráficas que queremos ver.
Mostrar
Almacenar
Capturar
Kibana
Sistemas de Monitorización
Aplicaciones web con editores de estilo para
personalizar los datos y gráficas que queremos ver.
Mostrar
Almacenar
Capturar
Graylog
Sistemas de Monitorización
Monitorizando pfSense con ELK…
Mostrar
Almacenar
Capturar
Cómo hacer esto con
Utilizando STATSD https://github.com/etsy/statsd
Más información:
https://wiki.asterisk.org/wiki/display/AST/Utilizing+the+StatsD+Dialplan+Application
Conectando Asterisk con todo el sistema
Telegraf
StatsD SNMP
res_statsd.so
app_statsd.so
HW Sistema
HW Network
Cómo monitorizar Asterisk
Si tenemos StatsD configurado, PJSIP también lo utiliza para exportar
datos de registro, llamadas, usuarios, contacts, etc…