案例1:監控遠程主機的公有數據 案例2:監控遠程主機的私有數據
1 案例1:監控遠程主機的公有數據
1.1 問題linux
本案例要求在Nagios平臺上添加對遠程主機pc207的監控,主要包括下列服務:ios
ping連通狀態 Web服務 FTP服務 SSH服務
1.2 步驟vim
實現此案例須要按照以下步驟進行。服務器
步驟一:準備被監控主機pc207ssh
1)正確配置IP地址,確保與主機svr7可相互ping通ide
[root@pc207 ~]# ping 192.168.4.7 PING 192.168.4.7 (192.168.4.7) 56(84) bytes of data. 64 bytes from 192.168.4.7: icmp_seq=1 ttl=64 time=0.621 ms 64 bytes from 192.168.4.7: icmp_seq=2 ttl=64 time=0.427 ms .. ..
2)確保已啓用httpd、vsftpd、sshd服務,並關閉防火牆服務firewalld測試
[root@pc207 ~]# yum -y install httpd vsftpd .. .. [root@pc207 ~]# systemctl restart httpd vsftpd sshd [root@pc207 ~]# systemctl disable firewalld --now
步驟二:配置監控服務器svr7插件
1)新建監控配置pc207.cfg,定義監控目標(主機、服務)rest
[root@svr7 ~]# vim /usr/local/nagios/etc/objects/pc207.cfg define host { use linux-server host_name pc207 address 172.25.0.10 } define service { use local-service host_name pc207 service_description PING check_command check_ping!100.0,20%!500.0,60% } define service { use local-service host_name pc207 service_description Web Server check_command check_http } define service { use local-service host_name pc207 service_description FTP Server check_command check_ftp } define service { use local-service host_name pc207 service_description SSH Server check_command check_ssh }
2)調整nagios.cfg,啓用pc207.cfg監控配置code
[root@svr7 ~]# vim /usr/local/nagios/etc/nagios.cfg .. .. cfg_file=/usr/local/nagios/etc/objects/pc207.cfg
3)重啓nagios服務
[root@svr7 ~]# systemctl restart nagios
步驟三:刷新Nagios管理界面,確認新增主機pc207的監控結果
1)確認Hosts下新增的主機,如圖-2所示
圖-2
2)確認Services下新增的服務信息,如圖-3所示
圖-3
2 案例2:監控遠程主機的私有數據
2.1 問題
本案例要求在Nagios服務器上添加對遠程主機pc207上私有數據的監控,完成如下監控項目:
運行的進程數 登陸的用戶數 CPU負載 根分區使用量
2.2 方案
Linux主機的內存信息、磁盤I/O信息等私有數據默認不對外提供,若但願從Nagios監控平臺獲取遠程主機的私有數據,須要在被監控主機上配置啓用nrpe服務。
主要工做結構:Nagios監控端(check_nrpe插件) ==> 被監控端(nrpe服務),如圖-4所示。
圖-4
2.3 步驟
實現此案例須要按照以下步驟進行。
步驟一:準備被監控主機pc207
1)安裝nagios-plugins插件
[root@pc207 ~]# yum -y install gcc glibc glibc-common [root@pc207 ~]# groupadd nagcmd [root@pc207 ~]# useradd -G nagcmd nagios [root@pc207 ~]# tar xf ~/nagios-plugins-2.1.4.tar.gz -C /usr/src/ [root@pc207 ~]# cd /usr/src/nagios-plugins-2.1.4/ [root@pc207 nagios-plugins-2.1.4]# ./configure --with-nagios-user=nagios --with-nagios-group=nagcmd [root@pc207 nagios-plugins-2.1.4]# make [root@pc207 nagios-plugins-2.1.4]# make install
2)安裝nrpe
[root@pc207 ~]# yum -y install openssl-devel //安裝SSL頭文件 [root@pc207 ~]# tar xf nrpe-3.1.0.tar.gz -C /usr/src/ [root@pc207 ~]# cd /usr/src/nrpe-3.1.0/ [root@pc207 nrpe-3.1.0]# ./configure [root@pc207 nrpe-3.1.0]# make all //編譯全部 [root@pc207 nrpe-3.1.0]# make install //安裝nrpe及插件 [root@pc207 nrpe-3.1.0]# make install-init //安裝服務 [root@pc207 nrpe-3.1.0]# make install-config //安裝配置文件
3)定義nrpe監控命令
[root@pc207 ~]# vim /usr/local/nagios/etc/nrpe.cfg .. .. allowed_hosts=172.25.0.0/24,127.0.0.1,::1 //容許哪些主機 command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10 command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20 command[check_rootdir]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p / command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200 -s Z command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
4)啓用nrpe服務並測試
[root@pc207 ~]# systemctl restart nrpe [root@pc207 ~]# systemctl enable nrpe .. .. [root@pc207 ~]# /usr/local/nagios/libexec/check_nrpe -H localhost NRPE v3.1.0-rc1 //測試連本機nrpe服務
步驟二:配置Nagios監控服務器
1)爲Nagios安裝check_nrpe插件
[root@svr7 ~]# yum -y install openssl-devel [root@svr7 ~]# tar xf nrpe-3.1.0.tar.gz -C /usr/src/ [root@svr7 ~]# cd /usr/src/nrpe-3.1.0/ [root@svr7 nrpe-3.1.0]# ./configure [root@svr7 nrpe-3.1.0]# make all //編譯全部 [root@svr7 nrpe-3.1.0]# make install-plugin //安裝check_nrpe插件
2)測試連遠程的nrpe服務,並添加遠程nrpe監控指令
[root@svr7 ~]# /usr/local/nagios/libexec/check_nrpe -H 172.25.0.10 NRPE v3.1.0-rc1 //測試連遠程 的nrpe服務 [root@svr7 ~]# vim /usr/local/nagios/etc/objects/commands.cfg .. .. define command{ command_name check_nrpe command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ //-c 要求對方執行的命令 }
3)修改監控目標配置pc207.cfg,添加對遠程主機pc207私有數據的獲取
[root@svr7 ~]# vim /usr/local/nagios/etc/objects/pc207.cfg .. .. define service { use local-service host_name pc207 service_description NRPE-Total Procs check_command check_nrpe!check_total_procs } define service { use local-service host_name pc207 service_description NRPE-Users check_command check_nrpe!check_users }
步驟三:刷新Nagios管理界面,確認主機pc207的私有數據監控結果
確認pc207主機及服務監控結果,如圖-5所示。
圖-5