构建高可用性、高性能和可扩展的Zabbix Server架构

zabbix,server · 浏览次数 : 0

小编点评

本文主要介绍了如何设计构建一个高性能、高可靠、高扩展的Zabbix监控集群。文章首先概述了整个架构,包括Zabbix Server、Zabbix Proxy、Pigsty数据库集群和Grafana服务器。接着详细介绍了各个组件的部署和配置,以及如何实现高可用性和负载均衡。最后,文章提供了一些技术细节和优化建议。 1. 文章首先讲解了Zabbix监控集群的整体架构,包括Zabbix Server、Zabbix Proxy、Pigsty数据库集群和Grafana服务器。这些组件之间的关系和作用,以及它们如何协同工作来实现高性能、高可靠和高扩展的监控系统。 2. 文章详细介绍了Zabbix Server的部署和配置,包括安装教程、配置文件详解和性能优化。强调了Zabbix Server与数据库之间的紧密关系,以及选择合适的数据库对于提高Zabbix性能的重要性。 3. 文章介绍了Pigsty时序数据库集群的搭建方法,包括TimescaleDB的选择、集群配置和数据迁移。说明了为什么数据库集群对于Zabbix性能至关重要,并提供了详细的配置步骤。 4. 文章讲述了Grafana服务器的部署和配置,包括安装教程、仪表盘设计和数据可视化。强调了Grafana作为展示Zabbix数据的无状态应用,如何通过多实例和数据库集群实现高可用性和负载均衡。 5. 文章介绍了Uptime Kuma全局运维系统的可用性监控功能,包括对PostgreSQL集群、Zabbix Server、Zabbix Web和Grafana Web的监控。还提到了Uptime Kuma的被动监控和持续访问Kuma的HTTP接口进行监控的能力。 6. 文章提供了一些技术细节和优化建议,包括Linux系统、Zabbix Server、Zabbix Proxy、Pigsty和Uptime Kuma的参数调优。这些优化建议有助于提高整个系统的稳定性和效率。 7. 文章最后提到,技术交流群和微信公众号是获取更多信息和帮助的好渠道。鼓励读者通过邮件或微信公众号与作者联系,以获取更多的技术支持和学习资源。

正文

简介

本教程讲解了一下如何设计构建一个高性能、高可靠、高扩展的Zabbix 监控集群。

架构图

架构图PDF下载: https://songxwn.com/file/Zabbix_HA.pdf

Pigsty 时序数据库集群

Zabbix Server 和 Grafana的数据都是存放在数据库的,而Zabbix性能很大程度取决于数据库。所以要搭建数据库集群,提供性能和冗余性。(数据库最好使用SSD,最好是NVME SSD)

Pigsty 集群搭建教程 https://songxwn.com/Pigsty-PG-RDS/

时序数据库 TimescaleDB

TimescaleDB,这是一种基于PostgreSQL的数据库解决方案,可自动将数据分为基于时间的块,以支持更快的大规模的监控性能。能以更好的性能去删除过期的监控数据和进行实时压缩数据,可节省空间。

Zabbix Server HA

Zabbix 从6.0 开始支持原生的HA故障切换,HA实现需要主备数据连接到同一个数据库实例。(Pigsty PG集群)

HA通过数据库心跳实现,若主Zabbix Server在指定时间内不再写入心跳,则备会自动切换并开始工作。(当Zabbix Server处于备状态时候不会有任何操作。)

Zabbix Web 前端

Zabbix前端是直连数据库,是基于PHP的无状态应用。所以多实例可以同时使用。所以多实例+数据库集群就可以实现高可用。

然后通过Nginx + Keeplive可以实现故障迁移和负载均衡。

Zabbix Server安装教程:https://songxwn.com/zabbix-7-install-TimescaleDB/

Zabbix Proxy Group

Zabbix 从 7.0开始支持 Proxy的故障转移和自动负载均衡,在一个Zabbix Proxy Group 里面添加多个Zabbix Proxy可实现高性能、高可用、高扩展性。

Grafana Server HA

Grafana 主要是来展示Zabbix数据的,也是无状态的。所以通过多实例+数据库集群+Nginx + Keeplive可以实现故障迁移和负载均衡。

Uptime Kuma 全局运维系统可用性监控

Zabbix本身就是一个监控,但监者不能自监。

Uptime kuma是一个简单轻量的监控软件,用于PostgreSQL集群可用性、Zabbix Server TCP、Zabbix Web、Grafana Web监控。

还支持被动监控、让Zabbix 持续访问Kuma 的http接口进行监控Zabbix健康检测。


docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1

参数调优

