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<./database/mysql/schema.sql mysql -uzabbix -pzabbix zabbix<./database/mysql/images.sql mysql -uzabbix -pzabbix zabbix<./database/mysql/data.sql |
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.conf
sed -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、关闭postfix
service postfix stop service sendmail stop |
6.1.2、安装mailx
yum -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、设置所属组所属用户为zabbix
chown 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完全部署完成。
本文出自 “郭少龙” 博客,请务必保留此出处http://shaolong.blog.51cto.com/6634276/1911851
原文:http://shaolong.blog.51cto.com/6634276/1911851