介绍
zabbix(音同 z?bix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
安装
系统:CentOS6 php要求5.3
1.安装包下载 #通过下面链接下载
zabbix-2.4.7(http://image.wohenniucha.com/upload/2018/05/zabbix-2.4.7.tar.gz)
#官方下载
http://www.zabbix.com/download.php
2.增加用户
groupadd zabbix useradd zabbix -g zabbix passwd zabbix #密码:zabbix
3.安装依赖包
yum install -y mysql-server mysql-devel libcurl-devel net-snmp-devel php php-gd php-xml php-mysql php-mbstring php-bcmath httpd gcc c++ gcc-c++ curl-devel php-xmlrpc libxml2-devel #设置服务开机启动 chkconfig httpd on chkconfig mysqld on
4.开始安装zabbix
tar zxf zabbix-2.4.7.tar.gz cd zabbix-2.4.7 ./configure --prefix=/main/server/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 make install
5.设置数据库
service mysqld start #设置数据库用户root密码 mysqladmin -u root password '002233' #创建zabbix数据库,设置数据库用户zabbix密码 mysql -u root -p002233 -e "create database zabbix character set utf8;" mysql -u root -p002233 -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'" #按顺序导入数据 mysql -uzabbix -p'zabbix' zabbix < database/mysql/schema.sql mysql -uzabbix -p'zabbix' zabbix < database/mysql/images.sql mysql -uzabbix -p'zabbix' zabbix < database/mysql/data.sql
6.配置zabbix_server.conf
#修改DBUser和DBPassword: sed -i 's/^DBUser=.*$/DBUser=zabbix/g' /main/server/zabbix/etc/zabbix_server.conf sed -i 's/^.*DBPassword=.*$/DBPassword=zabbix/g' /main/server/zabbix/etc/zabbix_server.conf
7.复制web到apache路径下
cd /main/soft/zabbix-2.4.7 cp -r frontends/php /var/www/html/zabbix chown -R apache:apache /var/www/html/zabbix
8.修改php配置
sed -i 's/^\(.*\)date.timezone =.*$/date.timezone = Asia\/Shanghai/g' /etc/php.ini sed -i 's/^\(.*\)post_max_size =.*$/post_max_size = 16M/g' /etc/php.ini sed -i 's/^\(.*\)max_execution_time =.*$/max_execution_time = 300/g' /etc/php.ini sed -i 's/^\(.*\)max_input_time =.*$/max_input_time = 300/g' /etc/php.ini
9.启动apache、zabbix server、zabbix agentd
echo "ServerName 0.0.0.0:80" >> /etc/httpd/conf/httpd.conf service httpd start /main/server/zabbix/sbin/zabbix_server /main/server/zabbix/sbin/zabbix_agentd
#设置为服务启动
##zabbix_server服务 cp /main/soft/zabbix-2.4.7/misc/init.d/fedora/core/zabbix_server /etc/init.d/ sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/main\/server\/zabbix/g' /etc/init.d/zabbix_server chkconfig --add zabbix_server chkconfig --level 345 zabbix_server on ##zabbix_agentd服务 cp /main/soft/zabbix-2.4.7/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/ sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/main\/server\/zabbix/g' /etc/init.d/zabbix_agentd chkconfig --add zabbix_agentd chkconfig --level 345 zabbix_agentd on
10.进入web端设置zabbix
#若开启iptables,则需要打开80端口 http://ip/zabbix 默认帐号密码:admin/zabbix 根据需求填写,然后下一步即可,无特殊配置。 另外中间若有有步骤需要下载zabbix.conf.php,然后拷贝至/var/www/html/zabbix/conf/目录下。
11.设置中文
登录后点击右上角的 Profile 按钮 选择 Language 一栏的 Chinese(zh_CN) 项,点击 Update 按钮即可。
12.解决图文乱码问题
在2.4版本里默认是开启了中文选项的,在其他版本里是没有这个中文选项的,开启的方法是:
修改locales.inc.php文件,开启中文选项显示(文件路径在/var/www/html/zabbix/include下面) 'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => false), 修改为 'zh_CN' => array('name' => _('Chinese (zh_CN)'), 'display' => true),
然后参照第 11 步设置中文即可。
#乱码解决:
楷体字库下载(http://image.wohenniucha.com/upload/2018/05/SIMKAI.ttf)
zabbix的web端没有中文字库。 从windows下控制面板->字体->选择一种中文字库例如“楷体”,拷贝到/var/www/html/zabbix/fonts下,并把后缀改为小写的ttf。 然后修改配置文件/var/www/html/zabbix/include/defines.inc.php //define('ZBX_FONT_NAME', 'DejaVuSans'); define('ZBX_FONT_NAME', 'SIMKAI'); //define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name define('ZBX_GRAPH_FONT_NAME', 'SIMKAI'); // font file name
13.zabbix agentd端安装
yum install gcc -y tar zxf zabbix-2.4.7.tar.gz cd zabbix-2.4.7 ./configure --prefix=/main/server/zabbix --enable-agent make install
#修改zabbix_agentd.conf配置
Server=192.168.100.68 Hostname=192.168.100.71 #此处的设置与zabbix web端创建主机时的主机名相同
#启动zabbix_agentd
/main/server/zabbix/bin/zabbix_agentd
#设置服务启动
cp /main/soft/zabbix-2.4.7/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/ sed -i 's/BASEDIR=\/usr\/local/BASEDIR=\/main\/server\/zabbix/g' /etc/init.d/zabbix_agentd chkconfig --add zabbix_agentd chkconfig --level 345 zabbix_agentd on
#在zabbix web端添加主机即可。
Zabbix问题
启动zabbix server遇到:
Starting zabbix_server: /usr/local/zabbix/sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory [FAILED]
解决方法:
echo "usr/local/mysql/lib" >> /etc/ld.so.conf ldconfig
在zabbix web首页提示:
zabbix server is not running: the information displayed may not be current.
排查方法:
1. selinux是否关闭。 2. zabbix web目录下面 $ZBX_SERVER 是否为ip,如果是localhost,ping下localhost是否能解析。 3.查看php的fsockopen模块是否启用。