一些常見監控服務如Nagios、Cacti和Zabbix的搭建


1,首先需要了解以下它們的概念

1)Nagios:它是一款用來監視系統和網絡的開源應用軟件,利用其眾多的插件實現對本機和遠端服務的監控,當被監控對象發生異常時,會及時向管理員告警,提供一批預設好的監控插件,用戶可以之間調用,也可以自定義Shell腳本來監控服務,適合各企業的業務監控,可通過Web頁面顯示對象狀態、日志、告警信息。

主有有5種監控狀態:WARNING警告、OK正常、PENDING正在獲取監控數據、UNKNOW監控配置錯誤、CRITICAL錯誤。

監控的服務主要有:cpu負載、登錄系統的用戶數、網頁服務、ping、根分區的空閑空間、ssh服務、交換分區的空閑空間、系統RSZDT狀態進程的總數量等

nagios監控服務的工作過程:nagios服務運行時,調用配置文件中定義的監控插件,對目標主機的資源做監控。在調用監控插件時,管理員可以設置監控時的警告值和錯誤值,nagios服務把監控到的數據和警告值、錯誤值做比較,按照以下規則顯示監控狀態:若監控到的數據小於警告值,則顯示狀態OK;若監控的數據大於警告值但小於錯誤值,則顯示狀態WARNING;若監控的數據大於錯誤值,則顯示狀態CRITICAL

2)Cacti:它是php語言實現的一款軟件,是一套基於LAMP平台展現的網絡流量監測及分析工具

工作原理:首先進行數據采集,基於SNMP技術或自定義腳本從目標設備/主機獲取監控指標信息;其次進行數據存儲,調用模板將數據存到數據庫,使用rrdtool存儲和更新數據,通過rrdtool繪制結果圖形;最后進行數據展現,通過Web方式將監控結果呈現出來

監控結構:1)C/S模式:采集監測數據  2)B/S模式:管理監測平台

3)Zabbix:它是一個高度集成的監控解決方案,可以實現企業級的開源分布式監控,通過C/S模式采集監控數據,再通過B/S模式實現Web管理

監控拓撲:Zabbix監控服務器可以通過SNMP技術或Agent采集數據,數據可以寫入MySQL、Oracle等數據庫中,服務器使用LAMP實現web前端的管理;被監控的主機需要安裝Agent,支持SNMP協議

功能:1)具備常見的商業監控軟件所具備的功能:主機性能監控、網絡設備監控、數據庫監控等;2)支持自動發現網絡設備和服務器,可以通過配置自動發現服務器規則來實現;3)支持分布式,能集中展示,管理分布式的監控點;4)編寫插件容易,可以自定義監控項,具有實時繪圖功能

2,接下來了解它們如何進行安裝部署

為方便測試監控服務器的安裝部署,以下安裝之前我們都直接關閉防火牆和SELinux

1)Nagios安裝及插件安裝(以下采用紅帽7.2系統)

第一步:需要安裝網站平台以及一些編譯工具   yum  -y  install  httpd  php  gcc  gcc-c++  make

第二步:需要創建nagios運行用戶和組,以及將cpache用戶添加到nagios組

useradd  nagios---->groupadd  nagcmd

usermod  -G  nagcmd  nagios------>gpasswd  -a  apache  nagcmd

第三步:編寫php文件,啟動httpd服務,客戶端進行測試

1)編寫php文件:echo   "<?php   phpinfo();   ?>"  >   /var/www/html/test.php

2)啟動httpd服務並設為開機自啟動:systemctl   start   httpd---->systemctl   enable   httpd

3)客戶端進行訪問測試:http://服務器IP地址/test.php

第四步:源碼包安裝步驟安裝提供監控服務Nagios監控軟件包

1)解壓nagios軟件包    

2)配置

./configure  --with-nagios-user=nagios  --with-nagios-group=nagcmd  --with-command-user=nagios  --with-command-group=nagcmd

3)編譯及編譯安裝     make  all---->make  install

