防火墙
// systemctl stop firewalld
// setenforce 0
时间同步
// ntpdate pool.ntp.org
上传zabbix.repo yum 源
安装zabbix 相关组件
// yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb mariadb-server
开启数据库
// systemctl start mariadb
创建zabbix库
> create database zabbix character set utf8 collate utf8_bin;
创建授权用户zabbix
> grant all on zabbix.* to zabbix@localhost identified by 'zabbix';
刷新授权表
> flush privileges;
导入zabbix 初始数据库
// zcat /usr/share/doc/zabbix-server-mysql-4.4.10/create.sql.gz |mysql -uzabbix -pzabbix zabbix
编辑zabbix-server 配置文件
// vim /etc/zabbix/zabbix_server.conf
// cat /etc/zabbix/zabbix_server.conf |grep -v "^#"|sed '/^$/d'|grep DB
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
开启httpd zabbix-server zabbix-agent
// systemctl start httpd zabbix-server zabbix-agent
验证:
// netstat -lptnu|egrep "80|10050|10051"
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 13120/zabbix_agentd
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 13118/zabbix_server
tcp6 0 0 :::10050 :::* LISTEN 13120/zabbix_agentd
tcp6 0 0 :::10051 :::* LISTEN 13118/zabbix_server
tcp6 0 0 :::80 :::* LISTEN 13113/httpd
浏览器访问
// http;//192.168.1.7/zabbix
报错处理:
Time zone for PHP is not set (configuration parameter "date.timezone").
// vim /etc/httpd/conf.d/zabbix.conf
date.timezone = Asia/Shanghai
// systemctl restart httpd
默认登录账户密码
账号:Admin
密码 :zabbix
修改中文界面
中文乱码问题:
// cd /usr/share/zabbix/assets/fonts/
// rm -rf graphfont.ttf
上传 simkai.ttf文件
// mv simkai.ttf graphfont.ttf
实验一:
使用zabbix 监控web服务,统计pv和uv
在被监控端安装zabbix-agent
// yum -y install zabbix-agent
编辑配置文件
// vim /etc/zabbix/zabbix_agentd.conf
// cat /etc/zabbix/zabbix_agentd.conf |grep -v "^#"|sed '/^$/d'
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.1.7
ServerActive=192.168.1.7
Hostname=web server
Include=/etc/zabbix/zabbix_agentd.d/*.conf
开启agent服务
// systemctl start zabbix-agent
验证:
// netstat -lptnu|grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 5508/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 5508/zabbix_agentd
安装apache服务
// yum -y install httpd
开启httpd服务
// systemctl start httpd
创建scripts目录
// mkdir -p /etc/zabbix/scripts
编辑收集数据的脚本
// vim /etc/zabbix/scripts/check_web.sh
#!/bin/bash
case $1 in
pv)
cat /var/log/httpd/access_log |wc -l
;;
uv)
cat /var/log/httpd/access_log |awk '{print $1}'|sort |uniq |wc -l
;;
esac
增加监控项(自定义key)
// vim /etc/zabbix/zabbix_agentd.d/pv_uv.conf
UserParameter=pv_uv[*],/etc/zabbix/scripts/check_web.sh $1
重启agent服务!!!
授权:chmod 777 /var/log -R
// chmod +x /etc/zabbix/scripts/check_web.sh
// chmod 777 /var/log -R
服务端安装zabbix-get命令
// yum -y install zabbix-get
测试自定义key: pv_uv[*]是否能获取数据
// zabbix_get -s 192.168.1.8 -k pv_uv[pv]
sh: /etc/zabbix/scripts/check_web.sh: 权限不够
问题处理:
// chmod +x /etc/zabbix/scripts/check_web.sh
// zabbix_get -s 192.168.1.8 -k pv_uv[pv]
cat: /var/log/httpd/access_log: 权限不够
0
问题处理:
// chmod 777 /var/log -R
在浏览器上添加监控项
实验二:zabbix 邮件报警配置
// ab -n 1000 -c 1000 http://192.168.214.130/index.html
// zabbix_get -s 192.168.214.130 -k net.tcp.listen[80]