zabbix服务参数介绍
zabbix server服务名: zabbix-server 端口:10051
zabbix agent服务名: zabbix-agent端口:10050
zabbix server主配置文件: /etc/zabbix/zabbix_server.conf
zabbixagent主配置文件: /etc/zabbix/zabbix_agentd.confzabbix
企业微信报警脚本路径:/usr/lib/zabbix/alertscriptszabbix
自定义监控项路径: /etc/zabbix/zabbix_agentd.d zabbix
日志文件路径:/var/log/zabbix/
zabbix程序结构
zabbix-server:用于数据处理及写入到数据库
zabbix-agent:用于获取被监控端的性能检测数据
zabbix-web:用于数据的展示及远程操控
数据库:用于存储监控数据
zabbix-proxy:实现zabbix分布式监控
zabbix-agent支持的协议
1) ssh
2) snmp:用于交换机路由器流量监控(OID)
3) IPMI:硬件监控
4) JMX: 专用于java服务监控
5) 结合procona:实现针对数据库监控
zabbix监控环境搭建
安装方式
1)yum自动化安装
2)源码编译安装
3)二进制包
3.1 配置zabbix官方yum源
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum list|grep zabbix
3.2 安装服务端与客户端
yum install zabbix-server-mysql zabbix-agent -y
3.3 安装zabbix-web
cd /etc/yum.repos.d/
vim zabbix.repo
在/etc/yum.repos.d/zabbix.repo文件中打开zabbix-frontend
[zabbix-frontend]
enabled=1
2) 安装依赖源
yum install -y epel-release centos-release-scl
3)yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl
安装存储数据库
yum install -y mariadb-server mariadb
启动数据库并设置开机自启
systemctl start mariadb
systemctl enable mariadb
进入数据库
mysql
创建春初数据的库,并支持中文(库名zabbix) create database zabbix character set utf8 collate utf8_bin;
授权连接数据库的用户,并设置密码(用户名: zabbix) create user zabbix@localhost identified by '123456';
数据库授权 grant all privileges on zabbix.* to zabbix@localhost;
查看所有库 show databases;
进入zabbix库 use zabbix;
查看当前库下表 show tables;
在Zabbix服务器主机上,导入初始架构和数据。系统将提示您输入新创建的密码
zcat /usr/share/doc/zabbix-server-mysql-5.0.37/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: password #输入zabbix用户密码
Zabbix服务器配置数据库
vim /etc/zabbix/zabbix_server.conf
#存储监控数据的库名100 DBName=zabbix
116 DBUser=zabbix #连接数据库的用户
DBPassword=123456 #设置zabbix用户密码
为Zabbix配置正确的时区vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai #亚洲/上海
启动所有服务
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
设置服务随机自启
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
查看zabbix服务占用端口信息 netstat -anptu | grep zabbix
4. 配置客户端添加监控主机
客户端安装zabbix-agent
客户端配置服务端信息即可
# 配置源
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
# 安装客户端
yum install zabbix-agent -y
下载nginx
访问zabbix
下一步
输入设置的密码 123456
设置名字 mjl
下一步
完成安装
进入zabbix 用户名Admin 密码zabbix
更改为中文
修改密码为123456
# 配置客户端
server=服务端IP
# 添加监控主机
web页面→ 配置→ 主机→ 添加主机
添加相应的信息
添加模板监控
5. zabbix中核心的资源介绍
监控项→触发器→动作→ 模板
6. 监控项配置
首先规划风险值
通过设计取值命令 :
配置监控项
vim /etc/zabbix/zabbix_agent.conf
UserParameter=User_num,w |awk 'NR>2{print $3}'|uniq |wc -l
客户端测试监控项
zabbix_agent2 -t User_num
User_num [s|2]
重启客户端
web端添加监控项
1)选择需要添加监控项的主机
2)根据客户端所自定义的监控项添加即可
3)注意:添加监控项页面中的值要和监控项的key名一致
企业级配置自定义监控项
UserParameter=Nginx[*],./scripts/nginx_status.sh $1
通过web页面实现添加监控项
触发器及报警
1. 监控项获取失败排查(面试)
1)web添加监控项页面测试获取监控项值
2)服务端安装zabbix_get
yum install zabbix-get -y
zabbix_get 用于服务端测试获取客户端中自定义的监控项
zabbix_get -s 指定客户端IP -k 监控项名
3)在客户端通过zabbix-agent -t 检测获取监控项
如果能获取到则,客户端定义配置有问题,如果获取不到,则自定义监控项定义有问题
2. 触发器
作用:定义监控项的阈值,当超过阈值则触发警告
阈值:指某一个监控指标的定义值
定义触发器:
主机→ 触发器→ 创建→ 构建表达式
设置阈值类型:
last: 最新一次的数据
avg:单位时间内的平均值
count:单位时间内的总数
max: 最大值