您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關Nagios如何通過check_http監控一臺web應用服務器上多個tomcat服務,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
如何在nagios監控tomcat,是一個比較簡單又復雜的事情,簡單是因為如果只監控web應用服務器的一個tomcat服務是否正常運行,那么比較簡單;如果要監控tomcat的其他比如連接數比如jvm內存使用率等就比較復雜,google沒有適合的監控腳本;如果要監控web應用上面的多個tomcat服務器,而且很多tomcat服務都是跳轉式的,那就需要多做很多事情。
一般通常都使用tcp tomcat端口的方式,不過這有一個bug就是tomcat假死的情況下,tcp 端口是OK的,但是tomcat里面部署的web應用其實已經不能正常訪問,這個時候需要使用http方式來監控tomcat的狀態。
所以本文就記錄了如何采用http方式來監控一臺web服務器上多個tomcat應用服務器。
1在tomcat web服務器上安裝nrpe客戶端:
Rpm包下載地址為:http://download.csdn.net/detail/mchdba/7493875
1.1,rpm方式安裝nrpe客戶端
3 tomcat多端口監控報警
tomcat930端口,現在再添加一個tomcat8300端口
3.1 客戶端的nrpe.cfg里面添加配置
[root@webserver root]# vim /etc/nagios/nrpe.cfg
command[check_tomcat_8300_status]=/usr/lib/nagios/plugins/check_http -I 10.xx.xx.10 -p 8300 -u /xx_xx_xx/index.html -e 200 -w 5 -c 10
301 Moved Permanently 客戶請求的文檔在其他地方,新的URL在Location頭中給出,瀏覽器應該自動地訪問新的URL。
302 Found 類似于301,但新的URL應該被視為臨時性的替代,而不是永久性的。注意,在HTTP1.0中對應的狀態信息是“Moved Temporatily”。
……
最后加入-v參數調試看詳細的獲取信息:
[root@webserver OCC_MANAGER_Web]# /usr/lib/nagios/plugins/check_http -H www.xxxx.com -I 10.xx.xx.10 -p 8200 -u /OCC_REPORT_Web/index.html -v
GET /OCC_REPORT_Web/index.html HTTP/1.0
User-Agent: check_http/v1861 (nagios-plugins 1.4.11)
Connection: close
Host: www.xxxx.com
http://10.xx.xx.10:8200/OCC_REPORT_Web/index.html is 323 characters
STATUS: HTTP/1.1 302 Found
**** HEADER ****
Server: Apache-Coyote/1.1
Set-Cookie: ploccSessionId=45CD9C9921A5B89C59FCB2E34FE52734; Path=/
Location: http://www.xxx.com/OCC_SSO_Web/login.htm?redirect=http%3A%2F%2Fwww.xxx.com%2FOCC_REPORT_Web%2Findex.html
Content-Length: 0
Date: Thu, 12 Jun 2014 02:52:45 GMT
Connection: close
**** CONTENT ****
HTTP OK - HTTP/1.1 302 Found - 0.003 second response time |time=0.003268s;;;0.000000 size=323B;;;0
看到頁面重定向到域名系統,tomcat服務器是正常運行的,所以302 Found也可以表示tomca服務器正常運轉無誤,因為架構是用的lvs負載均衡,所以如果動用跳轉后的公用域名來判斷的話,就不能確定是否是這個主機的tomcat,因為公用域名每次只對應其中一個tomcat服務,因為這里是監控具體的一臺web服務器的tomcat,所以去監控302端口也是一個不錯的辦法,這里可以去修改客戶端nrpe.cfg里面的8200端口的監控命令,改成監控tomcat的302狀態值:
Vim /etc/nagios/nrpe.cfg
/usr/lib/nagios/plugins/check_http -I 10.xx.xx.10 -p 8200 -u /OCC_REPORT_Web/index.html -e 302 -w 3 -c 10
報錯記錄(一): NRPE: Unable to read output
[1402557345] SERVICE ALERT: webserver;Tomcat_6100_OCC_SSO_Service_Status;UNKNOWN;SOFT;3;NRPE: Unable to read output
解決:一般是nrpe路徑不對。
報錯記錄(二):CHECK_NRPE: Error - Could not complete SSL handshake.
[root@cache-2 etc]# /usr/local/nagios/libexec/check_http -I 10.xx.3.xx -p 8100 -u /tradeAdmin/index.html
HTTP OK: HTTP/1.1 302 Found - 319 bytes in 0.064 second response time |time=0.064033s;;;0.000000 size=319B;;;0
[root@cache-2 etc]#
[root@cache-2 etc]# /usr/local/nagios/libexec/check_nrpe -H 10.xx.3.xx -c check_load
CHECK_NRPE: Error - Could not complete SSL handshake.
[root@cache-2 etc]#
解決:/etc/nagios/nrpe.cfg里面沒有添加nagios服務器主機ip地址
Vim /etc/nagios/nrpe.cfg
allowed_hosts=127.0.0.1,10.xx.xxx.xx1
之后重啟nrpe,service nrpe restart;再去nagios服務器上驗證OK:
[root@cache-2 etc]# /usr/local/nagios/libexec/check_nrpe -H 10.xx.3.xx -c check_load
OK - load average: 0.43, 0.17, 0.06|load1=0.430;15.000;30.000;0; load5=0.170;10.000;25.000;0; load15=0.060;5.000;20.000;0;
[root@cache-2 etc]#
看完上述內容,你們對Nagios如何通過check_http監控一臺web應用服務器上多個tomcat服務有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。