RHCA核心课程技术解析5:红帽高可用性集群架构与深度实践
一、红帽高可用集群架构全景
1.1 核心组件交互逻辑
graph TD
A[节点1] -->|Corosync 心跳| B[节点2]
A -->|Pacemaker 资源管理| C[共享存储]
B --> C
D[Fencing设备] -->|STONITH| A
D -->|STONITH| B
C -->|GFS2锁管理| A
C -->|GFS2锁管理| B
1.2 集群服务层次模型
| 层级 | 组件 | 关键功能 |
|---|---|---|
| 消息层 | Corosync | 节点间心跳与仲裁 |
| 资源层 | Pacemaker | 资源调度与故障转移 |
| 存储层 | GFS2/CLVM | 集群感知文件系统与卷管理 |
| 隔离层 | Fencing Agents | 节点隔离防脑裂 |
二、集群基础环境部署
2.1 网络与存储准备
# 配置冗余网络(节点间)
nmcli con add type team con-name team0 ifname team0 \config '{"runner": {"name": "activebackup"}}'
nmcli con add type team-slave con-name team0-port1 ifname eth1 master team0
nmcli con add type team-slave con-name team0-port2 ifname eth2 master team0# 创建共享LUN(SAN环境)
targetcli /backstores/block create name=shared_lun dev=/dev/sdb
targetcli /iscsi create iqn.2024-08.com.example:ha-cluster
targetcli /iscsi/iqn.2024-08.com.example:ha-cluster/tpg1/luns create /backstores/block/shared_lun
2.2 Pacemaker集群初始化
# 所有节点安装集群组件
yum install -y pcs pacemaker corosync fence-agents-all# 配置集群认证
pcs host auth node1 node2 -u hacluster -p MySecurePass123!# 创建并启动集群
pcs cluster setup --name web_cluster node1 node2
pcs cluster start --all
pcs cluster enable --all
三、高级资源配置与管理
3.1 复合资源定义
# 创建VIP资源
pcs resource create ClusterVIP ocf:heartbeat:IPaddr2 \ip=192.168.1.100 cidr_netmask=24 \op monitor interval=30s# 创建Apache服务资源
pcs resource create WebService systemd:httpd \op start timeout=90s \op stop timeout=100s \op monitor interval=60s# 配置资源组约束
pcs constraint colocation add WebService with ClusterVIP INFINITY
pcs constraint order ClusterVIP then WebService
3.2 GFS2集群文件系统配置
# 创建集群LVM卷
pvcreate /dev/sdb
vgcreate -cy cluster_vg /dev/sdb
lvcreate -L 20G -n web_data cluster_vg# 格式化GFS2文件系统
mkfs.gfs2 -p lock_dlm -j 3 -t web_cluster:web_fs /dev/cluster_vg/web_data# 挂载配置
pcs resource create WebFS Filesystem \device="/dev/cluster_vg/web_data" \directory="/var/www/html" \fstype="gfs2" \--group WebGroup
四、集群监控与故障诊断
4.1实时状态监控命令
# 查看集群整体状态
pcs status --full# 显示资源操作历史
pcs resource history WebService# 跟踪资源迁移过程
crm_mon -frR
4.2 日志分析要点
| 日志文件 | 关键信息 | 分析命令 |
|---|---|---|
| /var/log/cluster/corosync.log | 节点间通信状态 | grep -i "totem" |
| /var/log/pacemaker.log | 资源调度决策记录 | tail -f /var/log/pacemaker.log |
| /var/log/messages | fencing操作记录 | journalctl -u pcsd |
五、实验环境搭建指南
5.1 最小化实验拓扑
graph LR
A[节点1] -->|心跳网络| B[节点2]
A -->|存储网络| C[SAN存储]
B --> C
D[管理PC] -->|SSH| A
D -->|SSH| B
5.2 典型实验场景
-
场景一:Web服务自动故障转移
-
模拟节点故障验证VIP切换
-
测试会话保持机制
-
-
场景二:存储脑裂防护
-
手动触发fencing操作
-
分析GFS2锁日志
-
-
场景三:滚动升级演练
-
不中断服务完成内核升级
-
验证资源组迁移过程
-
欢迎在评论区提交您的集群配置案例或技术疑问!
相关文章:
RHCA核心课程技术解析5:红帽高可用性集群架构与深度实践
一、红帽高可用集群架构全景 1.1 核心组件交互逻辑 graph TD A[节点1] -->|Corosync 心跳| B[节点2] A -->|Pacemaker 资源管理| C[共享存储] B --> C D[Fencing设备] -->|STONITH| A D -->|STONITH| B C -->|GFS2锁管理| A C -->|GFS2锁管理| B 1.2 集…...
Python切片中的步长秘密
Python切片中的步长秘密 大家好!今天我们来聊聊Python切片中一个有趣的话题 - 步长(step)。 基本格式回顾 Python切片的完整格式是: [起点:终点:步长] 但你是否注意到,很多代码里的切片都只写了起点和终点?没错,步长是可以省略的! 步长的默认…...
Spring Boot事务管理详解(附银行转账案例)
一、事务基础概念 事务的ACID特性: 原子性(Atomicity):操作要么全部成功,要么全部失败一致性(Consistency):数据在事务前后保持合法状态隔离性(Isolation)&…...
【超详细教程】2025年3月最新Pytorch安装教程(同时讲解安装CPU和GPU版本)
目录 一、前言二、pytorch简介三、安装准备工作3.1、下载Anaconda 四、判断是否有NVIDIA显卡五、安装pytorch-CPU版本六、安装pytorch-GPU版本6.1、查看CUDA显卡驱动版本6.2、安装CUDA6.3、安装CuDNN(加速器)6.4、安装pytorch-GPU6.5 其他方法安装注意 七…...
Unity光线传播体积(LPV)技术实现详解
一、LPV技术概述 光线传播体积(Light Propagation Volumes)是一种实时全局光照技术,通过将场景中的间接光信息存储在3D网格中,实现动态物体的间接光照效果。 核心优势: 实时性能:相比传统光照贴图,支持动态场景 硬件…...
Git和GitCode使用(从Git安装到上传项目一条龙)
第一步 菜鸟教程-Git教程 点击上方链接,完成Git的安装,并了解Git 工作流程,知道Git 工作区、暂存区和版本库的区别 第二步 GitCode官方帮助文档-SSH 公钥管理 点击上方链接,完成SSH公钥设置 第三步(GitCode的官方引…...
通信之光纤耦合器
以下是关于光纤耦合器的详细介绍: 定义与原理 - 定义:光纤耦合器是一种能使传输中的光信号在特殊结构的耦合区发生耦合,并进行再分配的器件,也叫分歧器、连接器、适配器、光纤法兰盘。 - 原理:利用不同光纤面紧邻光纤芯…...
5G核心网(5GC)开户中,DNN(Data Network Name,数据网络名称)
在5G核心网(5GC)开户中,DNN(Data Network Name,数据网络名称)是关键概念之一,以下是关于它的详细介绍: 定义 DNN是5G网络中用于标识外部数据网络的名称,相当于4G中的APN(Access Point Name),两者功能等价。 组成 DNN由两部分组成: 网络ID(NI):必选,至少包…...
OpenCV、YOLO与大模型的区别与关系
OpenCV、YOLO 和大模型的区别与关系 1. OpenCV(Open Source Computer Vision Library) 定位:开源的计算机视觉基础库。功能:提供传统的图像处理算法(如图像滤波、边缘检测、特征提取)和基础工具ÿ…...
虚拟电商-话费充值业务(二)话费充值对接供应商模块开发
一、对接供应商模块开发 供应商对接模块chongba_recharge_supplier主要负责的就是调用外部的供应商系统进行充值下单,这种调用是一种基于HTTP协议的调用。 此外在供应商对接模块中主要是实现的业务逻辑有: 1:余额或押金不足情况下的失败轮…...
练习题:110
目录 Python题目 题目 题目分析 需求理解 关键知识点 实现思路分析 代码实现 代码解释 函数定义: 计算值的总和: 测试函数: 运行思路 结束语 Python题目 题目 定义一个函数,接受一个字典作为参数,返回字…...
c#winform,倒鸭子字幕效果,typemonkey字幕效果,抖音瀑布流字幕效果
不废话 直接上效果图 C# winform 开发抖音的瀑布流字幕。 也是typemonkey插件字幕效果 或者咱再网上常说的倒鸭子字幕效果 主要功能 1,软件可以自定义添加字幕内容 2,软件可以添加字幕显示的时间区间 3,可以自定义字幕颜色,可以随…...
游戏被外挂攻破?金融数据遭篡改?AI反作弊系统实战方案(代码+详细步骤)
一、背景与需求分析 随着游戏行业与金融领域的数字化进程加速,作弊行为(如游戏外挂、金融数据篡改)日益复杂化。传统基于规则的防御手段已难以应对新型攻击,而AI技术通过动态行为分析、异常检测等能力,为安全领域提供了革命性解决方案。本文以游戏反作弊系统和金融数据安…...
晶晨S905L3A(B)-安卓9.0-开启ADB和ROOT-支持IPTV6-支持外置游戏系统-支持多种无线芯片-支持救砖-完美通刷线刷固件包
晶晨S905L3A(B)-安卓9.0-开启ADB和ROOT-支持IPTV6-支持外置游戏系统-支持多种无线芯片-支持救砖-完美通刷线刷固件包 适用型号:M401A、CM311-1a、CM311-1sa、B863AV3.1-M2、B863AV3.2-M、UNT403A、UNT413A、M411A、E900V22C、E900V22D、IP112H等等晶晨S905L3A(B)处…...
AI来了,新手如何着手学习软件开发?
AI时代新手学习软件开发的7步进化指南 (附具体工具与避坑策略) 一、建立“人机协作”学习观 AI是教练,不是替身 正确姿势:用AI辅助理解概念(如让DeepSeek 、ChatGPT用生活案例解释递归),但坚持手…...
JDK 24 Class File API 介绍
概述 JDK 24 引入的 Class File API 提供了一套类型安全的 API 用于操作 Java 类文件。这套 API 允许我们以编程方式读取、修改和创建 Java 类文件,而不需要直接处理底层的字节码。 注1:JDK 24 已于2025年3月18日正式发布,Release信息参见官…...
C++23:现代C++的模块化革命与零成本抽象新高度
以下代码为伪代码,仅供参考 一、标准库的范式突破 1. std::expected:类型安全的错误处理 std::expected<DataPacket, ErrorCode> parsePacket(ByteStream& stream) {if (stream.header_valid()) return decode_packet(stream);elsereturn s…...
《K230 从熟悉到...》矩形检测
《K230 从熟悉到...》矩形检测 《庐山派 K230 从熟悉到...》矩形检测 矩形检测技术是一种广泛应用于电子图像处理的核心技术。它通过识别和分析图像中的矩形结构,为各种应用提供基础支持。从传统图像处理算法到现代深度学习技术,矩形检测的实现途径多种多…...
Unity 面向对象实战:掌握组件化设计与脚本通信,构建玩家敌人交互
Langchain系列文章目录 01-玩转LangChain:从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块:四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain:从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…...
3. 第三放平台部署deepseek
有时候我们会发现使用deepseek服务器,异常卡顿,这是由于多方面原因造成的,比如说访问人数过多等。想要解决这个问题,我们可以选择第三方平台进行部署 第三方平台 我们可以选择的第三方平台很多,比如硅基流动、秘塔搜索…...
【C++指针】搭建起程序与内存深度交互的桥梁(下)
🔥🔥 个人主页 点击🔥🔥 每文一诗 💪🏼 往者不可谏,来者犹可追——《论语微子篇》 译文:过去的事情已经无法挽回,未来的岁月还可以迎头赶上。 目录 C内存模型 new与…...
.NET开发基础知识1-10
1. 依赖注入(Dependency Injection) 技术知识:依赖注入是一种设计模式,它允许将对象的依赖关系从对象本身中分离出来,通过构造函数、属性或方法参数等方式注入到对象中。这样可以提高代码的可测试性、可维护性和可扩展…...
IEEE PDF Xpress校验出现 :字体无法嵌入问题以及pdf版本问题
文章目录 问题描述一、字体嵌入问题首先查看一下,哪些字体没有被嵌入查看window的font文件夹里的字体下载字体的网站修复字体嵌入问题 二、pdf版本不对 问题描述 在处理IEEE的camera ready的时候,提交到IEEE express的文件没有办法通过validate…...
cookie详解
一、cookie出现原因 http是无状态的,浏览器无法记录当前是哪个人浏览的,所以出现了cookie 作用:会话状态管理(用户登录状态、购物车、游戏分数)、个性化设置(主题、自定义设置)、浏览器行为跟…...
Mayo Clinic Platform在人工智能医疗领域的现状及启示意义研究
一、引言 1.1 研究背景与意义 在科技飞速发展的当下,人工智能(AI)已逐渐渗透至各个行业,医疗领域作为关乎人类生命健康的重要领域,也迎来了人工智能技术带来的深刻变革。人工智能医疗,作为人工智能与医疗行业深度融合的产物,正重塑着全球医疗的格局。 从全球范围来看,…...
Rust基础语法
以下是 Rust 语言基础语法的核心要点,结合与 JavaScript 的对比,帮助前端开发者快速掌握核心概念: 一、变量与常量 1. 变量声明 Rust:变量默认不可变,需用 mut 显式声明可变性。let x 5; // 不可变变量 le…...
如何将 Java 应用做成 EXE 的可执行软件
目录 前言一、情景介绍二、实现步骤1. 打 Jar 包2. 编写 bat 批处理文件3. bat 转 exe 前言 最近使用 GUI 帮朋友写了一个软件,为了方便他处理工作上的重复性且很麻烦的事情,程序是使用 Java 写的,就不得不面对一个问题:我必须将…...
第一篇:系统分析师首篇
目录 一、目标二、计划三、完成情况1.宏观思维导图2.过程中的团队管理和其它方面的思考 四、意外之喜(最少2点)1.计划内的明确认知和思想的提升标志2.计划外的具体事情提升内容和标志 一、目标 通过参加考试,训练学习能力,而非单纯以拿证为目的。 1.在复…...
自动关机监控器软件 - 您的电脑节能助手
## 自动关机监控器 - 您的电脑节能助手 自动关机监控器是一款基于Python开发的实用工具,旨在帮助用户节省电力资源并延长电脑使用寿命。该程序通过监控用户的鼠标和键盘活动,在设定的无活动时间后自动关闭计算机,特别适合需要长时间离开电脑但…...
线程概念与控制(中)
线程概念与控制(上)https://blog.csdn.net/Small_entreprene/article/details/146464905?sharetypeblogdetail&sharerId146464905&sharereferPC&sharesourceSmall_entreprene&sharefrommp_from_link我们经过上一篇的学习,接…...
