自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

轉(zhuǎn)角遇到Zabbix:企業(yè)級(jí)分布式系統(tǒng)監(jiān)控部署

運(yùn)維 系統(tǒng)運(yùn)維 分布式
zabbix是一個(gè)基于WEB界面的提供分布式系統(tǒng)監(jiān)視以及網(wǎng)絡(luò)監(jiān)視功能的企業(yè)級(jí)的開(kāi)源解決方案。借助zabbix,可以減輕運(yùn)維人員們繁重的服務(wù)器管理任務(wù),實(shí)現(xiàn)業(yè)務(wù)系統(tǒng)的持續(xù)運(yùn)行。本文中,作者sfzhang結(jié)合公司的實(shí)際機(jī)房分布在多個(gè)城市的案例,總結(jié)了Zabbix分布式部署實(shí)施方案的全過(guò)程。

【編者按】Zabbix是一個(gè)基于WEB界面的提供分布式系統(tǒng)監(jiān)視以及網(wǎng)絡(luò)監(jiān)視功能的企業(yè)級(jí)的開(kāi)源解決方案。借助Zabbix,可以減輕運(yùn)維人員們繁重的服務(wù)器管理任務(wù),實(shí)現(xiàn)業(yè)務(wù)系統(tǒng)的持續(xù)運(yùn)行。本文中,作者張世鋒結(jié)合公司的實(shí)際機(jī)房分布在多個(gè)城市的案例,總結(jié)了Zabbix分布式部署實(shí)施方案的全過(guò)程。


最近在研究Zabbix監(jiān)控,由于機(jī)房分布在多個(gè)城市,因此采用zabbix proxy做為監(jiān)控方案,在每個(gè)節(jié)點(diǎn)部署zabbix proxy,由zabbix proxy收集agentd數(shù)據(jù),然后將采集到的數(shù)據(jù)主動(dòng)推送給zabbix server,zabbix server將數(shù)據(jù)存入數(shù)據(jù)庫(kù),并在WEB前端顯示。

一、Zabbix主要功能和優(yōu)劣勢(shì)說(shuō)明

1、Zabbix主要功能:

1)Application monitoring 應(yīng)用監(jiān)控

數(shù)據(jù)庫(kù)/SSH/Apache/Nginx等應(yīng)用程序的監(jiān)控。

2)Server monitoring 服務(wù)器監(jiān)控

CPU,內(nèi)存,SWAP,磁盤(pán)空間,網(wǎng)卡流量的監(jiān)控等,可以通過(guò)瀏覽器實(shí)時(shí)查看Graphs。

3)Network monitoring 網(wǎng)絡(luò)設(shè)備監(jiān)控

支持Cisco, Juniper, 3Com等網(wǎng)絡(luò)設(shè)備,網(wǎng)絡(luò)設(shè)備通過(guò)SNMP(SNMP (v1,v2,v3) devices)協(xié)議進(jìn)行監(jiān)控。

4)添加自定義監(jiān)控,對(duì)于Zabbix無(wú)法滿(mǎn)足的監(jiān)控,可以添加自定義監(jiān)控。

2、Zabbix 優(yōu)勢(shì):

1)安裝配置簡(jiǎn)單,支持多種語(yǔ)言,包括中文。

2)系統(tǒng)自帶多種監(jiān)控模板,可以直接使用。

3)支持分布式部署和WEB集中管理(通過(guò)WEB頁(yè)面設(shè)置或查看報(bào)警結(jié)果)。

4)自動(dòng)發(fā)現(xiàn)主機(jī)和網(wǎng)絡(luò)設(shè)備(discovery of file systems,network interfaces,hosts and netwrok devices)。

5)WEB監(jiān)控:可以監(jiān)控WEB下載速度,返回碼及響應(yīng)時(shí)間。

6)提供實(shí)時(shí)和歷史的監(jiān)控分析數(shù)據(jù)。

