赞
踩
GFS是RHCS为集群系统提供的一个存储解决方案,它允许集群多个节点在块级别上共享存储,每个节点通过共享一个存储空间,保证了访问数据的一致性,更切实的说,GFS是RHCS提供的一个集群文件系统,多个节点同时挂载一个文件系统分区,而文件系统数据不受破坏,这是单一的文件系统不能实现的。
为了实现多个节点对于一个文件系统同时读写操作,GFS使用锁管理器来管理I/O操作,当一个写进程操作一个文件时,这个文件就被锁定,此时不允许其它进程进行读写操作直到这个写进程正常完成才释放锁,有当锁被释放后,其它读写进程才能对这个文件进行操作,另外,当一个节点在GFS文件系统上修改数据后,这种修改操作会通过RHCS底层通信机制立即在其它节点上可见。
在搭建RHCS集群时,GFS一般作为共享存储,运行在每个节点上,并且可以通过RHCS管理工具对GFS进行配置和管理。这些需要说明的是RHCS和GFS之间的关系,一般初学者很容易混淆这个概念:运行RHCS,GFS不是必须的,只有在需要共享存储时,才需要GFS支持,而搭建GFS集群文件系统,必须要有RHCS的底层支持,所以安装GFS文件系统的节点,必须安装RHCS组件。
1.将apache组件资源停掉(此时在2上所以停掉2的)
[root@server2 ~]# clusvcadm -d apache
Local machine disabling service:apache...Success
[root@server2 ~]#
2.格式化组设备,采用gfs2
mkfs.gfs2为gfs2文件系统创建工具,其一般常用的选项有:
-b BlockSize:指定文件系统块大小,最小为512,默认为4096;
-J MegaBytes:指定gfs2日志区域大小,默认为128MB,最小值为8MB;
-j Number:指定创建gfs2文件系统时所创建的日志区域个数,一般需要为每个挂载的客户端指定一个日志区域;
-p LockProtoName:所使用的锁协议名称,通常为lock_dlm或lock_nolock之一;
-t LockTableName:锁表名称,一般来说一个集群文件系统需一个锁表名以便让集群节点在施加文件锁时得悉其所关联到的集群文件系统,锁表名称为clustername:fsname,其中的clustername必须跟集群配置文件中的集群名称保持一致,因此,也仅有此集群内的节点可访问此集群文件系统;此外,同一个集群内,每个文件系统的名称必须惟一;
[root@server2 ~]# mkfs.gfs2 -p lock_dlm -j 3 -t westos_xin:mygfs2 /dev/dd/cc This will destroy any data on /dev/dd/cc. It appears to contain: symbolic link to `../dm-2' Are you sure you want to proceed? [y/n] y Device: /dev/dd/cc Blocksize: 4096 Device Size 4.00 GB (1048576 blocks) Filesystem Size: 4.00 GB (1048575 blocks) Journals: 3 Resource Groups: 16 Locking Protocol: "lock_dlm" Lock Table: "westos_xin:mygfs2" UUID: 883a5abc-37de-b224-9280-a693d5fc3597 [root@server2 ~]#
3.测试多点挂载
4.将组设备分别永久挂载在/var/www/html下
[root@server1 ~]# vim /etc/fstab
[root@server1 ~]# umount /mnt/
[root@server1 ~]# mount -a
[root@server1 ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root 8813300 1082360 7283248 13% /
tmpfs 510200 31816 478384 7% /dev/shm
/dev/sda1 495844 33476 436768 8% /boot
/dev/mapper/dd-cc 4193856 397152 3796704 10% /var/www/html
[root@server1 ~]#
[root@server2 ~]# vim /etc/fstab
[root@server2 ~]# umount /mnt/
[root@server2 ~]# mount -a
[root@server2 ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root 8813300 1023932 7341676 13% /
tmpfs 510200 31816 478384 7% /dev/shm
/dev/sda1 495844 33476 436768 8% /boot
/dev/mapper/dd-cc 4193856 397152 3796704 10% /var/www/html
[root@server2 ~]#
5.进入挂载点,编写一个默认发布页
[root@server1 ~]# cd /var/www/html/
[root@server1 html]# ls
passwd
[root@server1 html]# rm -rf passwd
[root@server1 html]# vim index.html
[root@server1 html]# cat index.html
i am gfs2 share
[root@server1 html]#
6.将资源组里的文件系统删除,再删除资源里的(注意顺序)
7.开启apache组资源
[root@server2 ~]# clusvcadm -e apache Local machine trying to enable service:apache...Success service:apache is now running on server2 [root@server2 ~]# clustat Cluster Status for westos_xin @ Sun Feb 23 12:39:23 2020 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ server1 1 Online, rgmanager server2 2 Online, Local, rgmanager Service Name Owner (Last) State ------- ---- ----- ------ ----- service:apache server2 started [root@server2 ~]#
测试:
[kiosk@foundation8 ~]$ curl 172.25.254.100
i am gfs2 share
[kiosk@foundation8 ~]$ curl 172.25.254.100
i am gfs2 share
[kiosk@foundation8 ~]$
将apache服务迁移到server1上
[root@server2 ~]# clusvcadm -r apache -m server1 Trying to relocate service:apache to server1...Success service:apache is now running on server1 [root@server2 ~]# clustat Cluster Status for westos_xin @ Sun Feb 23 12:41:22 2020 Member Status: Quorate Member Name ID Status ------ ---- ---- ------ server1 1 Online, rgmanager server2 2 Online, Local, rgmanager Service Name Owner (Last) State ------- ---- ----- ------ ----- service:apache server1 started [root@server2 ~]#
查看配置的gfs2的信息
[root@server1 html]# gfs2_tool sb /dev/dd/cc all mh_magic = 0x01161970 mh_type = 1 mh_format = 100 sb_fs_format = 1801 sb_multihost_format = 1900 sb_bsize = 4096 sb_bsize_shift = 12 no_formal_ino = 2 no_addr = 23 no_formal_ino = 1 no_addr = 22 sb_lockproto = lock_dlm sb_locktable = westos_xin:mygfs2 uuid = 883a5abc-37de-b224-9280-a693d5fc3597 [root@server1 html]#
查看保留的日志信息
[root@server1 html]# gfs2_tool journals /dev/dd/cc
journal2 - 128MB
journal1 - 128MB
journal0 - 128MB
3 journal(s) found.
[root@server1 html]#
如果再添加3个挂载点,对应的需要增加3份日志信息
[root@server1 html]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root 8.5G 1.1G 7.0G 13% /
tmpfs 499M 32M 468M 7% /dev/shm
/dev/sda1 485M 33M 427M 8% /boot
/dev/mapper/dd-cc 4.0G 388M 3.7G 10% /var/www/html
[root@server1 html]#
[root@server1 html]# gfs2_jadd -j 3 /dev/dd/cc
Filesystem: /var/www/html
Old Journals 3
New Journals 6
[root@server1 html]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root 8.5G 1.1G 7.0G 13% /
tmpfs 499M 32M 468M 7% /dev/shm
/dev/sda1 485M 33M 427M 8% /boot
/dev/mapper/dd-cc 4.0G 776M 3.3G 19% /var/www/html
[root@server1 html]#
对设备进行扩容
[root@server1 html]# lvextend -L +1G /dev/dd/cc
Extending logical volume cc to 5.00 GiB
Logical volume cc successfully resized
[root@server1 html]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root 8.5G 1.1G 7.0G 13% /
tmpfs 499M 32M 468M 7% /dev/shm
/dev/sda1 485M 33M 427M 8% /boot
/dev/mapper/dd-cc 4.0G 776M 3.3G 19% /var/www/html
[root@server1 html]#
注意:此时文件系统大小并没有改变,需要进行如下操作
[root@server1 html]# gfs2_grow /dev/dd/cc
FS: Mount Point: /var/www/html
FS: Device: /dev/dm-2
FS: Size: 1048575 (0xfffff)
FS: RG size: 65533 (0xfffd)
DEV: Size: 1310720 (0x140000)
The file system grew by 1024MB.
gfs2_grow complete.
[root@server1 html]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root 8.5G 1.1G 7.0G 13% /
tmpfs 499M 32M 468M 7% /dev/shm
/dev/sda1 485M 33M 427M 8% /boot
/dev/mapper/dd-cc 5.0G 776M 4.3G 16% /var/www/html
[root@server1 html]#
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。