24.zabbix高可用

环境准备

准备三台机器

主机名字IP地址软件环境
zabbix-server01192.168.111.70httpd+php+keepalived+sshpasszabbix server+agent
zabbix-server02192.168.111.71httpd+php+keepalived+sshpasszabbix server+agent
zabbix-agent192.168.111.80zabbix agent+mysql

VIP规划:192.168.111.72
使用sshpass免密钥交互,也可以做ssh相互免密钥登录
zabbix server的高可用,我试过在agent配置文件中,使用VIP,发现不能正常监控,于是才有本文。

我的做法agent中的配置文件,Server和ServerActive中分别都配置了两个ip,就是为了保证,zabbix-server01宕机了,还可以把监控数据发往zabbix-server02,由于两个zabbix-server共用一个数据库,肯定不能同时往数据库写数据,于是我想到了使用keepalived来控制zabbix server的开关,做到VIP在哪,那台机器的zabbix server就启动,另外一台关闭,而zabbix的web页面使用VIP去访问

本文把zabbix数据库独立出来,为了方便做mysql高可用集群

安装zabbix-server服务

将两台zabbix-server01和zabbix-server02机器上传两个文件"zabbix_rpm.tar.gz",“zabbix.conf.php”,然后两台机器执行如下命令安装部署zabbix服务。

tar xf zabbix_rpm.tar.gz
rpm -Uvh zabbix_rpm/*.rpm
wget http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
rpm -ivh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.11-1.el7.x86_64.rpm
rpm -ivh zabbix-release-4.0-1.el7.noarch.rpm
yum install zabbix-server-mysql zabbix-web-mysql -y
yum install mariadb-server httpd -y
systemctl restart mariadb.service
systemctl restart zabbix-server.service 
systemctl restart httpd.service 
systemctl restart zabbix-agent.service
sed -i 's@# php_value date.timezone Europe/Riga@php_value date.timezone Asia/Shanghai@g' /etc/httpd/conf.d/zabbix.conf
mysql -e "create database zabbix character set utf8 collate utf8_bin;"
mysql -e "grant all privileges on zabbix.* to zabbix@localhost identified by '123456';"
cd /usr/share/doc/zabbix-server-mysql-*/
zcat  create.sql.gz |mysql -uzabbix -p123456 zabbix
sed -i '115a DBPassword=123456' /etc/zabbix/zabbix_server.conf
sed -i '123a DBSocket=/var/lib/mysql/mysql.sock' /etc/zabbix/zabbix_server.conf
cd -
\mv zabbix.conf.php /etc/zabbix/web/  
systemctl restart mariadb.service 
systemctl restart zabbix-server.service 
systemctl restart httpd.service 
systemctl restart zabbix-agent.service
netstat -lntup

数据库备份操作

mysqldump -B zabbix >zabbix.sql

前提agent主机安装完成MySQL之后,在进行测试连接agent主机的mysql

mysql -uzabbix -p123456 -h 192.168.111.80

修改zabbix-server连接数据库的配置文件,注意SourceIP一定要指定到vip地址,不然创建监控主机不成功,因为找不到。

vim /etc/zabbix/zabbix_server.conf
DBHost=192.168.111.80
SourceIP=192.168.111.72

修改web连接数据库配置文件

vim /etc/zabbix/web/zabbix.conf.php
$DB['SERVER']   = '192.168.111.80';

安装keepalived和sshpass服务

在zabbix-server01和zabbix-server02上分别安装keepalived的

yum install -y keepalived sshpass

zabbix-server01配置文件如下

cat /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
router_id LVS_DEVEL 29
}vrrp_instance VI_1 {
state BACKUP
interface ens32
virtual_router_id 51
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.111.72
}
notify_master /opt/to_master.sh
}

创建一个脚本,只允许运行一个zabbix-server服务,通过远程sshpass工具连接,停止远端服务,启动本地服务

cat /opt/to_master.sh
#!/bin/bash
sshpass -p 123456 ssh -o StrictHostKeyChecking=no root@192.168.111.71 "systemctl stop zabbix-server.service"
systemctl restart zabbix-server.service

给to_master.sh脚本加一个执行权限

chmod +x /opt/to_master.sh

zabbix-server02配置文件如下

cat /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
router_id LVS_DEVEL 52
}vrrp_instance VI_1 {
state BACKUP
interface ens32
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.111.72
}
notify_master /opt/to_master.sh
}

创建一个脚本,只允许运行一个zabbix-server服务:通过远程sshpass工具连接,停止远端服务,启动本地服务

cat /opt/to_master.sh
#!/bin/bash
sshpass -p 123456 ssh -o StrictHostKeyChecking=no root@192.168.111.70 "systemctl stop zabbix-server.service"
systemctl restart zabbix-server.service

给to_master.sh脚本加一个执行权限