7)EMAIL報(bào)警,按照故障級(jí)別|服務(wù)器類(lèi)型|業(yè)務(wù)類(lèi)型發(fā)送EMAIL郵件到相關(guān)負(fù)責(zé)人。

3、Zabbix 劣勢(shì):

1)需要在被監(jiān)控機(jī)器上面安裝agent。

2)All configuration information都存儲(chǔ)在數(shù)據(jù)庫(kù)里面,數(shù)據(jù)庫(kù)是整個(gè)監(jiān)控平臺(tái)的瓶頸。

二、Zabbix分布式部署需求分析

1、軟件需求

官方推薦的軟件配置

 1)MySQL5.0.3 or laterRequired if MySQLis used as Zabbix back end database,InnoDB engine isrequired.

 2)PHP 5.3.0 or later

 3)Apache 1.3.12 or later

2、硬件需求

官方推薦的最小硬件配置:

#p#

三、Zabbix分布式部署實(shí)施

1、分布式部署拓?fù)鋱D

補(bǔ)充說(shuō)明:

當(dāng)proxy部署為主動(dòng)模式(Active)時(shí),Zabbix Server的負(fù)載最小。

 1)Server:負(fù)責(zé)把數(shù)據(jù)寫(xiě)入到數(shù)據(jù)庫(kù),然后通過(guò)Apache|Nginx +php在WEB前端顯示。

 2)Proxy:幫助server采集被監(jiān)控端的數(shù)據(jù),并把采集到的數(shù)據(jù)主動(dòng)傳送給Server,proxy只負(fù)責(zé)數(shù)據(jù)收集。

 3)Database:所有的配置信息都存儲(chǔ)在數(shù)據(jù)庫(kù)里面,Zabbix server數(shù)據(jù)庫(kù)和proxy數(shù)據(jù)庫(kù)必須獨(dú)立。

 4)Agent:agent的作用就是獲取host數(shù)據(jù),然后將收集到的數(shù)據(jù)發(fā)送給server(主動(dòng)模式),或者是server主動(dòng)來(lái)拿取數(shù)據(jù)(被動(dòng)模式)。

 5)Email:通過(guò)Qmail|postfix的SMTP負(fù)責(zé)報(bào)警郵件的發(fā)送(故障郵件和故障恢復(fù)郵件)。

2、Zabbix分布式安裝部署:

1)Mysql 數(shù)據(jù)庫(kù)安裝(參照:http://sfzhang88.blog.51cto.com/4995876/900846)

2)LNMP + Zabbix server 安裝(參照:http://sfzhang88.blog.51cto.com/4995876/978686)

3)Zabbix proxy 安裝(略)

4)Zabbix agent 安裝

  1. [root@www20 shell]# cat zabbix_agentd_install.sh 
  2. #!/bin/sh 
  3. #Create by sfzhang 2014.02.27 
  4. yum -y install net-snmp 
  5. yum -y install net-snmp-devel 
  6. BASE_DIR="/data/software" 
  7. TAR="zabbix-2.2.1.tar.gz" 
  8. tar -zxvf $BASE_DIR/$TAR -C$BASE_DIR 
  9. cd $BASE_DIR/zabbix-2.2.1 
  10. ./configure--prefix=/usr/local/zabbix --sysconfdir=/etc/zabbix --enable-agent 
  11. make && make install 
  12. groupadd zabbix 
  13. useradd zabbix -g zabbix 
  14. cpmisc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd 
  15. chmod 700/etc/init.d/zabbix_agentd 
  16. chown zabbix.zabbix/etc/init.d/zabbix_agentd 
  17. sed -i "/BASEDIR=/s#/.*#/usr/local/zabbix#" /etc/init.d/zabbix_agentd 
  18. sed -i"s#bin/zabbix_agentd#sbin/zabbix_agentd#" /etc/init.d/zabbix_agentd 
  19. sed -i"s#Server=127.0.0.1#Server=192.168.161.129#"/etc/zabbix/zabbix_agentd.conf 
  20. sed -i"s#ServerActive=127.0.0.1#\#ServerActive=127.0.0.1#"/etc/zabbix/zabbix_agentd.conf 
  21. sed -i "/Hostname=/s#=.*#"=$HOSTNAME#""/etc/zabbix/zabbix_agentd.conf 
  22. sed -i"s#\#/tmp/zabbix_agentd.pid#/data/logs/zabbix_agentd.pid#"/etc/zabbix/zabbix_agentd.conf 
  23. sed -i"s#/tmp/zabbix_agentd.log#/data/logs/zabbix_agentd.log#"/etc/zabbix/zabbix_agentd.conf 
  24. sed -i "s#\#Timeout=3#Timeout=30#" /etc/zabbix/zabbix_agentd.conf 
  25. cat>>/etc/services<<EOF 
  26. #Zabbix services 
  27. zabbix-agent 10050/tcp#Zabbix Agent 
  28. zabbix-agent 10050/udp#Zabbix Agent 
  29. zabbix-trapper 10051/tcp#Zabbix Trapper 
  30. zabbix-trapper 10051/udp#Zabbix Trapper 
  31. EOF 
  32. /etc/init.d/zabbix_agentdstart 

