Centos

NRPE:check_aacraid - 用過這個?

  • June 11, 2020

Unable to read output從這個 NRPE 測試中得到了同樣的舊資訊。我可以在這台機器上執行其他測試,我可以su - nagios -c "<path to check_aacraid>"在本地執行時執行它。

查看/var/log/messages顯示該過程已打開並啟動 - 它似乎沒有返回任何 NRPE 可以消化的消息。

我還能用什麼來調試它?我已經設置並且我將 nagios設置debug = 1為. (是的,這是一個很大的安全漏洞。我急於完成這項工作)nrpe.cfg``sudo``NOPASSWD:ALL

兩個系統(nagios 伺服器和 NRPE 客戶端)都是 CentOS 6.2。

編輯:

要從 Nagios 伺服器進行測試,我一直在使用 cmdline:

/usr/local/nagios/libexec/check_nrpe -H <IP of nrpe machine> -c check_aacraid

如果我嘗試check_userscheck_total_procs(NRPE 安裝附帶的預設值),這可以正常工作。如果我將這些命令之一重命名為stuff並將其與-cto一起傳遞,它也可以工作check_nrpe。這讓我相信問題不在於伺服器端 nagios。

在客戶端,我所做的唯一更改NRPE.CFG(測試之外 - 見上文)是添加一行:

command[check_aacraid]=/usr/local/sbin/check-aacraid.py

否則一切都是預設的。

我可以在以身份登錄時執行此命令nagios,也可以通過su - nagios -c "cmd".

我想說的是PATH,互動式 shell 中的 漂亮而長,包含了所有check_aacraid需要的東西,但是 NRPEPATH又短又甜,缺少你需要的東西。選擇您最喜歡的增強PATHfor的方法,check_aacraid您的所有問題都有可能消失。

順便說一句,NRPE 的一般診斷方法是查看strace -f -s 1024NRPE 伺服器的 PID,然後看看會發生什麼。通常很明顯出了什麼問題。

腳本中的 sudo 可能會失敗,因為 NRPE 執行時它不在 tty 上。檢查 /etc/sudoers:

Default requiretty

並將其註釋掉。

引用自:https://serverfault.com/questions/384902