4)編譯安裝相關參數

安裝控制腳本make  install-init---->ls   /etc/rc.d/init.d/nagios

安裝權限make  install-commandmode

安裝配置make  install-config

部署網站配置make  install-webconf----->ls  /etc/httpd/conf.d/nagios.conf

安裝接口模式make  install-exfoliation

第五步:源碼包安裝步驟安裝nagios-plugins監控插件

1)解壓nagios-plugins軟件包  2)進到nagios-plugin目錄下 3)配置./configure

4)編譯make  5)編譯安裝make  install

第六步:創建登錄監控頁面管理員用戶nagiosadmin使用的密碼

htpasswd  -c  /usr/local/nagios/etc/htpasswd.users  nagiosadmin--->回車輸入兩次密碼

第七步:重啟httpd服務和啟動nagios服務,並客戶端測試訪問監控服務器查看監控信息

nagios監控服務器:systemctl   restart   httpd---->/etc/init.d/nagios   start

客戶端:http://nagios監控服務器IP地址/nagios----->輸入第七步創建的nagiosadmin用戶密碼

2)Cacti安裝

第一步:部署Cacti服務運行環境(LAMP平台、net-snmp、net-snmp-utils、rrdtool)

1)准備運行環境LAMP,裝httpd、php、mariadb、mariadb-server、php-mysql包

yum  -y  install  httpd  php  mariadb  mariadb-server  php-mysql

2)啟動httpd和mariadb服務,查看服務端口狀態,並設置為開機自啟

systemctl  start  httpd---->systemctl  enable  httpd---->netstat  -antpul  |  grep  :80

systemctl  start  mariadb---->systemctl  enable  mairadb---->netstat  -antpul  |  grep :3306

3)編寫php文件,測試連接數據庫,vim  /var/www/html/linkdb.php,客戶端訪問連接測試

客戶端:http://Cacti服務器IP地址/linkdb.php

第二步:搭建Cacti服務器(部署源碼包、建立數據庫表、調整配置文件)

1)安裝cacti軟件,移動到網頁目錄下,並改名cacti,設置7777權限

tar  -zxvf  cacti-0.8.8h.tar.gz   -C   /var/www/html

mv  /var/www/html/cacti-0.8.8h   /var/www/html/cacti---->chmod  -R  7777  /var/www/html/cacti

2)修改cacti監控服務配置文件/var/www/html/cacti/include/config.php,設置存儲配置信息使用庫

$database_type="mysql";//設置數據庫類型    $database_default="cactidb";  //設置存儲使用庫

$database_hostname="localhost";//cacti服務器主機名     $database_port="3306";//使用的端口

$database_ssl=false;//是否啟用ssl安全連接  $database_username="tom";//連接的用戶名,自定義

$database_password="123456";連接的密碼,自定義

3)根據上面配置文件的配置再數據庫服務器上創建授權用戶

mysql  -uroot  -p---->由於是第一次安裝,所以回車無密碼登錄

mysql>create  database  cactidb;   //創建存儲使用庫

mysql>grant  all  on  cactidb.*  to  tom@'localhost'  identified  by  '123456'; //授權連接用戶

4)使用連接用戶恢復備份文件里的數據,並登錄數據庫查看存儲配置信息表

mysql  -utom  -p123456  cactidb  <  /var/www/html/cacti/cacti.sql

mysql  -utom  -p123456  cactidb--->回車登錄--->mysql>show  tables;//查看存儲配置信息表

第三步:完成初始化安裝,登錄web頁面做初始化設置(根據網頁安裝向導進行)

1)完成依賴的軟件包(SNMP簡單網絡管理協議、rrdtool繪圖工具)

yum  -y  install  net-snmp-*  rrdtool

2)客戶端訪問web頁面做初始化配置(初始帳號密碼均為admin,首次登錄強制重設密碼,帳號名依然為admin),查看監控模板以及主機

客戶端:http://Cacti監控服務器IP地址/cacti/install