四、Zabbix WEB前端配置

1、配置proxy代理

2、添加Groups和hosts

通常Groups按照頻道或者是WEB,MYSQL,memcache等服務(wù)類(lèi)型分組的,提供相同服務(wù)的服務(wù)器分為一組,便于后期的維護(hù)和管理。

3、自定義監(jiān)控模板,監(jiān)控項(xiàng)和觸發(fā)器

#p#

五、zabbix主要功能展示

1、服務(wù)器監(jiān)控

1)CPU負(fù)載監(jiān)控

2)內(nèi)存空間的監(jiān)控

3) 磁盤(pán)空間的監(jiān)控

4)交換分區(qū)的監(jiān)控

5) 網(wǎng)卡流量的監(jiān)控

除此之外,還有服務(wù)器重啟的監(jiān)控,添加刪除用戶(hù)時(shí)的監(jiān)控,主機(jī)存活狀態(tài)的監(jiān)控(ICMP ping協(xié)議)等。

2、應(yīng)用程序的監(jiān)控

Zabbix有很多系統(tǒng)自帶的模板,在添加主機(jī)的時(shí)候Link相關(guān)的模板即可。

當(dāng)停止主機(jī)的上面的SSH服務(wù)或者Apache服務(wù)的時(shí)候會(huì)產(chǎn)生報(bào)警。

3、WEB Monitoring

Web Monitoring是用來(lái)監(jiān)控web程序的,可以監(jiān)控到web程序的下載速度、返回碼及響應(yīng)時(shí)間。當(dāng)返回碼不為200的時(shí)候也可以產(chǎn)生報(bào)警。

4、Zabbix Screens

Screen將多種信息放在一起展示,便于集中展示某個(gè)主機(jī)的監(jiān)控信息。

5、Zabbix maps

Zabbix的maps用來(lái)圖形化顯示監(jiān)控設(shè)備的拓?fù)鋱D,并且以不同的標(biāo)記顯示故障事件,通過(guò)該圖表很直觀的顯示設(shè)備的整體情況。

#p#

六、Zabbix自定義監(jiān)控

在實(shí)際應(yīng)用當(dāng)中,好多監(jiān)控系統(tǒng)都滿(mǎn)足不了實(shí)際的需求,需要根據(jù)實(shí)際的需求添加自定義監(jiān)控。比如說(shuō):監(jiān)控應(yīng)用服務(wù)器tuxedo排隊(duì),當(dāng)隊(duì)列大于2000的時(shí)候報(bào)警。監(jiān)控apache,mysql鏈接數(shù),當(dāng)大于2000的時(shí)候報(bào)警等等,此時(shí)Zabbix需要借助scripts來(lái)完成。

實(shí)例:監(jiān)控http和mysql ESTABLISHED和TIME_WAIT連接數(shù),當(dāng)大于100的時(shí)候報(bào)警,并在WEB頁(yè)面實(shí)時(shí)查看連接數(shù)。

