Zabbix高可用搭建系列:
一、Zabbix高可用架构
二、编译安装Zabbix
三、实现Zabbix高可用
四、MySQL主主同步与高可用
由于近期公司监控系统出现过单点故障,导致监控服务不可用,所以需要优化一下监控系统,解决单点问题,优化监控项,减少无效告警、重复告警等问题。
架构图
基础环境:采用LAMP(CentOS7.6+Apache+MySQL+PHP)
数据存储:采用MySQL(双主热备)
Zabbix-server:采用双Server
虚拟 IP:采用 KeepAlived 实现VIP
注:这套环境主要解决后端数据库与Zabbix-server的单点问题,保证数据采集入库的可用性。本文给出LAMP环境搭建教程。
实验环境
主机 | IP | VIP | Zabbix | MySQL | Httpd | PHP | KeepAlived |
---|---|---|---|---|---|---|---|
CentOS7.6 | 192.168.164.150 | 192.168.164.100 | 3.4.15(master) | - | 2.4.38 | 7.3.6 | 1.3.5 |
CentOS7.6 | 192.168.164.151 | 192.168.164.100 | 3.4.15(backup) | - | - | - | 1.3.5 |
CentOS7.6 | 192.168.164.152 | 192.168.164.200 | - | 5.7.26(master) | - | - | 1.3.5 |
CentOS7.6 | 192.168.164.153 | 192.168.164.200 | - | 5.7.26(backup) | - | - | 1.3.5 |
注:本实验基础环境,数据库,zabbix-server都是采用编译安装,实验中使用的包都可以官网或各大镜像站点找到。
1.关闭防火墙与SELinux
~]# systemctl stop firewalld #关闭防火墙
~]# systemctl disable firewalld #开机禁用防火墙
~]# sed -i 's/SELINUX=enable/SELINUX=disabled/g' /etc/sysconfig/selinux #关闭SELinux,重启后生效
~]# setenforce 0 #临时关闭SELinux
2.编译安装Httpd
解决依赖:
~]# yum install -y pcre pcre-devel expat-devel gcc #解决依赖
~]# tar xf apr-1.6.5.tar.gz -C /usr/src/ #编译apr,默认包都在家目录
~]# cd /usr/src/apr-1.6.5/
~]# ./configure --prefix=/usr/local/apr
~]# make && make install
~]# tar xf apr-util-1.6.1.tar.gz -C /usr/src/ #编译apr-util
~]# cd /usr/src/apr-util-1.6.1/
~]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
~]# make && make install
编译Httpd:
~]# tar xf httpd-2.4.38.tar.gz -C /usr/src/
~]# cd /usr/src/httpd-2.4.38/
~]# ./configure \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util \
--prefix=/usr/local/apache \
--enable-so \ #启动模块动态卸载
--enable