一 、Zabbix Proxy

概述

Zabbix proxy 是一个可以从一个或多个受监控设备采集监控数据并将信息发送到 Zabbix server 的进程,主要是代表 Zabbix server 工作。 所有收集的数据都在本地缓存,然后传输到 proxy 所属的 Zabbix server。

部署Zabbix proxy 是可选的,但可能非常有利于分担单个 Zabbix server 的负载。 如果只有代理采集数据,则 Zabbix server 上会减少 CPU 和磁盘 I/O 的开销。

Zabbix proxy 是无需本地管理员即可集中监控远程位置、分支机构和网络的理想解决方案。

Zabbix proxy 需要使用独立的数据库。

Zabbix proxy安装

下载编译

下载

cd  /tmp && wget   https://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.0.9/zabbix-4.0.9.tar.gz

解压

tar  -xzf  zabbix-4.0.9.tar.gz

创建用户和组并创建安装目录

sudo groupadd zabbix
sudo useradd -g zabbix zabbix
sudo mkdir /opt/zabbix-proxy
sudo chown zabbix:zabbix /opt/zabbix-proxy

安装依赖包

yum install -y  mysql-devel net-snmp net-snmp-devel  libssh2-devel

编译安装

cd  zabbix-4.0.9
# 如果想使用其它参数和数据库,使用 ./configure --help 查看选项和参数,使用mysql 作为 proxy 的数据库
./configure --prefix=/opt/zabbix-proxy --enable-proxy --with-net-snmp --with-mysql --with-ssh2
make install

创建Zabbix proxy数据库并导入数据

Zabbix proxy 是将数据储存在本地,然后传输到 Zabbix Server 的。所以我们需要创建 Zabbix proxy 的数据库。

# 创建数据库
create database zabbix_proxy character set utf8 collate utf8_bin;
# 创建用户
grant all privileges on zabbix_proxy.* to zabbix_fy@localhost identified by 'password';

导入数据,zabbix proxy 不需要将所有的数据库数据都导入,只需要导入 schema.sql

mysql -u zabbix_fy  -p --database zabbix_proxy </tmp/zabbix-4.0.9/database/mysql/schema.sql

更改Zabbix proxy 配置文件

默认配置文件是 位于 安装目录的./etc/zabbix_proxy.conf。

默认启用的是主动模式,默认监听端口: 10051。参数详解:官方文档

Server=# 填入zabbix server 的ip
ServerPort= # zabbix server 监听的端口,默认为 10051
Hostname=#zabbix Proxy 的名称
DBHost= # 数据库地址
DBName=zabbix_proxy # 数据库名称
DBUser=zabbix_fy # 用户名
DBPassword=sRW123456 # 密码
ProxyOfflineBuffer=24 # 如果连接不到zabbix-server,数据保存多久。

设置为 systemd 服务

创建 /usr/lib/systemd/system/zabbix-proxy.service 文件。并添加以下内容:

[Unit]
Description=Zabbix Proxy
After=syslog.target
After=network.target [Service]
User=zabbix
Group=zabbix
Environment="CONFFILE=/opt/zabbix-proxy/etc/zabbix_proxy.conf"
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_proxy.pid
KillMode=control-group
ExecStart=/opt/zabbix-proxy/sbin/zabbix_proxy -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
TimeoutSec=0 [Install]
WantedBy=multi-user.target

启动服务并设置为开机自启

# sudo  systemctl  restart  zabbix-proxy
# sudo systemctl enable zabbix-proxy

开放对应的端口

sudo firewall-cmd --add-port=10051/tcp  --permanent
sudo firewall-cmd --reload

Zabbix Proxy 安装报错与解决办法

这里报的错都是由于依赖包没有安装,导致编译时报错。

错误一

checking for the linux kernel version... unknown family (3.10.0-862.14.4.el7.x86_64)
checking size of void *... 8
checking for mysql_config... no
checking for mariadb_config... no
configure: error: MySQL library not found

解决办法

yum install -y  mysql-devel

错误二

checking for Zabbix server/proxy database selection... ok
checking for multirow insert statements... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for net-snmp-config... no
configure: error: Invalid Net-SNMP directory - unable to find net-snmp-config

解决办法

yum  install  net-snmp net-snmp-devel  -y

错误三

checking for main in -lnetsnmp... yes
checking for localname in struct snmp_session... yes
checking for SSH2 support... no
configure: error: SSH2 library not found

解决办法

 yum install libssh2-devel -y

二、Zabbix agent

Zabbix agent安装

下载编译

下载

cd  /tmp && wget   https://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.0.9/zabbix-4.0.9.tar.gz

解压

tar  -xzf  zabbix-4.0.9.tar.gz

创建用户和组并创建安装目录

sudo groupadd zabbix
sudo useradd -g zabbix zabbix
sudo mkdir /opt/zabbix-agent
sudo chown zabbix:zabbix /opt/zabbix-agent

编译安装

cd  zabbix-4.0.9
./configure --prefix=/opt/zabbix-agent --enable-agent

更改Zabbix agent 配置文件

默认配置文件是 位于 安装目录的./etc/zabbix_agentd.conf。

我们一般需要更改以下参数:

Server: 设置该值为 Zabbix Server IP.默认为 127.0.0.1
ServerActive:设置该值为 Zabbix Server IP,如果 Zabbix Server 不是使用的默认10051端口,我们可以在此加上端口号,形如:192.168.12.234:11051,默认为127.0.0.1
Hostname :设置为主机的主机名,默认为 zabbix server
LogFileSize=1 日志文件超过 1M 就进行切割。值为 0时表示不切割日志。 默认为 1
EnableRemoteCommands:是否开启远程命令 默认为 0

设置为 systemd 服务

创建 /usr/lib/systemd/system/zabbix-agent.service 文件。并添加以下内容:

[Unit]
Description=Zabbix Agent
After=syslog.target
After=network.target [Service]
User=zabbix
Group=zabbix
Environment="CONFFILE=/opt/zabbix-agent/etc/zabbix_agentd.conf"
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_agentd.pid
KillMode=control-group
ExecStart=/opt/zabbix-agent/sbin/zabbix_agentd -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s [Install]
WantedBy=multi-user.target

启动服务并设置为开机自启

sudo  systemctl  restart  zabbix-agent
sudo systemctl enable zabbix-agent

开放对应的端口

sudo firewall-cmd --add-port=10050/tcp  --permanent
sudo firewall-cmd --reload

源码安装官方文档 :点我,官方文档可能没有我这里详细哦。

Zabbix-proxy和Zabbix-agent源码安装的更多相关文章

  1. Zabbix监控系统部署:源码安装

    1. 概述1.1 基础环境2. 部署过程2.1 创建用户组2.2 下载源码解压编译安装2.2.1 下载源码解压2.2.2 YUM安装依赖环境2.2.3 编译安装最新版curl2.2.4 更新GNU构建 ...

  2. zabbix源码安装实例

    环境 系统                 Centos7 zabbix版本      Zabbix 3.4.15 (revision 86739) zabbix源码安装 .tar.gz cd zab ...

  3. 源码安装和配置zabbix 3.0 LST

    Zabbix是什么 Zabbix 是由Alexei Vladishev创建,目前由Zabbix SIA在持续开发和支持. Zabbix 是一个企业级的分布式开源监控方案. Zabbix是一款能够监控各 ...

  4. [原创] zabbix学习之旅一:源码安装

    zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存 ...

  5. CentOS Linux release 7.3源码安装zabbix

    CentOS Linux release 7.3安装zabbix 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 前言: 我去年用用centos6的环境搭建了一下 zabbix3.0 ...

  6. zabbix源码安装后,设置为服务启动和关闭

    zabbix源码安装,使用service启动与关闭服务 1. zabbix客户端的系统服务脚本 1.1 拷贝启动脚本 zabbix的源码提供了系统服务脚本,在/usr/local/src/zabbix ...

  7. 部署zabbix监控平台(源码安装)

    案例:部署Zabbix监控平台 1 问题 本案例要求部署一台Zabbix监控服务器,一台被监控主机,为进一步执行具体的监控任务做准备: 安装LNMP环境 源码安装Zabbix 安装监控端主机,修改基本 ...

  8. 源码安装zabbix

    源码安装zabbix 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.     欢迎加入:高级运维工程师之路 598432640 前言:参考网上多篇源码安装的连接,自己把安装过程丢在这 ...

  9. 源码安装LNMP与搭建Zabbix

    系统环境:CentOS release 6.5 (Final) 搭建Zabbix 3.0对PHP环境要求>= 5.4 一.下载NMP的软件包: N:wget http://nginx.org/d ...

  10. 以源码安装的lamp环境为依托,源码安装zabbix监控系统

    1.源码安装lamp环境 1)安装httpd, 以源码httpd-2.4.33为基础,解压后,执行./configure --prefix=/usr/local/ --sysconfdir=/etc/ ...

随机推荐

  1. hash算法原理及应用漫谈【加图版】

    原文:https://blog.csdn.net/Tencent_TEG/article/details/103021226 提到hash,相信大多数同学都不会陌生,之前很火现在也依旧很火的技术区块链 ...

  2. java基础(11):接口、多态

    1. 接口 1.1 接口概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的”类”. 接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成. ...

  3. PHP+Ajax手机移动端发红包实例

    基本流程:当输入完红包数量和总金额后,PHP会根据这两个值进行随机分配每个金额,保证每个人都能领取到一个红包,且每个红包金额不等,并且所有红包金额总额等于总金额. 实现原理:设定总金额为10元,有N个 ...

  4. linux下编译安装MariaDB 10.4.7,解决错误:cannot access ‘/auth_pam_tool_dir’: No such file or directory

    编译安装MariaDB 10.4.7,前面的步骤我就不复述了,一切正常没什么问题. 当执行到:scripts/mysql_install_db --basedir=/usr/local/mysql - ...

  5. 使用AVFoundation完成照片拍摄存储相册, 开启关闭闪光灯, 切换摄像头

    在开启这个旅程之前, 请记住, AVFoundation是一个复杂的工具. 在很多情况下, 我我们使用苹果默认的API(比如:UIImagePickerController)就足够了. 在您阅读之前, ...

  6. idea中git标签(tag)的创建与使用

    1.什么是标签 通常,发布一个版本时,会在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本.将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来. 所以,标签也是 ...

  7. SRDC - ORA-1555: Query Duration 0: Checklist of Evidence to Supply (Doc ID 1682704.1)

    SRDC - ORA-1555: Query Duration 0: Checklist of Evidence to Supply (Doc ID 1682704.1) Action Plan 1. ...

  8. angular 运行报错

    angular 运行时报错ERROR in node_modules/rxjs/internal/types.d.ts(81,44): error TS1005: ';' expected. node ...

  9. Bliss OS 12.1下载 PC上Android10体验

    下载也不是一帆风顺啊 这是设计者的secret: https://forum.xda-developers.com/android/software/bliss-os-x86-pc-s-12-x-de ...

  10. Ultimate Chicken Horse GameProject第三次迭代成果文档

    经过三次迭代我们实现了游戏的基本功能 项目文档的github链接:https://github.com/k6tok12355/Ultimate-Chicken-Horse 下面是我们在第一次迭代中设定 ...