1、在要監(jiān)控的服務(wù)器上面編寫(xiě)Shell/python腳本,取出ESTABLISHED和TIME_WAIT連接數(shù)。

  1. [root@monitor scripts]# catcheckservices.sh 
  2. #!/bin/sh 
  3. #Create by sfzhang 2014.02.10 
  4. ARGS=1 
  5. if [ $# -ne "$ARGS"];then 
  6. echo "Please input one arguement"; 
  7. fi 
  8. case $1 in 
  9. EST_80) 
  10. result=`netstat -anp | grep :80 | grep EST | wc -l` 
  11. echo$result 
  12. ;; 
  13. TIME_OUT_80) 
  14. result=`netstat-anp | grep :80 | grep TIME_WAIT | wc -l` 
  15. echo$result 
  16. ;; 
  17. EST_3306) 
  18. result=`netstat -anp | grep :3306 | grep EST | wc -l` 
  19. echo $result 
  20. ;; 
  21. TIME_OUT_3306) 
  22. result=`netstat -anp | grep:3306 | grep TIME_WAIT | wc -l` 
  23. echo $result 
  24. ;; 
  25. EST_11211) 
  26. result=`netstat -anp | grep :11211 | grep EST | wc -l` 
  27. echo $result 
  28. ;; 
  29. TIME_OUT_11211) 
  30. result=`netstat -anp | grep:11211 | grep TIME_WAIT | wc -l` 
  31. echo $result 
  32. ;; 
  33. *) 
  34. echo"Usage:$0(EST_80|TIME_OUT_80|EST_3306|TIME_OUT_3306|EST_11211|TIME_OUT_11211)" 
  35. ;; 
  36. esac 

2、在Zabbix_agentd.conf里面添加UserParameter,格式如下,對(duì)于Zabbix來(lái)說(shuō),腳本其實(shí)就是一個(gè)插件。

  1. UserParameter=checkservices.sh[*],/etc/zabbix/scripts/checkservices.sh $1 $2 

重啟agentd服務(wù)器,然后在zabbix server用zabbix_get就可以取到值。

3、要監(jiān)控的服務(wù)器有多臺(tái)的時(shí)候,最簡(jiǎn)單的方法是先編寫(xiě)一個(gè)Templates(模板),在Link到要監(jiān)控的服務(wù)器上面。

4、給新添加的模板Linux_service_templates添加Applications。

5、給新添加的模板Linux_service_templates添加Items(監(jiān)控項(xiàng))。下面是添加http ESTABLISHED監(jiān)控條目。

6、給新添加的模板Linux_service_templates添加Triggers(觸發(fā)器)。下面是添加 http ESTABLISHED觸發(fā)器,當(dāng)連接數(shù)大于2000的時(shí)候報(bào)警,故障級(jí)別為High。

7、要在WEB前端實(shí)時(shí)查看http的連接情況,必須配置Graph。在一個(gè)Graph里面可以添加多個(gè)Item數(shù)據(jù)。

8、要查看Graphs在要監(jiān)控的主機(jī)上面Link剛才的模板Linux_service_templates。

9、在WEB前端查看實(shí)時(shí)連接情況。

Http連接情況:

Mysql連接情況:

#p#

七、Zabbix discovery

1、Network discovery

Zabbix network discovery能自動(dòng)發(fā)現(xiàn)網(wǎng)絡(luò)中存活的主機(jī),可用通過(guò)proxy代理或者Zabbix server 發(fā)現(xiàn)網(wǎng)絡(luò)中存活的主機(jī),并按照Actions里面定義的條件自動(dòng)添加到Zabbix監(jiān)控里面。

1)首先:添加Discovery rule,可以通過(guò)proxy代理或者zabbix server添加rule。

2)然后create Actions,指定Actions的Conditions,必須具備下列條件才能自動(dòng)添加,Discover 

rule:規(guī)則為 Local network,system.uname的值中包含Linux,Zabbix agentd服務(wù)必須正常運(yùn)行。

