Tabla de contenido:

Instalar y configurar Shinken Network Monitor en Raspberry Pi: 14 pasos
Instalar y configurar Shinken Network Monitor en Raspberry Pi: 14 pasos

Video: Instalar y configurar Shinken Network Monitor en Raspberry Pi: 14 pasos

Video: Instalar y configurar Shinken Network Monitor en Raspberry Pi: 14 pasos
Video: Best Server & Application Monitor for free with Checkmk 2024, Noviembre
Anonim
Instalar y configurar Shinken Network Monitor en Raspberry Pi
Instalar y configurar Shinken Network Monitor en Raspberry Pi

NOTA: shinken se actualizó por última vez en MAR2016 a una versión estable de 2.4.3. Entonces, hace varios años pasé a otras formas de monitorear la red doméstica. Además, php5 no parece estar disponible

Por lo tanto, ¡no utilices este instructivo!

Instale y configure la última versión de shinken Network Monitor para un hogar o una pequeña empresa.

En el trabajo, mi equipo desarrolla el software para más de 75 clases de servidores, con más de 300 instancias en múltiples centros de datos y puntos de presencia. Hay un equipo operativo experimentado que supervisa y mantiene estos servidores funcionando las 24 horas del día, los 7 días de la semana. No tengo nada parecido a su conocimiento o experiencia. Aparte de mí, no tengo a nadie que soporte mi red doméstica. Y no quiero dedicar tiempo a monitorear y mantener mi red doméstica.

La LAN de mi hogar tiene más de 40 dispositivos conectados, que es mucho más grande de lo que esperaba. Muchas casas, tal vez incluso la suya, tienen una gran cantidad de dispositivos conectados. Ejemplos de dispositivos en red son:

  • laptops y tablets
  • lectores de libros electrónicos
  • celulares
  • termostatos nido, timbres de timbre
  • sistema de seguridad, sistema de riego
  • televisores inteligentes, receptores U-verse y DVR
  • servidores de transmisión de medios (Apple TV, Roku, ChromeCast FireStick)
  • proyectos de domótica raspberry pi

A medida que se conecten más dispositivos domésticos, espero que mi red crezca.

¿Por qué una casa debería tener un monitor de red? Hay servidores y servicios críticos en una red doméstica. Los ejemplos de servidores críticos incluyen: puerta de enlace ISP, punto de acceso inalámbrico, sistema de seguridad y sistema de riego. Entre los ejemplos de servicios críticos se incluyen: realizar copias de seguridad de PC o MAC, garantizar que Wi-Fi o Internet estén funcionando a la velocidad requerida. Para garantizar que los servicios / servidores críticos se estén ejecutando, deben comprobarse manualmente a intervalos regulares, lo que requiere mucho tiempo. Alternativamente, los servidores deben verificarse automáticamente mediante un monitor de red, que intenta corregir el problema y envía una alerta si no puede corregirlo.

Shinken es un monitor de red que se ejecuta en cualquier computadora. En este instructivo, haré que ejecute una Raspberry Pi (2 o 3) con Diet-Pi o raspbian.

Existen muchas aplicaciones excelentes de monitoreo de redes. Algunos ejemplos son: SolarWinds, NetCool y nagios. Estas aplicaciones son capaces de monitorear, identificar problemas, autocorregirse y enviar alertas.

En general, he intentado mantener mi red a bajo costo y simple de mantener y actualizar. Me he centrado en las aplicaciones de código abierto escritas en una pequeña cantidad de idiomas. Mis lenguajes de elección son: python, bash, html y css.

Shinken es una reescritura de código abierto de nagios en python. Entonces, shinken encaja dentro de mis limitaciones y satisface mis necesidades.

El instructable proporciona instrucciones paso a paso si desea hacerlo a mano. Pero quiero un proceso repetible, por lo que también incluyo un script de instalación desatendida en el apéndice, que hace todo con un par de comandos. Si algo sale mal, simplemente ejecute la instalación desatendida y debería solucionar la mayoría de los problemas.

Paso 1: Reúna las piezas

Con el tiempo, he descubierto que las partes siguientes funcionan mejor en mis aplicaciones. Estas piezas son más caras que las que se incluyen en el kit de inicio habitual.

Obtenga repuestos y herramientas (precios en USD):

  • Raspberry Pi 2 modelo B (Pi 3) Element14 $ 35 ($ 39)
  • Panda 300n WiFi Adapter Amazon $ 16.99 (no es necesario si se usa Pi 3)
  • Adaptador de corriente USB 5.2V 2.1A de Amazon $ 5.99
  • Cable micro USB a USB de 3 pies desde Amazon $ 4.69
  • Cable Ethernet CAT5e / 6 $ x.xx, depende de la longitud
  • Caja de Amazon $ 6.99
  • SanDisk Ultra 16 GB microSDHC Class 10 con adaptador (SDSQUAN-016G-G4A) de Amazon $ 8.99
  • Artículos comunes o reutilizables:

    • MacBook Pro (uso una MAC porque ejecuta linux como su sistema operativo base. Sin embargo, se puede usar una PC con Windows)
    • FTDI TTL-232R-RPI Cable serial a USB de Mouser $ 15
    • TV con puerto HDMI
    • Teclado USB
    • Ratón USB
    • Cable HDMI (solo se necesita en la primera pasada)

