RH4367 GFS文件系统.docx

上传人:b****8 文档编号:23608457 上传时间:2023-05-19 格式:DOCX 页数:23 大小:22.66KB
下载 相关 举报
RH4367 GFS文件系统.docx_第1页
第1页 / 共23页
RH4367 GFS文件系统.docx_第2页
第2页 / 共23页
RH4367 GFS文件系统.docx_第3页
第3页 / 共23页
RH4367 GFS文件系统.docx_第4页
第4页 / 共23页
RH4367 GFS文件系统.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

RH4367 GFS文件系统.docx

《RH4367 GFS文件系统.docx》由会员分享,可在线阅读,更多相关《RH4367 GFS文件系统.docx(23页珍藏版)》请在冰豆网上搜索。

RH4367 GFS文件系统.docx

RH4367GFS文件系统

 gfs文件系统

一、GFS技术特征

●主要应用于大文件和文件系统 

●支持最大300个节点 

●支持CLVM,实现卷管理 

●支持多种锁管理机制 

●每个节点都具有数据和元数据日志 

●支持x86/EM64T/AMD64/IA64 

●POSIX兼容 

●在线文件系统管理可以动态扩充可以动态调整inodes 

●完全的读/写缓存 

●直接I/O能力 

●CDPN支持(ContextDependentPathNames) 

●支持磁盘配额 

●ACL支持 

●连贯的共享mmap()支持 

●避免中心数据结构存储 

●支持SAN/GNBD/ISCSI

锁管理器

GFS支持三种锁管理机制DLM、GULM、nolock。

DLM是默认最优的锁管理器。

●DLM锁管理器

DLM(DistributedLockManager)是最优的锁管理器,它避免了GULM锁管理方式中必须提供GULM锁管理服务器的缺点,不再需要设定锁管理服务器,而是采用对等的锁管理方式,大大提供处理性能,DLM避免了当单个节点失败需要整个恢复的性能瓶颈,DLM的请求是本地的,不需要网络请求,立即生效,通锁分层机制,DLM实现多个锁空间,并行锁模式。

●GULM锁管理器

GULM是GFS6.1以前的锁管理器,它必须要设置一个锁管理服务器,是一种client/Server的锁管理方式,显示易见,所有的锁请求必须要与锁管理服务器通讯。

而且当节点增大的一定数量的时候,可能会出现磁盘的交换,降低了整个GFS系统的性能。

●nolock锁管理器nolock实际并不是一个集群管理锁机制,它只能用于单个节点的GFS系统。

一般用来测试和实验用。

 

二、配置lvm,开启gf支持

[root@node1~]#lvmconf--enable-cluster

 

[root@node1~]#cat/etc/lvm/lvm.conf|greplocking_type

 locking_type=3

 #NB.Thisoptiononlyaffectslocking_type=1viz.localfile-based

 #Theexternallockinglibrarytoloadiflocking_typeissetto2.

 #开启分布式lvm服务以支持gfs选项,locking_type=3,可手动修改/etc/lvm/lvm.conf,所有节点都需修改。

 

[root@node1~]#pvcreate/dev/sdd

 Physicalvolume"/dev/sdd"successfullycreated

 

[root@node1~]#vgcreatevg01/dev/sdd

 Clusteredvolumegroup"vg01"successfullycreated

 

[root@node1~]#lvcreate-L1024-nlv01vg01

 Logicalvolume"lv01"created

 

[root@node1~]#lvs

 LV VG Attr LSize OriginSnap% MoveLogCopy% Convert

 lv00vg00-wi-ao49.97G                   

 lv01vg01-wi-a- 1.00G 

 

三、gfs组件安装

[root@node1~]#yumlist|grepgfs

ThissystemisnotregisteredwithRHN.

RHNsupportwillbedisabled.

gfs-utils.i386             0.1.20-7.el5     installed    

gfs2-utils.i386            0.1.62-20.el5     installed    

kmod-gfs.i686             0.1.34-12.el5     installed    

kmod-gfs-PAE.i686           0.1.34-12.el5     ClusterStorage_32

kmod-gfs-xen.i686           0.1.34-12.el5     ClusterStorage_32

 

[root@node1~]#uname-a

Linuxnode12.6.18-194.el5PAE#1SMPTueMar1622:

00:

21EDT2010i686i686i386GNU/Linux

 

[root@node1~]#yuminstallkmod-gfs-PAE.i686 

#kmod-gfs必须与系统kernel版本相对应

 

[root@node1~]#lsmod|grepgfs

gfs2         349833 1lock_dlm

configfs       28753 2dlm

#查看内核是否加载gfs模块

 

[root@node1~]#servicegfsstart

 

[root@node1~]#serviceclvmdstart #开启分布式lvm服务以支持gfs