chmod +x /opt/to_master.sh

将两台zabbix-server01和zabbix-server02均启动keepalived.service服务并设置开机自启动

systemctl start keepalived.service
systemctl enable keepalived.service

开始测试keepalived服务功能,看vip是否切换,当前vip地址在01上
在这里插入图片描述

查看服务zabbix-server运行正常
在这里插入图片描述

访问成功,vip地址192.168.111.72/zabbix
在这里插入图片描述

同时zabbix-server02上的keep服务正常运行,zabbix-server服务未启动
在这里插入图片描述

手动停止zabbix-server01上的keepalived服务,vip已切换,zabbix-server已停止
在这里插入图片描述

查看zabbix-server02的server服务已经启动,还有存在vip地址,验证成功。
在这里插入图片描述

安装数据库zabbix-agent

让zabbix-server01和zabbix-server02两台服务指向zabbix-agent机器的数据

yum install mariadb-server httpd -y
systemctl restart mariadb.service
systemctl enable mariadb.service
scp -rp 192.168.111.70:/root/zabbix.sql .
mysql < zabbix.sql
mysql -e "grant all privileges on zabbix.* to zabbix@'192.168.111.%' identified by '123456';"

安装zabbix-agent服务

下载agent的rpm包
rpm -ivh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.11-1.el7.x86_64.rpm
#修改配置文件指定VIP地址
vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.111.72
#启动agent服务,设置开机自启动
systemctl start zabbix-agent.service 
systemctl enable zabbix-agent.service 

zabbix-server界面创建监控主机

创建监控主机
在这里插入图片描述

配置链接模板
在这里插入图片描述

添加监控主机成功,并且状态正常为绿色
在这里插入图片描述

监控数据,我设置更新数据时间间隔为10秒钟,都是10秒一刷新数据,图中vip切换期间有30秒没有检测。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/13940.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Ai-企业知识库》-讨论、构思01

阿丹&#xff1a; 经过几天的Ai学习&#xff0c;开始对于整个大模型&#xff0c;开始有清晰的认知了。开始准备上手操作&#xff0c;编程自己去写一些东西了。 什么是会话AI? 一个计算机程序&#xff0c;允许人类使用各种输入方法&#xff0c;如语音&#xff0c;文字&#x…

【云原生】K8s管理工具--Kubectl详解(一)

一、陈述式管理 1.1、陈述式资源管理方法 kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口kubectl 是官方的 CLI 命令行工具&#xff0c;用于与 apiserver 进行通信&#xff0c;将用户在命令行输入的命令&#xff0c;组织并转化为apiserver 能识…

Elasticsearch集群和Logstash、Kibana部署

1、 Elasticsearch集群部署 服务器 安装软件主机名IP地址系统版本配置ElasticsearchElk10.3.145.14centos7.5.18042核4GElasticsearchEs110.3.145.56centos7.5.18042核3GElasticsearchEs210.3.145.57centos7.5.18042核3G 软件版本&#xff1a;elasticsearch-7.13.2.tar.gz 示…

【Docker系列】 Docker容器具体信息查询

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Python函数进阶:四大高阶函数、匿名函数、枚举、拉链与递归详解

系列文章目录 Python数据类型&#xff1a;编程新手的必修课深入探索Python字符串&#xff1a;技巧、方法与实战Python 函数基础详解Python正则表达式详解&#xff1a;掌握文本匹配的魔法Python文件操作宝典&#xff1a;一步步教你玩转文件读写Python面向对象基础与魔法方法详解…

databricks~Unity Catalog

Unity Catalog hierarchy 包含了用户授权管理信息和元数据信息 workspace with unity catalog hierarchy unity metastore Ref: https://www.youtube.com/playlist?listPLY-V_O-O7h4fwcHcXgkR_zTLvddvE_GfC

ChatGPT类大模型应用入门了解与使用

一 前言 ChatGPT大众热情逐渐褪去&#xff0c;但在后台技术人的探索还处于热火朝天状态。如果我们生活的世界是一杯清水&#xff0c; 那类似ChatGPT的语言大模型技术的横空出世就如滴入水杯的一滴墨汁&#xff0c;第一滴很显眼&#xff0c;但实际上是后续墨汁慢慢扩散渗透才是…

Windows11下使用Qt5.14.2编译QtXlsx驱动详细步骤

原有&#xff1a;由于系统需要将QTableWidget表格中的数据导出、在Windows下最开始使用Excel.Application组件实现了导出功能&#xff0c;后面将代码转换到Ubuntu20.04下进行编译&#xff0c;发现项目.pro文件中的QT axcontainer和代码.h文件中的#include <QAxObject>跟…

基于图鸟UI的资讯名片模版开发与应用

