IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Zabbix proxy主动模式的实现 -> 正文阅读

[系统运维]Zabbix proxy主动模式的实现

Zabbix proxy主动模式的实现

zabbix作为一个分布式监控系统(分布式监控解决方案),支持通过代理(proxy)收集zabbix agent的监控数据然后由zabbix proxy再把数据发送给zabbix server,也就是zabbix proxy可以代替zabbix server收集监控数据,然后把数据汇报给zabbix server,所以zabbix proxy可以在一定程度上分担zabbix server的数据收集压力,从而降低数据的采集时间、也相应的增加了zabbix server的监控能力。

zabbix proxy区分主动模式和被动模式,通信方式与zabbix agent主动模式和被动模式一样,区别是zabbix proxy由于没有zabbix agent的配置,所以zabbix proxy在主动模式下要周期性地向zabbix server申请获取zabbix agent的监控项信息,而zabbix proxy在被动模式下也是等待zabbix server的连接并接受zabbix server发送的监控项指令,然后zabbix proxy再向zabbix agent发起请求获取数据。

zabbix proxy对比zabbix server

功能zabbix proxyzabbix server
轻量级相对重量级
图形带图形控制界面
可以独立工作是,可以独立采集数据并存储是,集数据采集、存储、分析、展示于一体
易维护是,配置完成后基本无需管理维护也不难
独立数据库保存少量近期数据保存指定时间内的所有数据
报警通知否,代理服务器不发送邮件通知支持邮件、短信等告警机制

zabbix proxy的版本选择

zabbix proxy的版本必须和zabbix server版本一致,否则会导致出现zabbix proxy与zabbix server不兼容问题

环境准备

五台机器:

zabbix_agent 5.0 被动模式(已安装) Zabbix_java_gateway 5.0 (已安装) 10.0.0.7

MariaDB-10.4.22(已安装) zabbix_server 5.0(已安装) 10.0.0.17

Tomcat-8.5(已安装) 10.0.0.27

zabbix_agent 5.0 主动模式(已安装)10.0.0.37

MariaDB-10.4.22(已安装) zabbix_proxy 5.0 主动模式 10.0.0.47

关闭防火墙和selinux

#关闭selinux
[root@zabbix_proxy ~]#sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

#关闭防火墙
[root@zabbix_proxy ~]#systemctl disable --now firewalld

#重启生效
[root@zabbix_proxy ~]#reboot

1. 安装zabbix rpm源

[root@zabbix_proxy ~]#rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[root@zabbix_proxy ~]#sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
[root@zabbix_proxy ~]#yum clean all

2. 安装zabbix proxy

[root@zabbix_proxy ~]#yum install -y zabbix-proxy-mysql zabbix-agent

#编辑配置文件 /etc/yum.repos.d/zabbix.repo
[root@zabbix_proxy ~]#vim /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]
...
enabled=1
...

3. 创建zabbix proxy数据库

[root@zabbix_proxy ~]#mysql -uroot -p
Enter password:
MariaDB [(none)]> create database zabbix_proxy_active character set utf8 collate utf8_bin;
MariaDB [(none)]> create user proxy@'10.0.0.%' identified by 'proxy';
MariaDB [(none)]> grant all privileges on zabbix_proxy_active.* to proxy@'10.0.0.%';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit;

4. 修改zabbix proxy配置文件

[root@zabbix_proxy ~]#vim /etc/zabbix/zabbix_proxy.conf
ProxyMode=0  #0为主动模式,1为被动模式
Server=10.0.0.17  #zabbix server服务器的IP地址或主机名
ServerPort=10051  #zabbix server监听端口,对于处于被动模式的代理,该参数将被忽略
Hostname=zabbix_proxy_active  #代理服务器名称,需要与zabbix server添加代理时的proxy name一致
ListenPort=10051  #zabbix proxy监听端口
EnableRemoteCommands=1  #允许zabbix server执行远程命令
DBHost=10.0.0.47  #数据库服务器IP地址
DBName=zabbix_proxy_active  #数据库名称
DBUser=proxy  #数据库用户名
DBPassword=proxy  #数据库密码
DBPort=3306  #数据库端口
ProxyLocalBuffer=720  #已经提交到zabbix server的数据保留时间
ProxyOfflineBuffer=720  #未提交到zabbix server的数据保留时间
HeartbeatFrequency=60  #心跳检测时间间隔,默认60秒,对于处于被动模式的代理,该参数将被忽略
ConfigFrequency=60  #代理间隔多少秒从zabbix server获取监控信息,对于处于被动模式的代理,该参数将被忽略
DataSenderFrequency=30  #代理将每隔多少秒向zabbix server发送收集的数据,对于处于被动模式的代理,该参数将被忽略
StartPollers=6  #启动的数据采集器数量
StartPollersUnreachable=3  #不可达主机的轮询进程的初始实例启动数量
StartTrappers=5  #预启动的Trappers进程数量
StartPingers=3  #ICMP ping进程的初始实例数量
JavaGateway=10.0.0.7  #JavaGateway服务器IP地址
JavaGatewayPort=10052  #JavaGateway服务端口
StartJavaPollers=5  #启动多少个线程采集数据
ListenIP=0.0.0.0  #监听地址
HousekeepingFrequency=1  #多少小时清理一次代理端数据库的 history数据
CacheSize=16M  #配置缓存大小
StartDBSyncers=4  #zabbix和数据库同步数据的进程数量
HistoryCacheSize=16M  #保存监控项的历史缓存大小
HistoryIndexCacheSize=16M  #历史数据索引缓存的大小
Timeout=30  #监控项的超时时间,单位为秒
LogSlowQueries=3000  #多久的数据库查询会被记录到日志,单位为毫秒

