如何在 Ubuntu 14.04 中以 root 身份运行 zabbix 代理?

如何在 Ubuntu 14.04 中以 root 身份运行 zabbix 代理?

我们有一些运行于Ubuntu 14.04我们需要执行zabbix-agentd以 root 身份获取一些性能信息。

zabbix-agentd version = 5.0

我已经关注本指南但由于步骤原因,它不起作用systemctl daemon-reload 无法执行ubuntu 14.04

我已经设置了这些指令:

  • User=root
  • AllowRoot=1

但用户zabbix仍然是该进程的所有者。

答案1

最后我终于弄明白了,这可能会对遇到同样问题的人有所帮助。

  • 编辑该文件或(如果不存在)创建它/etc/default/zabbix-agent并添加以下行:
ZABBIX_AGENT_USER=root
  • 之后,转到/lib/systemd/system/zabbix-agent.service并替换zabbixroot您需要运行代理服务的用户名。
[Service]
User=root
Group=root
  • 重启代理service zabbix-agent restart

  • 检查进程所有者

> ps ux | grep zabbix_agentd
root     29931  0.0  0.0  92612  1316 usr/sbin/zabbix_agentd
root     29932  0.0  0.0  92612  1360 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
root     29933  0.0  0.1  97044  4032 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
root     29934  0.0  0.1  97044  4036 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
root     29935  0.0  0.1  97044  4036 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
root     29936  0.0  0.1  96900  2668 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]

答案2

重新考虑您的要求。
您想控制您的根环境。
首先添加一个负责性能测量的 crontab。接下来,您可以选择从根作业中使用 zabbix_sender(当您不信任 zabbix_sender 时可能会出现安全漏洞)或将结果写入特殊的新目录(可能是 /etc/zabbix/cronresults)并让 zabbix 可以读取它。接下来进行用户数据调用以从 cron 结果中获取信息。

额外的优势:当您想要监控 Apache(类似“zapache”)时,您可以使用一个 curl 命令获取所有数据,并让用户数据使用 cronresults 作为缓存通过不同的调用获取不同项目的不同字段。

相关内容