Notas:

  • El texto encerrado entre espadas, como ♣ reemplazar-esto ♣, debe reemplazarse con un valor real. Por supuesto, quita las espadas.
  • Los comandos se indican con un $. Si tiene comandos de cortar y pegar, no copie el archivo $.

Paso 2: Configura Raspberry Pi

Utilice este instructivo para configurar la Raspberry Pi con DietPi. Si lo prefiere, Raspbian se puede utilizar con este instructable.

Cambié el nombre de host a ♣ monitor-hostname ♣. Reemplaza los elementos en ♣ con valores reales.

Paso 3: Abra la ventana de terminal e inicie sesión

Antes de cada uno de los siguientes pasos:

  • Abra una ventana de terminal en una MacBook o PC y luego
  • Inicie sesión en Raspberry Pi

$ ssh pi @ ♣ dirección-ip-raspberry-pi ♣

Si instaló avahi-daemon en su Raspberry Pi, entonces puede iniciar sesión de esta manera (soy vago y no quiero recordar direcciones IP):

$ ssh pi ♣ nombre de host ♣.local

Paso 4: Actualice y actualice siempre

Antes de instalar nuevos paquetes en un servidor, actualice y actualice siempre.

  • Actualizar descarga las listas de paquetes más recientes de los repositorios correspondientes.
  • Upgrade actualiza los paquetes
  • Autoremove elimina los paquetes que ya no son necesarios
  • Reiniciar es opcional. Algunos servicios deben reiniciarse después de una actualización. Reiniciar es la forma perezosa de garantizar que todos los servicios requeridos se reinicien correctamente

$ sudo apt-get update -y

$ sudo apt-get upgrade -y $ sudo apt-get autoremove $ sudo reboot

O puede omitir todos los pasos restantes y utilizar la instalación desatendida en uno de los apéndices.

Paso 5: Instale las dependencias de Shinken

A menudo, shinken se ejecuta en un servidor muy grande y se instala en una máquina virtual (VM). Un servidor grande es capaz de ejecutar varias máquinas virtuales. Las máquinas virtuales tienen muchos beneficios al administrar varios servidores o varias instancias del mismo servidor. Las máquinas virtuales hacen un uso eficiente de los costosos recursos del servidor.

Una máquina virtual puede ejecutarse en Raspberry Pi. Sin embargo, muchas de las ventajas de ejecutar una máquina virtual en una Raspberry Pi de $ 35 se pierden. Shinken NO requiere una VM. Este instructable no usa una máquina virtual.

Instale las dependencias de shinken: sqlite3, php5, python3 y algunas bibliotecas de python:

$ sudo apt-get install sqlite3 -y

$ sudo apt-get install php5 -y $ sudo apt-get install python3 -y $ sudo apt-get install python-pip python-pycurl python-cherrypy3 python-setuptools -y

Paso 6: Instale Shinken

Agregue el usuario shinken e instale shaken usando pip.

$ sudo adduser shinken

$ sudo pip instalar shinken $ sudo adduser shinken sudo

Lo anterior instala shinken y algunos demonios en /etc/init.d:

  • poller shinken
  • reaccionador de shinken
  • receptor shinken
  • Shinken-planificador
  • corredor de shinken

Paso 7: inicializar e iniciar Shinken

En caso de que Shinken esté corriendo, deténgalo. Además, cree un directorio de registro y establezca los permisos.

$ sudo mkdir / var / log / shinken

$ sudo chmod 777 / var / log / shinken $ sudo servicio shinken stop

Ejecute lo siguiente para inicializar y comenzar shinken:

$ sudo shinken --init

$ sudo /etc/init.d/shinken start

Verifique que shinken esté configurado correctamente:

$ / usr / bin / shinken-árbitro -v -c /etc/shinken/shinken.cfg

Hacer que shinken comience en el arranque

$ sudo update-rc.d valores predeterminados de shinken

Paso 8: Instalar y configurar Sqlite3

Configure sqlite para que sea la base de datos shinken:

$ sudo shinken instalar sqlitedb

Cree un archivo de configuración para agregar sqlite:

$ sudo nano /etc/shinken/modules/sqlitedb.cfg

Estoy usando sqlite3. No está claro cómo se asigna esto a sqlite3 o a un archivo de base de datos sqlite en particular.

definir módulo {

nombre_módulo sqlitedb tipo_módulo sqlitedb uri /var/lib/shinken/webui.db}

Cambiar permisos en el archivo

$ sudo chmod 777 /etc/shinken/modules/sqlitedb.cfg

Paso 9: Instale la interfaz de usuario web de Shinken

