簡(jiǎn)介
本教程講解了一下如何設(shè)計(jì)構(gòu)建一個(gè)高性能、高可靠、高擴(kuò)展的Zabbix 監(jiān)控集群。
架構(gòu)圖
架構(gòu)圖PDF下載: https://songxwn.com/file/Zabbix_HA.pdf

Pigsty 時(shí)序數(shù)據(jù)庫(kù)集群
Zabbix Server 和 Grafana的數(shù)據(jù)都是存放在數(shù)據(jù)庫(kù)的,而Zabbix性能很大程度取決于數(shù)據(jù)庫(kù)。所以要搭建數(shù)據(jù)庫(kù)集群,提供性能和冗余性。(數(shù)據(jù)庫(kù)最好使用SSD,最好是NVME SSD)
Pigsty 集群搭建教程 https://songxwn.com/Pigsty-PG-RDS/
時(shí)序數(shù)據(jù)庫(kù) TimescaleDB
TimescaleDB,這是一種基于PostgreSQL的數(shù)據(jù)庫(kù)解決方案,可自動(dòng)將數(shù)據(jù)分為基于時(shí)間的塊,以支持更快的大規(guī)模的監(jiān)控性能。能以更好的性能去刪除過(guò)期的監(jiān)控?cái)?shù)據(jù)和進(jìn)行實(shí)時(shí)壓縮數(shù)據(jù),可節(jié)省空間。
Zabbix Server HA
Zabbix 從6.0 開(kāi)始支持原生的HA故障切換,HA實(shí)現(xiàn)需要主備數(shù)據(jù)連接到同一個(gè)數(shù)據(jù)庫(kù)實(shí)例。(Pigsty PG集群)
HA通過(guò)數(shù)據(jù)庫(kù)心跳實(shí)現(xiàn),若主Zabbix Server在指定時(shí)間內(nèi)不再寫入心跳,則備會(huì)自動(dòng)切換并開(kāi)始工作。(當(dāng)Zabbix Server處于備狀態(tài)時(shí)候不會(huì)有任何操作。)

Zabbix Web 前端
Zabbix前端是直連數(shù)據(jù)庫(kù),是基于PHP的無(wú)狀態(tài)應(yīng)用。所以多實(shí)例可以同時(shí)使用。所以多實(shí)例+數(shù)據(jù)庫(kù)集群就可以實(shí)現(xiàn)高可用。
然后通過(guò)Nginx + Keeplive可以實(shí)現(xiàn)故障遷移和負(fù)載均衡。
Zabbix Server安裝教程:https://songxwn.com/zabbix-7-install-TimescaleDB/
Zabbix Proxy Group
Zabbix 從 7.0開(kāi)始支持 Proxy的故障轉(zhuǎn)移和自動(dòng)負(fù)載均衡,在一個(gè)Zabbix Proxy Group 里面添加多個(gè)Zabbix Proxy可實(shí)現(xiàn)高性能、高可用、高擴(kuò)展性。
Grafana Server HA
Grafana 主要是來(lái)展示Zabbix數(shù)據(jù)的,也是無(wú)狀態(tài)的。所以通過(guò)多實(shí)例+數(shù)據(jù)庫(kù)集群+Nginx + Keeplive可以實(shí)現(xiàn)故障遷移和負(fù)載均衡。
Uptime Kuma 全局運(yùn)維系統(tǒng)可用性監(jiān)控
Zabbix本身就是一個(gè)監(jiān)控,但監(jiān)者不能自監(jiān)。
Uptime kuma是一個(gè)簡(jiǎn)單輕量的監(jiān)控軟件,用于PostgreSQL集群可用性、Zabbix Server TCP、Zabbix Web、Grafana Web監(jiān)控。
還支持被動(dòng)監(jiān)控、讓Zabbix 持續(xù)訪問(wèn)Kuma 的http接口進(jìn)行監(jiān)控Zabbix健康檢測(cè)。
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
參數(shù)調(diào)優(yōu)
Linux 系統(tǒng)、Zabbix Server 、Zabbix Proxy 、Pigsty 都需要根據(jù)現(xiàn)有硬件進(jìn)行調(diào)整才能穩(wěn)定高效的允許。此部分會(huì)放在之后的實(shí)戰(zhàn)方面寫。
內(nèi)核調(diào)優(yōu):https://songxwn.com/Linux-kernel-optimize/
技術(shù)交流群
發(fā)送郵件到 ?? me@songxwn.com
或者關(guān)注WX公眾號(hào):網(wǎng)工格物