day72 zabbix的学习

今日内容

1. zabbix架构图,特点

2,zabbix核心知识点理念

3.zabbix快速添加agent(db51,db52),关联的模板,查看最新数据

4.zabbix-get检测

5,zabbix 添加web组(web7,web8)关联模板,图形查看

6,自定义监控项目,报警动作

zabbix架构理念

​ Server服务端

Zabbix Server 是Zabbix的核心组件,其功能能为将Agent采集到的数据持久化存储到数据库里。

​ 数据库存储

存储所有Agent采集到的数据,zabbix支持多种数据存储,例如:

mysql,oracle,postgreSQL,Elasticsearch …

​ Web界面

Zabbix提供啦有好的web界面方便我们操作,web界面的运行环境可以是NGINX+php 或者是 apache+ php 的服务组成。

​ Web界面也是zabbix server 的一部分

​ Proxy代理端

对于分布式环境,Zabbix也提供啦代理的发难,可以代替Zabbix Server 收集多个Agent的数据,然后在将收集到的数据汇总到Zabbix Server .Proxy可以起到分担Zabbix Server 负载的作用

Agent 客户端

Zabbix Agent 被部署到需要监控主机上,用于采集监控数据并且发送到Zabbix Server 服务端

在这里插入图片描述


zabbix核心知识点理念

主机(host) :就是具体的一个监控对象,某一个监控的实例,可以是一个数据库,也可以是一个操作系统。

模板(Template):定义了具体一类监控对象的抽向,比如windows模板就是专门用来在监控Windows ,直接选择这个模板即可实现开箱即用的数据采集。

监控项(ITEM):监控项定义了具体某一项采集指标,比如CPU的使用率,设置温度,采集方式是多种采集的采集协议。

触发器(Trigger): 触发器是基于监控存在的,通过web页面定义触发器表达式创建,比如cpu温度大于90°,可以定义为(last/zabbix_server/cpu_tmp)> 90

动作(Action): 动作是基于触发器存在的,创建动作时可以选择具体的某个触发器,当触发器表达式满足要求的时候,就会触发相对应的Action,具体的动作定义可以执行javascript,shell脚本…

2.1 zabbix-server进程的作用

Zabbix Server 是 C 语言开发的 Zabbix 服务端,有着 强悍的采集和计算性能,而且资源使用率很低。主要的功能如下:

定时读取 Zabbix 数据库,同步 Zabbix UI 配置的信息到缓存,下发到 Zabbix Agent 或者 Zabbix Proxy。

关于这俩不同的采集进程,可以通过(ps -ef|grep zabbix 查看进程列表)

对于被动采集(主动和被动是从设备侧角度来看的), Zabbix Server 会有专门的 Poller 线程去采集数据,可以定义特定的时间区间或者特定的频率。

对于主动采集,就是Agent或者设备主动上报数据,Zabbix Server 也会有专门的 Trapper 线程来接收数据,时间间隔或者频率取决于设备侧或者Agent上报配置。

接收到的历史数据(来自于 Agent、Proxy、设备侧),Zabbix Server 会缓存下来,进行告警表达式计算,进行动作触发,最终会同步到数据库的历史记录表,history开头的表。

调整zabbix的工作模式,为了提高新能。

3.快速实践,zabbix添加主机去监控

1,监控自己zabbix-server

给zabbix-server机器安装上agent进程,改配置,启动即可

1.修正时间
# 先做好时间的同步!!!!
ntpdate -u ntp.aliyun.com

在这里插入图片描述

可以点击ping命令看看主机是否活着

在这里插入图片描述

# 给zabbix-server机器安装上agent进程,改配置,启动即可

# 目标机器安装zabbix-agent 
rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.11-1.el7.x86_64.rpm

# 2.修改zabbix-agent配置文件

官网资料,关于配置文件的解释
https://www.zabbix.com/documentation/4.0/zh/manual/appendix/config/zabbix_agentd


修改配置如下,保证和我一样先
[root@web-7 ~]#grep -E '^[a-Z]' /etc/zabbix/zabbix_agentd.conf 
PidFile=/var/run/zabbix/zabbix_agentd.pid 
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=10.0.0.8
Include=/etc/zabbix/zabbix_agentd.d/*.conf


3.启动agent
[root@web-7 ~]#systemctl start zabbix-agent 
[root@web-7 ~]#systemctl enable zabbix-agent

[root@zabbix ~]# netstat -tunlp | grep zabbix
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      13321/zabbix_agentd 
tcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      1869/zabbix_server  



# 小结
zabbix-server 地址是 10.0.0.8::10051

zabbix-agent 地址是 10.0.0.71:10050

在这里插入图片描述

我们解决问题


agent装好后,查看最新数据

zabbix-agent装好后,就已经有了采集数据的功能
继续看zabbix-UI的操作,如何查看到采集了什么数据,

在这里插入图片描述

绿灯时正常监控,

在这里插入图片描述

修改主机的IP地址

同样的操作,添加2台机器作为练习,docker-100,docker-200都给安上监控

1.先在服务器上做好agent的安装配置

写一个脚本安装zabbix


rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.11-1.el7.x86_64.rpm

ntpdate -u ntp.aliyun.com

cat >  /etc/zabbix/zabbix_agentd.conf  <<'EOF'
PidFile=/var/run/zabbix/zabbix_agentd.pid 
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=10.0.0.8
Include=/etc/zabbix/zabbix_agentd.d/*.conf
EOF


systemctl start zabbix-agent  && systemctl enable zabbix-agent

# 检查
netstat -tunlp|grep zabbix

2.去zabbix-UI添加

在这里插入图片描述

3.添加docker-group,专门用来管理服务器的组

在这里插入图片描述

  1. 添加完毕

在这里插入图片描述

5.添加模板,那些监控的机器才会亮灯哦

在这里插入图片描述

6.查看最新数据,是否能拿到数据,这2个机器,默认都有了监控项 了,因此是会有采集的数据目标的

在这里插入图片描述

安装zabbix-get命令,检测是否通信了

从2个角度,验证server和agent是否通信

角度1.看日志

[root@docker-100 ~]# tail -f /var/log/zabbix/*
  2114:20250606:211140.238 **** Enabled features ****
  2114:20250606:211140.238 IPv6 support:          YES
  2114:20250606:211140.238 TLS support:           YES
  2114:20250606:211140.238 **************************
  2114:20250606:211140.238 using configuration file: /etc/zabbix/zabbix_agentd.conf
  2114:20250606:211140.239 agent #0 started [main process]
  2115:20250606:211140.239 agent #1 started [collector]
  2116:20250606:211140.240 agent #2 started [listener #1]
  2118:20250606:211140.240 agent #4 started [listener #3]
  2117:20250606:211140.241 agent #3 started [listener #2]

角度2,zabix-aget命令

# yum install zabbix-get -y

# 通过自带的zabbix key 检查 server和agent是否通信
[root@zabbix-server-71 ~]#zabbix_get  -s 10.0.0.52  -k  agent.ping 

-s 监控机器的ip   -k  命令去看这  agent.ping 

就相当于ping以下看看主机的通信是否正确

在这里插入图片描述

在这里插入图片描述

这也也就是 zabbix -s 10.0.0.100 -k agent.ping 命令

在这里插入图片描述

看到三个小绿灯也就代表着,你已经可以正确的使用zabbix了

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