zabbix agent的主动工作模式实战案例

                                     作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.zabbix agent的工作模式概述

  zabbix agent的主动工作模式:
    由zabbix agent向zabbix server请求获取当前主机的监控项,zabbix agent根据从zabbix server获取的监控项配置信息,自动采集本地数据并根据item的配置周期性发送给zabbix server。
    主动模式是由zabbix agent主动采集数据并返回给zabbix server,不再需要zabbix server进行干预,因此主动模式在一定程度上可减轻zabbix server的压力。   zabbix agent的被动工作模式:  
    zabbix server周期性给zabbix agent发送获取数据的请求,zabbix agent在本地采集数据后发送给zabbix server,这是zabbix默认的工作模式,我们称之为"被动模式"。
    被动模式是由zabbix server向zabbix agent发出指令获取数据,即zabbix agent被动的去获取数据并返回给zabbix server,zabbix server周期性的向agent索取数据。
    这种模式的最大问题就是会加大zabbix server的工作量,再数百台服务器的环境下zabbix server不能及时获取到最新数据,但这也是默认的工作方式。   生产环境中我们通常主动模式和被动模式是混用的。

二.zabbix webUI配置zabbix 主动模式的模板(为了试验的便利性,我们基于zabbix默认模块修改其工作模式)

1>.查看"Template OS Linux"模板信息

2>.基于"Template OS Linux"模板进行全克隆

3>.自定义克隆的模板名称

4>.模板克隆成功

5>.查看克隆的链接模板

6>.查看克隆的链接模板对应监控项,建议不要修改其类型

三.修改自定义模板监控项的工作模式

1>.查看zabbix模板的监控项

2>.查看某一个监控项信息

3>.修改单个监控项的工作模式

4>.监控项的工作模式修改成功

5>.批量选中多个监控项

6>.下拉滚动条,点击"批量更新"

7>.批量修改监控项的工作类型

8>.批量修改"更新间隔"的时间,并点击"更新"按钮

9>.批量修改配置成功

10>.修改自动发现规则

11>.如下图所示,还要单独点击"监控项原型"

12>.模板更新成功

四.zabbix agent配置参数

1>.自行安装zabbix agent服务

  博主推荐阅读:
    https://www.cnblogs.com/yinzhengjie2020/p/12309682.html

2>.修改zabbix agent的配置文件 

[root@agent204.yinzhengjie.org.cn ~]#  grep ^Server= /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# sed -r -i 's#(Server=)127.0.0.1#\1172.200.5.203#' /etc/zabbix/zabbix_agentd.conf
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# grep ^Server= /etc/zabbix/zabbix_agentd.conf
Server=172.200.5.203
[root@agent204.yinzhengjie.org.cn ~]#

[root@agent204.yinzhengjie.org.cn ~]# sed -r -i 's#(Server=)127.0.0.1#\1172.200.5.203#' /etc/zabbix/zabbix_agentd.conf          #指定被动默认对应的zabbix server地址

[root@agent204.yinzhengjie.org.cn ~]# grep ^ServerActive= /etc/zabbix/zabbix_agentd.conf
ServerActive=127.0.0.1
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# sed -r -i 's#(ServerActive=)127.0.0.1#\1172.200.5.203#' /etc/zabbix/zabbix_agentd.conf
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# grep ^ServerActive= /etc/zabbix/zabbix_agentd.conf
ServerActive=172.200.5.203
[root@agent204.yinzhengjie.org.cn ~]#

[root@agent204.yinzhengjie.org.cn ~]# sed -r -i 's#(ServerActive=)127.0.0.1#\1172.200.5.203#' /etc/zabbix/zabbix_agentd.conf       #指定主动模式对应的的zabbix server地址

[root@agent204.yinzhengjie.org.cn ~]# grep ^Hostname= /etc/zabbix/zabbix_agentd.conf
Hostname=Zabbix server
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# sed -r -i 's#(Hostname=)Zabbix server#\1agent204.yinzhengjie.org.cn#' /etc/zabbix/zabbix_agentd.conf
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# grep ^Hostname= /etc/zabbix/zabbix_agentd.conf
Hostname=agent204.yinzhengjie.org.cn
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#

[root@agent204.yinzhengjie.org.cn ~]# sed -r -i 's#(Hostname=)Zabbix server#\1agent204.yinzhengjie.org.cn#' /etc/zabbix/zabbix_agentd.conf      #自定义zabbix agent的主机名称,在zabbix server中需要唯一

[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# systemctl status zabbix-agent.service
● zabbix-agent.service - Zabbix Agent
Loaded: loaded (/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: enabled)
Active: active (running) since Thu -- :: UTC; 13min ago
Docs: man:zabbix_agentd
Main PID: (zabbix_agentd)
Tasks: (limit: )
CGroup: /system.slice/zabbix-agent.service
├─ /usr/sbin/zabbix_agentd --foreground
├─ /usr/sbin/zabbix_agentd: collector [idle sec]
├─ /usr/sbin/zabbix_agentd: listener # [waiting for connection]
├─ /usr/sbin/zabbix_agentd: listener # [waiting for connection]
├─ /usr/sbin/zabbix_agentd: listener # [waiting for connection]
└─ /usr/sbin/zabbix_agentd: active checks # [idle sec] Feb :: agent204.yinzhengjie.org.cn systemd[]: Started Zabbix Agent.
Feb :: agent204.yinzhengjie.org.cn zabbix_agentd[]: Starting Zabbix Agent [Zabbix server]. Zabbix 3.0. (revision ).
Feb :: agent204.yinzhengjie.org.cn zabbix_agentd[]: Press Ctrl+C to exit.
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# systemctl list-unit-files | grep zabbix-agent.service
zabbix-agent.service enabled
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# systemctl enable zabbix-agent.service
Synchronizing state of zabbix-agent.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable zabbix-agent
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# systemctl list-unit-files | grep zabbix-agent.service
zabbix-agent.service enabled
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#

[root@agent204.yinzhengjie.org.cn ~]# systemctl enable zabbix-agent.service                       #设置zabbix-agent开机自启动

[root@agent204.yinzhengjie.org.cn ~]# grep DebugLevel= /etc/zabbix/zabbix_agentd.conf
# DebugLevel=
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# sed -r -i 's@# (DebugLevel=)3@\14@' /etc/zabbix/zabbix_agentd.conf
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# grep DebugLevel= /etc/zabbix/zabbix_agentd.conf
DebugLevel=
[root@agent204.yinzhengjie.org.cn ~]#

[root@agent204.yinzhengjie.org.cn ~]# sed -r -i 's@# (DebugLevel=)3@\14@' /etc/zabbix/zabbix_agentd.conf      #临时开启DEBUG日志,会显示每一个采集项是否成功,日志非常详细,便与调试排错,生产环境中不推荐开启,比较耗费资源。

3>.重启zabbix agent服务使得修改的配置生效

[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# ps -ef | grep zabbix | grep -v grep
zabbix : ? :: /usr/sbin/zabbix_agentd --foreground
zabbix : ? :: /usr/sbin/zabbix_agentd: collector [idle sec]
zabbix : ? :: /usr/sbin/zabbix_agentd: listener # [waiting for connection]
zabbix : ? :: /usr/sbin/zabbix_agentd: listener # [waiting for connection]
zabbix : ? :: /usr/sbin/zabbix_agentd: listener # [waiting for connection]
zabbix : ? :: /usr/sbin/zabbix_agentd: active checks # [idle sec]
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# systemctl restart zabbix-agent.service
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# ps -ef | grep zabbix | grep -v grep
zabbix : ? :: /usr/sbin/zabbix_agentd --foreground
zabbix : ? :: /usr/sbin/zabbix_agentd: collector [idle sec]
zabbix : ? :: /usr/sbin/zabbix_agentd: listener # [waiting for connection]
zabbix : ? :: /usr/sbin/zabbix_agentd: listener # [waiting for connection]
zabbix : ? :: /usr/sbin/zabbix_agentd: listener # [waiting for connection]
zabbix : ? :: /usr/sbin/zabbix_agentd: active checks # [getting list of active checks]
[root@agent204.yinzhengjie.org.cn ~]#
[root@agent204.yinzhengjie.org.cn ~]# ss -ntl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 127.0.0.53%lo: 0.0.0.0:*
LISTEN 0.0.0.0: 0.0.0.0:*
LISTEN 0.0.0.0: 0.0.0.0:*
LISTEN [::]: [::]:*
LISTEN [::]: [::]:*
[root@agent204.yinzhengjie.org.cn ~]#

[root@agent204.yinzhengjie.org.cn ~]# systemctl restart zabbix-agent.service

五.zabbix webUI配置监控基于主动工作模式zabbix agent主机

1>.点击"创建主机"

2>.配置主机页面

3>.选择自定义的链接模板并点击“添加”

4>.主机添加成功

5>.查看监控主机的图形

zabbix agent的主动工作模式实战案例的更多相关文章

  1. Zabbix Agent active主动模式监控

    zabbix_server端当主机数量过多的时候,由Server端去收集数据,Zabbix会出现严重的性能问题,主要表现如下: 1.当被监控端到达一个量级的时候,Web操作很卡,容易出现502 2.图 ...

  2. zabbix agent(Active)模式 /克隆修改模板

    这个模式主要是用于server端被动接收数据,不发送探测请求 agent端主动发送数据,不接收探测请求 被监控端 zabbix_Agentd.conf 的配置调整 LogFile=/tmp/zabbi ...

  3. 实战Java虚拟机之二“虚拟机的工作模式”

    今天开始实战Java虚拟机之二:“虚拟机的工作模式”. 总计有5个系列 实战Java虚拟机之一“堆溢出处理” 实战Java虚拟机之二“虚拟机的工作模式” 实战Java虚拟机之三“G1的新生代GC” 实 ...

  4. Java多线程编程模式实战指南(三):Two-phase Termination模式

    停止线程是一个目标简单而实现却不那么简单的任务.首先,Java没有提供直接的API用于停止线程.此外,停止线程时还有一些额外的细节需要考虑,如待停止的线程处于阻塞(等待锁)或者等待状态(等待其它线程) ...

  5. Java多线程编程模式实战指南(三):Two-phase Termination模式--转载

    本文由本人首次发布在infoq中文站上:http://www.infoq.com/cn/articles/java-multithreaded-programming-mode-two-phase-t ...

  6. CentOS操作系统部署zabbix agent服务

    CentOS操作系统部署zabbix agent服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看zabbix的官方手册 1>.点击下载 2>.查看Ubunt ...

  7. Java多线程编程模式实战指南:Active Object模式(上)

    Active Object模式简介 Active Object模式是一种异步编程模式.它通过对方法的调用与方法的执行进行解耦来提高并发性.若以任务的概念来说,Active Object模式的核心则是它 ...

  8. Java多线程编程模式实战指南(二):Immutable Object模式

    多线程共享变量的情况下,为了保证数据一致性,往往需要对这些变量的访问进行加锁.而锁本身又会带来一些问题和开销.Immutable Object模式使得我们可以在不使用锁的情况下,既保证共享变量访问的线 ...

  9. Java多线程编程模式实战指南一:Active Object模式(上)

    Active Object模式简介 Active Object模式是一种异步编程模式.它通过对方法的调用与方法的执行进行解耦来提高并发性.若以任务的概念来说,Active Object模式的核心则是它 ...

随机推荐

  1. EBCDIK,EBCDIC,ASCII,shift JIS間の変換

    http://itdoc.hitachi.co.jp/manuals/3020/3020759580/G5950334.HTM#ID01056

  2. 「Luogu P1975 [国家集训队]排队」

    题目大意 给出一个序列 \(h\),支持交换其中的两数,求出每一时刻的逆序对个数. 分析 求逆序对是 \(O(N\log_2N)\) 的,有 \(M\) 个操作,如果暴力求的话时间复杂度就是 \(O( ...

  3. python--脚本传参与shell脚本传参(位置参数)

    写一个最简单的shell脚本,了解shell脚本是如何传参 1. vim test1.sh name=$1 age=$2 echo ${name} echo ${age} 2.调用脚本并传参 sh t ...

  4. 「CTSC2008」网络管理

    「CTSC2008」网络管理 传送门 整体二分做法,应该和这题一样的吧. 就是把序列换成树,第 \(k\) 小换成第 \(k\) 大. 然后就切了... 参考代码: #include <algo ...

  5. php基础 php 全局变量

    $_GET ----->get传送方式 $_POST ----->post传送方式 $_REQUEST ----->可以接收到get和post两种方式的值 $GLOBALS ---- ...

  6. JavaScript - 运行机制,作用域,作用域链(Scope chain)

    参考 https://www.jianshu.com/p/3b5f0cb59344 https://jingyan.baidu.com/article/4f34706e18745be386b56d46 ...

  7. vue学习笔记:Hello Vue

    编写简单例子,了解下基本语法 <!DOCTYPE html> <html> <head> <meta charset="utf-8 "&g ...

  8. day5-2正则表达式

    正则表达式: 正则表达式对象的创建 1,构造函数 var pattern =new RegExp("正则表达式","修饰符") var pattern =new ...

  9. Primecoin服务端更新--操作流程

    Primecoin服务端更新流程:  一.下载更新文件primecoin_x.y.z_xx.zip到/servers目录下:这里是把:版本primecoin0161alpha1更新到:版本primec ...

  10. Python学习第十八课——继承,接口继承等

    1.继承:字面意思 # 继承 : 字面意思 class father: pass class grandfather: pass class children(father): # 单继承 pass ...