Indholdsfortegnelse:

Installer og konfigurer Shinken Network Monitor på Raspberry Pi: 14 trin
Installer og konfigurer Shinken Network Monitor på Raspberry Pi: 14 trin

Video: Installer og konfigurer Shinken Network Monitor på Raspberry Pi: 14 trin

Video: Installer og konfigurer Shinken Network Monitor på Raspberry Pi: 14 trin
Video: Installere og konfigurere NordVPN på Android-enheter 2024, November
Anonim
Installer og konfigurer Shinken Network Monitor på Raspberry Pi
Installer og konfigurer Shinken Network Monitor på Raspberry Pi

BEMÆRK: shinken blev sidst opdateret i MAR2016 til en stabil version af 2.4.3. Så for flere år siden gik jeg videre til andre måder at overvåge hjemmenetværk på. Derudover ser php5 ikke ud til at være tilgængelig

Så brug venligst ikke denne instruerbare!

Installer og konfigurer den nyeste version af shinken Network Monitor til et hjem eller en lille virksomhed.

På arbejdet udvikler mit team softwaren til mere end 75 serverklasser med over 300 instanser i flere datacentre og tilstedeværelsespunkter. Der er et erfarent driftsteam, der overvåger og holder disse servere kørende 24x7. Jeg har ikke noget tæt på deres viden eller ekspertise. Udover mig selv har jeg ingen, der understøtter mit hjemmenetværk. Og jeg vil bruge nul tid på at overvåge og vedligeholde mit hjemmenetværk.

Mit hjemlige LAN har mere end 40 tilsluttede enheder, hvilket er meget større end jeg nogensinde havde forventet. Mange hjem, måske endda jeres, har et stort antal tilsluttede enheder. Eksempler på netværksenheder er:

  • bærbare computere og tablets
  • e -bog læsere
  • mobiltelefoner
  • rede termostater, ring dørklokker
  • sikkerhedssystem, kunstvandingssystem
  • smart-tv, U-vers-modtagere og DVR
  • streaming medieservere (Apple TV, Roku, ChromeCast FireStick)
  • hindbær pi hjemmeautomatiseringsprojekter

Efterhånden som flere hjemmeapparater bliver tilsluttet, forventer jeg, at mit netværk vokser.

Hvorfor skal et hjem have en netværksmonitor? Der er kritiske servere og tjenester på et hjemmenetværk. Eksempler på kritiske servere inkluderer: ISP -gateway, trådløst adgangspunkt, sikkerhedssystem og kunstvandingssystem. Eksempler på kritiske tjenester omfatter: sikkerhedskopiering af pc'er eller MAC'er, sikring af, at Wi-Fi eller internet fungerer med den nødvendige hastighed. For at sikre, at kritiske tjenester/servere kører, skal de kontrolleres manuelt med jævne mellemrum, hvilket kræver meget tid. Alternativt bør serverne automatisk kontrolleres ved hjælp af en netværksmonitor, der forsøger at rette problemet og sender en advarsel, hvis den ikke er i stand til at rette.

Shinken er en netværksmonitor, der kører på enhver computer. I denne instruktive vil jeg få det til at køre en Raspberry Pi (2 eller 3), der kører Diet-Pi eller raspbian.

Der findes mange fremragende netværksovervågningsapplikationer. Eksempler er: SolarWinds, NetCool og nagios. Disse applikationer er i stand til at overvåge, identificere problemer, selvkorrigere og sende advarsler.

Generelt har jeg forsøgt at holde mit netværk billigt og enkelt at vedligeholde og opdatere. Jeg har indsnævret mit fokus til open source -applikationer skrevet på et lille antal sprog. Mine foretrukne sprog er: python, bash, html og css.

Shinken er en open source -omskrivning af nagios i python. Så shinken passer inden for mine begrænsninger og opfylder mine behov.

Den instruerbare giver trin-for-trin instruktioner, hvis du vil gøre det i hånden. Men jeg vil have en proces, der kan gentages, så jeg inkluderer også et uovervåget installationsskript i tillægget, som gør alt med et par kommandoer. Hvis noget går galt, skal du bare køre den uden opsyn og det skal løse de fleste problemer.

Trin 1: Saml dele

Overarbejde har jeg fundet, at delene herunder fungerer bedst i mine applikationer. Disse dele er dyrere end dem, der findes i det sædvanlige startsæt.