[root@zabbix_proxy ~]#grep "^[a-Z]" /etc/zabbix/zabbix_proxy.conf
ProxyMode=0
Server=10.0.0.17
ServerPort=10051
Hostname=zabbix_proxy_active
ListenPort=10051
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
EnableRemoteCommands=1
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBHost=10.0.0.47
DBName=zabbix_proxy_active
DBUser=proxy
DBPassword=proxy
DBPort=3306
ProxyLocalBuffer=720
ProxyOfflineBuffer=720
HeartbeatFrequency=60
ConfigFrequency=60
DataSenderFrequency=30
StartPollers=6
StartPollersUnreachable=3
StartTrappers=5
StartPingers=3
JavaGateway=10.0.0.7
JavaGatewayPort=10052
StartJavaPollers=5
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
ListenIP=0.0.0.0
HousekeepingFrequency=1
CacheSize=16M
StartDBSyncers=4
HistoryCacheSize=16M
HistoryIndexCacheSize=16M
Timeout=30
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1

5. 查看数据库

[root@zabbix_proxy ~]#mysql -uproxy -pproxy -h10.0.0.47
MariaDB [(none)]> show databases;
+---------------------+
| Database            |
+---------------------+
| information_schema  |
| zabbix_proxy_active |
+---------------------+

6. 主动模式导入数据库

[root@zabbix_proxy ~]#cd /usr/share/doc/zabbix-proxy-mysql-5.0.25/
[root@zabbix_proxy zabbix-proxy-mysql-5.0.25]#gunzip schema.sql.gz
[root@zabbix_proxy zabbix-proxy-mysql-5.0.25]#mysql -uproxy -pproxy -h10.0.0.47 zabbix_proxy_active
MariaDB [zabbix_proxy_active]> source /usr/share/doc/zabbix-proxy-mysql-5.0.25/schema.sql

7. 启动zabbix proxy进程

#启动zabbix proxy进程,并设置开机自启
[root@zabbix_proxy ~]#systemctl enable --now zabbix-proxy.service zabbix-agent.service
[root@zabbix_proxy ~]#systemctl status zabbix-proxy.service zabbix-agent.service
[root@zabbix_proxy ~]#systemctl status zabbix-proxy.service zabbix-agent.service
● zabbix-proxy.service - Zabbix Proxy
   Loaded: loaded (/usr/lib/systemd/system/zabbix-proxy.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2022-07-14 19:04:18 CST; 13s ago
  Process: 2311 ExecStart=/usr/sbin/zabbix_proxy -c $CONFFILE (code=exited, status=0/SUCCESS)

● zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2022-07-14 19:04:16 CST; 15s ago
  Process: 2312 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)

[root@zabbix_proxy ~]#ss -ntl
State      Recv-Q Send-Q              Local Address:Port                             Peer Address:Port
LISTEN     0      128                             *:22                                          *:*
LISTEN     0      100                     127.0.0.1:25                                          *:*
LISTEN     0      128                             *:10050                                       *:*
LISTEN     0      128                             *:10051                                       *:*
LISTEN     0      128                          [::]:22                                       [::]:*
LISTEN     0      100                         [::1]:25                                       [::]:*
LISTEN     0      128                          [::]:10050                                    [::]:*
LISTEN     0      80                           [::]:3306                                     [::]:*

8. zabbix web添加主动代理

点击【管理-agent代理程序-创建代理】在这里插入图片描述

9. zabbix agent使用主动代理

修改或者新添加一台zabbix agent,并使用zabbix主动模式代理服务器进行监控

点击【配置-主机-10.0.0.37-web2】

在这里插入图片描述

10. 修改zabbix agent配置文件

[root@centos7 ~]#vim /etc/zabbix/zabbix_agentd.conf
Server=10.0.0.17,10.0.0.47  #zabbix server与zabbix active代理的地址
ServerActive=10.0.0.47  #修改zabbix agent中配置文件ServerActive的值为主动模式zabbix proxy

[root@centos7 ~]#grep "^[a-Z]" /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=10.0.0.17,10.0.0.47
ListenPort=10050
ListenIP=0.0.0.0
StartAgents=5
ServerActive=10.0.0.47
Hostname=10.0.0.37
Timeout=30
Include=/etc/zabbix/zabbix_agentd.d/*.conf

[root@centos7 ~]#systemctl restart zabbix-agent.service

11. zabbix web验证当前主机状态

在这里插入图片描述

12. 验证主机监控数据

在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-07-17 17:01:55  更:2022-07-17 17:04:40 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/29 9:03:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计