当前位置:首页 > 运维&自动化 > 正文内容

zabbix 监控脚本中执行docker命令没有权限

root4年前 (2021-03-18)运维&自动化2003

在zabbix_agnet中执行监本时,提示

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/json: dial unix /var/run/docker.sock: connect: permission denied

这是运行docker没有权限

开始排查:

1、agent服务器排查

    1.1执行脚本 检测脚本是否可以执行 ./test.sh

    1.2不可以执行给脚本添加可执行权限 sudo chmode +x ./test.sh

    1.3 如果仍然没可执行权限,将zabbix用户添加到docker组中,需要退出当前shell才能生效

    usermod -a -G docker zabbix

同时还需要重启一下zabbix-agent

2、server端排查

    2.1 zabbix_get -s <agent-ip> -p 10050 -k <自定义键值>,测试server端是否可以获取到值

    2.2 如果提示没有命令权限,则在agent服务器上执行sudo setenforce 0,关闭selinux

    2.3 关闭agent服务器的selinux后,如果提示无法调用docker daemon ,则在agent服务器上执行

sudo systemctl restart zabbix-agent  ,重启zabbix-agent


3、总结

 关于权限问题,从文件权限,用户权限以及防火墙、selinux等防护三个方面着手,问题是一定可以解决的


原文


扫描二维码推送至手机访问。

版权声明:本文由一叶知秋发布,如需转载请注明出处。

本文链接:https://zhiqiu.top/?id=89

分享给朋友:

相关文章

zabbix 邮件报警添加

zabbix 邮件报警添加

1、添加代理发送邮件设置将告警信息发送到哪里?在关联到相关的告警动作参考文档https://blog.51cto.com/506554897/2130526...

ansible的常用命令

ansible的常用命令

首先安装sudo ape-get install ansible然后分发ssh密钥,参考ssh分发。不想用密钥的用密码也是可以的修改配置文件vim /etc/ansible/hosts在文件中添加主机...

ssh秘钥登录

ssh秘钥登录

流程大致root用户下:在本地客户端生成ssh密钥对ssh-keygen -t rsa一路三个回车就行了,想设置密语的也可以生成这样就行了把公钥分发给要登录的机器(即服务端)ssh-copy-id -i&nbs...

iftop 监控出入网流量

iftop -i enp181s0f0 -B -F 192.168.1.60/32监控60ip机器的出入网流量情况常用的参数-i设定监测的网卡,如:# iftop -i eth1-B 以bytes为单位显示流量(默认是bits),如:# i...

zabbix 添加监控脚本

首先编写监控脚本:下面是示例basic_server.sh#!/bin/bash servername=$(netstat -ant |grep LISTEN |grep $1 ...

解决zabbix 嵌入到frame时不被允许

系统嵌入zabbix界面时间遇见不被允许插入frame中因为header头设置了X-Frame-Options 前端界面显示为:Refused to display 'http://192.168.0.174/'...