營運監控三劍客之Nagios

來源:互聯網
上載者:User

標籤:apache   src   dex   地址   服務   host   baidu   man   下載   

Nagios

Nagios是一款LInux上成熟的監視系統運行狀態和網路資訊的開源IT基礎設施監控系統。Nagios能夠監控所指定的本地或遠程主機及服務,同時提供異常通知、事件處理等功能。它可以運行在Linux平台,同時還提供了基於瀏覽器的web介面,以方便系統管理人員查看系統的運行狀態,網路狀態,各種系統問題及日誌異常等。

工作原理

Nagios的功能是監控服務和主機,但是其自身並不包含這些功能,所有的監控、檢測功能都是通過各種外掛程式來完成的。啟動Nagios後,它會周期性地自動調用外掛程式去檢測伺服器狀態,同時Nagios會維持一個隊列,所有外掛程式返回的狀態資訊都進入隊列,Nagios每次都從隊列讀取資訊,進行處理後,再把狀態結果通過Web介面顯示出來,這是被動模式。常用於監控主機的系統資源,比如系統負載、磁碟使用率、記憶體使用量率、網路狀態、系統進程數等。另一種是主動模式,主要是Nagios伺服器主動去擷取資料,常用於探測URL的監控和服務的狀態監控。

Nagios的主要特點:
  • 監視本地或遠程主機的資源;
  • 監視網路服務資源;
  • 允許使用者編寫自己的外掛程式來監控特定的服務;
  • 當被監控對象出現異常時,可以通過郵件、簡訊等方式通知管理員;
  • 可以事先定義事件處理常式,當主機或服務出現故障時自動調用指定的處理常式;
  • 可以通過web介面來監控各個主機或服務的運行狀態。
系統內容
主機名稱 作業系統 IP地址 服務名
nagios centos7.4 192.168.96.81 nagios-4.3.4.tar.gz、nagios-cn.4.3.4.tar.gz、nagios-plugins-2.2.1.tar.gz、pnp4nagios-0.6.26.tar.gz
www centos7.4 192.168.96.11 nrpe-3.1.0.tar.gz
用戶端 windows 10 192.168.96.2 網頁瀏覽器

nagios/www伺服器均關閉防火牆及SElinux功能

setenforece 0systemctl stop firewalld

軟體包下載 密碼:yfdi

開始部署一、安裝nagios1.安裝系統內容包、apache、php
yum install -y wget httpd php php-devel php-gd gcc glibc glibc-common gd gd-devel make net-snmp
2.添加nagios使用者
useradd -s /sbin/nologin nagios
3.建立nagios安裝目錄,並修改目錄屬主資訊
mkdir /usr/local/nagioschown -R nagios.nagios /usr/local/nagios/
4.安裝nagios軟體包
#解壓tar zxvf nagios-4.3.4.tar.gzcd nagios-4.3.4#配置./configure --prefix=/nagios --with-command-group=nagios --with-nagios-group=nagios#編譯安裝make allmake installmake install-initmake install-configmake install-commandmodemake install-webconf
5.複製軟體包內建的外掛程式至nagios/libexec目錄下
cp -R contrib/eventhandlers /usr/local/nagios/libexec/

二、nagios-plugins外掛程式1.解壓
tar zxvf nagios-plugins-2.2.1.tar.gzcd nagios-plugins-2.2.1/
2.配置
./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios
3.編譯及安裝
make && make install
三、nagios漢化外掛程式1.解壓
tar zxvf nagios-cn.4.3.4.tar.gzcd nagios-4.3.4/
2.配置
./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios
3.編譯及安裝
make allmake install
四、配置Apache服務1.為保證nagios安全訪問,添加身分識別驗證功能
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
2.編輯Apache服務組態檔

vim /etc/httpd/conf/httpd.conf

Listen 192.168.96.81:80         #41行,監聽地址及連接埠#Listen 80          #42行,注釋該行User nagios         #66行,使用者為nagiosGroup nagios        #67行,使用者組為nagiosServerName www.test01.com:80        #95行,網域名稱DirectoryIndex index.html index.php   #164行,首頁類型添加index.php類型AddType application/x-httpd-php .php   #285行,添加php支援
3.添加自啟動並啟動httpd服務
systemctl enable httpdsystemctl start httpd
4.查看httpd服務資訊
netstat -tunlp

5.添加自啟動並啟動nagios服務
systemctl enable nagiossystemctl start nagios
6.查看ngios服務狀態
systemctl status nagios

