问题现象:

zabbix监控上出现zabbix_agentd无法访问,但是实际上zabbix_agentd是存活状态

每隔一段时间就会出现这样的情况

问题原因

zabbix_agentd端任务较多,活动线程被占满,无法及时响应server端的确认存活信息,导致server端认为agent端未启动

解决方法

在配置文件中修改zabbix_agentd端的活动线程数(默认是3),增加如下配置:

StartAgents=30

~]# vim /usr/local/zabbix_agent/etc/zabbix_agentd.conf
PidFile=/usr/local/zabbix_agent/pids/zabbix_agentd.pid
LogFile=/usr/local/zabbix_agent/logs/zabbix_agentd.log
LogFileSize=1
DebugLevel=3
Timeout=30
StartAgents=20

结果

默认未修改前,线程数如下,只有三条

~]# ps -ef|grep zabbix
zabbix 1404 1 0 Aug26 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd
zabbix 1406 1404 0 Aug26 ? 00:08:43 /usr/local/zabbix_agent/sbin/zabbix_agentd: collector [idle 1 sec]
zabbix 1407 1404 0 Aug26 ? 00:25:04 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #1 [processing request]
zabbix 1408 1404 0 Aug26 ? 00:24:07 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #2 [waiting for connection]
zabbix 1409 1404 0 Aug26 ? 00:24:33 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #3 [processing request]
zabbix 1410 1404 0 Aug26 ? 00:01:56 /usr/local/zabbix_agent/sbin/zabbix_agentd: active checks #1 [idle 1 sec]

修改后,线程变成了

~]# ps -ef|grep zabbix
zabbix 117198 1 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd
zabbix 117200 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: collector [idle 1 sec]
zabbix 117201 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #1 [waiting for connection]
zabbix 117202 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #2 [waiting for connection]
zabbix 117203 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #3 [waiting for connection]
zabbix 117204 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #4 [waiting for connection]
zabbix 117205 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #5 [waiting for connection]
zabbix 117206 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #6 [waiting for connection]
zabbix 117207 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #7 [waiting for connection]
zabbix 117208 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #8 [waiting for connection]
zabbix 117209 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #9 [waiting for connection]
zabbix 117210 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #10 [waiting for connection]
zabbix 117211 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #11 [waiting for connection]
zabbix 117212 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #12 [waiting for connection]
zabbix 117213 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #13 [waiting for connection]
zabbix 117214 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #14 [waiting for connection]
zabbix 117215 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #15 [waiting for connection]
zabbix 117216 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #16 [waiting for connection]
zabbix 117217 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #17 [waiting for connection]
zabbix 117218 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #18 [waiting for connection]
zabbix 117219 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #19 [waiting for connection]
zabbix 117220 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: listener #20 [waiting for connection]
zabbix 117221 117198 0 17:38 ? 00:00:00 /usr/local/zabbix_agent/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
root 117223 112890 0 17:39 pts/0 00:00:00 grep --color=auto zabbix

根据实际生产环境对活动线程数进行调整就好

zabbix_agentd断断续续端无法访问问题记录的更多相关文章

  1. PHP判断访客是否移动端浏览器访问

    今天要给大家分享一段PHP代码,该代码的功能是用来判断访客是否移动端浏览器访问,该功能的实现思路是通过HTTP_X_WAP_PROFILE. HTTP_VIA.HTTP_USER_AGENT等信息来判 ...

  2. Dynamic CRM 2015学习笔记(6)没有足够的权限 - 您没有访问这些记录的权限。请联系 Microsoft Dynamics CRM 管理员

    我们经常遇到下面这种问题:没有足够的权限 - 您没有访问这些记录的权限.请联系 Microsoft Dynamics CRM 管理员.  下面将详细介绍下如何解决这种问题:进不了CRM系统:进了CRM ...

  3. CMDS目的端数据库碎片整理记录

    CMDS目的端数据库碎片整理记录 看看数据库里面需要做整理的表有哪些,条件可以根据需求稍微改动一下 SQL> select * from ( 2 select a.owner, 3 a.tabl ...

  4. Service系统服务(六):rsync基本用法、rsync+SSH同步、配置rsync服务端、访问rsync共享资源、使用inotifywait工具、配置Web镜像同步、配置并验证Split分离解析

    一.rsync基本用法 目标: 本例要求掌握远程同步的基本操作,使用rsync命令完成下列任务: 1> 将目录 /boot 同步到目录 /todir 下   2> 将目录 /boot 下的 ...

  5. jsp获取服务端的访问信息

    获取服务端访问信息 public static String getUrl(HttpServletRequest request){ String url = ""; if(req ...

  6. tomcat设置端口号,访问指定ip就访问指定项目

    1.修改背景: A.通常我们访问我们的web应用格式为: http://ip:端口号/项目名称 例如: http://127.0.0.1:8080/projectName B.如果想直接输入" ...

  7. Apache访问日志记录用户的每一个请求

    我们使用的是/usr/local/apache2.4/conf/extra/httpd-vhosts.conf配置文件下的第二段配置,它的日志在/usr/local/apache2.4/logs/下面 ...

  8. 用.Net打造一个移动客户端(Android/IOS)的服务端框架NHM(四)——Android端Http访问类(转)

    本章目的 在上一章中,我们利用Hibernate Tools完成了Android Model层的建立,依赖Hibernate Tools的强大功能,自动生成了Model层.在本章,我们将继续我们的项目 ...

  9. 20170413B端业务访问故障排查思路

    现象: 1.全国用户电视端页面无法显示,刷不出版面. 2.后端服务无法打开,报错,504,502   显示服务器端业务故障超时. 3.其他业务也出现缓慢情况,并不严重. 排查: 1.系统服务排查,常规 ...

随机推荐

  1. go-zero微服务实战系列(七、请求量这么高该如何优化)

    前两篇文章我们介绍了缓存使用的各种最佳实践,首先介绍了缓存使用的基本姿势,分别是如何利用go-zero自动生成的缓存和逻辑代码中缓存代码如何写,接着讲解了在面对缓存的穿透.击穿.雪崩等常见问题时的解决 ...

  2. centos 7编译安装mysql 5.7.20

    1. 下载mysql 5.7.20源码包 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.20.tar.gz 下载boost ...

  3. 【RocketMQ】消息的存储

    Broker对消息的处理 BrokerController初始化的过程中,调用registerProcessor方法注册了处理器,在注册处理器的代码中可以看到创建了处理消息发送的处理器对象SendMe ...

  4. 【.NET+MQTT】.NET6 环境下实现MQTT通信,以及服务端、客户端的双边消息订阅与发布的代码演示

    前言: MQTT广泛应用于工业物联网.智能家居.各类智能制造或各类自动化场景等.MQTT是一个基于客户端-服务器的消息发布/订阅传输协议,在很多受限的环境下,比如说机器与机器通信.机器与物联网通信等. ...

  5. Tomcat深入浅出(一)

    一.Tomcat简介 我们下载好Tomcat后需要配置一下Java环境:如果打开出现闪退得情况,首先是jdk 同时配置JRE_HOME Tomcat的一些关键目录: /bin:存放用于启动及关闭的文件 ...

  6. 一网打尽异步神器CompletableFuture

    最近一直畅游在RocketMQ的源码中,发现在RocketMQ中很多地方都使用到了CompletableFuture,所以今天就跟大家来聊一聊JDK1.8提供的异步神器CompletableFutur ...

  7. C++指针探究

    周五听实习师父指点了一下C++的强制类型转换概念,师父说了一句"强制类型转换其实就是告诉编译器不用检查当前位置的类型,程序猿自己知道类型". 今天整理之前的学习笔记的时候又发现,在 ...

  8. 聊聊 C++ 大一统的初始化运算符 {}

    一:背景 最近发现 C++ 中的类型初始化操作,没有 {} 运算符搞不定的,蛮有意思,今天我们就来逐一列一下各自的用法以及汇编展现,本来想分为 值类型 和 引用类型 两大块,但发现在 C++ 中没这种 ...

  9. 自动登录token过期问题

    之前遇到的一个也不算棘手的问题,自动登录本地存储了token却无法登录到主页. 先说一下我自动登录的思路:在用户登录成功时,将 token 存入 cookie :当用户下次来到本网站,读取 cooki ...

  10. XJSON 是如何实现四则运算的?

    前言 在上一篇中介绍了 xjson 的功能特性以及使用查询语法快速方便的获取 JSON 中的值. 同时这次也更新了一个版本,主要是两个升级: 对转义字符的支持. 性能优化,大约提升了30%️. 转义字 ...