ganglia作為一款最常用的linux環境中的監控軟體,它擅長的的是從節點中按照使用者的需求以較低的代價採集資料。但是ganglia在預警以及發生事件後通知使用者上並不擅長。最新的ganglia已經有了部分這方面的功能。可我們為什麼不找乙個更擅長此道的人去做呢?unix上的乙個核心思想也是不要大而全的軟體,通過把各種在某些方面擅長的軟體組合起來來完成更多的工作。nagios,就是一款精於預警、通知的軟體。通過將ganglia和nagios組合起來,把ganglia採集的資料作為nagios的資料來源,然後利用nagios來傳送預警通知,可以完美的實現一整套監控管理的系統。
下面我們來說說如何安裝nagios。
2。 建立使用者
切換到root使用者
/usr/sbin/useradd nagios
passwd nagios
建立乙個使用者組名為nagcmd 用於從web介面執行外部命令。將nagios使用者和apache使用者都加到這個組中。
/usr/sbin/groupadd nagcmd
/usr/sbin/usermod -g nagcmd nagios
/usr/sbin/usermod -g nagcmd apache
3。 安裝nagios
tar xzf nagios-3.0.6.tar.gz
cd nagios-3.0.6.tar.gz
執行nagios配置指令碼並使用先前開設的使用者及使用者組:
./configure --with-command-group=nagcmd
編譯nagios程式包原始碼
make all -j8
make install
make install-init
make install-config
make install-commandmode
make install-webconf #安裝nagios的web配置檔案到apache的conf.d目錄下
4。 安裝nagios plugin
./configure --with-nagios-user=nagios --with-nagios-group=nagios -prefix=/usr/local/nagios
make -j8
make install
5。 基本配置
配置檔案預設位置/usr/local/nagios/etc,只需要做簡單修改就可以體驗到nagios啦。
修改/usr/local/nagios/etc/objects/contacts.cfg,更改email位址nagiosadmin 的聯絡人定義資訊中的email資訊為你的email資訊以接收報警內容.(確認你的系統可以傳送郵件到相應的接收者)
6。 配置web介面
建立乙個nagiosadmin 的使用者用於nagios的web介面登入。記下你所設定的登入口令,一會兒你會用到它。
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
重啟apache服務以使設定生效。
7。 啟動nagios
chkconfig --add nagios
chkconfig nagios on
service nagios start
這是你可以訪問http://localhost/nagios,就可以看到nagios啦哈哈。
nagios安裝過程中可能還需要其他的一些檔案,比如apache。。。。我是在安裝了ganglia的系統上接著安裝了nagios。所以如果你的系統在安裝nagios的時候提示需要某些dependency,那麼需要按照提示去做了:)
我在實際安裝過程中遇到的最麻煩的問題是:
1。無法啟動nagios,在系統log中發現提示無法建立/usr/local/nagios/var/rw/nagios.cmd。我發現沒有rw目錄。。。我建立了rw目錄,並且將其owner改為nagios:nagcmd,許可權改為drw-rw----。悲劇的是該錯誤提示仍然存在。最後我直接將其許可權改為drw-rw-rw-。能夠工作了,但是root cause我還沒有找到。
2。類似的錯誤。在nagios上察看log的時候,提示沒有相應處理/usr/local/nagios/var/archives的許可權。解決方法如上。
總的來說,安裝過程比較順利嘿嘿,執行後如下:
ganglia使用nagios告警
1.複製所需指令碼到nagios的指令碼目錄,並設定許可權 cp fr ganglia 3.7.1 contrib check ganglia.py usr local nagios libexec chown nagios.nagios usr local nagios libexec check...
ganglia組播和單播
admin ganglia 監控套件包括三個主要部分 gmond,gmetad,和網頁介面,通常被稱為ganlia web gmond集群是主機和度量資料的邏輯分組,比如資料庫伺服器,網頁伺服器,生產,測試,qa等,他們都是完全分開的,你需要為每個集群執行單獨的gmond例項。一般來說每個集群需要乙...
使用 Ansible 編譯和安裝 nagios
我已經建立了乙個冪等的 ansible playbook,從原始碼安裝並且在 ubuntu 14.04 lts,debian 7.5 和 centos 6.5 平台測試了,這個 playbook 與 nelmon 在一起。一旦 playbook 執行,ansible 將 這些給你乙個基礎的 nagi...