Instale la interfaz de usuario web de Shinken:

$ sudo / usr / bin / shinken buscar webui

$ sudo / usr / bin / shinken instalar webui Capturando: webui OK webui

Edite la configuración de la interfaz de usuario web y cambie la entrada: CHANGE_ME. No estoy seguro de a qué se supone que debe cambiarse. Cambié a una palabra al azar.

$ sudo nano /etc/shinken/modules/webui.cfg

Edite el intermediario principal para incluir los módulos de la interfaz de usuario web

$ sudo nano /etc/shinken/brokers/broker-master.cfg

Cambiar la línea:

modulos

para

módulos webui

Reiniciar shinken

$ sudo /etc/init.d/shinken reiniciar

Paso 10: agregue usuarios y contraseñas

Asegúrese de que haya un método instalado para autorizar a los usuarios de shinken

$ sudo shinken instalar auth-cfg-password Editar la configuración de la interfaz de usuario web de shinken

$ sudo nano /etc/shinken/modules/webui.cfg

Cambiar para lucir como:

módulos auth-cfg-contraseña

Vince35 sugiere que es necesario reiniciar en este punto:

$ sudo /etc/init.d/shinken reiniciar

Abra una ventana del navegador e inicie sesión con contraseña y nombre de usuario: admin, admin. Ingrese lo siguiente en la URL del navegador (elimine los espacios alrededor de los dos puntos):

♣nombredehost♣.local:7767

iniciar sesión usando admin, raspberry-pi-password

¡Y debería funcionar!

Paso 11: Apéndice: Referencias

Monitoreo de red

Interesante documento de descripción general de la supervisión de la red

Monitores de red

  • fing:
  • HowToGeek.com - excelente fuente
  • MRTG:
  • Netbeez:
  • Raspberry Pi Geek:
  • Shinken: reescritura de Nagios en python:
  • Instalación de Shinken:
  • Configuración de la interfaz de usuario web de Shinken:
  • GitHub systemd:
  • Rob Layton: Configuración manual de un servidor de monitoreo Shinken

Paso 12: Apéndice: Actualizaciones

15OCT2016: Imagen de portada actualizada para incluir logotipos de Shinken y Raspberry Pi

16OCT2016: reformuló algunos pasajes. Sin cambios técnicos.

19OCT2016: Instructable actualizado y UAI para iniciar shinken al reiniciar

Mejoras futuras:

Agregue los sistemas que se monitorearán, ya sea en el instructable o como un apéndice con scripts de ejemplo

Paso 13: Apéndice: Solución de problemas

Cambiar permisos en directorios

/ usr / bin

/etc/init.d / etc / shinken / var / lib / shinken / modules / webui / / etc / shinken / modules /

Reinicié la Raspberry Pi, pero shinken no arrancaba. No pude escribir en los directorios de registro. Entonces, hice los siguientes cambios:

sudo mkdir / var / log / shinken

sudo chmod 777 / var / log / shinken

reducir localhost

Si localhost se muestra como inactivo.

$ sudo nano / etc / network / interfaces

Por el motivo que sea, mi archivo / etc / network / interfaces suele estar estropeado. Cambie esta línea:

auto lo iface lo inet loopback

a estas dos líneas:

auto lo

iface lo inet loopback

Y reiniciar

$ sudo reiniciar

El init.d debería comenzar a shinken automáticamente, pero tuve que hacer esto:

$ sudo /etc/init.d/shinken reiniciar

Paso 14: Apéndice: Instalación desatendida

Haga que la instalación y configuración de shinken sea muy fácil automatizando los pasos instrucibles utilizando un script de instalación desatendida de bash. El script asume un raspberry pi ejecutando raspbian o dietpi, que fue configurado usando uno de los enlaces incrustados.

Terminé el guión en github y

  • probado la fuente en dietpi
  • probado el script de instalación desatendida en dietpi

    • corrió una vez
    • se ejecutó varias veces, con interrupciones CTRL-c
  • probado el script de instalación desatendida en raspbian y diet-pi

El script asume el nombre de usuario = pi y la contraseña = raspberry, y el script está intentando instalar shinken. Si no son correctos, edite el archivo en consecuencia.

Abra la ventana de terminal en una MacBook o PC y ejecute los siguientes comandos:

$ ssh pi @ ♣ dirección IP ♣

$ sudo wget https://raw.githubusercontent.com/dumbo25/uai_install_shinken_rpi/master/shinken_uai.sh $ sudo chmod o + x shinken_uai.sh $ sudo bash shinken_uai.sh $ sudo reiniciar $ sudo /etc/init.d/ reinicio shinken

El script tarda unos minutos en ejecutarse en diet-pi.

Asegúrese de reiniciar la Raspberry Pi y espere hasta que comience Shinken

Abra un navegador y en la ventana URL ingrese:

♣ dirección IP ♣: 7767

Inicie sesión con admin y ♣ raspberry-pi-password ♣

¡Y debería funcionar!

Recomendado: