一.zabbix简介
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix由zabbix server与可选组件zabbix agent两部门组成。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视。
zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。
zabbix的主要特点:免费开源,安装与配置简单,学习成本低 , 支持多语言(包括中文), 自动发现服务器与网络设备,分布式监视以及WEB集中管理功能,可以无agent监视, 用户安全认证和柔软的授权方式, 通过 WEB界面设置或查看监视结果, email、feition等通知功能等。
zabbix主要功能:CPU负荷、内存使用、磁盘使用、网络状况、端口监视、日志监视、网页监控、tcp监控、数据库监控(mysql、mongdb、redis) ,自定义监控等等。
zabbix架构图
zabbix逻辑架构
二.zabbix的安装
Zabbix 2.4.1 for Ubuntu 14.04 LTS
Install from packages:
# wget http://repo.zabbix.com/zabbix/2.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_2.4-1+trusty_all.deb
# dpkg -i zabbix-release_2.4-1+trusty_all.deb
# apt-get update
安装zabbix-server、网页字体、mysql数据库等
# apt-get install zabbix-server-mysql zabbix-frontend-php
安装zabbix-agent对服务器监控
# apt-get install zabbix-agent
Install from sources: 安装数据库
# apt-get install mysql-server
# vi /etc/mysql/my.cnf
character-set-server=utf8 #设置字符集为utf8
innodb_file_per_table= #让innodb的每个表文件单独存储
启动服务
server mysqld start
创建zabbix的数据库
# mysqladmin -uroot password
# mysql -uroot -p12345
> create databases zabbix character set utf8;
> grant all privilege on zabbix.* to zabbix@localhost identified by 'zabbix';
> flush privileges;
导入zabbix-server的数据库
# cd zabbix-2.4.1/database/mysql
# mysql -uzabbix -pzabbix zabbix < mysql.sql
# mysql -uzabbix -pzabbix zabbix < images.sql
# mysql -uzabbix -pzabbix zabbix < schema.sql
下载源码包zabbix_2.4.1.orig.tar.gz
# tar -zxvf zabbix-2.4.1.orig.tar.gz
创建用户
1 # groupadd zabbix
# useradd -g zabbix zabbix
编译源码包
# ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
# ./configure --enable-agent
# make$$make install
添加服务端口
# vim /etc/services
zabbix-agent 10050/tcp # Zabbix Agent
zabbix-agent 10050/udp # Zabbix Agent
zabbix-trapper 10051/tcp # Zabbix Trapper
zabbix-trapper 10051/udp # Zabbix Trapper
添加配置文件
# mkdir -p /etc/zabbix
# cp -r zabbix-2.4.1/conf/* /etc/zabbix/
# chown -R zabbix:zabbix /etc/zabbix
拷贝启动脚本到/etc/init.d目录下
修改server配置文件,添加zabbix数据库密码
# vim /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix_server.log PidFile=/var/run/zabbix/zabbix_server.pid
DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix #指定zabbix数据库密码 ListenIP=127.0.0.1(192.168.95.130) #服务器IP地址 StartPollers=5 CacheSize=256M
默认只需修改DBPassword=zabbix即可,蓝色部分是性能参数,可以根据需求实际情况调整。
修改Agentd配置文件,更改HOSTNAME为本机的hostname
vim /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid #进程PID LogFile=/var/log/zabbix_agentd.log #日志保存位置 EnableRemoteCommands= #允许执行远程命令 Server=127.0.0.1(192.168.95.130) #agent端的ip Hostname=warrior #必须与zabbix创建的host name相同
添加web前端
# cd zabbix-2.4./frontends/
# cp -rf php /zabbix # web虚拟主机目录
# chown -R zabbix:zabbix zabbix
修改PHP相关参数
vi /etc/php5/cli/php.ini
1 max_execution_time 300
2 memory_limit 128M
3 post_max_size 16M
4 max_input_time 300
5 upload_max_filesize 2M
6 date.timezone =Asia/Chongqing
zabbix的web配置:
浏览器输入http://192.168.95.130(zabbix-server的IP)/zabbix
检查php的依赖性
在检查一切OK,下一步
测试mysql数据库连接OK,下一步 Name定义zabbix-server的名字,port是监控端口。 一切OK,Finish 最终效果 禁用zabbix的重新安装:
# vi /usr/share/zabbix/include/menu.inc.php,注释蓝色部分即可。
下一篇:zabbix的数据存储
参照官方文档:https://www.zabbix.com/documentation/2.4/manual/installation/install_from_packages