今天主要介绍在CentOS 7.0下安装Zabbix 2.4.5的过程。
Zabbix是一个企业级的、开源的、分布式的监控套件,Zabbix可以监控网络和服务的监控状况. Zabbix利用灵活的告警机制,允许用户对事件发送基于Email的告警. 这样可以保证快速的对问题作出相应. Zabbix可以利用存储数据提供杰出的报告及图形化方式. 这一特性将帮助用户完成容量规划。
Zabbix支持polling和trapping两种方式. 所有的Zabbix报告都可以通过配置参数在WEB前端进行访问. Web前端将帮助你在任何区域都能够迅速获得你的网络及服务状况. Zabbix可以通过尽可能的配置来扮演监控你的IT基础框架的角色,而不管你是来自于小型组织还是大规模的公司。
Zabbix是零成本的. 因为Zabbix编写和发布基于GPL V2协议. 意味着源代码是免费发布的。
一、zabbix的进程介绍:
zabbix_agentd
客户端守护进程,此进程收集客户端数据,例如cpu负载、内存、硬盘使用情况等
zabbix_get
zabbix工具,单独使用的命令,通常在server或者proxy端执行获取远程客户端信息的命令。通常用户排错。例如在server端获取不到客户端的内存数据,我们可以使用zabbix_get获取客户端的内容的方式来做故障排查。
zabbix_sender
zabbix工具,用于发送数据给server或者proxy,通常用于耗时比较长的检查。很多检查非常耗时间,导致zabbix超时。于是我们在脚本执行完毕之后,使用sender主动提交数据。
zabbix_server
zabbix服务端守护进程。zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、zabbix_java_gateway的数据最终都是提交到server
备注:当然不是数据都是主动提交给zabbix_server,也有的是server主动去取数据。
zabbix_proxy
zabbix代理守护进程。功能类似server,唯一不同的是它只是一个中转站,它需要把收集到的数据提交/被提交到server里。
zabbix_java_gateway
zabbix2.0之后引入的一个功能。顾名思义:Java网关,类似agentd,但是只用于Java方面。需要特别注意的是,它只能主动去获取数据,而不能被动获取数据。它的数据最终会给到server或者proxy。
安装环境:
mysql 5.6.26
tentine 2.11
php 5.6.9
以上这环境如何安装就不介绍了,Linux公社()上一找一大把,可以YUM安装,当然也可以源码安装了。
二、安装zabbix服务器和客户端
1、获取zabbix
cd /usr/local/src
wget %20Latest%20Stable/2.4.5/zabbix-2.4.5.tar.gz
tar -zxvf zabbix-2.4.5.tar.gz
cd zabbix-2.4.5
2、yum安装zabbix需要依赖库
yum -y install net-snmp-devel curl-devel
./configure –prefix=/usr/local/zabbix-2.4.5/ –enable-server –enable-agent –with-mysql –with-net-snmp –with-libcurl –with-libxml2
make && make install
现在zabbix就被安装到了/usr/local/zabbix-2.4.5/
3、下面需要创建zabbix用户和初始化数据库。
groupadd zabbix
useradd -g zabbix zabbix -s /sbin/nologin
mysql -uroot -p222222
mysql> create database zabbix charac
ter set utf8 collate utf8 bin;
mysql> grant all privileges on zabbix.* to zabbix@’%’ identified by ‘zabbix123′;
mysql -uroot -p222222 zabbix < /usr/local/src/zabbix-2.4.5/database/mysql/schema.sql
mysql -uroot -p222222 zabbix < /usr/local/src/zabbix-2.4.5/database/mysql/images.sql
mysql -uroot -p222222 zabbix < /usr/local/src/zabbix-2.4.5/database/mysql/data.sql
4、修改zabbix的配置文件
服务端配置文件
cat /usr/local/zabbix-2.4.5/etc/zabbix_server.conf | egrep -v '^#|^$'
LogFile=/tmp/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix123
DBSocket=/usr/local/mysql/jk/mysql.sock
DBPort=3306
本机客户端配置
cat /usr/local/zabbix-2.4.5/etc/zabbix_agentd.conf | egrep -v '^#|^$'
LogFile=/tmp/zabbix_agentd.log
Server=154.1.1.37
ServerActive=154.1.1.37
Hostname=web00
5、启动本机的服务器和agent
systemctl start zabbix_server
systemctl start zabbix_agentd
6、可以通过/tmp/zabbix*的log文件调试服务器和客户端运行情况.如果启动成功,服务会监听端口的。
netstat -tulnp | grep zabbix
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 18235/zabbix_agentd
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 18127/zabbix_server
lsof -i:10050
[root@web01 etc]# lsof -i:10050
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
zabbix_ag 1105 zabbix 4u IPv4 17462 0t0 TCP *:zabbix-agent (LISTEN)
zabbix_ag 1115 zabbix 4u IPv4 17462 0t0 TCP *:zabbix-agent (LISTEN)
zabbix_ag 1117 zabbix 4u IPv4 17462 0t0 TCP *:zabbix-agent (LISTEN)
zabbix_ag 1120 zabbix 4u IPv4 17462 0t0 TCP *:zabbix-agent (LISTEN)
zabbix_ag 1121 zabbix 4u IPv4 17462 0t0 TCP *:zabbix-agent (LISTEN)
zabbix_ag 1122 zabbix 4u IPv4 17462 0t0 TCP *:zabbix-agent (LISTEN)
[root@web01 sbin]# lsof -i:10051
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
zabbix_se 21627 zabbix 4u IPv4 8534867 0t0 TCP *:zabbix-trapper (LISTEN)
zabbix_se 21629 zabbix 4u IPv4 8534867 0t0 TCP *:zabbix-trapper (LISTEN)
zabbix_se 21630 zabbix 4u IPv4 8534867 0t0 TCP *:zabbix-trapper (LISTEN)
zabbix_se 21631 zabbix 4u IPv4 8534867 0t0 TCP *:zabbix-trapper (LISTEN)
zabbix_se 21632 zabbix 4u IPv4 8534867 0t0 TCP *:zabbix-trapper (LISTEN)