Få dele og værktøjer (priser i USD):

  • Raspberry Pi 2 model B (Pi 3) Element14 $ 35 ($ 39)
  • Panda 300n WiFi Adapter Amazon $ 16,99 (ikke nødvendig, hvis Pi 3 bruges)
  • 5.2V 2.1A USB -strømadapter fra Amazon $ 5,99
  • Micro USB til USB kabel 3ft fra Amazon $ 4,69
  • CAT5e/6 Ethernet -kabel $ x.xx, afhænger af længden
  • Etui fra Amazon $ 6,99
  • SanDisk Ultra 16 GB microSDHC klasse 10 med adapter (SDSQUAN-016G-G4A) fra Amazon $ 8,99
  • Almindelige eller genanvendelige varer:

    • MacBook Pro (jeg bruger en MAC, fordi den kører linux som basis -OS. Dog kan en Windows -pc bruges)
    • FTDI TTL-232R-RPI Serielt til USB-kabel fra Mouser $ 15
    • TV med HDMI -port
    • USB tastatur
    • USB mus
    • HDMI -kabel (kun påkrævet ved første pas)

Bemærkninger:

  • Tekst i spader, f.eks. ♣ erstat-dette ♣, skal erstattes med en faktisk værdi. Fjern selvfølgelig spaderne.
  • Kommandoer angives med en $. Hvis kommandoer til at klippe og indsætte, skal du ikke kopiere $.

Trin 2: Konfigurer Raspberry Pi

Brug denne instruks til at konfigurere Raspberry Pi, der kører DietPi. Hvis du foretrækker det, kan Raspbian bruges med denne instruerbare.

Jeg ændrede værtsnavnet til ♣ monitor-hostname ♣. Erstat emner i with er med faktiske værdier.

Trin 3: Åbn terminalvindue og login

Før hvert af følgende trin:

  • Åbn et terminalvindue på en MacBook eller PC, og derefter
  • Log ind på Raspberry Pi

$ ssh pi@♣ hindbær-pi-ip-adresse ♣

Hvis du installerede avahi-daemon på din Raspberry Pi, kan du logge ind på denne måde (jeg er doven, og jeg vil ikke huske IP-adresser):

$ ssh pi ♣ værtsnavn ♣.lokal

Trin 4: Opgrader og opdater altid

Inden du installerer nye pakker på en server, skal du altid opdatere og opgradere.

  • Opdater downloader de nyeste pakkelister fra relevante lagre.
  • Opgradering opdaterer pakkerne
  • Autoremove sletter pakker, der ikke længere er nødvendige
  • Genstart er valgfrit. Nogle tjenester skal genstartes efter en opgradering. Genstart er den dovne måde at sikre, at alle nødvendige tjenester genstartes korrekt

$ sudo apt -get update -y

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

Eller du kan springe alle de resterende trin over og bruge den uden opsyn i en af bilagene.

Trin 5: Installer Shinken -afhængigheder

