1. 程式人生 > >Cacti+Nagios監控平臺完美整合

Cacti+Nagios監控平臺完美整合

近期有很多同學對nagios和cacti整合很是糾結,特寫此文方便大家參考,解決大家在nagios和cacti整合的過程中遇到的問題。

一、Cacti安裝部署

作為一名Linux SA,日常最重要的就是保證網站正常穩定的執行,我們需要實時監控網站、伺服器的執行狀態,這時需要藉助開源軟體(cacti、nagios、zabbix等)監控來實現。

Cacti是用php語言實現的一個軟體,它的主要功能是用snmp服務獲取資料,然後用rrdtool儲存和更新資料,當用戶需要檢視資料的時候用rrdtool生成圖表呈現給使用者。因此,snmp和rrdtool是cacti的關鍵。

Snmp關係著資料的收集,rrdtool關係著資料儲存和圖表的生成。snmp抓到資料不是儲存在mysql中,而是存在rrdtool生成的rrd檔案中(在cacti根目錄的rra資料夾下,一般以rra為字尾名稱)。簡單原理圖如下:

wKiom1RjLqGQZj6_AADtWDiurSU684.jpg

1、Cacti伺服器端安裝

官網下載cacti相關軟體,一共需要三個軟體,下載地址分別如下:

1 2 3 http://www.cacti.net/downloads/cacti-0.8.8a.tar.gz http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.5.tar.gz http://www.cacti.net/downloads/spine/cacti-spine-0.8.8a.tar.gz

2、安裝LAMP系統環境

這裡採用yum安裝方式,安裝命令:

yum install  httpd  mysql   mysql-server    php   php-mysql php-json php-pdo   -y

3、安裝rrdtool採集工具

安裝rrdtool之前需要安裝相應的lib庫,如下安裝:

1 2 3 yum install cairo-devel libxml2-devel pango pango-devel –y tar xzf rrdtool-1.4.5.tar.gz  ;cd rrdtool-1.4.5  ; ./configure --prefix=/usr/local/rrdtool/ make  &&make install;ln -s /usr/local/rrdtool/bin//usr/local/bin/

4、安裝SNMP服務

yum install net-snmp  net-snmp-utils  –y  

5、安裝cacti主程式

tar xzf cacti-0.8.8a.tar.gz && mv cacti-0.8.8a   /var/www/html/cacti/

6、建立cacti資料庫

1 2 3 4 mysql -uroot –p  輸入你的密碼進入資料庫,然後建立資料庫: create database cacti;建立資料庫 grant all on cacti.* [email protected]'localhost' identified by "123456";建立使用者並授權 flush privileges; 重新整理許可權

7、mysql配置完畢後,把cacti資料匯入cacti資料庫

1 2 3 4 mysql  -ucacti -p123456  cacti</var/www/html/cacti/cacti.sql 配置完mysql後,我們需要設定cacti  rra、log 目錄的許可權,這裡設定為777: chmod -R  777 /var/www/html/cacti/rra/ chmod -R  777 /var/www/html/cacti/log/

8、修改cacti全域性配置檔案

vi /var/www/html/cacti/include/config.php為如下配置:

wKiom1RjLq-whgGYAAI-UjHp99o579.jpg

9、新增Rrdtool抓圖任務計劃

*/5  * * * */usr/bin/php /var/www/html/cacti/poller.php >>/tmp/cacti_rrdtool.log 2>&1

10、Cacti安裝完畢,測試訪問

通過http://ip/cacti/訪問出現如下介面,點選NEXT下一步。

wKioL1RjLymQ1yM5AALp9Ve5jgg677.jpg

 預設一直點選下一步:

wKiom1RjLsrwAzozAAG3etnSBdQ560.jpg

 進入登入介面,第一次需要修改密碼:

wKioL1RjL0DAXO7PAADu0rFQyuo031.jpg

11、進入Cacti配置管理介面

wKiom1RjLt3QfqEnAAF1-gbA02s729.jpg

