首先,大家应该了解一下,什么是zabbix?
Zabbix是一个分布式监控系统,支持多种采集方式和采集客户端,有专用的Agent(代理),也可以支持SNMP、IPMI、JMX、Telnet、SSH等多种协议,它将采集到的数据存放到数据库,然后对其进行分析整理,达到条件触发告警。其灵活的扩展性和丰富的功能是其他监控系统不能比的。相对来说,他的总体功能做得非常优秀,其界面也很简洁美观。
在国内,BAT的部分业务、豆瓣、58同城、PPTV、搜狐、Letv、人人、网易、小米、360等公司都在使用Zabbix。
Zabbix适合中小型企业、大中型企业的用户使用。单个Server节点可以支持上万台设备,每秒可以处理1.5万次请求,理论上可以支持5万台设备。
Zabbix自身的定位是中型企业和大型企业,如果在特大型环境中使用,需要解决大并发、大压力的问题,这对使用者提出了更高的要求。
Zabbix的通用架构是C/S架构,分布式架构为C/P/S或C/N/S,Zabbix-Server将采集到的数据持久地存储到数据库中,用前端的UI友好地展示给用户。
下面是Zabbix的架构图,可以更直观的帮助初学者理解Zabbix的原理及各部分的作用
下面介绍Zabbix的安装和配置
安装环境描述:Zabbix服务器的运行环境为Linux(Unix)+PHP+Web Service+Database,这里的Web Service可以为Nginx、Apache,Database可以为MySQL、Oracle、PostgreSQL等。
其次,还有一点需要注意的是时间同步。Zabbix-Server对时间的精准要求比较高,时间对数据的计算等都有影响,因此,最好设置NTP自动同步时间。也可以用crontab进行同步(实际的生产环境中不推荐这么做),如下所示,使用crontab进行时间同步。
*/30 * * * * /usr/sbin/ntpdate pool.ntp.org
最后一点,部署环境的考虑。Zabbix-Server尽量部署在核心业务所在的机房,要求到各分节点的网络稳定。另外,要考虑到网络流量的问题,做好安全策略。
(一)Zabbix-Server服务器端的安装
注意:下面以CentOS6.5_X64为例介绍如何安装Zabbix-Server服务器端。本例采用的是RPM包安装方式,这也是我比较推荐的方式,该方式较简介。源码安装的方式我会在在下次文章中介绍。
准备好CentOS6.5_X64系统,配置IP地址,确保与互联网连接正常。进入系统,测试网路,方法如下:
[root@zabbix-server ~]# ping -c 4 www.baidu.com PING www.a.shifen.com (119.75.218.70) 56(84) bytes of data. 64 bytes from 119.75.218.70: icmp_seq=1 ttl=54 time=3.31 ms 64 bytes from 119.75.218.70: icmp_seq=2 ttl=54 time=6.31 ms 64 bytes from 119.75.218.70: icmp_seq=3 ttl=54 time=10.5 ms 64 bytes from 119.75.218.70: icmp_seq=4 ttl=54 time=4.16 ms --- www.a.shifen.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 12023ms rtt min/avg/max/mdev = 3.313/6.078/10.530/2.793 ms
1. 安装Zabbix官方源和epel源,如下所示:
[root@zabbix-server ~]# rpm -ivh http://repo.zabbix.com/zabbix/2.0/rhel/6/x86_64/zabbix-release-2.0-1.el6.noarch.rpm
[root@zabbix-server ~]# rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
注意:由于软件版本更新,以上链接可能会失效,请读者下载并安装相应的版本。
2. 安装服务器端(注意:由于服务器端也是需要监控的,股这里也一并安装Zabbix-Agent,如下所示。)
[root@zabbix-server ~]# yum -y install zabbix zabbix-get zabbix-server zabbix-web-mysql zabbix-web zabbix-agent
安装可以看到,yum方式安装并没有自动安装mysql-server。
注意:由于RHEL系统(Cent OS不存在这个问题)缺少php-bcmath和php-mbstring这两个包,会导致Web页面的安装提示缺少组件,所以读者可以在Cent OS源中下载这两个包安装即可(注意与系统版本对应)。
http://vault.centos.org/
3. 安装MySQL数据库服务,命令如下:
[root@zabbix-server ~]# yum -y install mysql-server
修改MySQL配置文件如下(*星号标记部分很重要)
[root@zabbix-server ~]# vi /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 character-set-server=utf8 * innodb_file_per_table=1 * [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
本文出自 “焦糖老爹” 博客,转载请与作者联系!
zabbix企业级分布式监控系统--zabbix-server和zabbix-agent的配置过程
原文地址:http://jordanjiao23.blog.51cto.com/10181744/1711369