发布于 2015-11-14 15:21:20 | 297 次阅读 | 评论: 0 | 来源: PHPERZ
Zabbix 分布式系统监视系统
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
搭建环境:Centos6.5_x86_64,Zabbix2.4.5(目前为止最新版本),epel源
一、安装步骤
一)服务端安装
1.安装开发软件包
yum -y groupinstall "Development Tools"
2.安装所需的依赖包
yum -y install httpd mysql mysql-server mysql-devel php php-mysql php-common php-mbstring php-gd php-odbc php-pear curl curl-devel net-snmp net-snmp-devel perl-DBI php-xml ntpdate php-bcmath
3.同步服务端的时间,保持所有服务器时间一致避免出现时间不同导致的不可用的监控数据
ntpdate pool.ntp.org
4.创建zabbix服务运行所需要的用户和组
groupadd -g 201 zabbix
useradd -g zabbix -u 201 -m zabbix
5.初始化mysql服务器
/etc/init.d/mysqld start
6.创建zabbix运行所需要的数据库及用户权限
mysqladmin -uroot -h127.0.0.1 password "chengshan"
mysql -uroot -p
mysql> create database zabbix character set utf8;
mysql> grant all privileges on zabbix.* to zabbixuser@'%' identified by 'zabbixpwd';
mysql> flush privileges;
7.下载解压zabbix
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.4.5/zabbix-2.4.5.tar.gz/download
tar xf zabbix-2.4.5.tar.gz
8.将zabbix的初始数据导入到数据库中
cd zabbix-2.4.5
mysql -uzabbixuser -h192.168.2.100 -p zabbix<database/mysql/schema.sql
mysql -uzabbixuser -h192.168.2.100 -p zabbix<database/mysql/images.sql
mysql -uzabbixuser -h192.168.2.100 -p zabbix<database/mysql/data.sql
#登录数据库查看下表是否都创建成功
9.编译安装zabbix
./configure -sysconfdir=/etc/zabbix/ -enable-server -enable-agent -with-net-snmp -with-libcurl -with-mysql -with-ssh2 --enable-java
执行上述命令后,报以下错误:
configure: error: Not found mysqlclient library
解决办法:
ln -s /usr/lib64/mysql/libmysqlclient.so.16.0.0 /usr/lib64/mysql/libmysqlclient.so
ln -s /usr/lib64/mysql/libmysqlclient_r.so.16.0.0 /usr/lib64/mysql/libmysqlclient_r.so
ln -s /usr/lib64/libmysqlclient.so.16.0.0 /usr/lib64/libmysqlclient.so
ln -s /usr/lib64/libmysqlclient_r.so.16.0.0 /usr/lib64/libmysqlclient_r.so
然后重新执行上面的./configure等命令
再执行编译安装
make && make install
#此处指定sysconfdir配置文件的路径就在/etc/zabbix/目录下了,如果不指定默认在/usr/local/etc下
10.Copy zabbixserver端跟agent端的启动脚本,并设置执行权限
cp misc/init.d/tru64/zabbix_agentd /etc/init.d/
cp misc/init.d/tru64/zabbix_server /etc/init.d/
chmod +x /etc/init.d/zabbix_*
11.将zabbix的页面文件copy到指定目录(跟apache配置的相同即可)
mkdir /var/www/html/zabbix
cp -a frontends/php/* /var/www/html/zabbix/
chown -R apache.apache /var/www/html/zabbix/
12.配置php文件,适应zabbix安装所需的参数
# vim /etc/php.ini
date.timezone = Asia/Shanghai #946行
max_execution_time = 300 #440行
max_input_time = 300 #449行
post_max_size = 32M #729行
memory_limit = 128M #457行
mbstring.func_overload = 2 #1586行,需要注释这一行
13.配置apache文件,定义安装访问zabbix的虚拟主机
# vim /etc/httpd/conf/httpd.conf
ServerName 127.0.0.1
<VirtualHost *:80>
DocumentRoot "/var/www/html"
ServerName 192.168.2.100
</VirtualHost>
14.配置zabbix server端的文件,定义数据库的IP、用户名、密码
# vim /etc/zabbix/zabbix_server.conf
DBHost=192.168.2.100 #68行
DBName= zabbix #78行
DBUser=zabbixuser #94行
DBPassword=zabbixpwd #102行
DBSocket=/var/lib/mysql/mysql.sock #104行
StartPollers=30 #127行,开启多线程数,一般不要超过30个
StartTrappers=20 #156行,trapper线程数
StartPingers=10 #164行,fping线程数
StartDiscoverers=120 #172行
ListenIP=0.0.0.0 #277行
MaxHousekeeperDelete=5000 #307行
CacheSize=1024M #324行,用来保存监控数据的缓存数,根据监控主机的数量适当调整
StartDBSyncers=8 #340行,数据库同步时间
HistoryCacheSize=1024M #349行
TrendCacheSize=128M #358行,总趋势缓存大小
HistoryTextCacheSize=512M #367行
AlertScriptsPath=/etc/zabbix/alertscripts #425行
LogSlowQueries=1000 #467行
15.启动apache服务跟zabbix服务
/etc/init.d/httpd start
/etc/init.d/zabbix_server start
16.访问安装界面按照界面提示一步一步的完成安装
http://192.168.2.100/zabbix/setup.php
a) 进入安装界面点击Next
b) 确保所有的监测项都是OK,点击Next
c) 填写zabbix数据库的用户名、密码、地址等信息,点击Test connection,OK后点击Next
d) 填写zabbix服务器的信息,主机名,server程序监听的的端口,主机IP地址等,如果server跟web在一台服务器上保持默认即可,点击Next
e) 确认前面几部填写的信息没有问题的话点击Next
f) 检查web程序的config文件,如果没问题会显示OK,直接点击finish即可完成安装(如果此处有问题一般是zabbix虚拟主机目录文件的权限问题,上面已经有设置的过程一般不会出现问题)
#如果因为手误,数据库密码或者用户名等的填写错了,后面会一直报错,我们可以手动的去编辑配置文件vim /var/www/html/zabbix/conf/zabbix.conf.php 手动定义相关的参数即可
g) 进入登录界面点击登录,默认admin zabbix
#至此,server端的安装完成
二)Agent端安装
1.安装开发软件包
yum -y groupinstall "Development Tools"
yum –y install ntpdate
2.同步客户端时间,防止跟服务器端不一致,导致检测到不可用的监控数据
ntpdate pool.ntp.org
3.创建zabbix运行所需要的用户跟组
groupadd -g 201 zabbix
useradd -g zabbix -u 201 -m zabbix
4.解压安装zabbixagent端
tar xf zabbix-2.4.5.tar.gz
cd zabbix-2.4.5
./configure -sysconfdir=/etc/zabbix -enable-agent
make && make install
5.copy agent端运行所需要的脚本
cp misc/init.d/tru64/zabbix_agentd /etc/init.d/
chmod +x /etc/init.d/zabbix_agentd
6.配置agent端配置文件
# vim /etc/zabbix/zabbix_agentd.conf #此处千万别写成了zabbix_agent.conf,否则配置了不生效
Server=192.168.2.100 #81行,填写Server的IP地址
ServerActive=192.168.2.100:10051 #122行,修改为Server的IP地址+端口号
Hostname=192.168.2.100 #133行,填写本机的HostName,注意Server端要能解析
UnsafeUserParameters=1 #265行,是否允许自定义的key,1为允许,0为不允许
Include= /etc/zabbix/zabbix_agentd.conf.d/ #249行,自定义的agentd配置文件(key)可以在这里面写;
7.启动zabbix agent端
/etc/init.d/zabbix_agentd start
二、 解决zabbix中文乱码、汉化
1.在windows中找一个自己喜欢的字体或者去网上下载一个字体
2.将字体上传至/var/www/html/zabbix/fonts目录下,如我这里使用了“ 华文宋体 常规”,字体的文件名称 stsong.ttf
3.修改zabbix页面管理的中文字体设置
# vim /var/www/html/zabbix/include/defines.inc.php #修改以下两行
define('ZBX_FONT_NAME', 'stsong'); #92行
define('ZBX_GRAPH_FONT_NAME', 'stsong'); #44行
4.登陆页面设置相应用户的默认语言Administrator—->Users(此处要保证显示的是用户,否则显示的都是用户组)
5.点击用户名进入用户信息编辑,默认语言选择简体中文,然后点击save保存
6、刷新页面
#已经成为中文,在有些地方还是会有英文的但是zabbix的汉化相对其他开源软件来说已经做的十分的好了!!!