docker - 使用Zabbix监控Docker容器

标签 docker zabbix

我有以下表达式的触发器:

{amr101:system.run["docker inspect --format='{{.State.Running}}' my-container"].last()}=0

我相信Zabbix是默认设置,它使用远程主机上的zabbix用户执行命令。我已将zabbix用户添加到docker组,以便可以在没有sudo的情况下执行docker命令。例如:
zabbix@amr101:~$ docker inspect --format='{{.State.Running}}' my-container
true

如您所见,我可以在实际的远程主机上执行命令而不会失败。

但是,当Zabbix服务器尝试执行此操作时;它因错误而失败
Received value [Cannot connect to the Docker daemon. Is the docker daemon running on this host?] is not suitable for value type 

我已经让Zabbix服务器在远程主机上执行id命令,发现它肯定是在使用zabbix用户来执行其命令。

因此,我的问题是;将zabbix用户添加到docker组时,为什么Zabbix服务器无法在远程主机上执行docker命令,并且直接在远程主机上执行时,可以清楚地执行docker命令?

最佳答案

重新启动Zabbix代理服务。通常,将用户添加到新组时,需要重新登录才能生效。

关于docker - 使用Zabbix监控Docker容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41899104/

相关文章:

Docker 在首次运行时将容器卷文件复制到主机

bash - 使容器自行停止

postgresql - 如何使用 Zabbix 通过简单的无代理检查来配置数据库服务状态

mysql - 错误 1045(2800)

triggers - 在Zabbix中设置周期的触发时间

python - 无法连接到Redis容器

docker - 在Docker的仪表板上更改Directus 7 API URL

amazon-web-services - 检查 Zabbix 代理配置中的访问限制

c# - 使用 Windows 容器在 Docker Desktop 中运行 ASP.NET 时,传出 HTTP 请求超时

python - 如何将数据暴露给zabbix