2015-12-07 43 views
0

我想檢查本地主機上的mysql和tomcat。 基本上我需要檢查端口以查看應用程序正在偵聽。 我有NRPE以及Nagios的插件安裝 我試圖使用NRPE檢查本地主機上的MySQL,但是Nagios會顯示此錯誤:NRPE:命令check_mysql沒有定義nrpe:命令mysql_check未定義

任何想法嗎?

# Define a host for the local machine 
define host{ 
     use      linux-server   ; Name of host template to use 
          ; This host definition will inherit all variables that are defined 
          ; in (or inherited by) the linux-server host template definition. 
     host_name    myserver01 
     alias     localhost 
     address     127.0.0.1 
     } 
# Define an optional hostgroup for Linux machines 
define hostgroup{ 
     hostgroup_name linux-servers ; The name of the hostgroup 
     alias   Linux Servers ; Long name of the group 
     members   myserver01  ; Comma separated list of hosts that belong to this group 
     } 
# Define a service to "ping" the local machine 
define service{ 
     use        local-service   ; Name of service template to use 
     host_name      myserver01 
     service_description    PING 
    check_command   check_ping!100.0,20%!500.0,60% 
     } 
# Define a service to check the disk space of the root partition 
# on the local machine. Warning if < 20% free, critical if 
# < 10% free space on partition. 
define service{ 
     use        local-service   ; Name of service template to use 
     host_name      myserver 
     service_description    Root Partition 
    check_command   check_local_disk!20%!10%!/ 
     } 
# Define a service to check the number of currently logged in 
# users on the local machine. Warning if > 20 users, critical 
# if > 50 users. 
define service{ 
     use        local-service   ; Name of service template to use 
     host_name      myserver 
     service_description    Current Users 
    check_command   check_local_users!20!50 
     } 
# Define a service to check the number of currently running procs 
# on the local machine. Warning if > 250 processes, critical if 
# > 400 users. 
define service{ 
     use        local-service   ; Name of service template to use 
     host_name      myserver 
     service_description    Total Processes 
    check_command   check_local_procs!250!400!RSZDT 
     } 
# Define a service to check the load on the local machine. 
define service{ 
     use        local-service   ; Name of service template to use 
     host_name      myserver 
     service_description    Current Load 
    check_command   check_local_load!5.0,4.0,3.0!10.0,6.0,4.0 
     } 
# Define a service to check the swap usage the local machine. 
# Critical if less than 10% of swap is free, warning if less than 20% is free 
define service{ 
     use        local-service   ; Name of service template to use 
     host_name      myserver 
     service_description    Swap Usage 
    check_command   check_local_swap!20!10 
     } 
# Define a service to check SSH on the local machine. 
# Disable notifications for this service by default, as not all users may have SSH enabled. 
define service{ 
     use        local-service   ; Name of service template to use 
     host_name      myserver 
     service_description    SSH 
    check_command   check_ssh!-p xx 
    notifications_enabled  0 
     } 
# Define a service to check HTTP on the local machine. 
# Disable notifications for this service by default, as not all users may have HTTP enabled. 
define service{ 
     use        local-service   ; Name of service template to use 
     host_name      myserver 
     service_description    HTTP 
    check_command   check_http 
    notifications_enabled  0 
     } 
define service{ 
     use      generic-service 
     host_name    myserver 
     service_description  mysql Monitoring 
     check_command   check_nrpe!check_mysql 
     } 

回答

1

您需要爲NRPE定義一個check_mysql命令定義。

編輯您的nrpe.cfg。

vim /etc/nagios/nrpe.cfg 

check_mysql指向添加一個命令輸入到check_mysql插件的路徑:

command[check_mysql]=/usr/lib64/nagios/plugins/check_mysql 

重新啓動NRPE:

service nrpe restart 

退房13頁的詳細資料: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf

+1

嗨,謝謝。我解決了這個問題,爲3306添加了tcp檢查,因爲這是本地服務,而不是遠程。 –

+1

check_command check_tcp!3306 –

+1

check_command check_http!8090(for tomcat) –