12、點選device,可以新增裝置,預設可以看到127.0.0.1這臺伺服器。右上角Add可以增加裝置。

wKiom1RjLuaA_uUoAANYI2LaHFA190.jpg

點選localhost可以看到具體的設定,包括採用的snmp協議版本,監控的名稱等:

wKioL1RjL13iNeTSAAQ-gKm1Doo377.jpg

如果出現snmp error,檢查snmp服務是否已啟動,或者是否有許可權。出現如上資訊則表示正常。

點選左上角第二個按鈕,graphs檢視cacti影象—選擇localhost主機—右邊會顯示cacti每5分鐘的監控影象。

wKiom1RjLvuwRsqyAAUTFoNPYUE616.jpg

更多cacti深入知識,可以一起交流。

二、Nagios部署配置

鑑於篇幅的問題,這裡nagios部署就略過了,有興趣的同學可以參考我的從入門到高階的課程哦,這裡直接講解nagios+cacti如何來整合。

首先需要安裝php json模組和ndoutils,其中Ndoutils是nagios的一個外掛,就是可以用來把nagios的獲取的資料存入到mysql資料庫中。也可以實現與cacti的外掛npc的整合,這個工具的安裝是個關鍵。

Php-json安裝方法:

1 2 wget http://down1.chinaunix.net/distfiles/json-1.2.1.tgz tar xzf json-1.2.1 ;cd json-1.2.1 ;/usr/bin/phpize ;./configure ;make ;make install

安裝完後,然後執行如下語句新增json模組:

echo "extension=json.so" >/etc/php.d/json.ini

重啟apache伺服器,通phpinfo.php頁面可以看到如下內容即可:

wKiom1RjLxDhE8zdAADj2yO1p8g683.jpg

1、安裝ndoutils:

1 2 wget http://downloads.sourceforge.net/project/nagios/ndoutils-1.x/ndoutils-1.4b9/ndoutils-1.4b9.tar.gz tar xzf ndoutils-1.4b9.tar.gz;cd ndoutils-1.4b9 ;./configure--with-mysql-inc=/usr/include/mysql --with-mysql-lib=/usr/lib/mysql--enable-mysql --with-ndo2db-user=nagios --with-ndo2db-group=nagios&&make &&make install

接下來配置ndoutils:

cp config/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg

cp config/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg

ndo2db.cfg內容如下:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ndo2db_user=nagios ndo2db_group=nagios socket_type=tcp socket_name=/usr/local/nagios/var/ndo.sock tcp_port=5668 db_servertype=mysql db_host=localhost db_port=3306 db_name=cacti db_prefix=npc_ db_user=cacti db_pass=123456 max_timedevents_age=1440 max_systemcommands_age=10080 max_servicechecks_age=10080 max_hostchecks_age=10080 max_eventhandlers_age=44640 debug_level=1 debug_verbosity=1 debug_file=/usr/local/nagios/var/ndo2db.debug max_debug_file_size=1000000

ndomod.cfg內容如下:

1 2 3 4 5 6 7 8 9 10 11 12 instance_name=default output_type=tcpsocket output=127.0.0.1 tcp_port=5668 output_buffer_items=5000 buffer_file=/usr/local/nagios/var/ndomod.tmp file_rotation_interval=14400 file_rotation_timeout=60 reconnect_interval=15 reconnect_warning_interval=15 data_processing_options=-1 config_output_options=2

同時在nagios.cfg檔案最末尾新增如下語句:

broker_module=/usr/local/nagios/bin/ndomod.o config_file=/usr/local/nagios/etc/ndomod.cfg

2、安裝npc軟體:

wget  ftp://ftp.mirrorservice.org/sites/downloads.sourceforge.net/g/gi/gibtmirdas/npc-2.0.4.tar.gz

tar xzf npc-2.0.4.tar.gz ;mv npc /var/www/html/cacti/plugins/

通過介面啟用NPC

wKioL1RjL4ngeNIpAAGutIHsFUA752.jpg

3、選擇啟用,然後點選settings,找到NPC項,填入如下內容即可。

wKiom1RjLyfwZSEeAAQoClyfAo0312.jpg

4、然後後臺啟動nod2db服務:

/usr/local/nagios/bin/ndo2db -c /usr/local/nagios/etc/ndo2db.cfg

檢視後臺日誌還需要在mysql裡面執行如下sql即可:

1 2 3 4 5 6 7 8 9 mysql> use cacti; alter table npc_eventhandlers addlong_output TEXT NOT NULL default '' after output; alter table npc_hostchecks addlong_output TEXT NOT NULL default '' after output; alter table npc_hoststatus addlong_output TEXT NOT NULL default '' after output; alter table npc_notifications addlong_output TEXT NOT NULL default '' after output; alter table npc_servicechecks addlong_output TEXT NOT NULL default '' after output; alter table npc_servicestatus addlong_output TEXT NOT NULL default '' after output; alter table npc_statehistory addlong_output TEXT NOT NULL default '' after output; alter table npc_systemcommands addlong_output TEXT NOT NULL default '' after output;

執行成功後,重啟nagios和ndo2db即可,通過頁面重新整理可以看到如下介面即代表整合成功。

wKioL1RjL6bw-7bYAATC-l1PqjI207.jpg

wKiom1RjLznAKh49AAW9rA9gy9A663.jpg

 自此,nagios+cacti整合完畢,歡迎大家一起交流!

相關推薦

Cacti+Nagios監控平臺完美整合

近期有很多同學對nagios和cacti整合很是糾結,特寫此文方便大家參考,解決大家在nagios和cacti整合的過程中遇到的問題。 一、Cacti安裝部署 作為一名Linux SA,日常最重要的就是保證網站正常穩定的執行,我們需要實時監控網站、伺服器的執行狀態,這時需要藉助開源軟體(cacti、nagi

zabbix   監控平臺搭建過程中的報錯與解決方法總結

監控 zabbix 運維自動化1.php option post_max_size 2.php option max_execution_time 3.php option max_input_time 4.php time zone 5.php bcm

Nagios監控基礎安裝與監控項部署(下)

nrpe snmp上文總結了nagios監控的基礎安裝配置,現在來總結一下Nagios監控項部署一、Nagios服務端監控部署1、Nagios服務端目錄與相關配置文件說明Nagios 安裝完成後,/usr/local/nagios/目錄下會生成 nagios 相關目錄及配置文件,默認的的配置文件在/usr/l

使用nagios監控交換機端口流量,對低於閾值的流量進行報警

交換機 nagios snmp 需求:使用nagios服務需要對一臺思科交換機的24端口進行流量監控,當流量低於2MB/s時,發送報警;當流量高於3MB/s時,報警取消;當流量介於2MB/s-3MB/s時,處於警告warning狀態。操作方法:第一:編寫腳本文件:vim /usr/lib64/na

java 一款可以與ssm框架完美整合的web報表控件

cnblogs clas tar req pap 整合 大型 自定義報表 環境   碩正套件運行於客戶端(瀏覽器),與應用服務器(Application Server)技術無關,所以能完全用於J2EE、  ASP.Net、php等技術開發的Web應用產品中。  碩正套件部署

通用財經數據傳輸與監控平臺1.0(泛型,接口與基類,Sql,Ibatis,Awt,Swing)

自動 構造 sea 獲得 doc stat dup per hot 導言 本系統通過訪問url接口,實現財經數據的獲取以及實時的更新到用戶本地數據庫的功能,並且配備了實時的數據傳輸的監控平臺。通過本系統,用戶可以的得到並保存所需的財經數據(超過200張表),並能實時的查

Nagios監控mongodb分片集群服務實戰

check 演示 database 路由 easy interval oca mis har 1,監控插件下載Mongodb插件下載地址為:git clone git://github.com/mzupan/nagios-plugin-mongodb.git,剛開始本人

Nagios監控服務的搭建

nagios 安裝 Nagios是一款開源的電腦系統和網絡監視工具,能有效監控Windows、Linux和Unix的主機狀態,交換機路由器等網絡設置,打印機等。主要功能網絡服務監控(SMTP、POP3、HTTP、NNTP、ICMP、SNMP、FTP、SSH)主機資源監控(CPU load、disk u

Nagios監控Windows的網卡流量

value cmd define option ecif install mes rdquo gem Nagios監控Windows的網卡流量 使用/usr/local/nagios/libexec/中的check_traffic.sh,不但可以監控Linux的網卡流量,

nagios監控mongodb

記得 god efi plugin gin -h collect 編輯 pla nagios本身不提供監控mongodb的服務,需要安裝插件 已經有大神寫好的插件nagios_plugin-mongodb 地址https://github.com/mzupan/nagi

nagios監控windows配置

toc drive -h -a time cpu load inter org max 1、下載並安裝windows插件 http://sourceforge.net/projects/nscplus/NSCP-0.4.1.73-x64.msi2、windows端配置 ns

通過Nagios監控Tomcat服務

nagios tomcat 通過Nagios監控Tomcat服務 1.前言本文主要介紹如何通過Nagios軟件來監控Tomcat服務運行狀況,其中主要包括Tomcat Server以及JDBC Pool的運行狀態。Nagios的插件中本身並不提供對於Tomcat服務監控的功能,所以要根據Nagios Plu

立體化監控平臺之競品分析

監控平臺之競品分析https://help.aliyun.com/product/34364.htmlhttps://www.aliyun.com/product/edas?spm=5176.8135679.793319.11.18eefecclxXsV4EDAShttps://www.aliyun.com/

Powershell + Nagios 監控 VEEAM 備份狀態

nagios veeam powershell nsclient 豆子平常一般習慣用Nagios監控系統的狀態。平常公司使用VEEAM來管理文件的備份和還原,備份的結果一般通過Email發送給豆子。今天心血來潮,想把這個備份的狀態在Nagios的監控界面上也展現出來。因為VEEAM本身提供了P

Linux監控平臺

zabbix常見linux開源監控平臺:1. cacti、nagios、zabbix、smokeping、open-falcon等等2. cacti、smokeping偏向於基礎監控,成圖非常漂亮3. cacti、nagios、zabbix服務端監控中心,需要php環境支持,其中zabbix和cacti都需要

Linux監控平臺介紹,zabbix監控介紹,安裝zabbix,忘記admin密碼如何做

linux 操作系統 zabbix 筆記內容:19.1 Linux監控平臺介紹19.2 zabbix監控介紹19.3/19.4/19.6 安裝zabbix19.5 忘記Admin密碼如何做筆記日期:2017-11-1619.1 Linux監控平臺介紹監控是一個很重要的東西,如果一個企業裏的服務器沒

Linux下部署grafana + influxdb + telegraf , 構建性能監控平臺

grafana 監控 Grafana+telegraf+InfluxDB,采用客戶端->服務端存儲->WEB界面顯示的工作模式,使用UTP傳輸數據,並且支持自定義圖表,有良好的擴展性,重要的是Grafana頁面展示比較美觀,更關鍵的是InfluxDB提供了Python的API,Influx

搭建Nagios監控服務器

su - 默認 plugin 信息 tin 2.3 -m name 狀態 Linux監控 IDC監控 監控的對象:服務器(運維崗位)監控什麽:(資源)1、硬件的使用率(cpu 內存 存儲)2、監控應用服務的狀態(運行 停止)3、操作系統的運行情況(進程數量 系統的用

Nagios監控基本配置(二)

time 信息 名稱 systemctl disk linu cpu sage 說明 一、配置Nagios服務nagios服務運行是在主配置文件nagios.cfg ,在配置文件中調用監控插件,運維人員可以設置監控插件的監控閥值(警告值 錯誤值); nagios服務的插

Nagios監控基礎配置(一)

uga log 負載 服務器 源碼 current image tar.gz 文件 一、搭建Nagios監控服務器1、部署運行環境LAMP[root@localhost ~]# yum -y install httpd[root@localhost ~]# systemct