RH4367 GFS文件系统.docx
- 文档编号:23608457
- 上传时间:2023-05-19
- 格式:DOCX
- 页数:23
- 大小:22.66KB
RH4367 GFS文件系统.docx
《RH4367 GFS文件系统.docx》由会员分享,可在线阅读,更多相关《RH4367 GFS文件系统.docx(23页珍藏版)》请在冰豆网上搜索。
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
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RH4367 GFS文件系统 GFS 文件系统