3)Zabbix安裝

第一步:部署Cacti服務運行環境(LAMP平台、net-snmp、net-snmp-utils、rrdtool)

1)准備運行環境LAMP,裝httpd、php、mariadb、mariadb-server、php-mysql包

yum  -y  install  httpd  php  mariadb  mariadb-server  php-mysql

2)啟動httpd和mariadb服務,查看服務端口狀態,並設置為開機自啟

systemctl  start  httpd---->systemctl  enable  httpd---->netstat  -antpul  |  grep  :80

systemctl  start  mariadb---->systemctl  enable  mairadb---->netstat  -antpul  |  grep :3306

3)編寫php文件,測試連接數據庫,vim  /var/www/html/linkdb.php,客戶端訪問連接測試

第二步:創建進程運行執行者,建立存儲配置信息數據庫,並授權連接服務使用的用戶

useradd  zabbix--->mysql  -uroot  -p---->回車無密碼登錄

mysql>create  database  zabbixdb;

mysql>grant  all  on  zabbixdb.*  to  tom@'localhost'  identified  bu  '123456';

第三步:安裝zabbix軟件(zabbix_server監控服務、zabbix_agent客戶端運行的服務)

1)解壓zabbix軟件包  tar  -zxvf   zabbix-3.2.3.tar.gz

2)進入zabbix目錄  cd   zabbix-3.2.3

3)配置 ./configure  --prefix=/usr/local/zabbix  --enable-server  --enable-agent  --with-mysql

4)編譯安裝  make  install

第四步:使用授權用戶將存儲配置信息表導入存儲配置信息數據庫zabbixdb

mysql  -utom  -p123456  zabbixdb  <  zabbix-3.2.3/database/mysql/schema.sql

mysql  -utom  -p123456  zabbixdb  <  zabbix-3.2.3/database/mysql/images.sql

mysql  -utom  -p123456  zabbixdb  <  zabbix-3.2.3/database/mysql/data.sql

mysql  -utom  -p123456  zabbixdb---->mysql>show  tables;

第五步:登錄管理頁面做初始化配置

1)修改配置文件/etc/php.ini,調整php進程運行信息

672行:post_max_size=16M   //將8M修改為16M

384行:max_execution_time=300  //最大執行時間30改為300

394行:max_input_time=300   //服務器接受數據的時間60改為300

878行:date.timezone=Asia/Shanghai  //設置時區

2)安裝服務運行依賴的軟件包,重啟httpd服務

rpm  -ivh  --nodeps  php-bcmath-5.4.45.13.e17.remi.x86_64.rpm

rpm  -ivh  --nodeps  php-mbstring-5.4.45-13.e17.remi.x86_64.rpm

systemctl   restart   httpd

3)拷貝網頁php目錄到網頁目錄/var/www/html下,並改名為zabbix,對conf賦予W權限

cp  -rp  zabbix-3.2.3/frontend/php   /var/www/html/zabbix

chmod  o+w  /var/www/html/zabbix/conf   //為了能正確生成配置文件zabbix.conf.php

第六步:登錄管理頁面(帳號名admin密碼zabbix),查看監控模板,已監控主機,查看監控信息

第七步:修改配置文件/usr/local/zabbix/etc/zabbix_server.conf,指定庫表密碼

87行:DBName=zabbixdb    103行:DBUser=tom     111行:DBPassword=123456

第八步:將zabbix加入系統服務,修改腳本配置文件指定路徑,並啟動zabbix_server服務

cp  zabbix-3.2.3/misc/init.d/fedora/core/zabbix_server   /etc/init.d

vim  /etc/init.d/zabbix_server---->22行:BASEDIR=/usr/local/zabbix  //修改zabbix路徑

chmod  +x  /etc/init.d/zabbix_server

/etc/init.d/zabbix_server  start ---->netstat  -antpul  |  grep  :10051

 

小編這次就分享到這里,適合剛接觸linux的新手,看完會有很大的收獲噢,加油吧!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM