编译安装zabbix_agent

在官网下载源码包,公司使用的是4.0版本。
将下载好的包放在指定位置,位置可选,我放在/usr/local/src/下面。然后解压~

tar zxf zabbix-4.0.8.tar.gz

解压之后,进入文件夹

cd zabbix-4.0.8

进入之后,就可以进行编译安装的三大步了。我在安装的时候,缺少gcc和pcre-devel,所以我先装上

yum install gcc
yum -y install pcre-devel

你们可能缺的不一样,不用担心,它会提示你的~

现在开始编译安装三大步
第一步./configure检查机器的一些配置和环境,系统的相关依赖
命令如下:

./configure --prefix=/usr/local/zabbix_agent --enable-agent

–prefix=后面的是我要安装的位置,你可以自选
–enable-agent表示我要安装zabbix_agent,因为我们下载的是源码包,所以里面东西蛮多的,比如proxy,server,这个看你需求啦~
如果安装过程中,报错,是因为你缺少某个依赖,按照提示安装即可

第二步 make编译
第三步 make install 安装
因为make install之前会自动make,所以我就懒了,直接make install

make install

新建用户和用户组
由于是编译安装的agent,不像使用rpm包安装那么方便,要自己新建用户和用户组

常规套路是看下有没有这个用户和用户组

cat /etc/group | grep zabbix
cat /etc/shadow

发现没有(肯定没有,这是一种思路),没有就创建吧~

groupadd -g 949 zabbix
useradd -u 949 -g zabbix -d /home/zabbix -m zabbix
chown zabbix:zabbix /home/zabbix


创建好之后,看下zabbix用户是不是属于zabbix用户组

id zabbix

结果发现是的,这步就ok了

修改zabbix_agent配置文件
我的配置文件在这里,你的自己看哈,进去修改配置,如下:

vim /usr/local/zabbix_agent/etc/zabbix_agentd.conf

LogFile=/var/log/zabbix/zabbix_agentd.log
PidFile=/var/run/zabbix/zabbix_agentd.pid
DebugLevel=3
Server=10.XX.XX.192#你的server/proxy IP
ListenPort=10050
ListenIP=0.0.0.0
ServerActive=10.XX.XX.192#你的server/proxyIP
Hostname=10.YY.YY.204#你的本机IP
UnsafeUserParameters=0
Include=/usr/local/zabbix_agent/etc/zabbix_agentd.conf.d

修改完之后,要新建两个文件夹,并给个权限,要不然日志可是写不进去

mkdir -p /var/log/zabbix/
mkdir -p /var/run/zabbix/
chown zabbix:zabbix /var/run/zabbix/
chown zabbix:zabbix /var/log/zabbix/


启动zabbix_agent(两种方式)
好兴奋,马上要大功告成了,启动~~~

第一种方法:需进入sbin目录

cd /usr/local/zabbix_agent/sbin
./zabbix_agentd
启动之后,查询下进程在不在(当然在的)

ps -ef | grep zabbix
在的话就杀掉,因为,下面还要启动~

killall zabbix
第二种方法:systenctl
进入/usr/lib/systemd/system/这个目录
新建一个zabbix-agent.service文件,这是我的,你要修改哦少年,文件内容如下:

[Unit]
Description=Zabbix Agent
After=syslog.target
After=network.target

[Service]
Environment="CONFFILE=/usr/local/zabbix_agent/etc/zabbix_agentd.conf"
#EnvironmentFile=-/etc/sysconfig/zabbix-agent
Type=forking
Restart=on-failure
PIDFile=/run/zabbix/zabbix_agentd.pid
KillMode=control-group
ExecStart=/usr/local/zabbix_agent/sbin/zabbix_agentd -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s

[Install]
WantedBy=multi-user.target

你要把Environment="CONFFILE=/usr/local/zabbix_agent/etc/zabbix_agentd.conf"这句改成你的zabbix_agentd.conf放置的位置
把这句ExecStart=/usr/local/zabbix_agent/sbin/zabbix_agentd -c $CONFFILE改成你的启动脚本的位置。
当然,如果你全程按照我的写法来的话,请忽略,哈哈哈

启动下试一试

systemctl start zabbix-agent.service
看进程

ps -ef | grep zabbix
一切ok,最后设置下,随机重启,如果重启机器会自己带起来

systemctl enable zabbix-agent.service

posted @ 2022-10-24 22:43  呼长喜  阅读(894)  评论(0编辑  收藏  举报