zabbix实践
修改zabbix语言

主页的仪表盘是可以编辑的,随意拖动修改大小的

部署zabbix客户端
Zabbix 5.0 版本推出了使用 go 语言重写的 Agent2,也是 5.0 版本新特性,Agent2 有如下特性:
1. 完成的插件框架支持,可扩张服务及应用监控
2. 支持灵活的采集周期调度
3. 更高效的数据采集及传输
4. 可完全替换先有的 agent
特性较多,建议使用。
Agent2 默认使用的 10050 端口,与 Zabbix Agent 端口一样,不修改端口情况下,同一台机器不能同时启动 Zabbix Agent 与 Zabbix Agent2。
yum安装
# 信息
10.0.1.51
zbz-agent01
# yum源配置,防火墙关闭
1.获取zabbix官方源
rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
 
# 这一步很重要
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
# 注意时间正确
yum install ntpdate -y
ntpdate -u ntp.aliyun.com
mv /etc/localtime{,.bak}
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
安装步骤
1.安装agent2 yum install zabbix-agent2 -y 2.配置文件了解 默认配置文件为 /etc/zabbix/zabbix_agent2.conf 默认二进制文件为 /usr/sbin/zabbix_agent2 3.启动agent2且开机自启 systemctl enable --now zabbix-agent2 4.检查端口 [root@zbz-agent01 ~]# netstat -tunlp|grep zabbix tcp6 0 0 :::10050 :::* LISTEN 1236/zabbix_agent2 5.查看systemctl管理的单元文件 [root@zbz-agent01 ~]# cat /lib/systemd/system/zabbix-agent2.service
修改agent2配置文件,修改如下,填写zabbix-server主机ip和主机名
[root@zbz-agent01 ~]# grep -Ev '^#|^$' /etc/zabbix/zabbix_agent2.conf PidFile=/var/run/zabbix/zabbix_agent2.pid LogFile=/var/log/zabbix/zabbix_agent2.log LogFileSize=0 Server=10.0.1.50 ServerActive=10.0.1.50 Hostname=zbz-agent01 Include=/etc/zabbix/zabbix_agent2.d/*.conf ControlSocket=/tmp/agent.sock
Server 和 ServerActive 配置为 zabibx server 或 zabbix proxy 地址,Hostname 配置为主机名即可。
Agent2 没有组件依赖,可直接拷贝编译好的二进制文件和配置文件在其他主机上运行即可。
改了配置文件,重启agent2
[root@zbz-agent01 ~]# systemctl restart zabbix-agent2
检测server-client连通性
[root@zabbix-server01 alternatives]# yum install zabbix-get -y [root@zabbix-server01 alternatives]# zabbix_get -s '10.0.1.51' -p 10050 -k "agent.ping" 1 [root@zabbix-server01 alternatives]# zabbix_get -s '10.0.1.51' -p 10050 -k "system.hostname" zbz-agent01
zabbix-server监控了自己

服务器可视化指标
点击对应主机的【图像】即可查看

解决zabbix乱码问题
服务器端需要安装字体
[root@zabbix-server01 ~]# yum -y install wqy-microhei-fonts [root@zabbix-server01 ~]# \cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf [root@zabbix-server01 ~]# 此时zabbix已然正确展示中文数据
  
添加agent主机
选择创建主机

添加监控模板

添加主机

添加完成

查看监控内容

可视化监控agent的cpu动态
在agent01机器上,执行程序,消耗cpu 利用shell或者python皆可
  
自定义监控(制作模板)
zabbix自带模板 Template OS Linux (Template App Zabbix Agent) 提供CPU、内存、磁盘、网卡等常规监控,只要新加主机关联此模板,就可自动添加这些监控项。
制作模板(监控登录人数)
服务器不希望有太多人在操作,除了管理员以外的人,人数超了,我就怀疑有问题,需要看看是谁,防止他乱操作服务器,给我们运维背锅呀。
自定义key
# zabbix自带的key [root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "system.uname" Linux zbz-agent01 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 [root@zabbix-server01 ~]# [root@zabbix-server01 ~]# [root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "system.hostname" zbz-agent01 # 若是写错了key,则报错,未知的指标 [root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "system.hostname1" ZBX_NOTSUPPORTED: Unknown metric system.hostname1 # 未登记,自定义的key,一样,位置的指标 [root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "login.user" ZBX_NOTSUPPORTED: Unknown metric login.user
查看模板监控项

监控项里的 【键值】 就是zabbix-get 使用的key 例如 ,检测客户端存活 [root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "agent.ping" 1 # 检根文件系统空间大小 [root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "vfs.fs.size[/,used]" 1217146880 [root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "vfs.fs.size[/,total]" 18238930944
自定义监控语法
当zabbix自带模板,以及监控项,无法满足我们需求,我们就可以自定义监控项
自定义监控其实就是添加监控的key,监控的命令
# 首先显示用户登录命令 who who |wc -l # 显示登录人数
需要添加监控项配置文件,路径
/etc/zabbix/zabbix_agent2.d/ # zabbix配置文件,大多数软件配置都会使用include形式来优化配置文件 [root@zbz-agent01 zabbix_agent2.d]# grep -i '^include' /etc/zabbix/zabbix_agent2.conf Include=/etc/zabbix/zabbix_agent2.d/*.conf # 自定义的配置文件,语法是 UserParameter=<key>,<shell command> UserParameter=login-user,who|wc -l UserParameter=login-user,/bin/sh /server/scripts/login.sh # 超哥定义的配置文件,要注意的是key名要唯一,可以写入多个key [root@zbz-agent01 zabbix_agent2.d]# cat /etc/zabbix/zabbix_agent2.d/userparameter_login.conf UserParameter=login.user,who|wc -l UserParameter=login.user2,who|wc -l # 重启agent systemctl restart zabbix-agent2
在服务端zabbix,用命令检测自定义的key
[root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "login.user" 1 [root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "login.user" 2 # 客户端 [root@zbz-agent01 zabbix_agent2.d]# who root pts/0 2020-08-11 01:39 (10.0.1.1) root pts/1 2020-08-11 09:52 (10.0.1.1)
zabbix-server注册模板(页面操作)
上述是在命令行添加配置,下面就是页面操作了
整个流程是
1. 创建模板
2. 创建应用集:对监控项分类
3. 创建监控项:定义item,监控的内容
4. 创建触发器:当监控项获取到值,且达到触发条件就会告警
5. 创建图形
6. 主机进行模板关联
创建模板

找到自己添加的模板

创建应用集
应用集作用好比文件夹分类一样,作用是给监控项分类。

添加监控项

创建触发器
创建触发器,当监控项获取的值,到达一定条件,就触发报警

 
创建图形
以图形的方式展示监控的信息

主机关联模板
上述所有配置都是吧登录用户监控的模板添加好了,以及图形展示,但是还未绑定具体的服务器,那检测谁呢是不是

一个主机可以关联多个监控模板
查看最新数据-图形
查看zabbix监控中的用户登录数
我们可以多登录些用户,超过3个,查看是否告警
[root@zabbix-server01 ~]# zabbix_get -s 10.0.1.51 -p 10050 -k "login.user" 4
最新仪表盘数据

图形监控

确认问题
管理员可以在线确认该问题,修改描述,也可以修复问题,如踢出多余登录的用户等。
如果想要手动关闭该问题,可以在 触发器 里设置,允许手动关闭该问题。

 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号