首页 > 其他分享 >预编译安装zabbix-agent

预编译安装zabbix-agent

时间:2024-08-11 15:28:47浏览次数:12  
标签:agentd etc -- agent 编译 zabbix usr

预编译安装zabbix-agent

1. zabbix-gaent介绍和工作原理

1.1 介绍

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由两部分构成,zabbix server与可选组件zabbix agent

zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows (2000/2003/XP/Vista)等系统之上。
zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(agent方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。

1.2 工作原理

一个监控系统运行的大概的流程是这样的:
zabbix agent需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。这里agent收集数据分为主动和被动两种模式:

  • 主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy
  • 被动:serveragent请求获取监控项的数据,agent返回数据。

2. 预编译zabbix-agent安装

2.1 下载预编译文件

首先登陆到https://www.zabbix.com/download_agents 该网站下面,如下图。

选择自己的操作系统并且选择支持自己zabbix-server版本的预编译安装包。因为我用的centos 7的内核并且zabbix-server版本为6.4.0因此我下载 https://cdn.zabbix.com/zabbix/binaries/stable/6.0/6.0.3/zabbix_agent-6.0.3-linux-4.12-ppc64le-static.tar.gz 安装包。并且上传到自己要监控的linux服务器上。

2.2 新建用户和组

在linux服务器上新建zabbix用户和组。

groupadd zabbix
useradd -g zabbix zabbix

2.3 解压预编译包

解压zabbix预编译安装包。

mkdir -p  /usr/local/zabbix/zabbix-agent
tar -zxvf zabbix_agent-6.4.17-linux-3.0-amd64-static.tar.gz -C /usr/local/zabbix/zabbix-agent

解压完之后进入/zabbix-agent目录中,发现有三个文件夹。

drwxrwxr-x 2 zabbix zabbix 45 Jul 15 23:05 bin  # 命令文件夹,zabbix_get命令
drwxrwxr-x 3 zabbix zabbix 53 Jul 19 00:05 conf	# 配置文件夹,zabbix_agent.conf
drwxrwxr-x 2 zabbix zabbix 27 Jul 15 23:05 sbin # zabbix—agent启动执行文件

2.4 bin目录操作

进入/zabbix-agent/bin目录下。可以看到有以下命令。

-rwxrwxr-x 1 zabbix zabbix 1227160 Jul 15 23:05 zabbix_get
-rwxrwxr-x 1 zabbix zabbix 1768752 Jul 15 23:05 zabbix_sender

将这两个命令建立软连接到usr/bin目录下面。

ln -s zabbix_sender zabbix_get /usr/bin

2.5 sbin目录操作

进入/zabbix-agent/sbin目录下。s可以看到这里面有个zabbix_agentd的可执行文件,这个可执行文件是zabbix 的客户端的可执行文件,agent可以用来获取和监控数据环境。同样建立软连接到usr 下面的sbin目录下。

ln -s zabbix_agentd /usr/sbin/

2.6 conf目录操作

进入/zabbix-agent/conf目录下。

这里面有一个zabbix_agentd.conf,这个就是zabbix-agent的配置文件。我们将它copy到/usr/local/etc目录下面。

cp zabbix_agentd.conf /usr/local/etc/

2.7 修改配置文件

其实也可以修改之后拷贝,拷贝之后要进入拷贝后的文件修改。

vi /usr/local/etc/zabbix_agentd.conf
# 修改值
Server=192.168.101.238
ServerActive=192.168.101.238
Hostname=pgmaster

PidFile=/tmp/zabbix_agentd.pid
LogFileSize=1
BufferSend=5
BufferSize=100

ListenPort=10050
ListenIP=0.0.0.0
RefreshActiveChecks=120
AllowRoot=1
Include=/usr/local/zabbix/etc/zabbix_agentd.d/*.conf
StartAgents=4
Timeout=10
UnsafeUserParameters=1

2.8 创建需要的文件夹

这个Include所对应的目录最好创建一下,不然启动时会报错。

chown zabbix:zabbix /tmp 			 # 日志目录权限
touch /tmp/zabbix_agentd.log		 # 创建日志文件
chmod 777 /tmp/zabbix_agentd.log	 # 给予权限
mkdir -p /usr/local/zabbix/etc/zabbix_agent.d #创建自定义参数配置文件目录
chown zabbix:zabbix /usr/local/zabbix/etc/zabbix_agent.d # 给予目录权限

2.9 添加端口

在客户端上添加zabbix的监控端口。

vim /etc/services

添加如下内容
zabbix_agent 10050/tcp
zabbix_agent 10050/udp

2.10 拷贝启动脚本

# 拷贝启动脚本到/etc/init.d下
cp /usr/local /sbin/zabbix_agentd /etc/init.d

# 为/etc/init.d下的启动添加可执行权限
chmod a+x /etc/init.d/zabbix_agentd 

2.11 启动zabbix客户端

/etc/init.d/zabbix_agentd

查看进程,确定zabbix客户端是否启动.

ps -ef | grep zabbix

现在zabbix的服务并没有起来,报没有权限的错误,建立zabbix_agentd.pid并赋予权限.

touch /tmp/zabbix_agentd.pid
chmod 777 /tmp/zabbix_agentd.pid

2.12 开放端口

方式一:关闭防火墙(不推荐,练习可用)

service iptables stop
查看selinux:getenforce 状态是开启,
将它临时关闭:setenforce 0

# 再次启动
/etc/init.d/zabbix_agentd
ps -ef | grep zabbix

方式二:使用firewalld开放

# 查看当前防火墙状态
sudo firewall-cmd --state
# 查看已开放的端口
sudo firewall-cmd --list-ports
# 开放端口 10050 和 10051
sudo firewall-cmd --zone=public --add-port=10050/tcp --permanent
sudo firewall-cmd --zone=public --add-port=10051/tcp --permanent
# 重新加载防火墙规则
sudo firewall-cmd --reload
# 确认端口已开放
sudo firewall-cmd --list-ports

方式二:使用iptables开放

# 查看当前规则
sudo iptables -L
# 开放端口 10050 和 10051
sudo iptables -A INPUT -p tcp --dport 10050 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 10051 -j ACCEPT
# 保存规则(不同的 Linux 发行版保存规则的方法可能有所不同)
sudo iptables-save > /etc/iptables/rules.v4
# 确认端口已开放
sudo iptables -L

以上步骤可以帮助你在 Linux 系统上不关闭防火墙的情况下开放特定的端口。如果你使用的是其他防火墙管理工具或者发行版,可能需要略微调整步骤。

标签:agentd,etc,--,agent,编译,zabbix,usr
From: https://www.cnblogs.com/zreo2home/p/18353400

相关文章

  • zabbix的主动和被动模式详解
    主动模式和被动模式1.zabbix主被动模式介绍被动模式:被动模式就是由zabbixserver向zabbixagent发出指令获取数据,即zabbixagent被动的去获取数据并返回给zabbixserver,zabbixserver周期性的向agent索取数据,这总模式的最大问题就是会加大zabbixserver的工作量,在数百台服......
  • zabbix使用自动发现对pg的复制槽进行状态监控
    zabbix使用自动发现对pgsql的复制槽进行状态监控环境介绍:本例中安装zabbix开源软件和postgres,软件版本信息如下:软件版本zabbixZabbix6.4.0zabbix-server上postgres14.7zabbix-agent6.4.17zabbix-agent上postgres16.3主机信息如下:RedHatEnterprise......
  • zabbix自动发现
    zabbix自动发现环境介绍:本例中安装zabbix开源软件和postgres,软件版本信息如下:软件版本zabbixZabbix6.4.0postgres14.7zabbix-agent6.4.17主机信息如下:RedHatEnterpriseLinuxServer7.9(Maipo)主机名主机地址用途zib_server192.168.10......
  • zabbix触发器
    zabbix触发器环境介绍:本例中安装zabbix开源软件和postgres,软件版本信息如下:软件版本zabbixZabbix6.4.0postgres14.7zabbix-agent6.4.17主机信息如下:RedHatEnterpriseLinuxServer7.9(Maipo)主机名主机地址用途zib_server192.168.101.......
  • zabbix采集器
    zabbix采集器环境介绍:本例中安装zabbix开源软件和postgres,软件版本信息如下:软件版本zabbixZabbix6.4.0postgres14.7zabbix-agent6.4.17主机信息如下:RedHatEnterpriseLinuxServer7.9(Maipo)主机名主机地址用途zib_server192.168.101.......
  • PostgreSQL15.6源码编译安装
    1.postgres数据库源码下载地址,自己选择对应版本,我这里是15.6https://www.postgresql.org/ftp/source/2.编译cd/data/make/postgresql-15.6./configure--prefix=/pgdata/postgres15make-j$(nproc)#加快编译速度,自动获取对应cpu核心数makeinstall3.创建postgres用户......
  • Linux:@2024-08-10 最新的Openssl-3.3.1 Openssh-9.8p1 Centos7上的编译后二进制 一键
     附件:Portable_Openssl-Openssh9.8p1-bin-el7.v1.2.1.tgz.zip特点:适用于centos7.x 已经编译为二进制对老版本的关键二进制文件sshd、sftp、scp、openssl进行了备份升级前,自动打开一个端口为2222的老版本的sshd服务,你可以连接那个2222的服务,以防死翘翘。对sshd_config进......
  • 扩展【从0制作自己的ros导航小车】C++_ROS_QT5联合编译,简单界面为ROS开发增添交互
    从0制作自己的ros导航小车前言一、环境搭建二、联合编译三、测试前言前面已经实现了导航功能,对于之后的一些开发,有交互能力是比较重要的,比如小车上连接一块屏幕,通过屏幕来选择模式,可视化等等。QT是不错的选择,但是需要做一些额外的工作,让QT与ROS能够建立联系,实现通信......
  • tez hadoop的编译和安装(基于window)
    由于大多数服务器和外网做了隔离,进行源码编译并不方便,所以采用window进行编译1.安装maven并需要配置conf进行可用源。尽量用公共源,公司内部源并不全2.进行windowprotoc-2.5.0-win32.zip的下载和安装需要到环境变量进行路径配置3./apache-tez-0.9.2-src下载tez源码进行编......
  • 2.g++分步编译演示从源码到执行程序的四步
    2.g++分步编译演示从源码到执行程序的四步2.1gcc的工作流程gcc编译器将c源文件到生成一个可执行程序,中间一共经历了四个步骤:四个步骤并不是gcc独立完成的,而是在内部调用了其他工具,从而完成了整个工作流程,其中编译最耗时,因为要逐行检查语法。gcc的工作流程:1.预处理:cpp预......