一、引言 在前端技术日新月异的今天&#xff0c;快速、高效、美观的UI组件库和模板成为了开发者们关注的焦点。图鸟UI作为一款集成了基础布局元素、配色体系、图标icon和精选组件的UI框架&#xff0c;为前端开发者提供了极大的便利。本文将以图鸟UI为基础&#xff0c;探讨基于…

如何让外网访问内网服务?

随着互联网的快速发展&#xff0c;越来越多的企业和个人需要将内网服务暴露给外网用户访问。由于安全和隐私等因素的考虑&#xff0c;直接将内网服务暴露在外网是非常不安全的做法。如何让外网用户安全访问内网服务成为了一个重要的问题。 在这个问题上&#xff0c;天联公司提供…

Lumines推出RGBL彩色混合LED

Luminus Devices倾心打造了一款崭新的4合1 RGBL&#xff08;红绿蓝绿石灰&#xff09;LED系列&#xff0c;专为舞台与建筑照明领域量身打造&#xff0c;满足对高显色指数&#xff08;CRI&#xff09;与高输出颜色混合的苛刻需求。这一创新之举&#xff0c;无疑是照明技术的一次…

使用HiBurn烧录鸿蒙.bin文件到Hi3861开发板

鸿蒙官方文档的“Hi3861开发板第一个示例程序”中描述了——如何使用DevEco Device Tool工具烧录二进制文件到Hi3861开发板&#xff1b; 本文将介绍如何使用HiBurn工具烧录鸿蒙的.bin文件到Hi3861开发板。 获取HiBurn工具 通过鸿蒙官方文档我们知道DevEco Device Tool是一个V…

SAP--ABAP踩坑日志---日期函数的踩坑-----FIMA_DATE_CREATE

当你需要动态生成日期列的时候,出现了奇怪的BUG怎么办? 用函数循环循环产生获取下一个日期,结果出现了5.30 直接到6.1了 …我的5.31呢??? 解决方案:用这个,不要瞎用函数啊! day_col day_col 1.

docker所在磁盘空间不足 迁移数据

1.查看原始目录docker info | grep "Docker Root Dir" 一般在/var/lib/docker 2.停止docker service docekr stop 3.移动数据 注意 移动前不要创建docker目录&#xff01; mv /var/lib/docker /home/docker 4.进入目录查看是否与原始目录相同&#xff0c;确认一…

表现层框架设计之表现层设计模式_2.MVP模式

1.MVP模式 MVP&#xff08;Model-View-Presenter&#xff09;模式提供数据&#xff0c;View负责显示&#xff0c;Controller/Presenter负责逻辑的处理。MVP是从经典的模式MVC演变而来&#xff0c;它们的基本思想有相通的地方&#xff1a;Controller/Presenter负责逻辑的处理&am…

rtemis 包:多种机器学习算法集成!兼顾数据处理与可视化美图

rtemis 是一个集机器学习与可视化于一体的 R 包&#xff0c;用于各种高级机器学习研究和应用。整体而言&#xff0c;该软件有三个目标&#xff1a; 「应用数据科学」&#xff1a;使高级数据分析高效且易于使用 「机器学习研究」&#xff1a;提供一个平台以开发和测试新颖的机器…

谷歌B端独立站建站推广,外贸建站训练营,傻瓜式教学

做外贸方法重要&#xff0c;工具更重要&#xff0c;而这些背后的规则和套路&#xff0c;身边的人往往不会告诉你&#xff0c;成功的人更不会教给你。本套课程主要内容包括&#xff1a;一套体系化的独立站建站方法&#xff0c;学会“高效学习”避免无效努力&#xff0c;拥有独立…

不闭合三维TSP:蛇优化算法SO求解不闭合三维TSP(起点固定,终点不定,可以更改数据集),MATLAB代码

旅行商从城市1出发&#xff0c;终点城市由算法求解而定 部分代码 close all clear clc global data load(data.txt)%导入TSP数据集 Dimsize(data,1)-1;%维度 lb-100;%下界 ub100;%上界 fobjFun;%计算总距离 SearchAgents_no100; % 种群大小&#xff08;可以修改&#xff09; …

k8s node NotReady后会发生什么?

K8s 是一种强大的容器编排和管理平台&#xff0c;能够高效地调度、管理和监控容器化应用程序&#xff1b;其本身使用声明式语义管理着集群内所有资源模型、应用程序、存储、网络等多种资源&#xff0c;Node 本身又属于 K8s 计算资源&#xff0c;上面承载运行着各种类型的应用程…

新零售数据中台:构建零售业高效率、智能化的数据处理平台_光点科技

随着互联网技术的快速发展和移动支付、大数据等技术的广泛应用&#xff0c;零售行业已经逐渐从传统零售向新零售模式转变。在这个变革的时代背景下&#xff0c;新零售数据中台应运而生&#xff0c;它作为零售行业数据资源的整合与智能分析的核心载体&#xff0c;成为推动零售行…