nagios的使用及插件調用mysql
一監控本機服務和系統情況linux
1修改聯繫人配置文件contacts.cfgios
這裏使用系統自帶的sendmail進行收郵件測試,因此須要建立lisi用戶web
2修改主機配置文件host.cfgsql
設置監控地址爲本機地址服務器
3修改服務配置文件tcp
這裏列舉經常使用系統狀態的幾項監測項目,可根據須要自行添加;首先要在command.cfg文件中有定義好的命令(要有對應的插件)ide
4校驗nagios配置文件的正確性並重啓服務測試
5客戶端登錄查看監控信息加密
二監控遠程主機服務和系統狀態
監控遠程主機服務的配置,不一樣的服務略有不一樣,下面以監控mysql服務和httpd服務爲例說明
·監控遠程服務器的mysql服務
1在遠程主機上安裝mysql,啓動mysqld服務並設置爲開機自動啓動
2在mysql服務器上建立監控檢測賬戶,開啓3306端口
3在nagios主機上檢測是否能夠鏈接mysql主機上的mysql服務
注:若沒有check_mysql插件,是由於沒有安裝mysql-devel包,將mysql-devel包安裝後從新安裝一下nagios-plugins就有了
4添加check_mysql插件的調用
由於是新安裝的插件,commands.cfg配置文件中並無定義,所以須要添加進去
5添加主機定義
修改host.cfg文件,直接複製以前的主機定義,修改如下內容便可,主機組添加mysqlhost
6添加服務定義
針對不一樣的服務,可定義不一樣的報警時間和收件人
7檢測配置文件並重載服務,而後測試訪問
8查看狀態報告郵件
·監控遠程服務器的httpd服務
繼續在mysql服務器上配置
1安裝httpd服務,啓動httpd服務並設置爲開機自動啓動
2在mysql服務器上開啓80端口
3在nagios服務器上查看check_http插件是否存在
默認已安裝
4添加check_http插件的調用
默認已調用
5添加主機定義
這裏我將httpd服務安裝到mysql服務器上,所以直接使用mysql主機便可
6添加服務定義
直接修改一下內容便可;注意模板和主機名
7檢測配置文件並重載服務,而後訪問查看監測信息
·監控遠程服務器系統狀態
Nagios經過NRPE插件監控遠程主機系統情況(如msyql主機)
NRPE總共由兩部分組成:
check_nrpe插件:運行在監控主機上 (即nagios主機)
NRPE daemon:運行在遠程的linux主機上(一般就是被監控機)
整個的監控過程:
當Nagios須要監控某個遠程linux主機的服務或者資源狀況時:
1:nagios運行check_nrpe插件,咱們要在nagios配置文件中告訴它要檢查什麼.
2:check_nrpe插件會經過SSL鏈接到遠程的NRPE daemon.
3:NRPE daemon會運行相應的nagios插件來執行檢查本地資源或服務.
4:NRPE daemon將檢查的結果返回給check_nrpe插件,插件將其遞交給nagios作處理.
注意:NRPE daemon須要nagios插件和Nrpe一塊兒安裝在遠程被監控linux主機上,不然,daemon不能作任何的監控. 別外由於它們間的通訊是加密的SSL,因此須要安裝SSL
這個插件須要openssl的支持,沒有就直接安裝一下(yum install openssl-devel)
這裏仍然對mysql服務器進行監控,在mysql主機上進行以下操做:
1建立nagios用戶
2編譯安裝nagios-plugins插件
3安裝nrpe依賴包xinetd軟件包
4編譯安裝nrpe軟件包
make install-daemon
make install-daemon-config
make install-xinetd
5配置nrpe
vi /etc/xinetd.d/nrpe 修改以下行
only_from = 127.0.0.1 192.168.10.100 //在後面增長監控主機(即nagios服務器)的地址192.168.10.100,以空格間隔
6添加nrpe服務
編輯/etc/services文件,在相應位置增長NRPE服務:mrpe 5666/tcp #nrpe服務監聽端口
7定義監控命令
NRPE daemon只運行nrpe.cfg中所定義的命令;默認已定義經常使用的,如今手動定義一項
vi /usr/local/nagios/etc/nrpe.cfg 修改以下行
將下圖中的#註釋去掉並進行修改
修改後效果以下圖:根分區監測
check_nrpe 的-c參數能夠接的內容,等號(=)後面是實際執行的插件程序(只這與commands.cfg中定義命令的形式十分類似,不過是寫在了一行).也就是說check_users就是等號後面/usr/local/nagios/libexec/check_users -w 5 -c 10的簡稱
8重啓xinetd服務(即開啓nrpe服務)
9開放5666端口
至此客戶端配置完成,如須要監測其它系統狀態,可自行添加
10在nagios服務器上編譯安裝nrpe軟件包,並測試鏈接是否正常
11定義插件命令
用check_nrpe –h查看用法;-c後面帶的$ARG1$參數是傳給nrpe daemon執行的檢測命令,以前說過了它必須是nrpe.cfg中所定義的命令中的其中一條
12添加主機定義和服務定義
主機定義已添加過mysql服務器,所以能夠不用重複定義
添加服務定義
其中配置項的含義以下
define service{
use generic-service //使用的模板
13檢測配置文件並重載nagios服務
14登陸nagios的web頁面,查看監控狀態