Pokazywanie postów oznaczonych etykietą Observium. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą Observium. Pokaż wszystkie posty

niedziela, 30 października 2016

OBSERVIUM - Instalacja serwera do monitorowania przez protokół SNMP

Dzisiaj omówimy instalację oraz konfigurację serwera monitorującego urządzenia sieciowe poprzez protokół SNMP. W jednym z poprzednich wpisów omówiłem konfiguracje urządzeń pod kontem monitorowania. 

Co potrzebujemy? Jedyne co potrzebujemy to komputer lub wirtualną maszynę z systemem operacyjnym Debian i trochę czasu.

Na samym początku musimy zainstalować kilka niezbędnych pakietów, między innymi obsługę php oraz mysql. Zrobimy to za pomocą poniższej komendy:

apt-get install libapache2-mod-php5 php5-cli php5-mysql php5-gd php5-mcrypt php5-json php-pear snmp fping \
mysql-server mysql-client python-mysqldb rrdtool subversion whois mtr-tiny ipmitool graphviz imagemagick

Jeżeli będziemy chcieli dodatkowo monitorować wirtualne maszyny na serwerach powinniśmy doinstalować pakiet libvirt:

apt-get install libvirt-bin

Teraz stworzymy odpowiedni katalog oraz przejdziemy do katalogu z którego będziemy instalować Observium:

mkdir -p /opt/observium && cd /opt

Teraz wystarczy pobrać i wypakować ostatnią paczkę z naszym narzędziem:

wget http://www.observium.org/observium-community-latest.tar.gz
tar zxvf observium-community-latest.tar.gz

Po rozpakowaniu archiwum musimy skopiować i skonfigurować dostęp do naszej bazy danych:

cd observium
cp config.php.default config.php
nano config.php

Rysunek 1 - Konfiguracja pliku config.php

Przed zapisem danych dostępu do naszej bazy danych nalepiej zalogować się do naszego serwera mysql poprzez panel PHPMYADMIN i dodać odpowiednią bazę danych.

Rysunek 2 - Dodawanie bazy danych za pomocą phpmyadmin

Nie zapomnijmy dodać niezbędnych podfolderów w katalogu observium i nadać im odpowiednich praw:

mkdir logs
mkdir rrd
chown www-data:www-data rrd

Zainstalujmy podstawowy szablon bazy danych:

./discovery.php -u

Rysunek 3 - Instalacja podstawowego szablonu bazy danych

Jeszcze wykonamy wstępne odpytanie i wyszukanie urządzeń:

./discovery.php -h all
./poller.php -h all

Konfigurujemy VirtualHost w apache. Dodajemy wpis do pliku: /etc/apache2/sites-enabled/000-default.conf

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /opt/observium/html
    <FilesMatch \.php$>
      SetHandler application/x-httpd-php
    </FilesMatch>
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /opt/observium/html/>
            DirectoryIndex index.php
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Require all granted
    </Directory>
    ErrorLog  ${APACHE_LOG_DIR}/error.log
    LogLevel warn
    CustomLog  ${APACHE_LOG_DIR}/access.log combined
    ServerSignature On
</VirtualHost>

Po wszystkim restartujemy apache i wchodzimy na stronę naszego observium http://IP/observium.

Rysunek 4 - Panel logowania użytkownika

Teraz możemy przystąpić do dodawania naszych urządzeń. Aby tego dokonać z menu wybieramy Devices >> Add Device i wypełniamy pole adresu Hostname oraz SNMP Community. 

Za jakiś czas powinny ukazać się nam ładne grafy jak na screenie poniżej.

Rysunek 5 - Panel zarządzania Observium

Gotowy obraz systemu z zainstalowanym i skonfigurowanym observium gotowy do pobrania pod adresem: http://chomikuj.pl/KlimasStudio/Wirtualizacja/VMware

Miłego testowania ;) Jeżeli macie jakieś propozycje co mogę dla Was opisać piszcie w komentarzach.

EDIT:

Zapomniałem dodać że trzeba dodać wpisy do CRONa
nano /etc/cron.d/observium

i dodać poniższe wpisy
* * * * *   root    /opt/observium/discovery.php -h all >> /dev/null 2>&1
* * * * *   root    /opt/observium/discovery.php -h new >> /dev/null 2>&1
* * * * *   root    /opt/observium/poller-wrapper.py 2 >> /dev/null 2>&1




środa, 13 lipca 2016

[SNMP] Instalacja usługi SNMP w systemie Windows oraz Linux

Simple Network Management Protocol – rodzina protokołów sieciowych wykorzystywanych do zarządzania urządzeniami takimi jak routery, przełączniki, komputery czy centrale telefoniczne za pośrednictwem sieci IP. Do transmisji wiadomości SNMP wykorzystywany jest głównie protokół UDP: standardowo port 161 wykorzystywany jest do wysyłania i odbierania żądań, natomiast port 162 wykorzystywany jest do przechwytywania sygnałów trap od urządzeń. Możliwe jest także wykorzystanie innych protokołów do przekazywania żądań, na przykład TCP[1].

