溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在RedHat6.5上部署Nagios

發(fā)布時間:2021-09-16 18:09:43 來源:億速云 閱讀:116 作者:chen 欄目:移動開發(fā)

這篇文章主要介紹“怎么在RedHat6.5上部署Nagios”,在日常操作中,相信很多人在怎么在RedHat6.5上部署Nagios問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么在RedHat6.5上部署Nagios”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

部署環(huán)境:系統(tǒng),RedHat 6.5;組件,Nagios;

部署前準備:關閉Selinux,和防火墻(/etc/init.d/iptables stop);獲取相關軟件包。

(包括gd-devel mysql-server openssl-devel xinetd;等)

具體步驟:

1.在Nagios運行的主機上創(chuàng)建Nagios用戶和nagcmd組;

groupadd nagcmd;

useradd -M -d /usr/local/nagios -G nagcmd nagios;

usermod -G nagcmd  apache

2.解壓相應的源碼包和插件包;并指定編譯環(huán)境和參數(shù);

cd /guo

tar jxf nagios-cn-3.2.3.tar.bz2;

cd nagios-cn-3.2.3

###指定編譯環(huán)境組為"ngcmd";

./configure --with-command-group=nagcmd;

###開始編譯并安裝

make all && make install

###安裝啟動腳本

make install-init;

###安裝WEB配置文件

make install-webconf;

###安裝配置文件

make install-config;

###設定Nagios的登陸用戶名和密碼;

htpasswd/usr/local/nagios/etc/htpasswd.users nagiosadmin

###檢查配置正確性

/usr/local/nagios/bin/nagios-v /usr/local/nagios/etc/nagios.cfg

確保無Error 或者warning。

3.啟動相關服務并測試;

/etc/init.d/nagios start

/etc/init.d/httpd start

怎么在RedHat6.5上部署Nagios

怎么在RedHat6.5上部署Nagios

4.安裝相關插件。

cd /guo

 tar zxf nagios-plugins-2.1.1.tar.gz 

cd nagios-plugins-2.1.1

./configure

###執(zhí)行完畢應確保自身所需的功能后面的狀態(tài)顯示“yes”;比如后面要用到Mysql和ssl協(xié)議加密;那結果至少包含"--with-mysql:yes,--with-openssl:yes"

###插件會被自動安裝至/usr/local/nagios/libexec;

cd /usr/local/nagios/libexec;

###調整并遞歸此目錄下所有文件

chown nagios.nagios . -R ;

###再次檢查配置

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 
###重載Nagios配置
/etc/init.d/nagios reload         

怎么在RedHat6.5上部署Nagios

  5.編輯相關配置文件。

cd /usr/local/nagios/etc/objects/

cp  -p localhost.cfg hosts.cfg

cp -p localhost.cfg services.cfg

vim /usr/local/nagios/etc/objects/hosts.cfg

###添加如下內容:

###通過hosts.cfg文件來指定被監(jiān)控主機及其相關信息;

cfg_file=/usr/local/nagios/etc/objects/hosts.cfg

###通過services.cfg文件定義監(jiān)控哪些服務和資源。

cfg_file=/usr/local/nagios/etc/objects/services.cfg


###vi hosts.cfg

                definehost{
                    use                     linux-server
                    host_name               pu_tao.example.com
                    alias                   Manager
                    address                 172.25.254.18
                    icon_p_w_picpath              server.gif
                    statusmap_p_w_picpath         server.gd2
                    2d_coords               500,200
                    3d_coords               500,200,100
                    }


            define hostgroup{
            hostgroup_name  linux-servers
            alias           Linux Servers
            members         *
              }
