文档章节

A look inside gfs2

认真即可
 认真即可
发布于 2016/06/28 11:24
字数 359
阅读 31
收藏 0

Intro

GFS2 and OCFS2 are 2 cluster filesystems in linux kernel. We also support GFS2, though most of our customers use OCFS2 as we recommend. Last hackweek, from a user perspective, I learned about the difference of usage, features and performance between them. This time, I'd like to look into the design of GFS2 from a developer side.

Goals I want to achieve:
1. Look back a bit history of ocfs2 and gfs2 when they were merged into kernel;
2. Learn about the disk layout of gfs2;
3. Get the idea of how gfs2 manages its meta-data and data;
4. To known the way how gfs2 employs DLM;
5. Get the current status of gfs2 relative packages on SUSE.

History

  • Originally GFS was a research project at the University of Minnesota
  • It came out of work on ocean current simulation
    • Needed to store large amounts of data

    • Needed to allow for simultaneous access from a number of nodes

  • In late 1999/early 2000 Sistina Software took over development of GFS

  • Sistina was acquired by Red Hat in late 2003

  • Steven Whitehouse worked on some of the parts of the original GFS and joined Red Hat in late 2005, took over the work on GFS2 from Ken Preslan, who was the original author of most of the code in GFS

The on­disk format

  • A gap (historical)
  • The superblock
    • Pointers to locations of “root” and the root of the metafs (gfs2)
  • Resource groups (think ext2/3 block groups):
    • A resource group header
    • Bitmaps (two bits per block): Allocated/free, Data/metadata (inode),“Free metadata” state originally unused in gfs2, now used for“unlinked, but still open” inodes
  • The data/metadata blocks
  • Not extent-based filesystem

And …
“The GFS2 Filesystem”:
https://www.kernel.org/doc/ols/2007/ols2007v2-pages-253-260.pdf

Usage of DLM

  • Only support DLM(fs/dlm), while o2cb is a plus for OCFS2
  • DLM lock holder: tracking of the processes, which benefits “hang” problem troubleshooting a lot
  • Lock modes: exclusive, shared and deferred

Reference

[1] http://www.ukuug.org/events/seminars/fab/programme/whitehouse.pdf

 

© 著作权归作者所有

认真即可
粉丝 6
博文 103
码字总数 47780
作品 0
朝阳
程序员
私信 提问
读gfs2官方文档

reading link: https://access.redhat.com/documentation/en-US/RedHatEnterpriseLinux/7/html/GlobalFileSystem2/ch-overview-GFS2.html#s1-ov-newfeatures-GFS2 特点 Red Hat does not sup......

认真即可
2015/12/07
344
0
436挂载gfs2文件系统错误

格式gfs2文件系统: 2. 手动挂载 出现了上面的报错,查看日志 经过分析,是格式化gfs2时集群名字指定错了。 3. 重新指定正确的集群名字(test-cluster),再次格式化 4、再次尝试挂载 成功挂载...

zjycff
2014/10/11
0
0
RHCS图形界面建立GFS共享中

六、安装存储管理管理软件,并导出磁盘 [root@manager ~]# fdisk /dev/xvdc \存储节点挂有磁盘,空间1T [root@manager ~]# yum installscsi-target-utils -y \安装target管理端 [root@manage...

zsaisai
2015/05/28
0
0
CentOS6.6的ClusterHA下的GFS2

GFS有两种缩写,既然是说centos,Google的就不提了。 说的是Redhat 的GFS(Global File System) 其实就是多个机器,共享同一块磁盘,正式应用来说,比如光纤接入,或者iscsi。 在windows下,...

shen_xu
2018/06/29
0
0
RHCS+lvm2,gfs实现ipsan存储方案

简介 RHCS: Redhet集群套件,构建高可用服务器集群 GFS: 集群文件系统,提供多节点文件共享服务 LVM2: 集群文件系统lvm,提供可拓展可维护的文件服务 scsi,iscsi: 存储区域网络,为GFS+LVM2所构建...

My_King1
2014/04/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
16
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
18
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部