您的位置:首页 > 其它

zabbix 新增磁盘后 file system discovery item 报权限问题

2018-01-17 16:54 639 查看

zabbix 新增磁盘后 file system discovery item 报权限问题

查看zabbix平台latest data时发现一台server新挂载的磁盘没有被纳入监控项,即在latset data只能看到
/
/boot
,新挂载的
/home/hadoop/data/hdfs/data2
却没有相关数据。

[root@ ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        99G   85G  8.5G  91% /
tmpfs           7.8G     0  7.8G   0% /dev/shm
/dev/sda1       240M   36M  193M  16% /boot
/dev/sdb1        99G   72G   22G  77% /home/hadoop/data/hdfs/data2


猜测是discovery未发现,但查看discovery规则,默认1h一次,这块盘已经挂上去半个月了,说不通。

修改discovery频率为15S一次,然后重启agent,无变化。

查看hosts-items,发现问题:discovery正常发现挂载点,但未获取到数据,报错:
Cannot obtain filesystem information: [13] Permission denied


看上去好像是权限的问题,我们查看被监控server该挂载点的权限:

[root@had1 ~]# ll  /home/hadoop/data/hdfs/
total 16
drwx------ 3 hadoop hadoop 4096 Dec 13 16:47 data2


只有hadoop用户具有读写权限,其他用户不可读,至此,猜测问题出现在挂载点的权限上。

查阅相关资料:https://www.zabbix.com/forum/showthread.php?t=48747 ,确实是相关问题,那么就解决一下权限问题。

这个挂载点是hadoop的data_node,权限700,理论上可以给zabbix一个读权限或者给组读权限,但生产环境不敢随便改配置,因此只能从zabbix_agent想办法,即将zabbix_agentd的执行改为hadoop(不推荐,没办法处理的时候可以这么做)

在zabbix配置文件中添加一条user=hadoop

[root@had1 ~]# cat /etc/zabbix/zabbix_agentd.conf  |  grep -i user |grep -v \^#
User=hadoop


修改后记得修改
/var/run/zabbix
/var/log/zabbix/
的权限

重启zabbix_agentd,在zabbix_server端测试:

zabbix_get -s  1.1.1.19 -p 10050  -k vfs.fs.size[/home/hadoop/data/hdfs/data2,ree]
22.949520


获取到挂载点数据。

再测试未做相关修改的server:

[root@localhost ~]# zabbix_get -s  1.1.1.20 -p 10050  -k vfs.fs.size[/home/hadoop/data/hdfs/data2,pfree]
ZBX_NOTSUPPORTED: Cannot obtain filesystem information: [13] Permission denied


确认权限问题已处理完毕。

PS:到这里命令行可以获取数据而zabbix控制台还未获取到数据的同学请耐心5-10分钟。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息