本次取一臺被監(jiān)控主機做實驗,僅寫一個服務組

                define servicegroup{
               servicegroup_name 系統(tǒng)負荷檢查
                alias 負荷檢查
                members server2.example.com,進程總數(shù),server2.example.com用戶登錄 數(shù),server2.example.com,根分區(qū),server2.example.com,交換空間利用率
               }

    監(jiān)控ping的情況

            defineservice{    
                    use                             local-service        
                    host_name                       *
                    service_description             PING
                    check_command                   check_ping!100.0,20%!500.0,60%
                    }

     監(jiān)控硬盤情況

              defineservice{
                   use                             local-service        
                    host_name                       xi_gua.example.com
                    service_description             根分區(qū)
                    check_command                   check_local_disk!20%!10%!/
                   }

     監(jiān)控登錄用戶數(shù)

            defineservice{
                use                             local-service        
               host_name                      xi_gua.example.com
                service_description             登錄用戶數(shù)
                check_command                   check_local_users!20!50
               }
      監(jiān)控系統(tǒng)負荷

          define service{
                use                             local-service        
                host_name                       xi_gua.example.com
               service_description             系統(tǒng)負荷
                check_command                   check_local_load!5.0,4.0,3.0!10.0,6.0,4.0
                }

        監(jiān)控進程總數(shù)

            defineservice{
                use                             local-service        
                host_name                       xi_gua.example.com
                service_description             進程總數(shù)
               check_command                  check_local_procs!250!400!RSZDT
                }
        監(jiān)控交換空間利用率

                define service{
                use                             local-service        
                host_name                       xi_gua.example.com
                service_description             交換空間利用率
                check_command                   check_local_swap!20!10
               }

        監(jiān)控ssh情況

                define service{
                    use                             local-service        
                   host_name                      xi_gua.example.com
                   service_description             SSH
                   check_command                  check_tcp!22!1.0!10.0
                    notifications_enabled           0
                    }
          監(jiān)控apache

                    defineservice{
                   use                             local-service        
                   host_name                      xi_gua.example.com
                   service_description            HTTP
                   check_command                  check_http
                  notifications_enabled           0
                    }

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 
/etc/init.d/nagios reload                         
如圖顯示本機的監(jiān)控成功

怎么在RedHat6.5上部署Nagios

6.再開啟一臺主機。本次實驗主機名為xi_gua.example.com.ip:172.25.254.17;同樣關閉Selinux和防火墻。

在本機上安裝Mysql;并創(chuàng)建用戶Nagios和賦予一定權限。
create database nagdb;

grant select on nagdb.* tonagios@172.25.254.18 identified by  'nagios';

返回Nagios所在主機pu_tao.example.com;

cd    /usr/local/nagios/libexec
./check_mysql -H 172.25.254.3 -unagios -pnagios

執(zhí)行完畢應有類似日志信息顯示;如有且無報錯說明本機成功監(jiān)控對端mysql
cd /usr/local/nagios/etc/objects
在 commands.cfg 中添加監(jiān)控mysql的命令

        # 'check_mysql' command definition    
            definecommand{
               command_name   check_mysql
                command_line   $USER1$/check_mysql -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$
                }
在services.cfg中添加監(jiān)控mysql

     ##########################check_mysql
                   define service{
                      use                             local-service         
                        host_name                       xi_gua.example.com
                       service_description             MYSQL
                        check_command                   check_mysql!nagios!nagios
                        notifications_enabled           0
                        }

在hosts.cfg中添加

         define host{
               use                    linux-server
                host_name               xi_gua.example.com
                alias                   Manager
                parents                 xi_gua.example.com
                address                 172.25.254.17
               icon_p_w_picpath              server.gif
                statusmap_p_w_picpath         server.gd2
                2d_coords               400,100
                3d_coords               400,100,100
            }

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
/etc/init.d/nagios reload                                        

如圖表示成功檢測server3主機上的mysql
怎么在RedHat6.5上部署Nagios

8.安裝Nrpe使nagios監(jiān)控多臺主機;在172.25.254.17(xi_gua.example.com)上操作。

