zabbix-agent 使用普通用户来运行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix-agent 使用普通用户来运行相关的知识,希望对你有一定的参考价值。

参考技术A 使用yum来安装的 zabbix-agent 默认使用zabbix运行,通常情况下这没有什么问题。近期我们有个需求,我们希望通过zabbix来监控java进程中jvm的信息。对jvm的监控我们通常使用jstat命令,这要求使用该命令的用户和java进程启动的用户为同一用户。
由于我们的java进程都是使用app用户来启动的,也就是说如果我们要使用zabbix来调用jstat命令,那么zabbix也需要使用app用户来启动。

实现的方法比较简单,就是修改zabbix-agent相关的配置文件,如果已经启动过的,那么还需要修改对应的目录属主。

使用rpm命令我们查看下安装zabbix-agent会在创建那些目录并且生成什么样的配置文件。

从上面的结果我们可以知道需要修改哪些配置文件,咱们依次来修改。

如果你的zabbix-agent在修改上述配置前已经启动过了,那么在修改配置后,在重启zabbix-agent前,你需要修改zabbix-agent的相关目录属主。

做完以上修改,咱们的zabbix-agent就能使用app用户来启动了。

zabbix-agent安装

客户端安装
1.创建zabbix用户和用户组

[[email protected] ~]# groupadd zabbix
[[email protected] ~]# useradd zabbix -g zabbix
2.下载并编译

[[email protected] ~]# wget http://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.5/zabbix-2.4.5.tar.gz
[[email protected] ~]# tar zxf zabbix-2.4.5.tar.gz
[[email protected] ~]# cd zabbix-2.4.5
[[email protected] zabbix-2.4.5]# ./configure --prefix=/usr/local/zabbix --enable-agent
[[email protected] zabbix-2.4.5]# make install
3.设置启动脚本

[[email protected] zabbix-2.4.5]# cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/
[[email protected] zabbix-2.4.5]#sed -i ‘s/BASEDIR=\/usr\/local/BASEDIR=\/usr\/local\/zabbix/g‘ /etc/init.d/zabbix_agentd
4.配置zabbix_agentd.conf

[[email protected] zabbix-2.4.5]# vi /usr/local/zabbix/etc/zabbix_agentd.conf
LogFile=/tmp/zabbix_agentd.log
EnableRemoteCommands=0
Server=192.168.0.219
ListenPort=10050
ListenIP=192.168.0.230
StartAgents=8
ServerActive=192.168.0.219
Hostname=Zabbix-agent1
Timeout=30
UnsafeUserParameters=1
5.启动服务并设置开机启动

[[email protected] zabbix-2.4.5]# /etc/init.d/zabbix_agentd start
[[email protected] spool]# chkconfig zabbix_agentd on
[[email protected] spool]# ps -ef|grep zabbix_agentd #查看服务是否启动
[[email protected] spool]# netstat -lnp|grep 10050 #默认是10050端口
tcp 0 0 192.168.0.230:10050 0.0.0.0:* LISTEN 5272/zabbix_agentd

以上是关于zabbix-agent 使用普通用户来运行的主要内容,如果未能解决你的问题,请参考以下文章

Linux系统普通用户怎么关机

用户操作日志模块如何开发?

普凝思系统普通用户切换到root用户,如何再从root用户切

用户操作日志系统如何实现?架构师必读!

ansible普通用户sudo执行指令

通用分页后台显示