Aby dodać hosta do swojego serwera nagios musimy na nim zainstalować i skonfigurować klienta nrpe oraz pluginy nagiosa.
1. Logujemy sie z uprawnieniami roota i wydajemy polecenie które zaisntaluje wymagane pakiety:
apt-get install nagios-nrpe-server nagios-plugins
2. Następnie edytujemy plik konfiguracyjny:
mcedit /etc/nagios/nrpe.cfg
i zmieniamy allowed_hosts na adres naszego serwera:
allowed_hosts=192.168.1.1
3. Restartujemy klienta nrpe:
service nagios-nrpe-server restart
4. Następnie sprawdzamy z serwera nagios czy klient jest dostępny poleceniem (gdzie 192.168.1.2 to adres klienta):
/usr/lib/nagios/plugins/check_nrpe -H 192.168.1.2
W moim przypadku odpowiedzią było:
NRPE v2.13
Czyli działa 🙂
Teraz dodajemy host do naszego serwera nagios (na serwerze na którym działa nagios):
5. Tworzymy dwa nowe pliki konfiguracyjne
cd /usr/local/nagios/etc/
touch hosts.cfg
touch services.cfg
6. Dodajemy te pliki do głównej konfiguracji nagiosa:
mcedit /usr/local/nagios/etc/nagios.cfg
czyli wklejamy na końcu tego pliku następujące 2 linijki:
cfg_file=/usr/local/nagios/etc/hosts.cfg
cfg_file=/usr/local/nagios/etc/services.cfg
7. Edytujemy plik /usr/local/nagios/etc/hosts.cfg:
mcedit /usr/local/nagios/etc/hosts.cfg
i wpisujemy tam nasz nowy host (pamiętaj pozmieniać dane na swoje):
## Przykładowa konfiguracja hosta##
define host{
name linux-box ; nazwa tej konfiguracji
use generic-host ; odziedziczy domyślne wartości
check_period 24x7
check_interval 5
retry_interval 1
max_check_attempts 10
check_command check-host-alive
notification_period 24x7
notification_interval 30
notification_options d,r
contact_groups admins
register 0 ; NIE REJESTRUJ TEGO HOSTA - TO JEST PRZYKŁAD
}
## Default
define host{
use linux-box ; Odziedzicz domyślne wartości z konfiguracji przykładowej
host_name testdebian ; Nazwa dołaczanego hosta
alias Debian 7 ; Długa nazwa dołaczanego hosta
address 192.168.1.2 ; Adres IP dołączanego hosta
}
8. Następnie otwieramy do edycji plik /usr/local/nagios/etc/services.cfg:
mcedit /usr/local/nagios/etc/services.cfg
i wklejamy zawartość:
define service{
use generic-service
host_name testdebian
service_description CPU Load
check_command check_nrpe!check_load
}
define service{
use generic-service
host_name testdebian
service_description Total Processes
check_command check_nrpe!check_total_procs
}
define service{
use generic-service
host_name testdebian
service_description Current Users
check_command check_nrpe!check_users
}
define service{
use generic-service
host_name testdebian
service_description SSH Monitoring
check_command check_nrpe!check_ssh
}
define service{
use generic-service
host_name testdebian
service_description FTP Monitoring
check_command check_nrpe!check_ftp
}
9. Edytujemy plik /usr/local/nagios/etc/objects/commands.cfg:
mcedit /usr/local/nagios/etc/objects/commands.cfg
na końcu wklejamy:
###############################################################################
# NRPE CHECK COMMAND
#
# Command to use NRPE to check remote host systems
###############################################################################
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
10. Na koniec sprawdzamy czy plik konfiguracyjny nagiosa nie ma błędów poleceniem:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Jesli wszystko jest poprawnie to na dole wyświetli się:
Total Warnings: 0
Total Errors: 0
11. Na koniec restartujemy nagios poleceniem:
service nagios3 restart
Gotowe 🙂