Istnieją trzy wersje protokołu:
- SNMPv1 – pierwsza wersja, która została opublikowana w 1988 roku w dokumencie RFC 1067 (z późniejszymi zmianami w RFC 1098 oraz RFC 1157). W tej wersji protokołu bezpieczeństwo oparte jest na tak zwanych communities, które są pewnego rodzaju nieszyfrowanymi hasłami umożliwiającymi zarządzanie urządzeniem.
- SNMPv2 – eksperymentalna wersja protokołu, określana także SNMPv2c, opisana w dokumencie RFC 1901
- SNMPv3 – wspierająca uwierzytelnianie oraz szyfrowaną komunikację

Każdy komunikat dotyczy określonej zmiennej, tzw. OID (ang. Object IDentifier). Dla przykładu zmienna OID o nazwie sysUpTime (czas pracy urządzenia od ostatniego włączenia) ma postać 1.3.6.1.2.1.1.3.0, co odpowiada jej adresowi w drzewie MIB. (źródło: Wikipedia.com)

Instalacja usługi SNMP w systemie Windows XP
Przechodzimy do panelu sterowania następnie wybieramy "Dodaj usuń Programy" następnie przechodzimy do menu "Dodaj usuń składniki systemu Windows". W Kreatorze składników szukamy pozycji "Narzędzia zarządzania i monitorowania" i klikająć dwukrotnie zaznaczamy "Protokół SNMP"

Rysunek 1 - Windows XP Instalaja SNMP


Instalacja usługi SNMP w systemie Windows 7/8/10
W nowszych systemach podobnie wchodzimy w "Panel Sterowania", następnie "Włącz lub wyłącz Funkcje systemu Windows" i zaznaczamy "Protokół SNMP"


Rysunek 2 - Windows 7/8/10 Instalacja SNMP

Konfiguracja usługi SNMP w systemach Windows
Po zainstalowaniu serwisu musimy go skonfigurować. W tym celu przechodzimy do "Narzędzi administratora" znajdujących się w "Panelu sterowania" i uruchamiamy narzędzie "Usługi" Z listy usług odszukujemy "SNMP Service". Upewniamy się czy nasza usługa jest uruchamiana automatycznie z systemem.

Rysunek 3 - Okno konfiguracji SNMP

Kolejnym krokiem jest konfiguracja naszego Agenta. Czyli informacje które będą prrzysyłane o naszym komputerze oraz jego nazwa i lokalizacja.

Rytsunek 4 - Okno konfiguracji Agenta

Pragnę zauważyć że warto sobie lokalizację podzielić w jakiś hierarchiczny sposób co ułatwi nam grupowanie komputerów i urządzeń w naszym programie do monitoringu. Ostatnim krokiem jest nadanie praw dostępu oraz "społeczności" którą można też traktować jak hasło dla naszego serwera monitoringu.

Rysunek 5 - Konfiguracja zabezpieczeń SNMP

Dla większego bezpieczeństwa można ustawić akceptację dla hosta serwera oraz zabezpieczenia typu TRAP tzw. "pułapka".

Instalacja usługi SNMP w systemie Linux Debian
W systemie Debian cała instalacja sprowadza się do wydania kilku prostych komend.

sudo apt-get update 
sudo apt-get install snmp snmpd snmp-mibs-downloader

Konfiguracja usługi w systemie Linux Debian
Konfiguracja sprowadza się do edycji dwóch plików i restarcie serwisu.

nano /etc/snmp/snmpd.conf  

Edytujemy/dodajemy poniższe linie:
agentAddress  udp:161
rocommunity nazwa_społeczności  default    -V systemonly
sysLocation    lokalizacja_komputera
sysContact     nazwa_komputera
view   systemonly  included   .1.3.6.1.2.1.2

W pliku snmpd.conf ustawiamy protokół i port dostępu, nazwe społeczności, nazwę komputera, lokalizację oraz zasoby które mają być udostępnione przez protokół SNMP. W celu zapoznania sie z zmiennymi OID polecam witrynę: http://www.alvestrand.no/objectid/1.3.6.1.2.1.html

nano /etc/snmp/snmp.conf       
.
W tym pliku tylko należy zakomentować linijkę "mibs:" znakiem "#". Po zapisaniu plików konfiguracyjnych resetujemy nasz servis komendą

service snmp restart

Przykład dodawania urządzenia lub komputera do serwera monitoringu SNMP.

Rysunek 6 - Przykład dodawania urządzenia lub komputera do serwera SNMP

Po dodaniu nowego sprzętu należy odczekać trochę czasu aż nasze dane statystyczne zostaną zebrane w naszym serwerze. Po jakimś czasie ukażą nam się ładne kolorowe grafy oraz wykresy. Dzięki temu będziemy mieli monitoring i wgląd nad wszystkimi urządzeniami w jednym miejscu.

Rysunek 7 - Monitoring na przykładzie Observium

Mam nadzieję że artykuł był zrozumiały. W jednym z następnych zajmę się instalacją serwera który będzie gromadził dane za pomocą protokołu SNMP.