7.用戶端訪問nagios監控(http://192.168.96.81/nagios)


五、安裝表徵圖pnp4nagios1.安裝軟體支援包
yum install perl-Time-HiRes rrdtool rrdtool-perl -y
2.建立pnp4nagios目錄
mkdir /usr/local/nagios/pnp4nagios
3.解壓
tar zxvf pnp4nagios-0.6.26.tar.gzcd pnp4nagios-0.6.26/
4.配置
./configure --prefix=/usr/local/nagios/pnp4nagios  --with-nagios-user=nagios --with-nagios-group=nagios

5.編譯
make allmake fullinstall
6.複製軟體包中ssi檔案至/pnp4nagios/share目錄下
cp -R contrib/ssi /usr/local/nagios/pnp4nagios/share/
7.產生pnp4nagios檔案
cd /usr/local/nagios/pnp4nagios/etc/mv misccommands.cfg-sample misccommands.cfgmv nagios.cfg-sample nagios.cfgmv rra.cfg-sample rra.cfgcd pages/mv web_traffic.cfg-sample web_traffic.cfgcd ../check_commands/mv check_all_local_disks.cfg-sample check_all_local_disks.cfgmv check_nrpe.cfg-sample check_nrpe.cfgmv check_nwstat.cfg-sample check_nwstat.cfg
8.加入自啟動並啟動npcd服務
chkconfig npcd onservice npcd start

9.編輯pnp4nagios各設定檔
cd /usr/local/nagios/pnp4nagios/etc/vim /usr/local/nagios/pnp4nagios/etc/process_perfdata.cfg#調整記錄層級LOG_LEVEL = 2
10.編輯nagios.conf配置

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

process_performance_data=1enable_environment_macros=1增加如下(如果不直接增加也可以去掉注釋自己改)service_perfdata_command=process-service-perfdatahost_perfdata_command=process-host-perfdatahost_perfdata_file=/usr/local/nagios/pnp4nagios/var/host-perfdataservice_perfdata_file=/usr/local/nagios/pnp4nagios/var/service-perfdatahost_perfdata_file_template=DATATYPE::HOSTPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tHOSTPERFDATA::$HOSTPERFDATA$\tHOSTCHECKCOMMAND::$HOSTCHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$service_perfdata_file_template=DATATYPE::SERVICEPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tSERVICEDESC::$SERVICEDESC$\tSERVICEPERFDATA::$SERVICEPERFDATA$\tSERVICECHECKCOMMAND::$SERVICECHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$\tSERVICESTATE::$SERVICESTATE$\tSERVICESTATETYPE::$SERVICESTATETYPE$host_perfdata_file_mode=aservice_perfdata_file_mode=ahost_perfdata_file_processing_interval=15service_perfdata_file_processing_interval=15host_perfdata_file_processing_command=process-host-perfdata-fileservice_perfdata_file_processing_command=process-service-perfdata-file
11.編輯commands.cfg設定檔

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

把原有的兩個注釋掉,加入下面的define command{        command_name    process-host-perfdata        command_line    /usr/bin/perl /usr/local/nagios/pnp4nagios/libexec/process_perfdata.pl        }define command{        command_name    process-service-perfdata        command_line    /usr/bin/perl /usr/local/nagios/pnp4nagios/libexec/process_perfdata.pl -d HOSTPERFDATA        }define command{       command_name    process-service-perfdata-file       command_line    /usr/local/nagios/pnp4nagios/libexec/process_perfdata.pl --bulk=/usr/local/pnp4nagios/var/service-perfdata}define command{       command_name    process-host-perfdata-file       command_line    /usr/local/nagios/pnp4nagios/libexec/process_perfdata.pl --bulk=/usr/local/pnp4nagios/var/host-perfdata}
12.在模版裡添加定義的主機和服務

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

define host {name       host-pnpaction_url /pnp4nagios/share/index.php/graph?host=$HOSTNAME$register   0}define service {name       srv-pnpaction_url /pnp4nagios/share/index.php/graph?host=$HOSTNAME$&srv=$SERVICEDESC$register   0}
13.檢查設定檔
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

14.重啟nagios、httpd服務
systemctl restart nagiossystemctl restart httpd
15.用戶端訪問(http://192.168.96.81/pnp4nagios/graph?host=192.168.96.11)

提醒刪除install.php頁面
cd /usr/local/nagios/pnp4nagios/share/rm -rf install.php
如果pnp頁面報session的錯,則需修改一下快取檔案的許可權
chown -R nagios.root /var/lib/php/session/

訪問ngios監控管理平台(http://192.168.96.81/nagios)



營運監控三劍客之Nagios

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.