一 、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. 使用ADO.NET实体数据模型

    前景:要操作的数据表必须添加主键(方式:进入数据库-->数据表名-->设计-->列名右键-->设置主键) 可在服务器资源管理器中查看是否设置了主键(主键会有一把钥匙的图样) 1 ...

  2. abp实战-ContosoUniversity Abp版-2添加菜单与创建实体

    这里略过理论篇,但需要了解abp分层,对于小项目来说abp分层有点复杂,这里只是演示,个别地方没有完全按照ddd理论去写,后期我将会完善. 1. 创建ContosoUniversity相关功能的菜单 ...

  3. 【win10】通过环境变量来快速打开应用程序

    step1:建一个空文件夹,并把文件夹路径复制到剪贴板. step2:依次右键点击“此电脑”.属性.高级系统设置.环境变量,定位到“系统变量”,点击新建. (说明:环境变量分为用户变量和系统变量,用户 ...

  4. JS基础语法---continue关键字

    continue: 在循环中如果遇到continue关键字,直接开始下一次循环 如下:continue在计数器之前,会一直循环,浏览器会崩溃,我的就崩溃了 var i = 0; while (i &l ...

  5. 权限管理——ACL权限

    权限管理 ACL权限 用于解决用户对文件身份不足 命令:[root@localhost ~]#dumpe2fs -h /dev/sd3 作用:查询指定分区详细的文件系统给信息 选项 -h:仅显示超级块 ...

  6. Python 字符串用法总结

    一.将某个对象转换为字符串,有str()和repr()两种方法 区别:repr() 转化为供解释器读取的形式str() 转化为适于人阅读的形式 a = 123456 print('repr输出:', ...

  7. 每天一点产品思考(5):Web端链接跳转在当前页面刷新还是新标签页打开?

    一.与交互设计师的突然撕逼         今天阿白在验收产品的时候,在博客首页打开一篇博文,是在原先的页面进行刷新,而不是新开一个标签页打开.阿白让开发改成在新标签页中打开,但是开发说这是设计师设计 ...

  8. Mysql—数据库管理与表管理

    数据库管理 表管理 删除表

  9. openpyxl的简单使用

    openpyxl的简单使用 openpyxl 操作excel的库,只能操作xlxs 文件, xlrd/xlwt这两个库能兼容xls(2003版) 安装 pip install openpyxl如果ex ...

  10. mask-rcnn环境配置windows

    安装pycocotools 这个方法非常简便 但是需要先安装git,并且同时配置一下C++的工具 https://blog.csdn.net/qq_41271957/article/details/8 ...