ActivatingVGs:

 1logicalvolume(s)involumegroup"vg01"nowactive

 1logicalvolume(s)involumegroup"vg00"nowactive

                              [确定]

[root@node1~]#chkconfigclvmdon

 

[root@node1~]#chkconfiggfson

 

 

四、创建gfs文件系统

1、创建gfs文件系统所需信息(Requiredinformation):

Lockmanagertype

  lock_nolock:

用于单机支持gfs

  lock_dlm  :

多节点集群

Lockfilename

  cluster_name:

fs_name:

指定集群名

Numberofjournals

  OneperclusternodeaccessingtheGFSisrequired

  Extrasareusefultohavepreparedinadvance

Sizeofjournals

Filesystemblocksize

 

2、格式:

gfs_mkfs-pLockProtoName-tLockTableName-jNumberBlockDevice

[root@node1~]#gfs_mkfs-b4096-j4-plock_dlm-tcluster8:

gfslv01/dev/vg01/lv01 

Thiswilldestroyanydataon/dev/vg01/lv01.

Areyousureyouwanttoproceed?

[y/n]y

Device:

          /dev/vg01/lv01

Blocksize:

        4096

FilesystemSize:

     131028

Journals:

         4

ResourceGroups:

     8

LockingProtocol:

     lock_dlm

LockTable:

        cluster8:

gfslv01

Syncing...

AllDone

 

#-j:

指定日志区数量,大于等于节点数,一般为:

nodes+1

#-p:

指定lock协议,单机可用lock_nolock,lock_nolock多用cluster故障单机加载gfs文件系统

#-t:

指定支持的集群名和文件系统名

 

五、gfs文件系统的挂载

1、可挂载gfs文件系统节点的必要条件

  节点必须是gfs所在cluster的一个节点,须防止非gfs所在cluster节点挂载gfs文件系统

  检查挂载节点的cluster是否就是gfs的cluter,可以查看gfs的superblock内容

[root@node1~]#gfs_tooldf/var/www/html

/var/www/html:

 SBlockproto="lock_dlm"

 SBlocktable="cluster8:

gfslv01"  #gfs所属cluster

 SBondiskformat=1309

 SBmultihostformat=1401

 Blocksize=4096

 Journals=4

 ResourceGroups=14

 Mountedlockproto="lock_dlm"

 Mountedlocktable="cluster8:

gfslv01"

 Mountedhostdata="jid=1:

id=196611:

first=0"

 Journalnumber=1

 Lockmoduleflags=0

 Localflocks=FALSE

 Localcaching=FALSE

 OopsesOK=FALSE

 

 Type     TotalBlocks UsedBlocks  FreeBlocks  use%      

 ------------------------------------------------------------------------

 inodes    5       5       0       100%

 metadata   192      0       192      0%

 data     1441471    0       1441471    0%

 

2、mount选项

格式:

mount-oStdMountOpts,GFSOptions-tgfsDeviceMountpoint

#支持标准选项和gfs特定选项

lockproto=[lock_dlm,lock_nolock]:

锁机制,lock_dlm用于cluster,lock_nolock用于单机

locktable=clustername:

fsname  :

cluster和文件系统名

upgrade            :

提升,多用新gfs版本挂载

acl              :

开启访问控制列表

[root@node1~]#mount-olockproto=lock_dlm/dev/vg01/lv01/var/www/html

[root@node1~]#df-h

文件系统       容量 已用可用 已用% 挂载点

/dev/mapper/vg00-lv00 49G 2.9G 44G  7% /

/dev/sda1       251M 23M 216M 10% /boot

tmpfs         2.0G  0 2.0G 0% /dev/shm

/dev/mapper/vg01-lv01 5.5G 24K 5.5G 1% /var/www/html

 

[root@node1~]#umount/var/www/html #卸载文件系统

 

六、Journals日志管理

1、查看superblock信息

[root@node1~]#gfs_tooldf/var/www/html

/var/www/html:

 SBlockproto="lock_dlm"     #锁机制

 SBlocktable="cluster8:

gfslv01" #cluster

 SBondiskformat=1309

 SBmultihostformat=1401

 Blocksize=4096          #块大小,gfs_mkfs-b指定块大小

 Journals=4            #日志数量

 ResourceGroups=14

 Mountedlockproto="lock_dlm"

 Mountedlocktable="cluster8:

gfslv01"

 Mountedhostdata="jid=2:

id=196611:

first=0"

 Journalnumber=2

 Lockmoduleflags=0

 Localflocks=FALSE

 Localcaching=FALSE

 OopsesOK=FALSE

 

 Type     TotalBlocks UsedBlocks  FreeBlocks  use%      

 ------------------------------------------------------------------------

 inodes    5       5       0       100%

 metadata   192      0       192      0%

 data     1441471    0       1441471    0%

 

2、检查日志数量

[root@node1~]#gfs_tooljindex/var/www/html|grepJournal

