news 2026/8/22 17:09:31

Linux学习19-moosefs部署与SBD共享磁盘

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux学习19-moosefs部署与SBD共享磁盘

moosefs

简介

MooseFS 是一个分布式网络文件系统

它的核心设计思路是:
Master Server:管理整个集群的元数据(文件名、目录结构、文件分布在哪些 chunkserver上),常驻内存


Chunkserver:实际存储数据块的节点,数据被切分成固定大小的 chunk(默认 64MB),可以设置多个副本分散存储在不同 chunkserver 上


Metalogger:备份 Master 的元数据变更日志,Master 挂了可以用它恢复


Client:通过 FUSE 挂载 MooseFS 到本地目录,像访问普通文件系统一样读写


作用:把多台普通服务器的硬盘"拼"成一个超大容量的统一文件系统,同时提供高可用(多副本)和横向扩展能力

部署

新建四台rocy9虚拟机

四台虚拟机先配置yum源,sever1下载master,sever2下载chunkservers,sever3下载chunkserver和metalogger,sever4下载client

sever1启动master和cgi,sever2启动chunkserver,浏览器访问sever1的9425端口

sever2和sever3创建文件夹,提升权限

浏览器刷新页面

sever4

sever3启动metalogger

sever4上启动副本保护

先在sever1上分配通用标签

重新加载配置

sever4查看

这里如果出现挂载错误,之后虚拟机会无法启动,需要进入单用户模式注释掉新增的磁盘,重新启动

还可以添加标签

出现标签

整理了一份MooseFS常用命令速查手册
https://www.kdocs.cn/l/cpp5bQ7fVghU

与pacemaker高可用结合

新建sever5,作为chunkserver,sever1与sever5做好免密

可参照之前pacemaker的部署进行

sever1与sever5同步执行

先启用高可用仓库

下载

启动服务

写入密码

授权

设置

启动

设置开机自启

查看状态

若出现以下报错

执行该命令

设置策略

配置虚拟ip资源

查看

修改注释,每个sever

sever4新增一块磁盘

重新启动后下载

启动,设置开机自启

进入命令行

用新创建的磁盘创建一个 block backstore

查看

回到sever1,查找iscsi下载包

下载,sever5也需要下载

回到sever4,成功创建了一个 iSCSI Target(目标端),存储服务器现在有了一个对外提供存储服务的"入口"

查看

把刚才准备好的硬盘(my_disk / /dev/sdb)正式绑定(绑定为 LUN 0)

创建ACL指定可访问主机

退出

在sever1上编辑白名单,复制到sever5

重启使白名单生效,发起发现发现请求,返回结果与在sever4上设置的相同

sever5也成功

实现自动故障转移

sever1,挂载

复制文件

停止挂载

将硬盘分区挂载到 MooseFS 的数据存储目录

确保master状态正常

停止服务

停止挂载

sever5下载

启动服务

查看状态正常后关闭服务

创建资源

查看

创建 Pacemaker 资源来管理 MooseFS 的 Master 服务

查看(这里不正确,VIP,mfsdata,mfsmaster应该在同一个sever)

打包为资源组

查看(笔者中间把挂载的硬盘的名字搞错了,重新修改了一下)

SBD 共享磁盘隔离防脑裂

简介

SBD 全称 STONITH Block Device(也叫 STONITH 块设备),是 Linux HA 集群(Pacemaker/Corosync)中实现 Fencing(隔离) 机制的一种手段

Fencing 的作用就是:在接管之前,先把"疑似故障"的节点彻干掉重启或关机,确保停止后才能接管资源

部署

新建磁盘

这里注意需要mfsdata和sbd使用不同的盘

先关闭sever1,sever5,打开windows命令行

查看虚拟机存放目录

切入

新建文件夹(只需sever1)

创建一个1GB的磁盘作为共享

修改文件(sever1,sever5都需要)

末尾添加

虚拟机sever1,5启动

可能会报错,进入单用户模式禁用iscsi开机自启

进入后禁用iscsi,查看磁盘,出现共享

如果sever5没有出现新建的硬盘,直接去虚拟机添加新磁盘,使用已有磁盘

使用新建的磁盘

保存现有格式,添加

重新启动,成功添加

确保集群状态正常(iscsi需要启动才能挂载)

sbd配置

sever1,5安装sbd组件

加载且验证,出现/dev/watchdog即为成功

获取SBD磁盘持久by‑id路径,例如scsi-36000c29xxxxxxx(确保为新建盘的id,下文有查看方式)

仅在其中一个节点执行create初始化SBD头部

校验SBD头部信息,正常会输出header版本、timeout参数

启用 SBD stonith 隔离

pcs 一键配置 fence_sbd

先查看新建的盘的id

手动创建 stonith 资源
pcs stonith create sbd-fence fence_sbd \
devices="/dev/disk/by-id/scsi-36000c29xxxxxxx" \
op monitor interval=30s timeout=20s \
op start timeout=20s \
op stop timeout=20s

查看stonith配置

激活fence

最后重启

测试

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/22 17:03:46

美赛实战解题逻辑链:从题目翻译到代码实现的五维建模方法论

1. 这不是“抄作业指南”,而是一份美赛实战者写给后来人的清醒手记2024年美赛刚结束那会儿,我盯着屏幕右下角跳动的倒计时——还有37分钟交卷,队友在语音里喊:“模型收敛不了!”、“数据预处理卡死!”、“L…

作者头像 李华
网站建设 2026/8/22 16:59:49

免训练AI模型Nori:表格数据缺失值填充与预测实战指南

这次我们来看一个专门处理结构化数据预测的开源项目——Synthefy 推出的 Nori 模型。它不是生成图片或语音的 AI,而是直接帮你预测表格、数据库里那些“缺失值”或“未来值”的工具。简单说,给你一张销售表,它能预测下个月的销售额&#xff1…

作者头像 李华
网站建设 2026/8/22 16:59:08

数学建模国赛零基础冲省二:策略、流程与三天实战指南

1. 项目概述:从“我嘞个豆”到省二奖状“我嘞个豆”,这大概是很多同学第一次点开全国大学生数学建模竞赛(国赛)题目时的真实反应。面对动辄十几页的赛题,充斥着各种看不懂的专业术语、海量的数据和复杂的背景&#xff…

作者头像 李华
网站建设 2026/8/22 16:58:40

3 分钟跑通 NBA 官方数据:nba_api 从查到用全解

3 分钟跑通 NBA 官方数据:nba_api 从查到用全解 【免费下载链接】nba_api An API Client package to access the APIs for NBA.com 项目地址: https://gitcode.com/gh_mirrors/nb/nba_api 你想做 NBA 数据分析,却发现官网没有能直接调用的接口&am…

作者头像 李华
网站建设 2026/8/22 16:57:31

如何用 PyVISA 让 Python 自动操控 GPIB / USB / TCP/IP 测量仪器

如何用 PyVISA 让 Python 自动操控 GPIB / USB / TCP/IP 测量仪器 【免费下载链接】pyvisa A Python package with bindings to the "Virtual Instrument Software Architecture" VISA library, in order to control measurement devices and test equipment via GPI…

作者头像 李华
网站建设 2026/8/22 16:57:00

untrunc:不重新编码修复损坏 MP4/MOV 视频文件

untrunc:不重新编码修复损坏 MP4/MOV 视频文件 【免费下载链接】untrunc Restore a truncated mp4/mov. Improved version of ponchio/untrunc 项目地址: https://gitcode.com/gh_mirrors/un/untrunc 很多 MP4/MOV 文件"播不了",并不等…

作者头像 李华