Zabbix服务器搭建
zabbix简介:
Zabbix是一个企业级的、开源的、分布式的监控套件 Zabbix可以监控网络和服务的监控状况.
Zabbix利用灵活的告警机制,允许用户对事件发送基于Email的告警. 这样可以保证快速的对问题作出相应. Zabbix可以利用存储数据提供杰出的报告及图形化方式. 这一特性将帮助用户完成容量规划.
Zabbix支持polling和trapping两种方式. 所有的Zabbix报告都可以通过配置参数在WEB前端进行访问. Web前端将帮助你在任何区域都能够迅速获得你的网络及服务状况. Zabbix可以通过尽可能的配置来扮演监控你的IT基础框架的角色,而不管你是来自于小型组织还是大规模的公司.
1、搭建LAMP环境、部署zabbix服务器端
1.1、部署系统环境
zabbix server端IP 192.168.22.171
关闭防火墙
关闭selinux
配置好yum
配置好时间同步
1.2、基础软件包安装yum -y install wget vim tree gcc gcc-c++ autoconf httpd php mysql mysql-server php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-bcmath mysql-connector-odbc mysql-devel libdbi-dbd-mysql net-snmp net-snmp-devel curl-devel
rpm -ivh php-mbstring-5.3.3-22.el6.x86_64.rpm php-bcmath-5.3.3-22.el6.x86_64.rpm --nodeps --force #不检查依赖关系,直接安装
1.3、添加zabbix用户和组groupadd -g 201 zabbix
useradd -g zabbix -u 201 -s /sbin/nologin zabbix
1.4、安装zabbix-server端tar xf zabbix-2.4.5.tar.gz
cd zabbix-2.4.5
./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl
make && make install
1.5、启动httpd、mysql并设置成开机自动启动service httpd start
service mysqld start
chkconfig httpd on
chkconfig mysqld on
1.6、配置PHP参数
zabbix的运行需要特定的php参数支持,修改如下sed -i "s@;date.timezone =@date.timezone = Asia/Shanghai@g" /etc/php.ini
sed -i "s@max_execution_time = 30@max_execution_time = 300@g" /etc/php.ini
sed -i "s@post_max_size = 8M@post_max_size = 32M@g" /etc/php.ini
sed -i "s@max_input_time = 60@max_input_time = 300@g" /etc/php.ini
sed -i "s@memory_limit = 128M@memory_limit = 128M@g" /etc/php.ini
sed -i "s@;mbstring.func_overload = 0@ambstring.func_overload = 2@g" /etc/php.ini
1.7、修改httpd的FQDN错误,重启httpd服务echo "ServerName localhost:80" >>/etc/httpd/conf/httpd.conf
/etc/init.d/httpd restart
Stopping httpd: [ OK ]
Starting httpd: [ OK ]
1.8、创建zabbix数据库以及相关表mysql -e "create database zabbix default charset utf8;"
mysql -e "grant all on zabbix.* to zabbix@localhost identified by 'zabbix';"
mysql -uzabbix -pzabbix zabbix<.>
mysql -uzabbix -pzabbix zabbix<.>
mysql -uzabbix -pzabbix zabbix<.>
2、配置软连接和启动文件
2.1、配置软连接和启动文件信息mkdir /var/log/zabbix
chown zabbix.zabbix /var/log/zabbix
ln -s /usr/local/zabbix/etc/ /etc/zabbix
ln -s /usr/local/zabbix/bin/* /usr/bin/
ln -s /usr/local/zabbix/sbin/* /usr/sbin/
cp /root/zabbix-2.4.5/misc/init.d/fedora/core/zabbix_* /etc/init.d
[root@zabbix-server zabbix-2.4.5]# chmod 755 /etc/init.d/zabbix_*
2.2、修改/etc/init.d目录下的zabbix_server和zabbix_agentd启动文件sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g" /etc/init.d/zabbix_server
sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g" /etc/init.d/zabbix_agentd
2.3、修改/etc/zabbix/zabbix_server.confsed -i "s@DBUser=root@DBUser=zabbix@g" /etc/zabbix/zabbix_server.conf
sed -i "s@#DBPassword=@DBPassword=zabbix@g" /etc/zabbix/zabbix_server.conf
sed -i "s@# DBPassword=@DBPassword=zabbix@g" /etc/zabbix/zabbix_server.conf
2.4、修改/etc/zabbix/zabbix_agentd.conf这里的IP地址写的是zabbix_server的IP地址,即192.168.22.171
sed -i "s@Server=127.0.0.1@Server=127.0.0.1,192.168.22.171@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@ServerActive=127.0.0.1@ServerActive=$IP:10051@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@tmp/zabbix_agentd.log@var/log/zabbix/zabbix_agentd.log@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@^# UnsafeUserParameters=0@UnsafeUserParameters=1\n@g" /etc/zabbix/zabbix_agentd.conf
2.5、复制zabbix站点的文件到/var/www/html目录下cp -r /root/zabbix-2.4.5/frontends/php/ /var/www/html/zabbix/
chown -R apache.apache /var/www/html/zabbix/
2.6、设置zabbix服务端和客户端开机自启chkconfig zabbix_server on
chkconfig zabbix_agentd on
service zabbix_server start
service zabbix_agentd start
3、web安装步骤
上述步骤配置完成后通过浏览器访问 http://192.168.22.171/zabbix 在网页端进行后续配置
3.1、直接执行下一步
3.2、全部OK 执行下一步,如出现错误看对应错误安装软件包
3.3、 OK 执行下一步 password : zabbix
3.4、OK 执行下一步 host : zabbix server IP
3.5、OK 执行下一步
3.6、完成
3.7、登录时,默认账号admin 密码zabbix
3.8、修改语言
3.9、选成Chinese 点 update
3.10、zabbix语言设置成中文后,有乱码解决如下
1.从windows下控制面板->字体->选择一种中文字库例如“楷体”
2.将字体上传至/var/www/html/zabbix/fonts目录下
3.修改zabbix页面管理的中文字体设置vim /var/www/html/zabbix/include/defines.inc.php
#修改如下2行
define('ZBX_FONT_NAME', 'simkai');
define('ZBX_GRAPH_FONT_NAME', 'simkai');
4、zabbix客户端安装
4.1、创建zabbix用户groupadd -g 201 zabbix
useradd -g zabbix -u 201 -s /sbin/nologin zabbix
4.2、解压zabbix安装包tar xf zabbix-2.4.5.tar.gz
cd zabbix-2.4.5
4.3、开始编译安装zabbix客户端./configure --prefix=/usr/local/zabbix --enable-agent
make && make install
4.4、创建zabbix的日志目录mkdir /var/log/zabbix
chown zabbix.zabbix /var/log/zabbix
4.5、复制zabbix_agentd启动文件到/etc/init.d目录下cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
chmod 755 /etc/init.d/zabbix_agentd
#默认是关闭防火墙的,如果开启执行下列命令
4.6、在iptables中放行10050和10051端口iptables -I INPUT -p tcp -m multiport --dports 10050:10051 -j ACCEPT
service iptables save #保存iptables规则
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
4.7、修改启动文件和配置软连接sed -i "s@BASEDIR=/usr/local@BASEDIR=/usr/local/zabbix@g" /etc/init.d/zabbix_agentd
ln -s /usr/local/zabbix/etc/ /etc/zabbix
ln -s /usr/local/zabbix/bin/* /usr/bin
ln -s /usr/local/zabbix/sbin/* /usr/sbin/
#/etc/zabbix/zabbix_agentd.conf,这里的IP地址写的是zabbix_server端的IP地址
sed -i "s@Server=127.0.0.1@Server=192.168.22.171@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@ServerActive=127.0.0.1@ServerActive=192.168.22.171:10051@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@tmp/zabbix_agentd.log@var/log/zabbix/zabbix_agentd.log@g" /etc/zabbix/zabbix_agentd.conf
sed -i "s@^# UnsafeUserParameters=0@UnsafeUserParameters=1\n@g" /etc/zabbix/zabbix_agentd.conf
4.8、设置zabbix_agentd开机自动启动,并启动zabbix_agentd服务chkconfig zabbix_agentd on
service zabbix_agentd start
5、网页添加监控主机
6、配置邮件报警
6.1、服务器端配置使用外部邮箱账号发送报警
6.1.1、关闭postfixservice postfix stop
service sendmail stop
6.1.2、安装mailxyum -y install mailx
6.1.3、配置zabbix服务端外部邮箱vim /etc/mail.rc
set from=2252573073@qq.com smtp=smtp.qq.com
set smtp-auth-user=2252573073@qq.com smtp-auth-password=邮箱密码
set smtp-auth=login
6.1.4、测试发送邮件echo "zabbix test mail" |mail -s "zabbix" guoshaolong@paypalm.cn
6.2、网页配置邮件报警
6.3、添加zabbix服务器端脚本
6.3.1、编辑脚本文件vim sendmail.sh
#!/bin/sh
echo "$3" | mail -s "$2" $1
6.3.2、设置所属组所属用户为zabbixchown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
6.3.3、设置脚本执行权限chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
7、测试zabbix报警
7.1、关闭zabbix客户端service zabbix_agentd stop
7.2、打开zabbix客户端service zabbix_agentd start
能正常接收邮件证明zabbix完全部署完成。