修改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
最新仪表盘数据
图形监控
确认问题
管理员可以在线确认该问题,修改描述,也可以修复问题,如踢出多余登录的用户等。
如果想要手动关闭该问题,可以在 触发器 里设置,允许手动关闭该问题。