MFS故障测试及维护总结
一、测试环境说明:
10.2.2.230 mfsmaster VIP:10.2.2.130
10.2.2.231 mfsbackup
10.2.2.253 mfsdata01
10.2.2.246 mfsdata02
10.2.2.236 mfsdata03
10.2.2.240 mfsdata04
10.2.2.241 mfsclient
二、分别就client、chunker、master的模拟服务器宕机、断网、故障恢复等环境,进行测试并就出现问题的解决办法。
(1)、MFS的client端:
a. client端宕机、断网对MFS的体系不产生影响
b. 杀掉MFS的client服务会产生
df: '/data/mfsdata': Transport endpoint is not connected
处理的方式:
是umount /data/mfsdata,然后再重新挂载就可以了,这种情况是用户MFS客户端出现误杀的情况。
(2)、MFS的chunker端:
a.断网、杀掉MFS的chunker程序对MFS系统无影响。
b. 宕机:
#无文件传输时,对三个chunker都无影响;
#当有文件传输时,但是文件设置存储一份时,对MFS系统无影响。
#当有文件传输,且设置文件存储多份时:
★关掉chunker1之后,如果在chunker1恢复正常之前文件已经传输完毕,那么数据将从chunker2、chunker3同步到chunker1中,并同时自动清除chunker2、chunker3上的部分文件以便达到chunker1、chunker2、chunker3使用容量的基本均衡。
★关掉chunker1之后,如果在 chunker1恢复之后文件尚未传输完毕,那么文件将一方面继续传输一方面从chunker2、chunker3中进行文件的同步到 chunker3,最终达到chunker1、chunker2、chunker3使用容量的基本均衡。
★关掉chunker1之后随即chunker2也挂掉,如果在chunker1、chunker2恢复正常之前文件已经传输完毕,文件数据都会写到chunker3中,之后chunker1、chunker2恢复,那么文件将从chunker3同步到chunker1、chunker2,最终达到chunker1、chunker2、chunker3使用容量的基本均衡。
★关掉chunker1之后随即chunker2也挂掉,如果在chunker1、chunker2恢复正常之后文件尚未传输完毕,文件一部分从chunker3同步到chunker1、chunker2,一部分均匀写到chunker1、chunker2、chunker3中,最终达到chunker1、chunker2、chunker3使用容量的基本均衡。
★关掉chunker1之后随即chunker2、chunker3也挂掉的话就会影响MFS的应用,因为已经没有了可用的chunker服务器了。
综上可知,只要不是三个chunker服务器同时挂掉的话,就不会影响文件的传输,也不会影响服务的使用。
(3)MFS的master端:
前提:实时的对master端数据目录及配置文件目录做备份,推送到其他的备份服务器中。
a. 断网、停掉master服务对MFS系统无影响。
b. 宕机可能会出现以下的情况:
#若服务器宕机后重启恢复,运行/application/mfs/sbin/mfsmaster start恢复master服务。
#若服务器宕机后不能重启恢复,修复的方法有如下几种:
1)搭建新的master环境,保证配置文件路径和宕机的master机器一致,用实时备份的master端数据目录及配置文件目录修复,修复命令:/application/mfs/sbin/mfsmetarestore -a
之后重启master服务就可以了。
2)若有metalogger服务器,把backup提升为主master的操作
可以把实时备份的master端配置文件目录拷贝到metalogger对应的目录下,使用metalogger改变的日志文件修复的命令:mfsmetarestore -m metadata.mfs.back -o metadata.mfs changelog_ml.*.mfs,
之后重启master服务就可以了。
三、MFS集群的维护
最安全的启动MooseFS 集群(避免任何读或写的错误数据或类似的问题)的方式是按照以下命令步骤:
启动mfsmaster 进程
启动所有的mfschunkserver 进程
启动mfsmetalogger 进程(如果配置了mfsmetalogger)
当所有的chunkservers 连接到MooseFS master 后,任何数目的客户端可以利用mfsmount 去挂接export 的文件系统。(可以通过检查master 的日志或是CGI 监视器来查看是否所有的chunkserver被连接)。
停止MFS集群:
安全的停止MooseFS 集群
在所有的客户端卸载MooseFS 文件系统(用umount 命令或者是其它等效的命令)
用mfschunkserver stop 命令停止chunkserver 进程
用mfsmetalogger stop 命令停止metalogger 进程
用mfsmaster stop 命令停止master 进程
四、MFS读写性能:
简单测试结果:
写:
time dd if=/dev/zero of=/data/mfsdata/mfsdata/test500M bs=1M count=500
读:
time dd if=/data/mfsdata/mfsdata/test500M of=/dev/null
|
|
1copy写 |
2copy写 |
1copy读 |
2copy读 |
|
2M |
0m0.139s |
0m0.119s |
0m0.014s |
0m0.055s |
|
5M |
0m0.093s |
0m0.092s |
0m0.014s |
0m0.011s |
|
20M |
0m0.264s |
0m0.313s |
0m0.026s |
0m0.030s |
|
50M |
0m1.312s |
0m0.460s |
0m0.066s |
0m0.056s |
|
200M |
0m2.437s |
0m4.171s |
0m0.165s |
0m0.169s |
|
500M |
0m5.984s |
0m11.511s |
0m3.047s |
0m5.946s |
|
1G |
0m11.875s |
0m26.839s |
0m17.247s |
0m16.223s |
|
2G |
0m55.460s |
0m55.460s |
1m21.784s |
0m55.736s |
总结:读速度:ca 84.3M/s 写速度:ca 39.4M/s 9M/s (以500M计算)
补充:
上面是在mfs的1.x版本上的测试结果,在mfs的2.x版本的测试流程也是一样的,只是修复故障的命令有些更改。更改后的命令操作如下:
前提:实时备份mfsmaster端的配置文件及数据文件最重要。
1)mfsmaster机器数据丢失损坏导致服务器起不来,可以通过如下方式修复:
mfsmaster -a
2)mfsmaster机器数据丢失导致服务起不来时,可以通过如下方式修复:
把mfsmetalogger备节点的数据拷贝到mfsmaster端对应的路径下,
之后在mfsmaster端执行如下命令修复:
mfsmaster -a
3)把mfsmetalogger备机主动提升为mfsmaster角色:
把mfsmaster端备份的配置文件拷贝到mfsmetalogger对应的路径下,执行如下命令提升mfsmetalogger提升为mfsmaster角色:
mfsmaster -a
修复之后要修改mfsmetalogger机器的hosts文件及ip地址,以便mfschunkserver服务器与之通信。
MFS故障测试及维护总结的更多相关文章
- MooseFs-分布式文件系统系列(四)之简单聊聊MFS的日常维护
回顾 文件或目录的额外属性(noower,noattracache和noentrycache),可以通过MFS提供的命令(mfsgeteattr,mfsseteattr,mfsdeleattr等)检查 ...
- MFS学习总结
MFS学习总结 MFS概述.特性和新版改进 MFS 工作原理和设计架构 MFS的安装.部署.配置 MFS的高级特性 MFS的性能测试 MFS集群的维护 MFS的常见问题和建议对策 一.MFS概述.特性 ...
- centos7 MFS drbd keepalived
环境: centos7.3 + moosefs 3.0.97 + drbd84-utils-8.9.8-1 + keepalived-1.2.13-9 工作原理: 架构图: 节点信息: 节点名 ...
- MooseFS技术详解
原文 http://www.tuicool.com/articles/vQvEZ3y MooseFS是一款具有冗余容错功能的分布式文件系统.它把数据分散在多台服务器上,确保一份数据多个备份副本,对外提 ...
- 学习MFS(六)
一.文件系统选型 在一般的生产环境中,NFS共享存储算是比较常用的,简单.方便,但随着业务的不断扩展,数据量也是承爆发式的增长,因而对存储这些数据的文件系统要求也越来越高了,分存式.可扩展.大容量,这 ...
- 构建MFS分布式文件系统
++++++++++++++构建MFS分布式文件系统++++++++++++++PB级别:企业存储空间达到PB级别,即100万GB空间.(1PB=1000TB,1TB=1000GB,1GB=1000M ...
- Centos下MooseFS(MFS)分布式存储共享环境部署记录
分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连,分布式文件系统的实际基于客户机/服务器模式.目前 ...
- Heartbeat+DRBD+MFS高可用
Heartbeat+DRBD+MFS高可用. 前言:MFS系统简介 组件名称及作用 管理服务器(Managing Server) 简称Master Server 这个组件的角色是管理整个mfs文件 ...
- mfs教程(四)
mfs文件系统(四) MooseFS 维护 一.启动MooseFS集群 最安全的启动MooseFS集群(避免任何读或写的错误数据或类似的问题)的方式是按照以下命令步骤: 1.启动mfsmaster进 ...
随机推荐
- JS stringObject.Match()
JavaScript match() 方法 JavaScript String 对象 定义和用法 match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配. 该方法类似 inde ...
- 59.纯 CSS 创作彩虹背景文字
原文地址:https://segmentfault.com/a/1190000015352436 修改后地址:https://scrimba.com/c/cqK3LaTQ 感想: 又一次见识到CSS的 ...
- Git 版本管理使用说明。
1.回滚: git log :查看log日志 commit_id: git reset –-soft <commit_id>:回退到某个版本,只回退了commit的信息,不会恢复到ind ...
- leetcode53
public class Solution { public int MaxSubArray(int[] nums) { int max = int.MinValue; ; ; i < nums ...
- 一些值得收藏的MySQL知识链接
https://yq.aliyun.com/articles/5533(死锁分析的很好的一篇文章) http://hedengcheng.com/?spm=5176.100239.blogcont55 ...
- CDH hue下定时执行hive脚步
今天在看oozie时发现能在hue中执行hive 脚本,主要是hue 和 oozie结合使用,下面介绍下怎么使用的,挺恶心的,哈哈(在这里就不哔哔了) 提交oozie定时作业 1.进入hue界 ...
- Python的基本用法
---恢复内容开始--- 一.函数 1.1 默认参数 想要计算一个数x的n次方,可以定义如下的函数.但是有时候我们仅仅只需要计算x^2,所以只想使用一个参数即power(x),这时如果仍用如下代码会报 ...
- 763. Partition Labels 相同字母出现在同一块中,且块数最多
[抄题]: A string S of lowercase letters is given. We want to partition this string into as many parts ...
- Eclipse设置智能提示
1.解决智能感知提示响应时间,使Eclipse追上VS的响应步伐:Window→Preferences→Java→Editor→Content Assist 这里的Auto activation de ...
- OS history
UNIX的诞生 1965年时,贝尔实验室(Bell Labs)加入一项由奇异电子(General Electric)和麻省理工学院(MIT)合作的计划:该计划要建立一套多使用者.多任务.多层次(m ...