zabbix笔记_007 zabbix 分布式架构
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 分布式架构的更多相关文章
- zabbix笔记_008 zabbix监控交换机路由器
zabbix监控交换机路由器 要监控路由器交换机,需要使用到SNMP协议 SNMP是一个简单网络管理协议,他基于C/S模型实现的监控和管理. 服务器安装SNMP: yum -y install net ...
- 分布式系统监视zabbix讲解七之分布式监控--技术流ken
分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...
- zabbix的日常监控-分布式监控(十)
参考博文:http://blog.51cto.com/jinlong/2051966 zabbix proxy 可以代替 zabbix server 检索客户端的数据,然后把数据汇报给 zabbix ...
- 分布式系统监视zabbix讲解七之分布式监控
分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...
- zabbix学习笔记:zabbix监控之短信报警
zabbix学习笔记:zabbix监控之短信报警 zabbix的报警方式有多种,除了常见的邮件报警外,特殊情况下还需要设置短信报警和微信报警等额外方式.本篇文章向大家介绍短信报警. 短信报警设置 短信 ...
- 运维笔记:zabbix的运用(1)安装过程
前言 如果是用了阿里云或者腾讯云,他们都有各种监控帮我们做好.但是如果是遇到了自己维护自己机房的服务器,那么一些可视化或者监控就很有意义了.监控可能有很多种方案,这里就以比较老牌通吃的zabbix来解 ...
- 分享 : 警惕MySQL运维陷阱:基于MyCat的伪分布式架构
分布式数据库已经进入了全面快速发展阶段.这种发展是与时俱进的,与人的需求分不开,因为现在信息时代的高速发展,导致数据量和交易量越来越大.这种现象首先导致的就是存储瓶颈,因为MySQL数据库实质上还是一 ...
- 转:三思!大规模MySQL运维陷阱之基于MyCat的伪分布式架构
在微信公众号看到一篇关于mycat的文章,觉得分析的很不错,给大家分享一下 三思!大规模MySQL运维陷阱之基于MyCat的伪分布式架构 原文链接:https://mp.weixin.qq.com/s ...
- 小D课堂 - 新版本微服务springcloud+Docker教程_2_01传统架构演进到分布式架构
笔记 第二章 架构演进和分布式系统基础知识 1.传统架构演进到分布式架构 简介:讲解单机应用和分布式应用架构演进基础知识 (画图) 高可用 LVS+keepalive :负载均衡的知识点 1. ...
- 一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 1.分布式架构下,Session共享有什么方案 2.简述你对RPC.RMI的理解 3.分布式id生成方案 4.分布式锁解决 ...
随机推荐
- linux 性能自我学习 ———— 关于内存 [七]
前言 内存的基本知识,将在操作系统篇中详细介绍,这里只说明如何排查问题. 正文 内存的分配和回收: 在malloc 是c 标准库中的内存分配函数,对应到系统调用上,有两种实现方式,一种是brk()和 ...
- linux 允许root 用户登录(旧)
前言 旧博客迁移的内容 正文 vi /etc/ssh/sshd_config 将PermitRootLogin值改yes service sshd restart
- 哨兵的多个核心底层原理的深入解析(包含slave选举算法)
一.sdown和odown转换机制sdown和odown两种失败状态 sdown是主观宕机,就一个哨兵如果自己觉得一个master宕机了,那么就是主观宕机odown是客观宕机,如果quorum数量的哨 ...
- bs4、selenium的使用
爬取新闻 # 1 爬取网页---requests # 2 解析 ---xml格式,用了re匹配的 ---html,bs4,lxml... ---json: -python :内置的 -java : f ...
- Llama 3 开源了「GitHub 热点速览」
近日,Meta(原 Facebook)开源了他们公司的新一代大模型 Llama 3,虽然目前只放出了 8B 和 70B 两个版本,但是在评估结果上已经优于 Claude 3 Sonnet.Mistra ...
- 亿图version 9.2安装教程
记录一下自己安装亿图9.2版本的安装过程~ 先获取安装资料: 百度网盘链接: 链接:https://pan.baidu.com/s/1zJDcF9Y0Xy2CvD4mG_oOfQ?pwd=pqy9 提 ...
- 使用 Gradio 的“热重载”模式快速开发 AI 应用
在这篇文章中,我将展示如何利用 Gradio 的热重载模式快速构建一个功能齐全的 AI 应用.但在进入正题之前,让我们先了解一下什么是重载模式以及 Gradio 为什么要采用自定义的自动重载逻辑.如果 ...
- DataWorks搬站方案:Azkaban作业迁移至DataWorks
简介: DataWorks迁移助手提供任务搬站功能,支持将开源调度引擎Oozie.Azkaban.Airflow的任务快速迁移至DataWorks.本文主要介绍如何将开源Azkaban工作流调度引擎中 ...
- LabView中使用VISA设备清零时,会发送00
最近有为小伙伴跟我说他使用串口的时候通信遇到了问题,我看到他的在程序循环中使用了VISA设备清零控件,出于好奇我就复现了一下,发现每次调用VISA设备清零控件的时候,会主动向串口中发送00数据 一.测 ...
- golang cron定时任务简单实现
目录 星号(*) 斜线(/) 逗号(,) 连字符 (-) 问好 (?) 常用cron举例 使用说明 golang 实现定时服务很简单,只需要简单几步代码便可以完成,不需要配置繁琐的服务器,直接在代码中 ...