Instalación Automatica Agente Linux
Instalación automatica para Agente Linux Distribuciones soportadas:
CentOS7, CentOS8, Debian 9.x, Ubuntu 18.x, Rasbian 9x, Raspberry OS 10
- Introducción
- Descargar y descomprimir el script
- Ejecutar el script
- Agentes en Consola WEB
- Como funciona Speedtest
- Monitores adicionales
Introducción
En la siguiente guía vamos a instalar en forma automática el agente de PandoraFMS en Linux en las distribuciones soportadas:
- CentOS 7
- CentOS8
- Debian 9.x o Superior
- Ubuntu 18.x o Superior
- Raspbian 9.x
- RaspberryOS 10.x
El agente tendrá los valores básicos del sistema operativo y ejecutara un Speedtest cada media hora y estará disponible para poder analizar la velocidad de nuestro enlace de internet
¿Que vamos a monitorizar en Linux?
La respuesta es muy simple vamos a ver los valores que son importante tener en cuenta en la salud de un sistema operativo los cuales son:
Porcentaje de uso de Disco
Tiempo de espera de CPU
Uso de CPU
Uso de red
Velocidad de internet (Speed Test)
La medición de velocidad de internet se hace utilizando el cliente de Linux de la pagina https://www.speedtest.net/ una herramienta muy confiable para este tipo de pruebas, vamos a obtener velocidad de descarga y carga como se puede ver en la siguiente imagen:
Descargar y descomprimir el script
El script esta disponible en forma gratuita en la librería de PandoraFMS
para descargar el script ejecutamos el comando
wget https://pandorafms.com/library/wp-content/uploads/2020/11/Install-PandoraAgent.tgz
Luego descomprimimos el archivo con el comando
tar xvzf Install-PandoraAgent.tgz
Si todo funciono en forma correcta vemos algo similar a esto
Ejecutar el script
El script soporta la siguientes distribuciones de Linux: CentOS7, CentOS8, Debian 9.x o superior, Ubuntu 18.x o Superior, Raspbian 9.x, Raspberry OS 10.x
Se requiere disponer de conexión a internet ya que el agente se descarga como parte del proceso
Ingresamos en el directorio del agente y luego lo ejecutamos con el comando de la siguiente forma
./Install_agent.sh [server]
Un Ejemplo practico seria: ./Install_agent.sh 192.168.110.20, donde la IP 192.168.110.20 corresponde a nuestro servidor de PandoraFMS
El script detecta en forma automática cual es la distribución de Linux en esta guía veremos el ejemplo con una Raspberry PI, pero obtendremos un resultado similar en cualquiera de las distribuciones soportadas por el mismo
Vemos el ejemplo de ejecución:
Esperamos que el script termine de ejecutarse, demora unos minutos dependiendo de la conexión a internet que disponemos para realizar el proceso:
Agentes en Consola WEB
Vemos los agentes creados con este script
En rojo se pueden ver los valores del Speedtest ejecutado en un agente con CentOS 8 (La medición esta expresada en MB/seg)
Como funciona Speedtest
Ya tenemos instalado el script ahora vamos a ver como funciona el mismo para poder entender y poder aprender mas sobre el funcionamiento de PandoraFMS, al ejecutar el instalador se crea la carpeta /root/bin (en caso de que no exista), dentro de esta carpeta vamos a encontrar varios scripts
El archivo pandora_agent.conf (es la versión inicial creada por el script al realizar la instalación), en cuanto al funcionamiento de la herramienta de Speedtest se utiliza la el cliente en Python el cual es el archivo speedtest-cli, para que se puedan tomar las métricas se crea una tarea programada que ejecuta el script /bin/speedtest.sh el cual se ejecuta una vez cada media hora pueden validarlo con el comando
crontab -l
El mismo genera un archivo speedtest.log, donde el agente de PandoraFMS, toma las métricas
Los scripts speedtest_upload.sh y speedtest_download.sh son los que toman los valores para poder sumarlos en PandoraFMS
Para finalizar las lineas correspondientes a los test de velocidad de internet en nuestro archivo de configuración pandora_agent.conf son las siguientes:
# SpeedTest Download
module_begin
module_name SpeedTestDownload
module_type generic_data
module_description Speedtest Download
module_exec /root/bin/speedtest_download.sh
module_group Networking
module_end
# Ping SpeedTest Upload
module_begin
module_name SpeedTestUpload
module_type generic_data
module_description Speedtest Upload
module_exec /root/bin/speedtest_upload.sh
module_group Networking
module_end
Monitores adicionales
Al realizar la instalación del agente en forma automatizada se sumaron algunos scripts de gran utilidad que no forman parte de la instalación automatizada pero pueden utilizar simplemente agregando algunas lineas en el archivo pandora_agent.conf como podemos ver en los siguientes ejemplos
Ping a una IP, para el ejemplo vamos a utilizar el DNS de google 8.8.8.8, para que funcione será suficiente con agregar las siguientes lineas (utiliza el script /root/bin/ping.sh)
## Ping DNS Google
module_begin
module_name Ping-DNS-Google
module_type generic_data
module_description Ping a DNS Google
module_max_critical 1
module_exec /root/bin/ping.sh 8.8.8.8
module_group Networking
module_end
Ejemplo Ping a Switch 192.168.10.10
Para poder medir la cantidad de paquetes perdidos a una IP por ejemplo el DNS de google 8.8.8.8 será suficiente con agregar las siguientes lineas (utiliza el script /root/bin/pl.sh)
## Perdida de paquetes a DNS Google 8.8.8.8
module_begin
module_name PorcentajePerdidaPaquetesDNSGoogle
module_type generic_data
module_description Porcentaje Perdida Paquetes DNS Google 8.8.8.8
module_exec /root/bin/pl.sh 10 8.8.8.8
module_group Networking
module_end
Ejemplo realizando una prueba a google.com.ar
Para completar los monitores que son útiles para conocer la salud de nuestro enlace de internet con las siguientes lineas podemos medir la latencia de red a una IP es interesante utilizar la misma que en ping del paso anterior
## Latencia de Red
module_begin
module_name PingLatenciaGoogleDNS
module_type generic_data
module_description PingLatenciaDNSGoogle
module_exec ping 8.8.8.8 -c 3 | grep "rtt min" | awk '{ print $4 }' | cut -f 2 -d "/"
module_group Networking
module_end