专业编程基础技术教程

网站首页 > 基础教程 正文

Zabbix agent编译安装详细教程(zabbix_agentd -t)

ccvgpt 2025-03-25 11:24:22 基础教程 18 ℃

背景

公司之前一直是用的预编译好的zabbix agent包在redhat、centos等进行安装部署。最近内部部署了一套新的操作系统(TencentOS Server),用之前的agent包发现并不能正常启动agent,具体报错是关于bash变量的: /bin/bash: 没有那个文件或目录

Zabbix agent编译安装详细教程(zabbix_agentd -t)

最开始以为是bash没有安装,经查,实际上文件是存在的且其他预编译好agent包也一样存在该问题,最终判断是预编译的好的环境与TencentOS Server的系统并不适用。

解决

尝试使用编译安装的方式去处理。

首先到官网下载相应的zabbix源包(我这里使用的版本是5.0.46)

安装c编译器等环境依赖

#yum install gcc pcre pcre-devel make -y

创建用户组、用户

#groupadd zabbix

#useradd -g zabbix zabbix

解压zabbix-5.0.46.tar.gz 源包

#tar -zxvf zabbix-5.0.46.tar.gz

编译安装agent

#cd zabbix-5.0.46

#./configure --prefix=/usr/local/zabbix --sysconfdir=/usr/local/zabbix/etc --enable-agent --disable-dependency-tracking

#make install

创建日志、配置文件等目录

#mkdir /usr/local/zabbix/logs

#mkdir /usr/local/etc/zabbix_agentd.conf.d/

修改agent配置文件

#vim /usr/local/zabbix/etc/zabbix_agentd.conf

PidFile=
/usr/local/zabbix/logs/zabbix_agentd.pid #指定进程文件位置

LogFile=
/usr/local/zabbix/logs/zabbix_agentd.log #指定日志文件位置

Server=192.168.7.15 #指定数据采集代理/server 服务ip地址

ServerActive=192.168.7.15 #指定数据推送代理/server 服务ip地址

ListenPort=10050 #agent进程指定端口

Hostname=host725 #指定注册对象名(可填写主机名)

Include=
/usr/local/etc/zabbix_agentd.conf.d/*.conf #指定自定义监控键值位置(没有,可不用配置)

修改目录所属权限

#chown zabbix:zabbix /usr/local/zabbix -R

启动agent服务

#/usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf

查看服务进程

#netstat -tnpl | grep zabbix_agent

增加自启服务配置

#vim /lib/systemd/system/zabbix_agentd.service

[Unit]

Description=Zabbix Agent

After=syslog.target

After=network.target

[Service]

Type=forking

Restart=always

PIDFile=/usr/local/zabbix/logs/zabbix_agentd.pid

KillMode=mixed

ExecStart=/usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf

[Install]

WantedBy=multi-user.target

修改权限

#chmod u+x /lib/systemd/system/zabbix_agentd.service

加载服务启动文件

#systemctl daemon-reload

尝试重新启动Zabbix Agent

#systemctl stop zabbix_agentd

#systemctl start zabbix_agentd

设置服务开机自启动

systemctl enable zabbix_agentd

观察主机是否上线,且监控数据是否已经正常获取

最近发表
标签列表