一 、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. kafka的主题与消费

    同一个消费者组不能同时消费同一个分区的数据 不同分区可以消费同一组不同消费者 同一个消费者可以同时消费多个topicA的数据 Topic和consumer依赖zookeeper,producer不依赖

  2. JS基础语法---分支语句之:if语句,if-else语句,if-ever if语句

    //if语句只有一个分支 //if-else语句有两个分支,最终执行一个分支 //if-else if-else if-else if-else if..........else---多分支,最终也是 ...

  3. RSA加密算法破解及原理

    - RSA算法原理 - - 加密与解密 在RSA中,Bob想给Alice发一个消息X,Alice公钥为(e,n),私钥为(n,d). 加密和解密的过程如下: - RSA暴力破解 RSA暴力破解,简单理 ...

  4. python的几个实例程序员节日快乐

    python的几个小实例 有参函数 def login(username, password): name = input("请输入您的姓名").strip() pwd = inp ...

  5. 配置同时使用 Gitlab、Github、Gitee(码云) 共存的开发环境

    首先确认已安装Git,可以通过 git –version 命令可以查看当前安装的版本. Mac OSX 中都已经安装了Git.但是,Git的版本未必是最新的. 可以通过命令 git clone htt ...

  6. linux环境下的Oracle部署

    一.  环境及相关软件 虚拟机:VMwore Workstation Linux系统:CentOS ORACLE:ORACLE_112030_Linux-x86-64 Xmanger软件 二.  安装 ...

  7. 7-SQL-join连接

    (1) 内连接 关键字:inner join on select * from a_table inner join b_table on a_table.a_id = b_table.b_id; / ...

  8. 26.Java基础_状态修饰符

    状态修饰符: final(最终态),static(静态) final关键字: 修饰类: 修饰局部变量: static关键字: 修饰变量:   修饰函数:

  9. 17.Java基础_初探类的private和public关键字

    package pack1; public class Student { // 成员变量 private String name; private int age; // get/set方法 pub ...

  10. 深浅拷贝及 join set

    1.join s="**".join (['风清扬',"独孤求败"] )       join  把里面的东西拿出来,进行拼接 s="_". ...