此次搭建gfs2文件系统是以这篇博文为前提,链接如下 http://blog.csdn.net/wjciayf/article/details/40679289 为了实验过程的清晰,故把示意图再次放在本节作为参考 一:实验环境描述如下 1.在上次试验中已经安装好了这两台虚拟机,如下所示 [root@localhost
此次搭建gfs2文件系统是以这篇博文为前提,链接如下
http://blog.csdn.net/wjciayf/article/details/40679289
为了实验过程的清晰,故把示意图再次放在本节作为参考
一:实验环境描述如下
1.在上次试验中已经安装好了这两台虚拟机,如下所示
[root@localhost ~]# virsh list --all
id name state
----------------------------------------------------
- rhel6.4-1 shut off
- rhel6.4-2 shut off
2.把vmware上的rhel6.4作为管理节点同时也作为共享存储san节点(额外添加一块10g硬盘,作为共享磁盘)
3.两台虚拟机作为gfs节点
4.主机名和ip关系对应如下
172.16.1.1 manager
172.16.1.2 gfs1
172.16.1.3 gfs2
5.集群名为gfscluster
二:配置管理节点
1.设置主机名、hosts文件、配置manager,gfs1,gfs2基于秘钥的访问(前面的操作gfs1,gfs2同时设置)
2.安装luci和scsi-target-utils
[root@manager ~]# yum -y install luci scsi-target-utils
3.启动luci
[root@manager ~]# chkconfig luci on ;/etc/init.d/luci start
point your web browser tohttps://manager:8084 (or equivalent) to access luci
[root@manager ~]#
4.把新添加的10g硬盘分成一个1g(作为qdisk)分区sdb1和一个9g(作为gfs2)分sdb2
5.配置iscsitarget
[root@manager ~]# grep -v ^# /etc/tgt/targets.conf
default-driver iscsi
backing-store /dev/sdb1
backing-store /dev/sdb2
6.启动tgtd服务并检查是否正确生成目标
[root@manager ~]# chkconfig tgtd on;/etc/init.d/tgtd start
starting scsi target daemon: [ ok ]
[root@manager ~]#
[root@manager ~]# tgt-admin -s
target 1:iqn.2014-10.com.wjcyf:server.target1
system information:
driver: iscsi
state: ready
i_t nexus information:
lun information:
lun: 0
type: controller
scsi id: iet 00010000
scsi sn: beaf10
size: 0 mb, block size: 1
online: yes
removable media: no
prevent removal: no
readonly: no
backing store type: null
backing store path: none
backing store flags:
lun: 1
type: disk
scsi id: iet 00010001
scsi sn: beaf11
size: 1000 mb, block size: 512
online: yes
removable media: no
prevent removal: no
readonly: no
backing store type: rdwr
backing store path: /dev/sdb1
backing store flags:
lun: 2
type: disk
scsi id: iet 00010002
scsi sn: beaf12
size: 9737 mb, block size: 512
online: yes
removable media: no
prevent removal: no
readonly: no
backing store type: rdwr
backing store path: /dev/sdb2
backing store flags:
account information:
acl information:
all
[root@manager ~]#
三:配置gfs1和gfs2节点
1.安装rgmanager,cman,gfs2-utils,iscsi-initiator等相关软件包
[root@manager ~]# for i in 1 2; do ssh gfs$i yum -y install rgmanager cman gfs2-utils iscsi-initiator-utils; done
2.启动ricci服务并为ricci用户设置密码
[root@manager ~]# for i in 1 2; do ssh gfs$i chkconfig ricci on ; /etc/init.d/ricci start; done
[root@manager ~]# for i in 1 2; do ssh gfs$i 'echo 111111 | passwd --stdin ricci' ; done
changing password for user ricci.
passwd: all authentication tokens updatedsuccessfully.
changing password for user ricci.
passwd: all authentication tokens updatedsuccessfully.
3.连接iscsi服务
[root@manager ~]# for i in 1 2; do ssh gfs$i iscsiadm --mode discoverydb --type sendtargets --portal manager --discover;done
[root@manager ~]# for i in 1 2; do ssh gfs$i /etc/init.d/iscsi start; done
4.此时新发现的磁盘sda将作为qdisk,sdb将作为gfs2,如下所示
[root@gfs1 ~]# lsblk
name maj:min rm size ro typemountpoint
vda 252:0 0 5g 0 disk
vda1 252:1 0 3.9g 0 part /
vda2 252:2 0 1.1g 0 part [swap]
sda 8:0 0 953.7m 0 disk
sdb 8:16 0 9.1g 0 disk
[root@gfs1 ~]#
5.在gfs1或gfs2上给/dev/sdb分成一个分区/dev/sdb1
6.创建gfs2挂载目录/gfs2
[root@manager ~]# for i in 1 2; do ssh gfs$i mkdir /gfs2; done
四.创建gfscluster集群
1.打开ie浏览器输入https://192.168.78.11:8804
2.点击“继续浏览此网站(不推荐)”—输入manager节点用户名root,密码:111111,即可进入luci管理界面,如下所示
3.依次点击“manager clusters”—“create”打开“创建新集群”对话框,如下所示
4.填写相关内容后,如下所示
5.确认无误后,点击“createcluster”,如下所示,正在创建集群
6.集群创建完毕,如下所示
五:创建gfs2分布式文件系统
1.在gfs1或gfs2上操作,查看集群状态
[root@gfs1 ~]# clustat
cluster status for gfscluster @ wed oct 2907:03:30 2014
member status: quorate
member name id status
------ ---- ---- ------
gfs1 1online, local
gfs2 2online
[root@gfs1 ~]#
2. 创建gfs2文件系统
[root@gfs1 ~]# mkfs.gfs2 -j 2 -p lock_dlm -t gfscluster:testgfs /dev/sdb1
this will destroy any data on /dev/sdb1.
it appears to contain: data
are you sure you want to proceed? [y/n] y
device: /dev/sdb1
blocksize: 4096
device size 9.07 gb (2377212 blocks)
filesystem size: 9.07 gb (2377212 blocks)
journals: 2
resource groups: 37
locking protocol: lock_dlm
lock table: gfscluster:testgfs
uuid: f7fe8f5f-98a6-478c-2845-9a8d26b229f1
[root@gfs1 ~]#
其中参数含义如下:
-j //设置支持的节点数
-p //指定锁方式为分布式锁
-t //指定dlm锁所在的表名称
3.挂载gfs2文件系统
[root@manager ~]# for i in 1 2; do ssh gfs$i 'echo /dev/sdb1 /gfs2 gfs2 defaults 0 0 >>/etc/fstab'; done
[root@manager ~]# for i in 1 2; do ssh gfs$i mount /gfs2; done
[root@manager ~]# for i in 1 2; do ssh gfs$i chkconfig gfs2 on; done
[root@manager ~]# for i in 1 2; do ssh gfs$i df -h |grep gfs2; done
/dev/sdb1 9.1g 259m 8.9g 3% /gfs2
/dev/sdb1 9.1g 259m 8.9g 3% /gfs2
[root@manager ~]#
4.在/gfs2下创建一个名为abcd的文件夹,然后到gfs2上去查看
[root@gfs1 ~]# mkdir /gfs2/abcd
[root@gfs2 ~]# ll /gfs2/
total 4
drwxr-xr-x 2 root root 3864 oct 29 07:14abcd
[root@gfs2 ~]#
由此也说明gfs2基本配置成功
六:配置fence设备
1.以上配置的gfs2文件系统,在正常关机和重启的情况下是可以正常工作的,但是如果不是正常关机和重启,比如其中一个节点突然死机或网线被拔出,这时gfs2就不能正常工作了,一个节点网线被拔出后,gfs2文件系统就会挂起,另一个节点也就不能正常的读写操作,这个时候就需要fence设备
2.rhcs提供的fence设备分为两种,一种是内部fence,一种是外部fence
内部fence常见的如下:
■ibm服务器提供的rsaii卡
■hp服务器提供的ilo卡
■dell服务器提供的drac卡
■智能平台管理接口ipmi
外部fence常见的如下:
■ups电源
■san switch
■network switch
关于fence设备的添加,下片博文再做讨论