Linux 系统、Zabbix Server 、Zabbix Proxy 、Pigsty 都需要根据现有硬件进行调整才能稳定高效的允许。此部分会放在之后的实战方面写。

内核调优:https://songxwn.com/Linux-kernel-optimize/

技术交流群

发送邮件到 ➡️ me@songxwn.com

或者关注WX公众号:网工格物

原文

https://songxwn.com/Zabbix-Server-HA/

与构建高可用性、高性能和可扩展的Zabbix Server架构相似的内容:

构建高可用性、高性能和可扩展的Zabbix Server架构

简介 本教程讲解了一下如何设计构建一个高性能、高可靠、高扩展的Zabbix 监控集群。 架构图 架构图PDF下载: https://songxwn.com/file/Zabbix_HA.pdf Pigsty 时序数据库集群 Zabbix Server 和 Grafana的数据都是存放在数据库的,而Z

【618备战巡礼】“三高”之第一高--如何打造高可用系统

我们经常会说互联网“三高”,那什么是三高呢?我们常说的三高,高并发、高可用、高性能,这些技术是构建现代互联网应用程序所必需的。对于京东618备战来说,所有的中台系统服务,无疑都是围绕着三高来展开的。对于一个程序员,或多或少都能说出一些跟三高系统有关的技术点,而我本篇文章的目的,就是帮大家系统的梳理一下三高系统中的第一高:高可用性

PhiData 一款开发AI搜索、agents智能体和工作流应用的AI框架

PhiData以其强大的功能集成和灵活的部署选项,为AI产品开发提供了极大的便利和高效性。它为构建智能AI助手提供了一个全新的视角,让开发者能够探索AI的无限可能。如果你对构建AI产品感兴趣,不妨试试PhiData。

构建高可用云原生应用,如何有效进行流量管理?

摘要:对于那些希望使用华为云的云原生服务的人来说,这篇文章提供了很好的指导,让他们了解如何通过容错来保证他们的服务的可用性和稳定性。 本文分享自华为云社区《构建高可用云原生应用,如何有效进行流量管理?》,作者: breakDawn。 随着云原生的概念越来越火,服务的架构应该如何发展和演进,成为很多程

云小课|基于华为云WAF的日志运维分析,构筑设备安全的城墙

阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说)、深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云。更多精彩内容请单击此处。 摘要:云日志服务用于收集来自主机和云服务的日志数据,通过海量日志数据的分析与处理,可以将云服务和应用程序的可用性和性能最大化

JRC Flink流作业调优指南

Apache Flink 作为 Google Dataflow Model 的工业级实现,经过多年的发展,如今已经成为流式计算开源领域的事实标准。它具有高吞吐、低时延、原生流批一体、高一致性、高可用性、高伸缩性的特征,同时提供丰富的层级化 API、时间窗口、状态化计算等语义,方便用户快速入门实时开发,构建实时计算体系。

集群部署看过来,低代码@AWS智能集群的架构与搭建方案

为了帮助充分利用AWS的托管服务快速构建起一套集群环境,彻底去掉“单一故障点”,实现最高的可用性,我们准备了**《低代码智能集群@AWS的架构与搭建方案》**看完本文,带你掌握“基于nginx配置服务器集群”。 应用场景 如果你需要解决如下的问题,可以考虑搭建一套活字格@AWS智能集群: 保障系统高

构建高可用性的 SQL Server:Docker 容器下的主从同步实现

摘要:本文将介绍如何在 Docker 环境下搭建 MS SQL Server 的主从同步,帮助读者了解主从同步的原理和实现方式,进而提高数据的可靠性和稳定性。 一、前言 在当今信息化的时代,数据的安全性和稳定性显得尤为重要。数据库是许多企业和组织存储和管理数据的核心,因此如何保证数据库的高可用性和数

深入分布式一致性:Raft 和 etcdRaft

分布式一致性是构建可靠的分布式系统的关键要素之一。为了确保数据的一致性和可用性,一致性算法的设计变得至关重要。在这篇博文中,我们将深入探讨两个与分布式一致性密切相关的主题:Raft 算法和 etcdRaft 存储系统。 ## Raft 算法:分布式一致性的基石 Raft 算法是一种分布式一致性算法,

Oracle CloudWorld 2022 - 使用Oracle MAA实现应用程序的连续可用性

每每谈到Oracle MAA,大家条件反射般就会想到Oracle的RAC和ADG等核心选件,当然,这些技术有口皆碑,也的确是MAA的构建基础,但本文我们不再过多谈这些耳熟能详的技术,而是来跟大家探讨下在此基础之上,我们如何将基础MAA优化到业务连续性MAA这个程度,最终实现应用程序的连续可用性。 在