Journal0:

Journal1:

Journal2:

Journal3:

 

3、增加日志数量

要求:

lv有足够的空间支持日志数量的增加

   必须在拉升gfs文件系统前前增加日志数量

[root@node1~]#gfs_jadd-Tv-j2/var/www/html #增加日志数前测试,确保磁盘空间足够

Requestedsize(65536blocks)greaterthanavailablespace(0blocks)

 

[root@node1~]#gfs_jadd -j2/var/www/html   #增加2个日志

Requestedsize(65536blocks)greaterthanavailablespace(0blocks)

 

七、GFS系统的扩展

1、扩展逻辑卷

[root@node1~]#pvcreate/dev/sde

 Physicalvolume"/dev/sde"successfullycreated

 

[root@node1~]#vgextendvg01/dev/sde

 Volumegroup"vg01"successfullyextended

 

[root@node1~]#lvextend-L+5120M/dev/vg01/lv01 #扩展逻辑卷

 Extendinglogicalvolumelv01to6.00GB

 Logicalvolumelv01successfullyresized

 

2、扩展gfs(gfs_grow-vDevice|Mount_point)

[root@node1~]#gfs_grow-v/dev/vg01/lv01 #扩展gfs

FS:

MountPoint:

/var/www/html

FS:

Device:

/dev/mapper/vg01-lv01

FS:

Options:

rw,hostdata=jid=1:

id=196611:

first=0

FS:

Size:

262142

RGRP:

CurrentResourceGroupList:

RI:

Addr245760,RgLen2,Start245762,DataLen16380,BmapLen4095

RI:

Addr229376,RgLen2,Start229378,DataLen16380,BmapLen4095

RI:

Addr212992,RgLen2,Start212994,DataLen16380,BmapLen4095

RI:

Addr196608,RgLen2,Start196610,DataLen16380,BmapLen4095

RI:

Addr49157,RgLen2,Start49159,DataLen16376,BmapLen4094

RI:

Addr32778,RgLen2,Start32780,DataLen16376,BmapLen4094

RI:

Addr16399,RgLen2,Start16401,DataLen16376,BmapLen4094

RI:

Addr17,RgLen2,Start19,DataLen16380,BmapLen4095

RGRP:

8Resourcegroupsintotal

JRNL:

CurrentJournalList:

JI:

Addr163840NumSeg2048SegSize16

JI:

Addr131072NumSeg2048SegSize16

JI:

Addr98304NumSeg2048SegSize16

JI:

Addr65536NumSeg2048SegSize16

JRNL:

4Journalsintotal

DEV:

Size:

1572864

RGRP:

NewResourceGroupList:

RI:

Addr262142,RgLen6,Start262148,DataLen91120,BmapLen22780

RI:

Addr353269,RgLen15,Start353284,DataLen243904,BmapLen60976

RI:

Addr597188,RgLen15,Start597203,DataLen243904,BmapLen60976

RI:

Addr841107,RgLen15,Start841122,DataLen243904,BmapLen60976

RI:

Addr1085026,RgLen15,Start1085041,DataLen243904,BmapLen60976

RI:

Addr1328945,RgLen15,Start1328960,DataLen243904,BmapLen60976

RGRP:

6Resourcegroupsintotal

PreparingtowritenewFSinformation...

Done.

 

[root@node1~]#df-h

文件系统       容量 已用可用已用%挂载点

/dev/mapper/vg00-lv00

            49G 2.9G 44G 7%/

/dev/sda1      251M 23M 216M 10%/boot

tmpfs        2.0G  0 2.0G 0%/dev/shm

/dev/mapper/vg01-lv01

           5.5G 20K 5.5G 1%/var/www/html

 

八、gfs文件系统inode节点的动态分配

1、GFS有inode节点空间自动分配的能力(就是说不用为inode预先分配磁盘空间,GFS自己会去动态分配);

 

2、GFS的inode有4K(默认)一个块那么大(普通的fs在2K左右),为了增进效率,如果文件内容足够小,会被直接存放在inode内;

 

3、手动回收无用的inode所占空间:

gfs_toolreclaim

[root@node1~]# gfs_toolreclaim/var/www/html

Don'tdothisifthisfilesystemisbeingexportedbyNFS(onanymachine).

Areyousureyouwanttoproceed?

[y/n]y

Reclaimed:

version0

inodes0

metadata192

 

九、gfs参数调优

1、查看gfs参数

[root@node1~]#gfs_toolgettune/var/www/html

ilimit1=100

ilimit1_tries=3

ilimit1_min=1

ilimit2=500

ilimit2_tries=10

ilimit2_min=3

demote_secs=300

incore_log_blocks=1024

jindex_refresh_secs=60

depend_secs=60

scand_secs=5

recoverd_secs=60

logd_secs

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机硬件及网络

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1