###解壓相關組件并創(chuàng)建nagios用戶;
tar zxfnrpe-2.15.tar.gz                                                                   
tar zxf  nagios-plugins-2.1.1.tar.gz                    
yum install mysql-devel openssl-devel -y 
useradd  -M -d /usr/local/nagios  nagios            
cd nagios-plugins-2.1.1
./configure
make all && make install
cd /usr/local/nagios/libexec/       
chown nagios.nagios . -R          
yum install xinetd
cd /root/nrpe-2.15                          
./configure
make all && make install

make install-plugin
make install-daemon

make install-daemon-config

make install-xinetd

vim /etc/xinetd.d/nrpe    

 #設定監(jiān)控主機為172.25.254.18
only_from       = 172.25.254.18
vim /etc/services
 nrpe   5666/tcp                        
/etc/init.d/xinetd start                    
cd /usr/local/nagios/etc/


vim nrpe.cfg           

將command[check_hda1]=/usr/local/nagios/libexec/check_disk-w 20% -c 10% -p /dev/hda1改為

command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p/  #監(jiān)控根分區(qū)

/etc/init.d/xinetdrestart                 
cd /usr/local/nagios/libexec/     

 scp  check_nrpe root@172.25.254.18:/usr/local/nagios/libexec/ 將check_nrpe遠程復制到pu_tao.exampl.com相應的目錄中。
返回172.25.254.18;做如下操作
cd /usr/local/nagios/libexec/
chown nagios.nagios  check_nrpe   

 ###檢測nrpe是否可用成功顯示nrpe版本號
./chek_nrpe  -H  172.25.254.17           
cd /usr/local/nagios/etc/objcts/
在 commands.cfg 中添加check_nrpe的命令

        # 'check_nrpe' commanddefinition   
            define command{
                command_name    check_nrpe
                command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c$ARG1$
                }

在services.cfg中添加

        define service{
        use                             local-service         
        host_name                       xi_gua.example.com
        service_description             根分區(qū)
        check_command                   check_nrpe!check_disk
        }
define service{
        use                             local-service         
        host_name                       xi_gua.example.com
        service_description             登錄用戶數(shù)
        check_command                   check_nrpe!check_users
        }
監(jiān)控根分區(qū)和登錄人數(shù)

/usr/local/nagios/bin/nagios -v/usr/local/nagios/etc/nagios.cfg 
/etc/init.d/nagios reload                                                                  
如圖可見監(jiān)控成功

怎么在RedHat6.5上部署Nagios

怎么在RedHat6.5上部署Nagios


         

9.nagios的110云報警
到onealter官網下載所用的軟件包這里用的是
alert-agent-4.1.3.1-linux-x64.tar.gz
在onealter網頁添加nagios應用

怎么在RedHat6.5上部署Nagios
獲取應用key
怎么在RedHat6.5上部署Nagios

怎么在RedHat6.5上部署Nagios
在xi_gua.example.com主機中:
tar zxf alert-agent-4.1.3.1-linux-x64.tar.gz  
cp -R alert-agent /usr/local/nagios/libexec/  #將解壓好的包放入nagios插件目錄中
cp alert-agent/plugin/nagios-plugin/nagios /usr/local/nagios/libexec/
chmod +x /usr/local/nagios/libexec/nagios
cp alert-agent/plugin/nagios-plugin/110monitor.cfg/usr/local/nagios/etc/objects/   #將110配置文件放入nagios配置文件目錄
在110monitor.cfg文件中添加Key:
怎么在RedHat6.5上部署Nagios


修改/usr/local/nagios/etc/objects/contacts.cfg,新增110monitor到默認聯(lián)系組
    define contactgroup{
    contactgroup_name       admins
    alias                   Nagios Administrators
    members                 nagiosadmin,110monitor
    }   
修改/usr/local/nagios/etc/nagios.cfg,將110monitor.cfg新增到nagios.cfg中
cfg_file=/usr/local/nagios/etc/objects/110monitor.cfg
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

/etc/init.d/nagios   reload    

到此,關于“怎么在RedHat6.5上部署Nagios”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI