服務器監控Cacti

 在企業網絡運維過程當中,管理員必須時刻關注服務器的運行狀態,如CPU、內存、磁盤空間使用狀況等。爲了可以及時的發現問題,儘可能減小故障的發生。當網絡中的設備,服務器等數量較多時,能夠部署一套監控系統來實時跟蹤服務器,咱們一般會藉助一些軟件來實現。今天就以Cacti套件爲例,介紹服務器集中監測體系的構建和使用。php

cacti服務器監控系統與windows操做系統中的「性能監視器」屬於同一類,都是爲了監控cpu佔用,內存使用,運行進程數,磁盤空間,網卡流量等各類數據。但不一樣的是,cacti不只能夠監控linux,也能夠監控windows服務器,路由器,交換機等網絡設備,主要基於snmp協議來蒐集數據。Cacti自己是一個web界面的軟件,經過調用net-snmp工具來採集檢測數據,並結合RRDtool(輪詢數據庫工具)記錄數據並繪製圖片,最終以web頁面展現給管理員用戶。cacti須要運行在lamp平臺上,配置簡單,直觀,並且支持插件和數據模板,可擴展其功能。下面給你們介紹搭建的過程。mysql

工做原理:linux

Cacti能夠從邏輯上分爲三個部分、第一部分:被檢測的對象,也就是客戶端。第二部分:檢測平臺,也就是服務器端。第三部分:管理平臺。Cacti採用了兩種結構實現功能,一種是C/S結構主要是實現服務器到客戶端監控另一種就是B/S主要完成對Cacti平臺的管理,從下圖咱們能夠看出,管理端是在Web上對Cacti進行管理。web

簡單的整理一下Cacti的工做過程sql

首先經過LAMP平臺部署Cacti監控工具,以後經過客戶端的web登陸Cacti進行對其餘客戶端的設置,能夠從下圖看到Cacti採集數據時必需要使用SNMP協議來鏈接客戶端進而可以採集數據,也就是說客戶端必須支持SNMP協議,監控以後經過RRDtool來生成圖表。數據庫

Cacti工做原理示意圖:windows

2018-02-04_220644.png

實驗環境:瀏覽器

一臺Cacti服務器、一臺MySQL服務器、一臺客戶機服務器

2018-02-04_223932.png

1、服務器配置(主控端——Cacti)網絡

  1. 安裝支持軟件

(1)構建數據庫及web平臺

2018-02-04_221627.png

編寫一個PHP測試頁

2018-02-03_210257.png

2018-02-03_210327.png

2018-02-03_210341.png

(2)安裝net-snmp-utils軟件包

Cacti平臺經過snmp協議採集檢測數據,這些工具程序由net-snmp-utils軟件包提供

2018-02-04_222059.png

(3)安裝rrdtool軟件包

首先安裝相關的軟件包

2018-02-04_222516.png

安裝rrdtool源碼包

2018-02-04_223048.png

2.部署Cacti、設置數據庫鏈接

(1)部署Cacti源碼包

將下載的Cacti源碼包釋放至Web服務器的網頁目錄

2018-02-04_223509.png

 添加一個用來讀寫監測數據的用戶帳號,並調整目錄的屬主,以便正常讀取及寫入數據

2018-02-04_223829.png

(2)創建數據庫、表結構

先建立用於Cacti監測平臺的數據庫,並授予一個數據庫用戶,而後使用Cacti源碼目錄下的Cacti.sql腳本,導入預設的各類數據表

2018-02-03_210450.png


2018-02-03_210532.png


2018-02-03_210756.png


2018-02-03_210655.png

(3)調整Cacti配置文件

Cacti的配置文件位於源碼目錄中的include/文件夾下,名稱爲config.php。要使Cacti系統可以正確訪問並使用數據庫,必須修改config.php文件,確保數據庫鏈接參數正確無誤。

2018-02-03_210831.png


$database_type = "mysql";                             //指定鏈接的類型

$database_default = "cacti";                          //鏈接的庫

$database_hostname = "localhost";            //登陸源

$database_username = "cacti";                    //用戶名

$database_password = "cacti";                    //用戶密碼

$database_port = "3306";                             //鏈接的端口

$database_ssl = false;                                    //不啓用ssl

$url_path = "/";                                              //指定cacti的根目錄,這個目錄是cacti的文件目錄下,咱們後面還須要修改httpd的主配置文件。


2018-02-03_210930.png

3.Cacti的初始化安裝

(1)調整httpd配置

修改httpd服務的主配置文件,設置好網站根目錄,默認首頁,默認字符集等,而後從新加載httpd服務

2018-02-03_211033.png

2018-02-03_211429.png

2018-02-03_211408.png

2018-02-03_211351.png

2018-02-03_211336.png

2018-02-03_211255.png

2018-02-03_211208.png

2018-02-03_211115.png


2018-02-03_211521.png

(2)初始化Cacti系統

在瀏覽器中輸入http://192.168.1.1,而後根據提示安裝

2018-02-04_225355.png


2018-02-04_225419.png


2018-02-04_225503.png

2018-02-04_225520.png


2018-02-04_225600.png

到此爲止服務器配置完成了,下面開始配置一臺linux客戶端(mysql192.168.1.2),而後使用cacti監控客戶端

2、配置客戶端(被控端——snmpd)

不管是路由器、交換機、仍是linux或windows服務器,只要正確支持SNMP協議,並容許Client服務器採集數據,就可以對其進行監測。下面僅介紹在linux服務器中啓用SNMP支持並設置共同體名的簡單方法。

         ps:共同體名,值的是一種驗證機制,全部的client都必須使用同一個共同體名,就像咱們以前學習的hsrp的組同樣,只有組號相同才能是一個組的,這裏也是如此,只有共同體名相同的時候,Cacti才能經過這個共同體名對client進行監控。

         須要安裝net-snmp、lm_sensors軟件包,而後經過修改其配置文件/etc/snmp/snmpd.conf,並啓動snmpd服務,並創建規則,默認監聽UDP的161號端口。

2018-02-04_230313.png

修改配置文件

2018-02-04_230449.png

2018-02-03_211657.png

2018-02-03_211756.png

2018-02-03_211833.png


第41行 192.168.1.1指的是Cacti的服務器IP(默認是default),表示容許其查詢本機數據,public指的就是共同體名,用來識別及驗證

第62行  all表示開放全部的SNMP查詢權限(默認是 SystemView)

第85行   去掉註釋以後,以便支持各類查詢。


2018-02-03_212006.png


2018-02-04_230836.png

3、使用Cacti的Web控制檯(下面以5個部分說明)

l  登陸Web控制檯

l  添加被控設備/主機,設置監控項目

l  生成監測圖像

l  按期採集監測數據

l  查看監測結果

一、登陸web控制檯

在瀏覽器中輸入http://192.168.1.1,輸入用戶名和密碼登陸,默認都是admin

2018-02-03_212124.png


2、添加被控設備/主機,設置監控項目

(1)單擊導航欄中的「management(管理)」下的「devices(設備)」,能夠管理被控設備或主機。點擊devices---Add

2018-02-03_212243.png


修改五個地方,以下圖,

而後單擊右下角的「create」建立,將自動鏈接目標執行snmp查詢

2018-02-03_212355.png

2018-02-03_212424.png

(2)設置要監測的項目

成功鏈接被控端後會看到save successful提示,以下圖

2018-02-03_212527.png

2018-02-03_212557.png


添加項的時候選擇頁面右側的add,完成以後點擊右下方的save按鈕保存

2018-02-04_231631.png


三、生成檢測圖像

(1)建立圖像

單擊導航欄中create下的new graphs(圖表),選擇被控端,選中最須要的圖像條目,最後單擊下方的create按鈕完成建立。

2018-02-03_212905.png

(2添加圖像至監測樹

單擊導航欄中的management下的graph trees,在單擊default tree就能夠對默認的圖像監測樹進行管理。單擊右側的add,能夠向監測樹種添加「樹項目」,完成以後點擊create,並點擊save保存。

2018-02-03_213106.png


2018-02-03_213136.png


2018-02-03_213204.png

四、按期採集監測數據

Cacti系統經過poller.php頁面採集監測數據,能夠結合計劃任務按期採集(默認的刷新間隔是5分鐘)

(執行完成以後,會出現不少的提示信息,通常狀況下是指時區不正確,建議你將時區改成Asia/Chongqing

 因爲是php報的錯誤,因此咱們經過php.ini這個主配置文件解決這個問題)

2018-02-03_213337.png

2018-02-03_213410.png

作一個任務計劃


2018-02-04_232718.png

2018-02-03_213523.png

五、查看監測結果

單擊cacti管理控制檯左上方的graphs標籤,而後展開左側的default tree樹,選擇被控主機後便可看到各監測圖像。

2018-02-03_213550.png

2018-02-03_220508.png

2018-02-03_220520.png

6.安裝percona-mysql-monitor插件

Cacti工具默認的模板只能監控機器的cpu,內存和磁盤等信息,若是想要監控mysql,就須要安裝插件,操做以下

在Cacti服務器上操做

2018-02-03_221012.png

2018-02-03_221056.png

mysql數據庫受權用戶

2018-02-04_233732.png

2018-02-04_234034.png


爲設備添加項目

在Cacti管理界面中進行添加,點擊Consose——Import Templates——選擇文件, 將宿主機下的壓縮目錄解壓到一個文件夾內,選擇解壓後的cacti\templat目錄下的cacti_host_template_percona_mysql_server_ht_0.8.6i-sver1.1.4.xml,最後單擊import導入。

2018-02-04_234156.png

2018-02-03_221159.png


添加模板

2018-02-04_234713.png

建立圖像

2018-02-04_234751.png


2018-02-04_234820.png

從新採集

2018-02-03_213523.png

查看檢測結果

2018-02-04_234945.png

2018-02-04_235002.png

相關文章
相關標籤/搜索