分布式系统架构部署架构下,zabbix proxy主要承担了哪些zabbix server的工作

kinda22 的BLOG
用户名:kinda22
文章数:49
评论数:11
访问量:25271
注册日期:
阅读量:24883
阅读量:276180
阅读量:1006510
阅读量:153629
51CTO推荐博文
在官方最新的Zabbix 2.4分布式架构中已经除了node(节点)模式,已经不在支持。我也曾在2.x的版本中使用node的多层分布式节点模式中多次碰到过Server间的配置一致性混乱的情况,且修复起来非常的麻烦..所以【跟我学系列】 不介绍node的部署。使用代理的目的也显而易见:减轻Server的采集压力或跨运营商网络的监控质量不好,又或者在监控链路的中间有防火墙设备等等....1. 环境准备& & CentOS 6.4& & 关闭selinux和iptables&&& 安装repo:/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm& & 5台虚拟机: 1台 Zabbix Server&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&& 2台 Zabbix Proxy(一台主动,一台被动)&&&&&&&&&&&&&&& 2台 Zabbix Client(一台主动采集,一台被动采集)&&&&&&&&&&&&&&& 192.168.188.30&&&&Server
192.168.188.31&&&&Proxy(active)
192.168.188.32&&&&Proxy(pass)
192.168.188.33&&&&Client(active)
192.168.188.34&&&&Client(pass)&&&&&&&&&&&&&&& &&& 其实你在做这个实验的时候,使用2台或三台虚拟机完全是可以的。。&&& 1台Zabbix Server, 1台Zabbix Proxy&&& Zerver 通过Proxy收集数据,Proxy采集自己..&&& 650) this.width=650;" src="/kinda22/EfisQC4r/1ahBC.png" alt="1ahBC.png" height="246" width="600" />2. Zabbix Server部署&&& 请参考3.& Zabbix Proxy部署#在所有的Proxy上执行&安装初始化....
yum&install&zabbix-proxy-mysql&zabbix-agent&mysql-server&mysql&-y
/etc/init.d/mysqld&start
mysql&-e&"create&database&zabbix_proxy&character&set&utf8&collate&utf8_"
mysql&-e&"grant&all&privileges&on&zabbix_proxy.*&to&zabbix@localhost&identified&by&'zabbix';"
cd&/usr/share/doc/zabbix-proxy-mysql-2.4.2/create/
mysql&-uroot&zabbix_proxy&&&schema.sql
sed&-i&'s/^.*DBPassword=.*$/DBPassword=zabbix/'&/etc/zabbix/zabbix_proxy.conf
cp&/etc/zabbix/zabbix_proxy.conf{,.bak}&&& a) Proxy主动模式&&&&&& 主动模式:是Server启用捕获进程用来接收主动发来的数据...(Agent主动,sender或Proxy 发来的),Proxy收集数据,然后主动把数据推送到Server。&&&&&& 常见的应用场景如:Server可以暴露IP和端口,Proxy不能暴露.&&&&&& 在主动模式中,配置检索的时间、心跳、数据发送频率是由每个Proxy在配置文件中独立定义的。&&&&&& 1. 在Server启动捕获进程#192.168.188.30
#在Server执行..
sed&-i&'s/.*StartTrappers=.*$/StartTrappers=10/'&/etc/zabbix/zabbix_server.conf
service&zabbix-server&restart&&&&&& 2. Proxy主要配置如下& #192.168.188.31
#在Proxy修改主机名,这个主机名很重要,必须和后面的在Web&UI中填写的主机名一致.
sed&-i&'s/HOSTNAME=.*/HOSTNAME=proxy-active/'&/etc/sysconfig/network
hostname&proxy-active
cat&&&/etc/zabbix/zabbix_proxy.conf&&&EOF
Server=192.168.188.30&&&&&&&&&&&&&&&&&&&&&#填写Server的IP,Proxy会将收集到的数据发往这个IP。
HostnameItem=system.hostname&&&&&&&&&&&&&&#通过内部的key获取当前主机名.
LogFile=/var/log/zabbix/zabbix_proxy.log&&
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBName=zabbix_proxy&&&&&&&&&&&&&&&&&&&&&&&#Proxy连接的数据库
DBUser=zabbix&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#连接数据库的用户名
DBPassword=zabbix&&&&&&&&&&&&&&&&&&&&&&&&&#连接数据库的秘密
DBSocket=/var/lib/mysql/mysql.sock
ProxyLocalBuffer=0&&&&&&&&&&&&&&&&&&&&&&&&#当数据发送到Server,还要在本地保留多少小时.不保留
ProxyOfflineBuffer=3&&&&&&&&&&&&&&&&&&&&&&#当数据没有发送到Server,在本地保留多少小时,3小时。
HeartbeatFrequency=60&&&&&&&&&&&&&&&&&&&&&#心跳检测代理在Server的可用性
ConfigFrequency=300&&&&&&&&&&&&&&&&&&&&&&&#代理多久从Server获取一次配置变化,默认3600秒.
DataSenderFrequency=3&&&&&&&&&&&&&&&&&&&&&#代理收集到数据后,多久向Server发送一次..
ExternalScripts=/usr/lib/zabbix/externalscripts
/etc/init.d/zabbix-proxy&start
chkconfig&zabbix-proxy&on&&&&&& 3. 配置Client Active#192.168.188.33
#首先在client-active修改主机名
sed&-i&'s/HOSTNAME=.*/HOSTNAME=client-active/'&/etc/sysconfig/network
hostname&client-active
yum&install&zabbix-agent&-y
sed&-i&'s/Server=.*/Server=192.168.188.31/'&/etc/zabbix/zabbix_agentd.conf&&&&&&&&&&&&&&#这里的ServerIP要填写oroxy-active的
sed&-i&'s/ServerActive=.*/ServerActive=192.168.188.31/'&/etc/zabbix/zabbix_agentd.conf&&#这里的ServerIP是用于Agent(主动)模式的.
sed&-i&'s/^Hostname=\(.*\)/#Hostname=\1/'&/etc/zabbix/zabbix_agentd.conf&&&&&&&&&&&&&&&&#将默认静态的主机名注释
sed&-i&'s/.*HostnameItem=\(.*\)/HostnameItem=\1/'&/etc/zabbix/zabbix_agentd.conf&&&&&&&&#使用内部key来获取动态的主机名
/etc/init.d/zabbix-agent&start
chkconfig&zabbix-agent&on&&&&&& 4. 在Server Web进行配置..&&&&&&& 创建一个新代理&&& 650) this.width=650;" src="/kinda22/EfhW4bCa/EDa8q.jpg" alt="EDa8q.jpg" height="235" width="600" />&&&&&&& 代理的名称很重要,一定要和主机名一致(在proxy中配置为动态获取主机名)&&& &&&&&&& 创建一个新主机,使用刚创建的代理来进行采集..&&& &&&&&& 5. 查看proxy日志&&&&&&& 如果在部署过程中有什么问题,一定要记得多看看日志..[root@proxy-active&~]#&tail&-f&/var/log/zabbix/zabbix_proxy.log&
&&0:&proxy&#17&started&[http&poller&#1]
&&0:&proxy&#19&started&[history&syncer&#1]
&&0:&proxy&#20&started&[history&syncer&#2]
&&0:&received&configuration&data&from&server,&datalen&7294
&&0:&proxy&#21&started&[history&syncer&#3]
&&0:&proxy&#22&started&[history&syncer&#4]
&&0:&proxy&#23&started&[self-monitoring&#1]
&&0:&proxy&#18&started&[discoverer&#1]
&&0:&enabling&Zabbix&agent&checks&on&host&"client-active":&host&became&available &&&&&& 6. Server查看状态..&&&&&&& 可以看到主机的Agent状态已经为可用了&&& &&&&&&& 代理的状态,&&& &&& b) Proxy被动模式 &&&&& 被动模式:是Server启用代理轮询进程,周期性的从被动代理获取数据.&&&&&& 常见的应用场景如:Server不可以暴露端口,Proxy可以暴露端口.&&&&&& 在被动模式中,配置检索的时间、数据发送频率是由Server来定义的。。&&&&&& 1. 在Server启动代理轮询进程#192.168.188.30
#在Server开启代理轮询进程,配置发送给代理的刷新时间、从代理收集数据的间隔时间
sed&-i&'s/.*StartProxyPollers=.*$/StartProxyPollers=5/'&/etc/zabbix/zabbix_server.conf&
sed&-i&'s/.*ProxyConfigFrequency=.*/ProxyConfigFrequency=300/'&/etc/zabbix/zabbix_server.conf&
sed&-i&'s/.*ProxyDataFrequency=.*/ProxyDataFrequency=3/'&/etc/zabbix/zabbix_server.conf&
/etc/init.d/zabbix-server&restart&&&&&& 2. Proxy主要配置如下 #192.168.188.32
#在Proxy修改主机名
sed&-i&'s/HOSTNAME=.*/HOSTNAME=proxy-pass/'&/etc/sysconfig/network
hostname&proxy-pass
#可以发现被动代理和主动代理的配置少了3个参数..,是要配置在Server中的。
cat&&&/etc/zabbix/zabbix_proxy.conf&&&EOF
ProxyMode=1&&&&&&&&&&&&&&&&&&&&&&&&&&&&#这个配置为1时,代理变为被动代理模式,默认为0主动代理模式。
Server=192.168.188.30&&&&&&&&&&&&&&&&&&#填写Server的IP,Proxy会将收集到的数据发往这个IP
HostnameItem=system.hostname&&&&&&&&&&&&&
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=zabbix
DBSocket=/var/lib/mysql/mysql.sock
ProxyLocalBuffer=0&&&&&&&&&&&&&&&&&&&&&#当数据发送到Server,还要在本地保留多少小时.不保留
ProxyOfflineBuffer=1&&&&&&&&&&&&&&&&&&&#当数据没有发送到Server,在本地保留多少小时,3小时。
ExternalScripts=/usr/lib/zabbix/externalscripts
EOF&&&&&& 3. 配置Client Pass#192.168.188.34
#首先在client-active修改主机名
sed&-i&'s/HOSTNAME=.*/HOSTNAME=client-pass/'&/etc/sysconfig/network
hostname&client-pass
yum&install&zabbix-agent&-y
sed&-i&'s/Server=.*/Server=192.168.188.32/'&/etc/zabbix/zabbix_agentd.conf&&&&&&&&&&&&&&#这里的ServerIP要填写oroxy-active的
sed&-i&'s/ServerActive=.*/ServerActive=192.168.188.32/'&/etc/zabbix/zabbix_agentd.conf&&#这里的ServerIP是用于Agent(主动)模式的.
sed&-i&'s/^Hostname=\(.*\)/#Hostname=\1/'&/etc/zabbix/zabbix_agentd.conf&&&&&&&&&&&&&&&&#将默认静态的主机名注释
sed&-i&'s/.*HostnameItem=\(.*\)/HostnameItem=\1/'&/etc/zabbix/zabbix_agentd.conf&&&&&&&&#使用内部key来获取动态的主机名
/etc/init.d/zabbix-agent&start
chkconfig&zabbix-agent&on&&&&&& 4. 在Server Web进行配置..&&&&&&&& 在创建一个新代理,将代理模式改为被动式,并且添加上被动代理的IP&&& 650) this.width=650;" src="/kinda22/Efin7fiV/EFPhr.jpg" alt="EFPhr.jpg" height="417" width="600" />&&&&&&& &&&&&&& 创建一个新主机,使用刚创建的代理来进行采集..&&& &&&&&& 5. 查看proxy日志&&&&&&&& 日志最后一行可以看到client-pass已经成功采集到了,其中的'cannot send list of active checks to '这个不是错误,后期的Agent(active)会讲.[root@localhost&create]#&tail&-f&/var/log/zabbix/zabbix_proxy.log
&&0:&cannot&send&list&of&active&checks&to&[192.168.188.34]:&host&[client-pass]&not&found
&&0:&received&configuration&data&from&server,&datalen&2588
&&0:&cannot&send&list&of&active&checks&to&[192.168.188.34]:&host&[client-pass]&not&found
&&0:&cannot&send&list&of&active&checks&to&[192.168.188.34]:&host&[client-pass]&not&found
&&0:&cannot&send&list&of&active&checks&to&[192.168.188.34]:&host&[client-pass]&not&found
&&0:&cannot&send&list&of&active&checks&to&[192.168.188.34]:&host&[client-pass]&not&found
&&0:&cannot&send&list&of&active&checks&to&[192.168.188.34]:&host&[client-pass]&not&found
&&0:&cannot&send&list&of&active&checks&to&[192.168.188.34]:&host&[client-pass]&not&found
&&0:&received&configuration&data&from&server,&datalen&7324
&&0:&enabling&Zabbix&agent&checks&on&host&"client-pass":&host&became&available&&&&&& 6. Server查看状态..&&&&&&& 可以看到两台主机分别为不同的代理所采集,并且都为可用状态&&& 650) this.width=650;" src="/kinda22/Efiqjjau/4MJiR.jpg" alt="4MJiR.jpg" height="209" width="600" />&&&&&&& 查看代理的状态~&&& 650) this.width=650;" src="/kinda22/Efiq77xF/WVvSy.jpg" alt="WVvSy.jpg" height="180" width="600" />本文出自 “” 博客,请务必保留此出处
了这篇文章
类别:┆阅读(0)┆评论(0)君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
zabbix的proxy分布式部署
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口zabbix企业应用之zabbix-proxy-agent工作模式
zabbix简介:zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。作用:zabbix能监视各种网络参数..
zabbix简介:&&&&&& zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。&&&&&& 作用:zabbix能监视各种网络参数,保证系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。&&&&&& 组成:由zabbix server与可选组件zabbix agent两部分构成。&&&&&& 工作机制与适用平台:zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,,,AIX,Free BSD,Open BSD,OS X等平台上。&&&&&& 今天我们讲解一下zabbix-proxy-agent工作模式及安装配置过程:拓扑图:&&&&& 实验目的:用node1通过node2监控node3服务器。实验准备工作:node1、node2、node3服务器做时间同步。[root@node1&~]#&ntpdate&172.16.0.1
10&Oct&15:16:52&ntpdate[1762]:&step&time&server&172.16.0.1&offset&&sec一、Node1,zabbix-server端安装配置。1、安装server端服务,并配置:[root@node1&zabbix-2.4]#&yum&install&zabbix-server-2.4.0-1.el6.x86_64.rpm&zabbix-server-mysql-2.4.0-1.el6.x86_64.rpm&zabbix-get-2.4.0-1.el6.x86_64.rpm&zabbix-2.4.0-1.el6.x86_64.rpm&zabbix-web-2.4.0-1.el6.noarch.rpm&zabbix-web-mysql-2.4.0-1.el6.noarch.rpm&zabbix-agent-2.4.0-1.el6.x86_64.rpm&zabbix-sender-2.4.0-1.el6.x86_64.rpm&http&mysql-server2、创建zabbix数据库,并导入zabbix数据到MySQL数据库:创建数据库:mysql&&create&database&
Query&OK,&1&row&affected&(0.00&sec)导入zabbix表:[root@node1&zabbix]#cd&/usr/share/doc/zabbix-server-mysql-2.4.0/create
[root@node1&create]#&mysql&zabbix&&schema.sql
[root@node1&create]#&mysql&zabbix&&images.sql
[root@node1&create]#&mysql&zabbix&&data.sql3、授权用户server服务器对MySQL数据库的访问权限,并立即生效mysql&&grant&all&on&zabbix.*&to&'zbxuser'@'172.16.%.%'&identified&by&'zbxpass';
Query&OK,&0&rows&affected&(0.00&sec)
mysql&&flush&
Query&OK,&0&rows&affected&(0.00&sec)4、配置zabbix-server服务,并启动服务:[root@node1&create]#&vim&/etc/zabbix/zabbix_server.conf
DBHost=172.16.22.6&#修改数据库服务器位置
DBUser=zbxuser&#授权访问数据库zabbix用户的用户名
DBPassword=zbxpass&#授权访问数据库zabbix用户的密码
DBSocket=/var/lib/mysql/mysql.sock&#mysql.sock文件的位置,如果是本机则为/tmp/mysql.sock启服务:[root@node1&create]#&service&zabbix-server&start
Starting&Zabbix&server:&[&OK&]5、配置php的时区,并重启web服务:[root@node1&create]#&vim&/etc/php.ini
date.timezone&=&Asia/Shanghai&#修改时区为亚洲/上海重启httpd让时区生效:[root@node1&create]#&service&httpd&restart
Stopping&httpd:&[&OK&]
Starting&httpd:&[&OK&]&二、Node2,zabbix-proxy端安装配置,需要用独立的数据库(因为)1、安装,并启动数据库[root@node2&zabbix-2.4]#&yum&-y&install&mysql-server
[root@node2&zabbix-2.4]#&/etc/init.d/mysqld&start2、连接数据库,创建数据库并授权proxy访问权限mysql&&create&database&
Query&OK,&1&row&affected&(0.00&sec)
mysql&&grant&all&on&zabbixproxy.*&to&'zbxuser'@'172.16.%.%'&identified&by&'zbxpass';
Query&OK,&0&rows&affected&(0.00&sec)
mysql&&grant&all&on&zabbixproxy.*&to&'zbxuser'@'node2'&identified&by&'zbxpass';
Query&OK,&0&rows&affected&(0.00&sec)
mysql&&flush&
Query&OK,&0&rows&affected&(0.00&sec)3、安装zabbix-proxy服务[root@node2&zabbix-2.4]#&yum&install&zabbix-2.4.0-1.el6.x86_64.rpm&zabbix-proxy-2.4.0-1.el6.x86_64.rpm&zabbix-proxy-mysql-2.4.0-1.el6.x86_64.rpm4、导入数据库,配置proxy端[root@node2&zabbix-2.4]#&mysql&zabbixproxy&&&/usr/share/doc/zabbix-proxy-mysql-2.4.0/create/schema.sql
[root@node2&zabbix-2.4]#&vim&/etc/zabbix/zabbix_proxy.conf
修改下列参数:
Server=172.16.22.6
DBHost=172.16.22.8
DBName=zabbixproxy
DBUser=zbxuser
DBPassword=zbxpass&&三、Node3,zabbix-agent端1、安装agentf段服务[root@node3&zabbix-2.4]#&yum&install&zabbix-agent-2.4.0-1.el6.x86_64.rpm&zabbix-2.4.0-1.el6.x86_64.rpm2、配置agent端,并启动服务:[root@node3&zabbix-2.4]#&vim&/etc/zabbix/zabbix_agentd.conf
修改下列参数:
Server=172.16.22.8
ServerActive=172.16.22.8
[root@node3&zabbix-2.4]#&/etc/init.d/zabbix-agent&start
Starting&Zabbix&agent:&[&OK&]四、通过zabbix-web接口配置zabbix-proxy-agent工作1、web连接zabbix,添加一个proxy&大功告成!!!!!&&&&&& 总结:1、zabbix-proxy-agent工作模式特性:&&&&& proxy不会向server同步configuration,只会接收。&&&&& proxy的数据库定时将数据传送给server,proxy本地数据库只保存最近没有发送的数据。
你最喜欢的}

我要回帖

更多关于 平民架构 oneproxy 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信