1. zabbix 分布式架构[服务器数量较大的场景下使用]

现有架构:
agent --> zabbix server proxy架构:
agent --> zabbix proxy --> zabbix server
proxy架构是让agent数据上报给zabbix proxy然后由zabbix proxy统一发送给zabbix server 架构改造:
将一台zabbix_agent 转变为 zabbix proxy
新增一台 zabbix server让zabbix proxy数据发送给zabbix server 10.0.0.80 zabbix_server
10.0.0.66 zabbix_agent 转变为 zabbix_proxy
10.0.0.63 zabbix_agent
10.0.0.65 zabbix_agent

2. zabbix_proxy架构图

3. zabbix agent业务机器配置agent:

将zabbix agent的服务器地址指向 proxy服务器

下面配置的是 10.0.0.63 10.0.0.65 服务器修改 zabbix proxy 项指向了 10.0.0.66的proxy服务器

#agent客户端10.0.0.63配置:
#1. 修改agent配置文件的proxy服务器地址
[root@master zabbix]# egrep -v "^#|^$" /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
Include=/etc/zabbix/zabbix_agentd.d/*.conf
#----------------------- 将server改为我们的zabbix proxy服务器地址 ----------------------------
如下:
[root@node2_proxy zabbix-proxy-mysql-3.4.10]# egrep -v "^#|^$" /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.66
ServerActive=10.0.0.66
Hostname=Zabbix_agent_66
Include=/etc/zabbix/zabbix_agentd.d/*.conf
#----------------- # 2. 重启 zabbix_agent服务
[root@master zabbix]# systemctl restart zabbix-agent.service ============================================
----------------分割线----------------------
============================================ #agent客户端10.0.0.65配置: #agent客户端配置:
#1. 修改agent配置文件的proxy服务器地址
[root@master zabbix]# egrep -v "^#|^$" zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
Include=/etc/zabbix/zabbix_agentd.d/*.conf
#----------------------- 将server改为我们的zabbix proxy 服务器地址 ----------------------------
如下:
[root@master zabbix]# egrep -v "^#|^$" zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=10.0.0.66
ServerActive=10.0.0.66
Hostname=Zabbix_agent_65
Include=/etc/zabbix/zabbix_agentd.d/*.conf
#----------------- # 2. 重启 zabbix_agent服务
[root@master zabbix]# systemctl restart zabbix-agent.service

4. zabbix_proxy 安装 [10.0.0.66]

-------------------------------------------------
一 . 安装zabbix-proxy:
#1. 安装zabbix-agent zabbix-proxy
yum localinstall -y https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.10-1.el7.x86_64.rpm
yum localinstall -y http://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-proxy-mysql-3.4.10-1.el7.x86_64.rpm #2. 安装 mariadb
yum install -y mariadb-server
#2.1 启动mariadb和设置开机自启动
systemctl start mariadb.service
systemctl enable mariadb.service #2.2 创建zabbix_proxy库
mysql
create database zabbix_proxy default charset utf8;
grant all privileges on zabbix_proxy.* to zabbix_proxy@'localhost' identified by '123456';
flush privileges;
exit
数据库账号密码: zabbix_proxy 123456 MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| test |
| zabbix_proxy |
+--------------------+
3 rows in set (0.00 sec) #2.3 导入zabbix_proxy数据[默认就在zabbix-proxy中]:
cd /usr/share/doc/zabbix-proxy-mysql-3.4.10/
zcat schema.sql.gz |mysql -uzabbix_proxy -p123456 zabbix_proxy
如果你不知道文件在哪儿你可以使用 rpm -ql zabbix-proxy 来查看
schema.sql.gz 这个文件就是
进入数据库检查:
mysql
use zabbix_proxy;
show tables; 看到里面有表证明成功
------------------------------------------------- 二. 配置zabbix-proxy连接数据库:
配置文件: /etc/zabbix/zabbix_proxy.conf
1. 修改配置文件:
/etc/zabbix/zabbix_proxy.conf
修改为以下结果:
Server=10.0.0.80
Hostname=Zabbix_proxy
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBHost=localhost
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=123456
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
-------------------------------------------------
1.1 配置文件解释:
[root@node2_proxy zabbix-proxy-mysql-3.4.10]# cat /etc/zabbix/zabbix_proxy.conf
Server=10.0.0.80 ##<--------改为zabbix server服务器地址
Hostname=80_zabbix_proxy ##<--------这个名字很重要,它关系到 zabbix server是否可以找到proxy服务器
LogFile=/var/log/zabbix/zabbix_proxy.log ##<-------- 日志文件
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid ##<-------- 进程pid
SocketDir=/var/run/zabbix
DBName=zabbix_proxy ##<-------- 改为zabbix_proxy 数据库名
DBUser=zabbix_proxy ##<-------- 改为zabbix_proxy 数据库连接账户
DBPassword=123456 ##<-------- 改为zabbix_proxy 数据库连接密码
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000 #2. 重启zabbix-proxy服务
systemctl restart zabbix-proxy.service
#检查状态:
systemctl status zabbix-proxy.service
#开机启动:
systemctl enable zabbix-proxy.service 记得启动完成后检查一下服务状态: systemctl status zabbix-proxy.service,直接查看进程也可以:
[root@node2_proxy zabbix-proxy-mysql-3.4.10]# netstat -lntup |grep zabbix_proxy
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 37332/zabbix_proxy
tcp6 0 0 :::10051 :::* LISTEN 37332/zabbix_proxy
------------------------------------------------- 三. zabbix server配置获取zabbix proxy数据配置:

5. WEB页面配置 [http://10.0.0.80]

依次选择:
配置 - 主机 - 创建主机

配置好了添加:

这里的 zabbix图标没有亮,需要等待一会儿,如果等不及,就去重启一下 proxy服务器中的zabbix-proxy

systemctl restart zabbix-proxy

再次刷新就看到被监控上了:

检查告警是否正常:

微信告警推送正常:

zabbix笔记_007 zabbix 分布式架构的更多相关文章

  1. zabbix笔记_008 zabbix监控交换机路由器

    zabbix监控交换机路由器 要监控路由器交换机,需要使用到SNMP协议 SNMP是一个简单网络管理协议,他基于C/S模型实现的监控和管理. 服务器安装SNMP: yum -y install net ...

  2. 分布式系统监视zabbix讲解七之分布式监控--技术流ken

    分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...

  3. zabbix的日常监控-分布式监控(十)

    参考博文:http://blog.51cto.com/jinlong/2051966 zabbix proxy 可以代替 zabbix server 检索客户端的数据,然后把数据汇报给 zabbix ...

  4. 分布式系统监视zabbix讲解七之分布式监控

    分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...

  5. zabbix学习笔记:zabbix监控之短信报警

    zabbix学习笔记:zabbix监控之短信报警 zabbix的报警方式有多种,除了常见的邮件报警外,特殊情况下还需要设置短信报警和微信报警等额外方式.本篇文章向大家介绍短信报警. 短信报警设置 短信 ...

  6. 运维笔记:zabbix的运用(1)安装过程

    前言 如果是用了阿里云或者腾讯云,他们都有各种监控帮我们做好.但是如果是遇到了自己维护自己机房的服务器,那么一些可视化或者监控就很有意义了.监控可能有很多种方案,这里就以比较老牌通吃的zabbix来解 ...

  7. 分享 : 警惕MySQL运维陷阱:基于MyCat的伪分布式架构

    分布式数据库已经进入了全面快速发展阶段.这种发展是与时俱进的,与人的需求分不开,因为现在信息时代的高速发展,导致数据量和交易量越来越大.这种现象首先导致的就是存储瓶颈,因为MySQL数据库实质上还是一 ...

  8. 转:三思!大规模MySQL运维陷阱之基于MyCat的伪分布式架构

    在微信公众号看到一篇关于mycat的文章,觉得分析的很不错,给大家分享一下 三思!大规模MySQL运维陷阱之基于MyCat的伪分布式架构 原文链接:https://mp.weixin.qq.com/s ...

  9. 小D课堂 - 新版本微服务springcloud+Docker教程_2_01传统架构演进到分布式架构

    笔记 第二章 架构演进和分布式系统基础知识 1.传统架构演进到分布式架构     简介:讲解单机应用和分布式应用架构演进基础知识 (画图) 高可用 LVS+keepalive :负载均衡的知识点 1. ...

  10. 一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)

    这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 1.分布式架构下,Session共享有什么方案 2.简述你对RPC.RMI的理解 3.分布式id生成方案 4.分布式锁解决 ...

随机推荐

  1. CTR预估系列模型漫谈

    FM FM的主要内容 了解fm模型之前,需要先说一下lr带入一下场景.lr作为早期ctr预估里面的模型,其速度上有着无可比拟的优势,而偏偏ctr场景下伴随着有大量的离散特征,高维稀疏特征,这个很适合l ...

  2. MVC 测试action的运行速度

    前言 网络很多文章有关于action的测试机制,本文主要是整理一下思路. 正文 假如有一个acion: public ActionResult Index() { return View(); } 当 ...

  3. next.js app目录 i18n国际化简单实现

    最近在用next写一个多语言的项目,找了好久没找到简单实现的教程,实践起来感觉都比较复杂,最后终于是在官方文档找到了,结合网上找到的代码demo,终于实现了,在这里简单总结一下. 此教程适用于比较简单 ...

  4. TiDB Vector 抢先体验之用 TiDB 实现以图搜图

    本文首发自 TiDB 社区专栏:https://tidb.net/blog/0c5672b9 前言 最早知道 TiDB 要支持向量化的消息应该是在23年10月份左右,到第一次见到 TiDB Vecto ...

  5. 【阿里云采购季】3月采购完,IT运维躺赢一年

    阿里云2020上云采购季正式上线啦!今年的采购季可以逛些啥? 采购季正式期时间: 3月2日-3月31日 在这段时间里,想买啥就买吧,别忘了把想买的产品加入购物车噢,特惠产品叠加购物车满减,更划算噢! ...

  6. 网易:Flink + Iceberg 数据湖探索与实践

    导读:今天主要和大家交流的是网易在数据湖 Iceberg 的一些思考与实践.从网易在数据仓库建设中遇到的痛点出发,介绍对数据湖 Iceberg 的探索以及实践之路. 主要内容包括: 数据仓库平台建设的 ...

  7. 小米电商 Apache Dubbo-go 微服务实践

    ​简介:2021 年是小米中国区电商部门变动调整较大的一年,小米中国区早期电商.服务体系建立在 Go 语言构建的微服务体系之上,由内部自研的 Go 语言微服务框架 koala 支撑起数以千计的微服务应 ...

  8. [PHP] 浅谈 Laravel auth:api 不同驱动 token 和 passport 的区别

    token 驱动使用 TokenGuard 用传递的值去用户表中查询 member_token 字段的值,看是否有匹配的. 服务端需要在用户表 member_token 字段中存储 access_to ...

  9. 修复 GitLab 的 CI Runner 提示找不到 pwsh 执行文件

    本文告诉大家如何修复使用 GitLab 的 Runner 做 CI 时提示 "pwsh": executable file not found in %PATH% 错误 有两个方法 ...

  10. ThreadLocal 的原理讲述 + 基于ThreadLocal实现MVC中的M层的事务控制

    ThreadLocal 的原理讲述 + 基于ThreadLocal实现MVC中的M层的事务控制 目录 ThreadLocal 的原理讲述 + 基于ThreadLocal实现MVC中的M层的事务控制 每 ...