您好,登錄后才能下訂單哦!
開源監控-ngios
Nagios是一款開源的免費網絡監視工具,能有效監控Windows、Linux和Unix的主機狀態,交換機路由器等網絡設置,打印機等。在系統或服務狀態異常時發出郵件或短信報警第一時間通知網站運維人員,在狀態恢復后發出
正常的郵件或短信通知。
實驗拓撲
主機ngios安裝過程
準備環境
掛載光驅 配置yum
[root@chh2 ~]# mount /dev/cdrom /mnt/cdrom
[root@chh2 ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo
yum安裝軟件包
[root@chh2 ~]# yum install httpd php php-gd php-mbstring mysql-devel
[root@chh2 ~]# service httpd start
[root@chh2 ~]# chkconfig httpd on
安裝NMS監管服務器所需要的軟件包
下面開始安裝這些軟件包
拆解 ngios的數據包
[root@chh2 ~]# tar -zxvf nagios-3\[1\].2.1.tar.gz -C /usr/local/src/
創建一個組 nagcmd
groupadd nagcmd
創建一個賬號 nagios
useradd -m nagios
加入組
usermod -a -G nagcmd nagios
將apache 賬號也添加竟來
usermod -a -G nagcmd apache
來到源碼目錄,開始配置nagios-3\[1\].2.1
[root@chh2 nagios-3.2.1]# ./configure --with-command-group=nagcmd --prefix=/usr/local/nagios --sysconfdir=/etc/nagios --enable-event-broker
[root@chh2 nagios-3.2.1]# make all
[root@chh2 nagios-3.2.1]# make install
[root@chh2 nagios-3.2.1]# make install-init
[root@chh2 nagios-3.2.1]# make install-commandmode
[root@chh2 nagios-3.2.1]# make install-config
[root@chh2 nagios-3.2.1]# make install-webconf
創建一個登陸nagios web程序的用戶 這個賬號在以后通過web登陸nagios認證時使用
[root@chh2 conf.d]# htpasswd -c /etc/nagios/htpasswd.users nagiosadmin
New password:
Re-type new password:
Adding password for user nagiosadmin 密碼:123
添加nagios進行chkconfig管理
[root@chh2 conf.d]# chkconfig --add nagios
[root@chh2 conf.d]# chkconfig --list |grep nagios
nagios 0:off1:off2:off3:on4:on5:on6:off
安裝插件
拆解插件包
[root@chh2 ~]# tar -zxvf nagios-plugins-1.4.15.tar.gz -C /usr/local/src/
來進行插件的配置
[root@chh2 nagios-plugins-1.4.15]# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
安裝
[root@chh2 nagios-plugins-1.4.15]# make && make install
對nagios的配置文件進行語法的檢測
[root@chh2 libexec]# /usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg
檢測結果是這樣就說明沒有問題
啟動nagios
[root@chh2 libexec]# service nagios start
Starting nagios: done.
[root@chh2 libexec]# chkconfig nagios on
重啟apache加載文件
[root@chh2 libexec]# service httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
下面我們訪問一下試試
在圖上的各種服務都是在/etc/nagios/objects/commands.cfg中定義的,我們可以打開看看
下面給大家來看個小例子
打開/etc/nagios/objects/commands.cfg中命令的定義
我們找到check_ping
那么上圖中的那一行命令到底是什么意思呢?下面我給大家好好解釋一下
首先看一下$USER1$:
從上圖我們可以看出在/etc/nagios/resource.cfg我們會找到$USER1$,其實就是調用了我們的插件庫目錄而已。
在來到我們的插件庫看看/usr/local/nagios/ libexec,看看到底有沒有check_ping
結果我們可以找到check_ping,但是這個該怎么用呢,小編我也很郁悶,那我們再來看一下/etc/nagios/objects/commands.cfg中對check_ping的定義
command_line $USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
那我們再來看看check_ping的用法吧
[root@chh2 libexec]# ./check_ping -h |less
這下大家應該清楚那一行命令的意思了吧
下面來來個例子ping一下我們的主機試試吧。
關于更多的插件的使用,大家可以使用幫助來查看,我就不一個個解釋了。
接著我們來看一下主機文件在/etc/nagios/objects/localhost.cfg
在控制臺上的服務都是在這里面定義的服務。在上面我看到了報警,但是報警需要聯系人,下面我們就來看一下聯系人文件/etc/nagios/objects/contacts.cfg
為了測試發送郵件,小編多登陸了幾個用戶。看看郵件日志
到我的163郵箱看看
相信看了這幾個文件大家對nagios就有了一個比較清晰的了解吧。
下面我們開始監控一臺windows主機試試。
監控windows主機我們還可以采用NRPE,SNMP。
首先我們需要在windows主機上安裝NSCLient++。
打開模塊,引用他們
然后保存,重啟我們的服務。
修改/etc/nagios/objects/windows.cfg
[root@chh2 objects]# vim windows.cfg
修改nagios的配置文件讓它監控windows
[root@chh2 nagios]# pwd
/etc/nagios
[root@chh2 nagios]# vim nagios.cfg
檢查語法參數。重啟nagios
[root@chh2 nagios]# /usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg
[root@chh2 nagios]# service nagios restart
打開頁面看看,已經監控到了。
下面我們再來看看監控linux主機試試。這次我們采用NRPE,但是我們的nagios是沒有這個插件。所以我們需要自己安裝。。。
我們需要監控mysql。Apache。所以我們就安裝一下他們
[root@chh2 ~]# yum install mysql-devel mysql mysql-server httpd
啟動一下http和mysql
給mysql添加密碼
[root@chh2 ~]# chkconfig mysqld on
[root@chh2 ~]# mysqladmin -u root -p password '123'
下面開始在我們的linux客戶端上安裝插件
先創建賬號 nagios
[root@chh2 ~]# useradd nagios
拆解插件包
[root@chh2 ~]# tar -zxvf nagios-plugins-1.4.15.tar.gz -C /usr/local/src/
來到拆解目錄配置文件
[root@chh2 nagios-plugins-1.4.15]# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
[root@chh2 nagios-plugins-1.4.15]# make && make install
在客戶端上安裝nrpe
[root@chh2 ~]# tar -zxvf nrpe-2.12.tar.gz -C /usr/local/src/
[root@chh2 nrpe-2.12]# ./configure --with-nrpe-user=nagios --with-nrpe-group=nagios --with-nagios-user=nagios --with-nagios-group=nagios --enable-command-args --enable-ssl
安裝
# make all
# make install-plugin
# make install-daemon
# make install-daemon-config
編輯客戶端 nrpe配置文件
[root@chh2 nrpe-2.12]# vim /usr/local/nagios/etc/nrpe.cfg
啟動nrpe
[root@chh2 nrpe-2.12]# /usr/local/nagios/bin/nrpe -c /usr/local/nagios
[root@chh2 nrpe-2.12]# echo "/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d" >>/etc/rc.d/rc.local
[root@chh2 nrpe-2.12]#
1. 在ngios服務器上安裝插件。
[root@chh2 ~]# tar -zxvf nrpe-2.12.tar.gz -C /usr/local/src/
對拆解文件進行配置
./configure --with-nrpe-user=nagios \
--with-nrpe-group=nagios \
--with-nagios-user=nagios \
--with-nagios-group=nagios \
--enable-command-args \
--enable-ssl
安裝
make all
安裝插件
make install-plugin
2. commands.cfg 定義外部構件nrpe
[root@chh2 nrpe-2.12]# vim /etc/nagios/objects/contacts.cfg
增加
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
3.創建監控linux主機的文件。
在 /usr/local/nagios/etc/objects 創建 mylinux.cfg
編輯客戶端文件添加我們監控中沒有命令
[root@chh2 ~]# vim /usr/local/nagios/etc/nrpe.cfg
重啟
[root@chh2 ~]# pkill -9 nrpe
[root@chh2 ~]# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
4.為了監控linux系統 修改 nagios.cfg
[root@chh2 objects]# vim /etc/nagios/nagios.cfg
做一下語法檢測
[root@chh2 objects]# /usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg
重啟ngios服務。
下面開始添加我們監控web的命令。
在客戶端上
[root@chh2 ~]# cd /usr/local/nagios/etc/
[root@chh2 etc]# vim nrpe.cfg
然后要重啟nrpe
來到服務器上
修改mylinux
[root@chh2 ~]# vim /etc/nagios/objects/mylinux.cfg
重啟一下
那我們來到打開nagios看看(windows主機沒有啟動)
,
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。