之前我在是腾讯内部另外架了一套zabbix专门监控腾讯的CVM服务器,为了实现统一管理,这几天用zabbix的proxy功能实现了外部zabbix服务器监控腾讯内部CVM服务.
zabbix_server 和 zabbix_agentd 的搭建参考:
借用一下官网的图:
现在我们zabbix server 和 zabbix agentd 都已经有了,缺的就是zabbix proxy,这个zabbix proxy需要放在腾讯的一台中心CVM上,并打开对外端口和zabbix server通讯
第一步:搭建zabbix proxy
搭建方法跟zabbix server差不多,不过proxy不需要web服务,只需要单启一个进程就可以
#建立帐号:groupadd zabbixuseradd zabbix -g zabbix#编译安装:tar xvf zabbix-2.0.3.tar.gzcd zabbix-2.0.3./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurlmakemake install#建立数据库并授权:create database zabbix character set utf8;grant all on zabbix.* to zabbix@localhost identified by 'zabbix';flush privileges;#导入结构:mysql -uzabbix -p'zabbix' zabbix < database/mysql/schema.sql
需要注意的是proxy不需要导入data.sql 和 p_w_picpaths.sql 这两份SQL,否则会有问题
第二步:修改proxy配置:
proxyMode 是代理模式,一会在zabbix server的web里面配置会有选择,0是主动模式,1是被动模式,我使1被动模式
Server 是指定zabbix Server 的地址
Hostname 是指定proxy的名称,一会在zabbix server的web配置里填的名称要和这个一样
ConfigFrequency 这个是server和proxy两端配置同步的时间间隔,server和proxy要设定同一个值才好,默认是3600,我想配置同步快一点,改成60
第三步:启动服务:
/usr/local/zabbix/sbin/zabbix_proxy
第四步:开通对外端口
腾讯的CVM是不对外服务的,要想zabbix server能连接proxy,需要利用腾讯的外网负载均衡功能做一个端口映射:
通过外网负载均衡就可以通过vip:vport访问到内部的zabbix proxy
第五步:zabbix server的web添加proxy节点:
代理主机名:填刚刚zabbix proxy的配置文件中的Hostname的值
proxy mode:选passive模式,需要和zabbix proxy的配置文件对应
interface:这里就是填刚刚用外网负载均衡开通的vip:vport,如果不是在腾讯上做要根据实际情况填写
至到这里zabbix proxy已经搭建完成,现在我们来添加一个agentd来看看效果
修改agentd配置:
Server:指定proxy的IP
serverActive: 指定proxy的IP跟端口
Hostname: 一个名称而已,在server端添加监控的时候最好保持一致
添加监控:
添加跟正常的差不多,就是由代理监控那里要选择一下我们刚刚添加的代理节点,agent接口里面填的IP也是agent的IP,不是proxy的IP
OK,收工。。。。