Shinken kører ofte på en meget stor server og installeres på en virtuel maskine (VM'er). En stor server kan køre flere VM'er. VM'er har mange fordele ved administration af flere servere eller flere forekomster af den samme server. VM'er udnytter effektivt dyre serverressourcer.

En virtuel maskine kan køre på Raspberry Pi. Mange af fordelene ved at køre en VM på en $ 35 Raspberry Pi går imidlertid tabt. Shinken kræver IKKE en VM. Denne instruerbare bruger ikke en virtuel maskine.

Installer shinken -afhængigheder: sqlite3, php5, python3 og nogle python -biblioteker:

$ sudo apt -get installer 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

Trin 6: Installer Shinken

Tilføj shinken -bruger, og installer rystet ved hjælp af pip.

$ sudo adduser shinken

$ sudo pip install shinken $ sudo adduser shinken sudo

Ovenstående installerer shinken og nogle dæmoner i /etc/init.d:

  • shinken-poller
  • shinken-reactionner
  • shinken-modtager
  • shinken-scheduler
  • shinken-mægler

Trin 7: Initialiser og start Shinken

Bare hvis shinken kører, stop det. Opret også en logbibliotek og angiv tilladelserne.

$ sudo mkdir/var/log/shinken

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

Kør følgende for at initialisere og starte shinken:

$ sudo shinken --init

$ sudo /etc/init.d/shinken start

Kontroller, at shinken er konfigureret korrekt:

$/usr/bin/shinken -arbiter -v -c /etc/shinken/shinken.cfg

Få shinken til at starte på støvlen

$ sudo update-rc.d shinken standardindstillinger

Trin 8: Opsætning og konfiguration af Sqlite3

Opsæt sqlite til at være shinken -databasen:

$ sudo shinken installer sqlitedb

Opret en konfigurationsfil for at tilføje sqlite:

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

Jeg bruger sqlite3. Det er uklart, hvordan dette kort til sqlite3 eller til en bestemt sqlite DB -fil.

definere modul {

modulnavn sqlitedb modul_type sqlitedb uri /var/lib/shinken/webui.db}

Skift tilladelser til filen

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

Trin 9: Installer Shinken Web UI

Installer Shinkens web -brugergrænseflade:

$ sudo/usr/bin/shinken søg webui

$ sudo/usr/bin/shinken install webui Grib: webui OK webui

Rediger Web UI -konfiguration, og rediger posten: CHANGE_ME. Jeg ved ikke, hvad det skal ændres til. Jeg skiftede til et tilfældigt ord.

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

Rediger master -mægleren for at inkludere Web UI -modulerne

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

Skift linje:

moduler

til

moduler webui

Genstart shinken

$ sudo /etc/init.d/shinken genstart

Trin 10: Tilføj brugere og adgangskoder

Sørg for, at der er installeret en metode til at godkende shinken -brugere

$ sudo shinken installer auth-cfg-password Rediger shinkens web -UI -konfiguration

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

Skift til at se sådan ud:

moduler auth-cfg-password

Vince35 foreslår, at en genstart er nødvendig på dette tidspunkt:

$ sudo /etc/init.d/shinken genstart

Åbn et browservindue og log ind med adgangskode og brugernavn: admin, admin. Indtast følgende i browserens URL (fjern mellemrummene omkring tyktarmen):

♣hostname♣.local:7767

login ved hjælp af admin, hindbær-pi-adgangskode

Og det burde fungere!

Trin 11: Tillæg: Referencer

Netværksovervågning

Interessant oversigt over netværksovervågning

Netværksmonitorer

  • fing:
  • HowToGeek.com - fremragende kilde
  • MRTG:
  • Netbeez:
  • Raspberry Pi Geek:
  • Shinken: omskrivning af Nagios i python:
  • Shinken Install:
  • Opsætning af Shinken Web UI:
  • GitHub systemd:
  • Rob Layton: Manuel opsætning af en Shinken Monitoring Server

Trin 12: Tillæg: Opdateringer

15OCT2016: Opdateret omslagsbillede til at inkludere Shinken og Raspberry Pi logoer

16OCT2016: Omformulerede nogle passager. Ingen tekniske ændringer.

19OCT2016: Opdateret instruerbar og UAI til at starte shinken ved genstart

Fremtidige forbedringer:

Tilføj systemer, der skal overvåges, enten i instruktionsbogen eller som et tillæg med eksempler på scripts

Trin 13: Tillæg: Fejlfinding

Skift tilladelser til biblioteker

/usr/bin

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

Jeg genstartede Raspberry Pi, men shinken ville ikke starte. Jeg kunne ikke skrive til logbøgerne. Så jeg lavede følgende ændringer:

sudo mkdir/var/log/shinken

sudo chmod 777/var/log/shinken

shinken localhost ned

Hvis localhost vises som nedad.

$ sudo nano/etc/network/interfaces

Af en eller anden grund er min/etc/network/interfaces -fil normalt forkert. Skift denne ene linje:

auto lo iface lo inet loopback

til disse to linjer:

auto lo

iface lo inet loopback

Og genstart

$ sudo genstart

Init.d skulle starte shinken automatisk, men jeg var nødt til at gøre dette:

$ sudo /etc/init.d/shinken genstart

Trin 14: Tillæg: Uovervåget installation

Gør installation og konfiguration af shinken meget let ved at automatisere de instruerbare trin ved hjælp af et bash uovervåget installationsskript. Scriptet forudsætter en hindbær pi, der kører raspbian eller dietpi, som blev opsat ved hjælp af et af de integrerede links.

Jeg blev færdig med scriptet på github og

  • testet kilden på dietpi
  • testet uden opsyn installerings script på dietpi

    • løb en gang
    • kørte flere gange, med CTRL-c afbrydelser
  • testet uden opsyn installerings script på raspbian og diet-pi

Scriptet antager brugernavnet = pi og adgangskoden = hindbær, og scriptet forsøger at installere shinken. Hvis disse ikke er korrekte, skal du redigere filen i overensstemmelse hermed.

Åbn terminalvindue på en MacBook eller PC, og kør følgende kommandoer:

$ ssh pi@♣ ip-adresse ♣

$ 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 genstart $ sudo /etc/init.d/ shinken genstart

Scriptet tager et par minutter at køre på diet-pi.

Sørg for at genstarte Raspberry Pi og vent, indtil shinken starter

Åbn en browser, og indtast i URL -vinduet:

♣ ip-adresse ♣: 7767

Log ind med admin og ♣ hindbær-pi-adgangskode ♣

Og det burde fungere!

Anbefalede: