问题现象:

客户端设置好自定义监控项,脚本执行或者命令执行都可以正常的输出,但是服务器端通过zabbix-get从客户端获取数据的时候,获取到不正常的值(比如客户端获取到1,服务端获取时显示0或者直接显示为空):

eg:

在/etc/zabbix/zabbix-agent.d/userparameter_mysql.conf文件下面配置自定义监控项
UserParameter=test,/bin/jps|grep -i journalnode
(1)、在客户端执行/bin/jps|grep -i journalnode

#  /home/deployer# /bin/jps |grep -i journalnode
    73916 JournalNode

发现是可以正常获取到结果

(2)、zabbix-server端执行:

#  zabbix_get -s 客户端IP -k test

发现获取到的为空值

分析:这是由于该命令或者脚本没有可执行权限导致的。

解决:

(1)、在/etc/zabbix/zabbix-agent.d/userparameter_mysql.conf文件里面,在执行脚本或者命令的前面添加sudo权限;

(2)、给zabbix用户添加sudo权限,否则zabbix没有sudo权限,也就不能执行脚本或者命令了,打开visudo -f /etc/sudoers文件(该文件需要使用root权限),添加如下:

zabbix ALL=(ALL)NOPASSWD: /bin/jps(这个脚本)

接着在服务端重新获取监控项值的时候提示报错,如下:

还需要修改sudo配置文件,直接键如visudo命令编辑配置文件:

1. 注释Defaults requiretty 
Defaults requiretty修改为 #Defaults requiretty, 表示不需要控制终端。 或者在配置文件中添加 Defaults:zabbix !requiretty
否则会出现sudo: sorry, you must have a tty to run sudo

2. 增加行 Defaults visiblepw 
否则会出现 sudo: no tty present and no askpass program specified

本文借鉴于:http://blog.sina.cn/dpool/blog/s/blog_161d6d4550102xaqo.html

最新文章

  1. 基于jquery封装通用的控制显示隐藏的方法
  2. OpenCV2.3.1在Win7+VS2010下的配置过程(转)
  3. 修改EsayUi 中 tree 的原有样式,变为according 之类的样式 ,且子菜单显示在右侧
  4. ArcGIS Engine 中 线加箭头
  5. 如何在windows系统自带命令查看硬件信息?
  6. BZOJ1532: [POI2005]Kos-Dicing
  7. 前端开发面试题收集 JS
  8. Django web开发【5】 实现标签功能
  9. LR回放https协议脚本失败: 错误 -27778: 在尝试与主机“www.baidu.com”connect 时发生 SSL 协议错误
  10. openfalcon
  11. 计蒜客NOIP模拟赛(2) D1T2 表演艺术
  12. pthread小结
  13. 百度地图失去坐标html
  14. RHCSA
  15. Https,Http,TCP,IP的一些理解
  16. 阅读ARM Memory(L1/L2/MMU)笔记
  17. H+ 显示并激活menuTab 根据tabName
  18. 利用jQuery实现用户名片小动画
  19. change username on ubuntu.
  20. 《C++ Primer Plus》第12章 类和动态内存分配 学习笔记

热门文章

  1. Datatable批量导入到表
  2. iOS - Scenekit3D引擎初探之 - 给材质贴图
  3. seo是什么
  4. nginx 之 https 证书配置
  5. null和空的区别
  6. java--分析简单java类与反射的联系
  7. Redis数据缓存淘汰策略【FIFO 、LRU、LFU】
  8. Nginx http升级到https
  9. Alpha2版本相互测试
  10. Codeforces 750 E New Year and Old Subsequence