你的位置:首页 > 信息动态 > 新闻中心
信息动态
联系我们

Centos6编译安装zabbix-agent

2021/11/24 17:23:20

Centos6编译安装zabbix-agent

环境介绍:

​ 内网环境中无法使用yum下载zabbix-agent,最后导致工作无法继续。对于新手来说,不适用yum install命令等于干不了活,所以今天这章内容我们介绍如何在内网环境中将zabbix-agent客户端部署在机器上。

所需插件及源:

​ 1.一套Centos6的yum源(可以是挂载镜像也可以是Centos6的yum仓库)。

​ 2.zabbix插件下载:(zabbix-5.4.7)

​ https://www.zabbix.com/cn/download_sources

​ 下载的是一个zabbix的包里面包含zabbix-agent服务。编译只编译agent就ok。

部署教程:

1.创建用户:
]# groupadd zabbix
]# useradd -g zabbix zabbix
2.安装支持的库类:
]# yum -y install pcre* 		#首先你是配置好yum源的(挂载镜像或者本地yum仓库)
3.创建安装文件夹:
]# cd cd /usr/local
]# mkdir zabbix_agent 		#将编译好的程序放到创建的文件夹中,可以自定义
4.解压zabbix-5.4.7:
]# cd /root 	#下载之后的zabbix-5.4.7我放到了root文件下
]# tar xvf zabbix-5.4.7.tar.gz
5.编译安装agent:
]# ./configure --prefix=/usr/local/zabbix_agent --enable-agent 
]# make
]# make install
6.启动/停止服务:
]# cd /urs/local/zabbix_agent/sbin/ 	#进入到启动程序的目录中
]# ./zabbix-agent		#启动zabbix-agent服务
]# pkill -9 zabbix  	#停止zabbix-agent服务
]# ps - ef |grep zabbix		#查看zabbix启动的服务。

创建系统服务:

1.原理:

​ 是将解压完成的zabbix-5.4.7文件中的zabbix-agentd启动程序放入到centos6系统init.d系统服务里面。

2.操作:
]# cd /root/zabbix-5.4.7/misc/init.d/fedora/core/
]# cp zabbix_agentd /etc/init.d/		#将zabbix_agentd启动文件考入到etc/init.d系统服务中。
]# cd /etc/init.d/			#进入到系统服务中可以查看到zabbix_agentd服务存在。
]# sed -i 's#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix_agent#' /etc/init.d/zabbix_agentd			#将启动程序跟换路径
3.执行:
]# service zabbix_agentd status			#查看启动状态
]# service zabbix_agentd stop			#停止服务
]# service zabbix_agentd start			#启动服务
]# service zabbix_agentd restart		#重启服务
]# chkconfig zabbix_agentd on			#设置开启自启服务

启动停止脚本

#!/bin/bash
#这里可替换为你自己的执行程序,其他代码无需更改
APP_NAME=zabbix #zabbix用于查看进程的名称
#使用说明,用来提示输入参数
usage() {
    echo "Usage: sh agent.sh [start|stop|restart|status]"
    exit 1
}
#检查程序是否在运行
is_exist(){
  pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}' `
  #如果不存在返回1,存在返回0
  if [ -z "${pid}" ]; then
   return 1
  else
    return 0
  fi
}
 
#启动方法
start(){
	cd /usr/local/zabbix_agent/sbin
	./zabbix_agentd
}
 
#停止方法
stop(){
  	pkill zabbix
}
 
#输出运行状态
status(){
  ps -ef|grep zabbix
}
 
#重启
restart(){
  stop
  start
}
 
#根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
  "start")
    start
    ;;
  "stop")
    stop
    ;;
  "status")
    status
    ;;
  "restart")
    restart
    ;;
  *)
    usage
    ;;
esac