误删Lustre后端文件系统数据的影响
概述
此次演练Lustre文件系统中ldiskfs-osd后端存储上的对象被删除后,Lustre文件系统的表现。核心演练两个场景,一个是MDS中的ldiskfs中的ROOT中文件被删除;另外一个是OST中的文件对象被删除。Lustre MDS通过mount -t ldiskfs /dev/sdb /mnt/mdt挂载后端存储后,此次我们关注ROOT目录,ROOT目录是所有Lustre文件系统客户端看到的统一的posix的视图,在这个目录里操作对应的Lustre内部对象Lustre OST通过类似的方法挂载后端存储,这里我们关注O/0目录,这个目录存储了Lustre文件系统的数据的分片,我们会找到写入文件的分片位置,来操作O/0下面的分片数据。Lustre环境
节点
| IP地址 | 磁盘 | Lustre 版本 |
|---|---|---|---|
Lustre-MGS-MDS | 192.168.28.129 | sdb | 2.15.2 |
Lustre-OST1 | 192.168.28.50 | sdb | 2.15.2 |
Lustre-OST2 | 192.168.28.34 | sdb | 2.15.2 |
Lustre-Client | 192.168.28.189 | sdb | 2.15.2 |
场景模拟
数据准备
// 查看挂载点[root@Lustre-Client ~]$ df -h |grep bigfs192.168.28.129@tcp:/bigfs 251G 2.5M 238G 1% /mnt/bigfs// 创建data1、data2文件[root@Lustre-Client ~]$ cp anaconda-ks.cfg /mnt/bigfs/data1[root@Lustre-Client ~]$ cp anaconda-ks.cfg /mnt/bigfs/data2[root@Lustre-Client /mnt/bigfs]$ ls -ltotal 8-rw-------. 1 root root 1094 Feb 6 17:53 data1-rw-------. 1 root root 1094 Feb 6 17:53 data2// 获取布局信息,lustre默认的选择OST的策略是RR模式,会轮训选择OST进行数据写入// 文件的位于 ost index={obdidx},O/{group}/d{{objid}%32}/{obdidx}文件[root@Lustre-Client ~]$ lfs getstripe -v /mnt/bigfs/*/mnt/bigfs/data1lmm_magic: 0x0BD10BD0lmm_seq: 0x200000401lmm_object_id: 0x1lmm_fid: [0x200000401:0x1:0x0]lmm_stripe_count: 1lmm_stripe_size: 1048576lmm_pattern: raid0lmm_layout_gen: 0lmm_stripe_offset: 2 obdidx objid objid group 2 2 0x2 0/mnt/bigfs/data2lmm_magic: 0x0BD10BD0lmm_seq: 0x200000401lmm_object_id: 0x2lmm_fid: [0x200000401:0x2:0x0]lmm_stripe_count: 1lmm_stripe_size: 1048576lmm_pattern: raid0lmm_layout_gen: 0lmm_stripe_offset: 1 obdidx objid objid group 1 2 0x2 0删除MDS下ROOT目录文件
Lustre客户端数据数据初始化后,可以在MDS后端文件系统挂载后查看ROOT目录,这个目录中文件名称对应的是客户端每个写入文件的文件名称,大小都是0;对于目录大小为4k.在MDS端删除ROOT下面对象后,Lustre客户端是找不到这个文件,也就是这个文件对应的元数据信息在MDS端丢失,但是这些文件对应的OST上的数据分片也会被清理掉删除MDS端ROOT中的目录// 数据初始化后,ROOT目录里的数据和客户端看到的保持一致[root@Lustre-MGS-MDS ~]$ df -h |grep mnt/dev/sdb 73G 5.6M 67G 1% /mnt/mdt[root@Lustre-MGS-MDS ~]$ cd /mnt/mdt/ROOT/[root@Lustre-MGS-MDS /mnt/mdt/ROOT]$ ls -l -1htotal 0-rw-------. 1 root root 0 Feb 6 17:53 data1-rw-------. 1 root root 0 Feb 6 17:53 data2// 删除ROOT下所有的文件,MDS端未做sync [root@Lustre-MGS-MDS ~]$ rm -rf /mnt/mdt/ROOT/*[root@Lustre-MGS-MDS ~]$ ls -l /mnt/mdt/ROOT/total 0// 客户端缓存依旧可以看到[root@Lustre-Client ~]$ ls -l /mnt/bigfs/total 8-rw-------. 1 root root 1094 Feb 6 17:53 data1-rw-------. 1 root root 1094 Feb 6 17:53 data2// mds端执行sync操作[root@Lustre-MGS-MDS ~]$ cd /mnt/mdt/ROOT/[root@Lustre-MGS-MDS /mnt/mdt/ROOT]$ sync// mds端sync后,客户端显示data1和data2不存在;但是仅仅是这2个文件受影响。[root@Lustre-Client /mnt/bigfs]$ ls -lls: cannot access "data2": No such file or directoryls: cannot access "data1": No such file or directorytotal 0-????????? ? ? ? ? ? data1-????????? ? ? ? ? ? data2[root@Lustre-Client /mnt/bigfs]$ cat data1cat: data1: No such file or directory[root@Lustre-Client /mnt/bigfs]$ cat data2cat: data2: No such file or directory// 客户端重新挂载后,MDS的ROOT目录中删除的对象已经在客户端消失[root@Lustre-Client ~]$ umount /mnt/bigfs [root@Lustre-Client ~]$ mount -t lustre Lustre-MGS-MDS@tcp0:/bigfs /mnt/bigfs[root@Lustre-Client ~]$ cd /mnt/bigfs/[root@Lustre-Client /mnt/bigfs]$ ls -ltotal 0// MDS端删除ROOT下目录后,对应的OST上的数据也会被清除,OST1上已经找不到data1这个文件的数据了[root@Lustre-OST1 ~]$ cd /mnt/ost1/O/0[root@Lustre-OST1 /mnt/ost1/O/0]$ lsd0 d1 d10 d11 d12 d13 d14 d15 d16 d17 d18 d19 d2 d20 d21 d22 d23 d24 d25 d26 d27 d28 d29 d3 d30 d31 d4 d5 d6 d7 d8 d9 LAST_ID[root@Lustre-OST1 /mnt/ost1/O/0]$ cd d2[root@Lustre-OST1 /mnt/ost1/O/0/d2]$ ls[root@Lustre-OST1 /mnt/ost1/O/0/d2]$ ls -l total 0// OST2上已经也找不到data2这个文件数据了[root@Lustre-OST2 ~]$ cd /mnt/ost2/O/0[root@Lustre-OST2 /mnt/ost2/O/0]$ cd d2[root@Lustre-OST2 /mnt/ost2/O/0/d2]$ ls[root@Lustre-OST2 /mnt/ost2/O/0/d2]$ ls -l -1htotal 0[root@Lustre-OST2 /mnt/ost2/O/0/d2]$删除OST下O/0数据分片
OST上的文件对应的数据分片删除后,Lustre客户端访问这些文件的元数据都不存在任何的问题,但是访问OST上的实际数据就会进程卡主的问题但是不会影响到整个文件系统的使用,针对这种情况就需要定期备份磁盘或者基于Lustre Changelog写个客户端的服务消费数据变化来备份数据。// 客户端写入两个文件demo1和demo2[root@Lustre-Client ~]$ cp anaconda-ks.cfg /mnt/bigfs/demo1.txt[root@Lustre-Client ~]$ cp anaconda-ks.cfg /mnt/bigfs/demo2.txt[root@Lustre-Client ~]$ cd /mnt/bigfs/// 发起sync命令同步元数据和数据到mds和ost[root@Lustre-Client /mnt/bigfs]$ sync// 查看demo1和demo2的布局[root@Lustre-Client /mnt/bigfs]$ lfs getstripe -v ./(Default) ./lmm_fid: [0x200000007:0x1:0x0]stripe_count: 1 stripe_size: 1048576 pattern: 0 stripe_offset: -1.//demo2.txtlmm_magic: 0x0BD10BD0lmm_seq: 0x200000403lmm_object_id: 0x2lmm_fid: [0x200000403:0x2:0x0]lmm_stripe_count: 1lmm_stripe_size: 1048576lmm_pattern: raid0lmm_layout_gen: 0lmm_stripe_offset: 2 obdidx objid objid group 2 4 0x4 0.//demo1.txtlmm_magic: 0x0BD10BD0lmm_seq: 0x200000403lmm_object_id: 0x1lmm_fid: [0x200000403:0x1:0x0]lmm_stripe_count: 1lmm_stripe_size: 1048576lmm_pattern: raid0lmm_layout_gen: 0lmm_stripe_offset: 1 obdidx objid objid group 1 3 0x3 0// 查看ost2上的demo2.txt数据[root@Lustre-OST2 ~]$ cd /mnt/ost2/O/0/d4[root@Lustre-OST2 /mnt/ost2/O/0/d4]$ ls4[root@Lustre-OST2 /mnt/ost2/O/0/d4]$ cat 4#version=RHEL8# Use graphical installgraphical/*********忽略剩余内容显示*****/// 删除这个文件对象,但是MDS端的依旧存在[root@Lustre-OST2 /mnt/ost2/O/0/d4]$ rm -rf 4[root@Lustre-OST2 /mnt/ost2/O/0/d4]$ sync// 客户端清除pagecache[root@Lustre-Client /mnt/bigfs]$ echo 1 > /proc/sys/vm/drop_caches[root@Lustre-Client /mnt/bigfs]$ sync// 查看demo2.txt的元数据依旧就可以正常访问[root@Lustre-Client /mnt/bigfs]$ stat demo2.txt File: demo2.txt Size: 1094 Blocks: 8 IO Block: 4194304 regular fileDevice: a51ef1a0h/2770268576d Inode: 144115205306056706 Links: 1Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)Context: unconfined_u:object_r:unlabeled_t:s0Access: 2023-02-06 18:31:41.000000000 -0500Modify: 2023-02-06 18:24:07.000000000 -0500Change: 2023-02-06 18:24:07.000000000 -0500 Birth: 2023-02-06 18:24:07.000000000 -0500[root@Lustre-Client /mnt/bigfs]$ ls -l demo2.txt -rw-------. 1 root root 1094 Feb 6 18:24 demo2.txt// 访问demo2.txt直接卡主[root@Lustre-Client /mnt/bigfs]$ cat demo2.txt ^C// 查看进程后通过kill是无法停止,这个卡主仅仅是影响单个文件的数据读取,并不影响整个客户端的情况[root@Lustre-Client /mnt/bigfs]$ ps -ef|grep catroot 2041 1746 0 18:31 pts/1 00:00:00 cat demo2.txtroot 2065 1476 0 18:35 pts/0 00:00:00 grep --color=auto cat[root@Lustre-Client /mnt/bigfs]$ kill -9 2041[root@Lustre-Client /mnt/bigfs]$ ps -ef|grep catroot 2041 1746 0 18:31 pts/1 00:00:00 cat demo2.txtroot 2067 1476 0 18:35 pts/0 00:00:00 grep --color=auto cat思考
如果MDS对应的后端存储已经把inode占满导致MDS不可用,如何进行恢复?如果OST上的文件的数据分片所消耗的inode资源超过系统最大限制,导致OST不可用如何进行恢复?
标签: Unix
推荐文章
- 误删Lustre后端文件系统数据的影响
- 环球焦点!小米米家空调清凉版(大一匹)今晚开售,1699元
- L.O.M.S中学联盟-新资讯
- Tecno和TCL共同为Phantom V Fold可折叠手机开发灵活的120Hz显示屏
- 世界银行:强震造成土耳其342亿美元直接损失,相当于该国GDP的4%|全球最新
- 世界热点!氟化工,谁是盈利最强企业?
- 全球速看:Pars
- 16岁锋线小妖官宣加盟曼联!1月已定转会,英意血统却选择威尔士|要闻速递
- 全球观察:巧口如簧_巧口
- STRETAG
- 以拆开路 精雕细琢“绣”出城市“新颜值”
- 历史第一!梅西七度当选世界足球先生! 全球速递
- 焦点信息:网购吹风机 20秒冒烟40秒起火
- 当前关注:一二 珍藏升级版
- 河北电视台少儿科教频道直播在线观看回放_邯郸科教频道回放
- 寡妇打野技能_lol寡妇神级打野大型攻略|全球新要闻
- 环球速看:野鸽子和家鸽的区别_野鸽子
- LOL:LPL春季赛第六周“最”数据,RNG辅助Ming斩获最高KDA 59
- 微信换手机后怎么恢复聊天记录_微信换手机以后怎么恢复聊天记录_全球播资讯
- 当前动态:专项储备账务处理_专项储备
- 上八角村_时快讯
- 一把手访谈丨杨世昌:锚定“文化高地样板区”建设目标 擦亮云岩文旅“名片”
- 五家渠新型冠状病毒肺炎疫情:2月27日五家渠疫情最新消息今天数据统计情况通报|全球观热点
- 超燃!中俄国际冰雪汽车挑战赛开赛 焦点关注
- 美容职业培训
- 【环球速看料】魔兽世界90-100级升级攻略_魔兽世界90级如何进入新版本
- 热文:杏仁体的功能_杏仁体
- 不要逃避|世界最资讯
- 土耳其扩大震区建筑倒塌调查 已逮捕184人
- “支持一切有利于和平解决危机的努力”
- 每日资讯:东台西溪巡检司
- 【环球新要闻】北京金融监督管理局副局长王颖:将大力支持数字化财富管理创新
- 【环球速看料】三城同创
- 酸雨形成的原因是_酸雨形成的原因
- 默森:马丁内利打进亨利式进球,阿森纳拿到了重要的3分
- 中国农村金融改革的探索之路
- 【全球新要闻】罗马诺:皇马等众多球会关注克瓦拉茨赫利亚,那不勒斯无意放人
- 观察:小学一年级上册数学教案_小学三年级数学教案
- 环球热点!电影画皮2演员表_电影画皮2简介
- 全球即时看!中国电子商务协会三农服务办公室
- 秋裤先别着急脱!“春捂”到底该“捂”哪儿?-环球百事通
- 微速讯:等你来!中宣部直属单位、北京中小学等一大批招聘信息汇总
- 天天短讯!史兰芽个人资料
- 全面注册制下 湖南8项举措推进“金芙蓉”跃升行动-全球看点
- 临县统计局
- 路由器不小心恢复出厂设置怎么办_路由器重置怎么弄-热议
- 美国今年已有6000多人死于枪支暴力 超200名未成年人遇难-全球实时
- 天天热文:神兵前传2
- 粉丝团名称网名_粉丝团名字大全-热点聚焦
- 整个90年代农村穷不是工农业剪刀差,而是农村刚需太大,无法形成资本积累_全球聚看点
- 日本央行行长候选人植田和男:当前大规模宽松政策是必要且适当的
- 极地雪犬
- 世界观丨战火后的真相
- 房屋知识科普:恒大名都4期房产证什么时候能办理谁知道呢|天天观天下
最新资讯
- 云帽峰-世界快播报
- 哮喘七种食物碰不得_变异性哮喘能治好吗
- 2月24日河北正元液氨报价调涨_全球今头条
- 新动态:2022年深圳工伤赔偿缴费比例及对象
- 8楼上下的楼层都属于中等高度的楼层 新视野
- 梦幻CG插画大师的十堂创意表现课
- 空中灌篮如何在安卓系统的平板电脑上下载_空中灌篮如何在安卓系统的平板电脑上下载应用
- 2022年前海综保区外贸超2000亿 同比增长48.8%_当前热文
- 环球精选!董卿老公密春雷被限制高消费_摊上啥事了?
- 12批次背提包不合格!涉“卡帕”“七星狐”“包百意”等品牌
- 环球今日报丨社保缴费基数是多少?员工医保怎么补缴?部门回复
- 当前快报:杭州:多地赛艇队队员聚集千岛湖 进行赛艇训练备战亚运会
- 跨国企业在中国|欧莱雅:科技赋能美妆 期待更多创新火花的碰撞
- 五峰土家族自治县气象台发布大雾黄色预警【III级/较重】【2023-02-23】-环球最资讯
- 三国野史,论三国野史,还得看曹操怎么发挥
- battlefield 1是什么游戏_battlefield bundle
- 永恒岛手游:强化升级与生活系统,总有一点你要了解 天天新动态
- 具俊晔公开无犯罪记录证明 大S称将以法律维权|全球短讯
- 48只个股突破半年线|世界观速讯
- 资讯推荐:2月21日中国汽、柴油平均批发价格分别为8967、8055元/吨
- 两岸“小三通”4条客运航线全部复航_世界关注
- 每日速看!养鸡业成湘潭县双红村支柱产业
- 若能拥抱我_关于若能拥抱我的简介|世界快播报
- 有关成长的作文开头_有关成长的作文
- 角质是什么东西?_头上角质是什么东西_每日速递
- 祭城路街道开展“益起行动 与爱同行”便民服务进社区活动 热点在线
- 御幸笃|世界微速讯
- 临安全民购房补贴怎么领?
- intel_r hd graphics family多少钱_intel_r hd graphics family 热点评
- 全球观热点:对标拼多多?京东将升级百亿补贴为一级入口
- 爷爷家的年味_环球快报
- 豫科光学拟以549.5880万(含税价格)购买位于郑州市航空港经济综合实验区智慧电子产业园1套办公室
- 故事大观_关于故事大观简介
- 初春·南沙见闻录|中邮信源高延迪:供应链和市场就在身边,看见一片热土
- 【环球热闻】2.20收评|先看看市场动静!
- 异动快报:小商品城(600415)2月20日13点8分触及涨停板|天天动态
- 厦门忠仑公园紫罗兰花海观赏指南(入口+交通)
- 西藏:搬迁群众欢度“古突”之夜 环球微动态
- 媒体关注职场“背奶妈妈”群体:工作场所母婴室配备严重不足 焦点简讯
- 不要辜负自己的人生句子_别辜负自己的句子示例 每日热讯
- 传奇1.85服务端_求正版的传奇1.76服务端
- 环球微动态丨已查实!清华大学通报
- 世界速讯:金龙汽车:2022年年客车累计销量46172辆,同比下降8.93%
- 电脑病毒的种类和危害_电脑病毒的危害有哪些
- 易车早报:丰田氢燃料电池车在广州运营/北汽与广汽合建超充|动态焦点
- 儿童剧《甪端》让故宫文物“活”起来-环球快看点
- 2023.2.18期全服纪录榜
- 草莓是最脏水果?别怕,科学清洗方法来啦|简讯
- 七十年编程语言发展漫谈-速看
- 美国白宫17日发布消息称,应俄亥俄州州长请求,美国卫生与公众服务部和疾控中心正在部署一支由医务人员和毒理学家组成的团队,对该州火车脱轨造成的有毒化学品泄漏开展公共卫生检测和评估 当前资讯

(资料图)