3) 配置Actions的operations,將Actions里面符合條件的主機(jī)添加到shwww組里面并Link要監(jiān)控的模板。

4)查看Discover自動(dòng)發(fā)現(xiàn)的主機(jī)自動(dòng)添加到Zabbix里面。

2、Zabbix Low-level discovery

Zabbis Low-level discovery 可以自動(dòng)創(chuàng)建監(jiān)控項(xiàng),觸發(fā)器和圖像的方法。Zabbix可以自動(dòng)發(fā)現(xiàn)主機(jī)上面的文件系統(tǒng)或者網(wǎng)絡(luò)接口,不需要對(duì)每個(gè)文件系統(tǒng)和網(wǎng)絡(luò)接口手動(dòng)創(chuàng)建監(jiān)控項(xiàng),觸發(fā)器和圖像。Zabbix 還可以自動(dòng)刪除不需要的監(jiān)控項(xiàng),比如:上例當(dāng)中的,當(dāng)agentd宕機(jī)超過(guò)24小時(shí)的時(shí)候可以自動(dòng)刪除監(jiān)控,只需在action里面配置即可。

實(shí)例:監(jiān)控服務(wù)器上面所有TCP端口,就可以通過(guò)Low-level discovery輕松實(shí)現(xiàn)。

八、Zabbix報(bào)警郵件機(jī)制

1、基于業(yè)務(wù)類(lèi)型發(fā)送報(bào)警郵件

當(dāng)數(shù)據(jù)庫(kù)服務(wù)器出問(wèn)題時(shí)發(fā)給DBA組,當(dāng)系統(tǒng)出問(wèn)題時(shí)發(fā)給System組。

2、基于故障級(jí)別或者時(shí)間發(fā)送郵件

九、Zabbix資產(chǎn)管理

Zabbix可以自動(dòng)收集主機(jī)的hostname,OS,cpu信息,MAC等信息。需要在添加主機(jī)的時(shí)候開(kāi)啟Host inventory Automatic功能,并按照官方手冊(cè)添加Item即可。

十、Zabbix 報(bào)表功能

附錄:

1、官方在線(xiàn)文檔:

https://www.zabbix.com/documentation/2.2/manual/introduction

原文鏈接:http://sfzhang88.blog.51cto.com/4995876/1364399

責(zé)任編輯:黃丹 來(lái)源: 51TCO博客
相關(guān)推薦

2014-03-10 17:21:00

IT技術(shù)周刊

2021-08-24 05:02:34

云原生容器分布式

2011-04-01 10:18:12

zabbix

2020-11-24 09:36:19

分布式監(jiān)控系統(tǒng)

2021-08-28 05:04:19

存儲(chǔ)云原生分布式

2011-03-29 13:25:10

Zabbix監(jiān)控

2011-04-01 14:54:23

zabbix漢化分布式監(jiān)控

2011-04-01 14:28:58

zabbix應(yīng)用proxy

2009-10-26 14:10:46

分布式設(shè)計(jì)

2021-08-26 00:23:14

分布式存儲(chǔ)高可用

2009-08-25 13:25:00

Java企業(yè)級(jí)應(yīng)用架構(gòu)分布式結(jié)構(gòu)

2016-02-23 13:16:08

網(wǎng)絡(luò)監(jiān)控網(wǎng)絡(luò)可用性監(jiān)控系統(tǒng)

2021-08-25 05:05:26

存儲(chǔ) 備份恢復(fù)

2011-03-29 11:27:37

監(jiān)控Zabbix

2011-03-29 11:28:03

Linux安裝zabbix

2019-06-27 10:17:40

Centos7Pinpoint監(jiān)控

2011-03-29 11:17:57

ZABBIX監(jiān)控

2014-03-11 16:13:43

分布式NTP應(yīng)用方案

2021-08-26 23:54:46

分布式存儲(chǔ)負(fù)載

2017-07-06 17:26:36

阿里分布式應(yīng)用架構(gòu)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)