zoukankan      html  css  js  c++  java
  • zabbix-proxy使用配置

    简介

    zabbix proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,并且在一定程度上分担了zabbix server的压力.zabbix proxy可以非常简便的实现了集中式、分布式监控.

    zabbix proxy使用场景:

    • 监控远程区域设备

    • 监控本地网络不稳定区域

    • 当zabbix监控上千设备时,使用它来减轻server的压力

    • 简化zabbix的维护

    注意:

    zabbix proxy仅仅需要一条tcp连接到zabbix server,所以防火墙上仅仅需要加上一条规则即可.zabbix proxy数据库必须和server分开,否则数据会被破坏,毕竟这两个数据库的表大部分都相同。总之记住,数据库分开即可。

    proxy收集到数据之后,首先将数据缓存在本地,然后在一定得时间之后传递给zabbix server.这个时间由proxy配置文件中参数ProxyLocalBuffer and ProxyOfflineBuffer决定.

    zabbix proxy是一个数据收集器,它不计算触发器、不处理事件、不发送报警,如下是proxy的功能.

     

    安装

    下载依赖

    yum install -y fping OpenIPMI net-snmp-agent-libs unixODBC 
    

    下载安装指定的rpm包

    wget https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-proxy-mysql-4.0.5-1.el7.x86_64.rpm
    rpm -ivh zabbix-proxy-mysql-4.0.5-1.el7.x86_64.rpm
    

    mysql 库配置

    不能跟server公用一个数据库

    mysql> create database zabbix_proxy character set utf8;                                    # 创建数据库
    mysql> grant all on zabbix_proxy.* to zabbix@localhost identified by 'zabbix';       # 创建授权用户
    mysql> flush privileges;                                                                                    # 刷新授权表,虽然不需要
    mysql> use proxydb;
    

    Zabbix-proxy数据库只需要导入一条sql

    # zcat schema.sql.gz
    $ gzip -d schema.sql.gz
    $ /data/app/mysql-3306/bin/mysql -uroot -pxxxx zabbix_proxy < /usr/share/doc/zabbix-proxy-mysql-4.0.5/schema.sql
    
    在server端启动捕捉进程
    #在Server执行..
    sed -i 's/.*StartTrappers=.*$/StartTrappers=10/' /etc/zabbix/zabbix_server.conf
    service zabbix-server restart
    

     

    Zabbix-proxy配置文件/etc/zabbix/zabbix_proxy.conf
    修改配置文件/etc/zabbix/zabbix_proxy.conf
    Server=192.168.1.154                         #填写Server的IP,Proxy会将收集到的数据发往这个IP。
    ServerPort=10051                             #proxy默认端口号,要实现转发的话使用这个选项
    Hostname=web                                 #在web端网页配置时需要用到,保持一致
    DBHost=localhost                             #数据库,使用本地,也可以使用ip
    ​
    DBName=zabbix_proxy                          #数据库名称,创建zabbix-proxy的mysql的数据库名称
    DBUser=zabbix                                
    DBPassword=zabbix                            
    DBPort=3306  
    DBSocket=/data/appData/mysql-3306/mysql.sock #mysqlsock文件,默认是使用socket通信的
    ​
    ProxyLocalBuffer=0                           #当数据发送到Server,还要在本地保留多少小时.不保留
    ProxyOfflineBuffer=3                         #当数据没有发送到Server,在本地保留多少小时,3小时。
    HeartbeatFrequency=60                        #心跳检测代理在Server的可用性
    ConfigFrequency=3600                         #代理多久从Server获取一次配置变化,默认3600秒.
    ​
    DataSenderFrequency=1                        #这个是proxy端向server端发送数据的时间,单位是秒
    ExternalScripts=/usr/lib/zabbix/externalscripts
    
    
    LogFileSize=0
    PidFile=/var/run/zabbix/zabbix_proxy.pid
    SocketDir=/var/run/zabbix
    DataSenderFrequency=60
    SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
    CacheSize=64M
    Timeout=10
    LogSlowQueries=3000
    
    web端创建proxy

    如果你安装好proxy之后,我们便可以在zabbix管理站点上配置proxy了.

    ministration(管理) → DM(分布式监控)-->Create proxy(创建代理)

    代理名称:bate_proxy # 与zabbix_proxy配置文件中Hostname=bate_proxy保持一致

    代理模式:主动式

     

    参数
    参数描述
    Proxy name proxy名称,必须和proxy配置文件中的hostname一致
    Proxy mode 选择proxy模式
    Active proxy主动连接到zabbix server并且请求配置文件数据
    Passive Zabbix server连接到proxy
    Hosts 哪些主机需要被proxy监控

    zabbix-agent

    安装agent
    wget https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.5-1.el7.x86_64.rpm
    
    配置proxy
    egrep -v "^#|^$" /etc/zabbix/zabbix_agentd.conf
    PidFile=/var/run/zabbix/zabbix_agentd.pid
    LogFile=/var/log/zabbix/zabbix_agentd.log
    LogFileSize=0
    Server=172.17.0.124
    ServerActive=172.17.0.124                       # 这里的ServerIP是用于Agent(主动)模式的.
    ListenIP=0.0.0.0
    Hostname=nginx1
    HostnameItem=system.hostname                    
    Include=/etc/zabbix/zabbix_agentd.d/*.conf 

    重启zabbix-agent

    zabbix-web创建主机的时候要选代理名称。

     

     

  • 相关阅读:
    微服务概述
    Airflow 配置celery+rabbitmq和celery+redis
    CentOS7安装Airflow
    Python如何import其它.py文件及其函数
    ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
    CentOS7安装MySQL
    Hadoop完全分布式环境下,DataNode进程正常启动,但是网页上不显示DataNode节点
    <一> windbg简介
    几个资料下载网站
    使用VS2012 C++ 进行单元测试
  • 原文地址:https://www.cnblogs.com/sunshine-long/p/10731250.html
Copyright © 2011-2022 走看看