`
lu2002lulu
  • 浏览: 95304 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

RHEL5上GFS配置磁盘柜共享

阅读更多
背景:4台HP DL380G5的机器,配置为2颗4核2.5G的cpu,32G内存;1台HP MSA2000SAS型号的磁盘柜,做了raid6,有6T空间。机器全部安装RHEL5.1的64位AP版本。现需要4台机器可同时并发读写磁盘柜。

充分比较了GFS和OCFS2这两个集群文件系统后,选择了GFS。原因:GFS比OCFS2更稳定。当然GFS配置要比OCFS2复杂,而且是要收费的。OCFS2是甲骨文领导的一个开源项目,免费,主要用于自身做RAC时共享文件系统的一个选择。

根据项目需要,在磁盘柜划分了4个分区。其中名为upload,容量为4T的分区(/dev/sda)用于存储数据,LUM号为同一个,都为8。将4个分区推送给直连磁盘柜的4台机器。本项目数据库采用Oracle10g,也使用了OCFS2+ASM的存储机制来做RAC。

1.在4台机器上分别按顺序手工安装GFS软件包,清单如下:
rpm -Uvh perl-Net-Telnet-3.03-5.noarch.rpm   ######(rpm包在RHEL5安装盘第3张的Server目录里)
rpm -Uvh openais-0.80.2-1.el5.x86_64.rpm   ######(rpm包在RHEL5安装盘第3张的Server目录里)
rpm -Uvh cman-2.0.60-1.el5.x86_64.rpm   ######(rpm包在RHEL5安装盘第3张的Server目录里)
rpm -Uvh gfs2-utils-0.1.25-1.el5.x86_64.rpm   ######(rpm包在RHEL5安装盘第3张的Server目录里)
rpm -Uvh gfs-utils-0.1.11-1.el5.x86_64.rpm   ######(rpm包在RHEL5安装盘第6张的Cluster目录里)
rpm -Uvh kmod-gfs-0.1.16-5.2.6.18_8.el5.x86_64.rpm   ######(rpm包在RHEL5安装盘第6张的Cluster目录里)
rpm -Uvh lvm2-cluster-2.02.16-3.el5.x86_64.rpm    ######(rpm包在RHEL5安装盘第6张的Cluster目录里)
rpm -Uvh system-config-cluster-1.0.39-1.0.noarch.rpm   ######(rpm包在RHEL5安装盘第6张的Cluster目录里)
rpm -Uvh rgmanager-2.0.23-1.x86_64.rpm   ######(rpm包在RHEL5安装盘第6张的Cluster目录里)

2.配置/etc/hosts,主机名和ip对应如下:
127.0.0.1 localhost
192.168.9.61 web1
192.168.9.62 web2
192.168.9.63 rac1
192.168.9.64 rac2

3.修改每台机器的/etc/lvm/lvm.conf,将locking_type值由默认的1改为3。

4.在web1上执行system-config-cluster。步骤如下:
⑴.命名cluster(点击"Cluster",然后点击""Create New Configuration")
⑵. 添加每个节点 (点击"Cluster Nodes",然后点击"Add a Cluster Node",我这里的cluster node name和quorum votes分别为web1,1;web2,2;rac1,3;rac2,4;是4台机器的主机名顺序下来)
⑶.设置 fence设备 (点击"Fence Devices",然后点击"Add a Fence Device")。备注:fence设备用于监控哪台机器挂了,是集群套件RHCS的一个组件,由于我这边只共享磁盘,所以选择"Manual Fencing", 命名为"webfence"。
⑷.在每个节点上添加一个fence设备 (点击设备节点名,点击"Manage Fencing for This Node";点击"Add a New Fence Level";点击 "Fence-Level-1",点击"Add a New Fence to This Level";最后选择名为的webfence的fence设备。
⑸.共享盘阵,所以不需要创建任何“Services”或“Resources”。
⑹.保存配置,然后把配置拷贝到所有节点的/etc/cluster目录下。
⑺.配置好的cluster.conf全文如下:
<?xml version="1.0"?>
<cluster config_version="2" name="gfs_cluster">
<fence_daemon post_fail_delay="0" post_join_delay="3"/>
<clusternodes>
<clusternode name="web1" nodeid="1" votes="1">
<fence>
<method name="1">
<device name="webfence" nodename="web1"/>
</method>
</fence>
</clusternode>
<clusternode name="web2" nodeid="2" votes="2">
<fence>
<method name="1">
<device name="webfence" nodename="web2"/>
</method>
</fence>
</clusternode>
<clusternode name="rac1" nodeid="3" votes="3">
<fence>
<method name="1">
<device name="webfence" nodename="rac1"/>
</method>
</fence>
</clusternode>
<clusternode name="rac2" nodeid="4" votes="4">
<fence>
<method name="1">
<device name="webfence" nodename="rac2"/>
</method>
</fence>
</clusternode>
</clusternodes>
<cman/>
<fencedevices>
<fencedevice agent="fence_manual" name="webfence"/>
</fencedevices>
<rm>
<failoverdomains/>
<resources/>
</rm>
</cluster>

5.将GFS组件添加为开机自启动,以下命令在每台机器上执行:
chkconfig --add cman
chkconfig --add clvmd
chkconfig --add gfs
chkconfig --add rgmanager
chkconfig --level 345 cman on
chkconfig --level 345 clvmd on
chkconfig --level 345 gfs on
chkconfig --level 345 rgmanager on
可通过chkconfig --list |grep "3:on"查看服务加载结果。

6.由于cman存在一个bug,需在每台机器上执行如下命令创建一个软链接:
ln -s /usr/sbin/cman_tool /sbin/cman_tool

7.在web1上启动GFS服务:
service cman start
service clvmd start
service gfs start
service rgmanager start

8.由于4T的分区,fdisk是不能用的。在web1上需parted /dev/sda,mklabel出gpt格式后,然后进行磁盘操作:
创建LVM物理卷之前先pvscan,然后:
##pvdisplay
##pvremove /dev/sda
pvcreate /dev/sda
然后创建名为gfs1的卷组:
##vgremove gfs1
##vgdisplay。vgcreate不带参数默认只能创建256G的卷组,我这里是4T,所以参数是128
vgcreate -s 128 gfs1 /dev/sda
在web1上创建好卷组后,在其他3台机器上执行:
service cman start
service clvmd start
service gfs start
service rgmanager start
然后激活卷组:
vgchange -ay
##lvremove /dev/gfs1/upload
##lvdisplay
##vgdisplay查看: Total PE = 32790。
然后在web1上创建名为upload的全盘逻辑卷:
lvcreate -l 32790 gfs1 -n upload

9.制作和加载GFS文件系统(以下在集群gfs_cluster管理下的逻辑卷/dev/gfs1/upload里创建管理4个节点,名为gfs01的文件系统),在web1上执行:
gfs_mkfs -p lock_dlm -t gfs_cluster:gfs01 -j 4 /dev/gfs1/upload
在4台机器上创建挂载点
mkdir /upload
在4台机器上挂载/dev/gfs1/upload到成/upload目录:
mount -t gfs /dev/gfs1/upload /upload
然后df -h查看效果。

10.设置开机自动挂载GFS。vi /etc/fstab,加入:
/dev/gfs1/upload /upload gfs defaults 0 0

---------------------------------------------------------------------------
参考文档:http://kbase.redhat.com/faq/docs/DOC-11997
参考文档:http://www.idcnews.net/article/articleInfo.php/aId_292277_page_1.html
参考文档:http://bbs.518z.net/simple/?t241.html
参考文档:http://www.chinaitpower.com/2005September/2005-09-13/202896.html
参考文档:http://www.oklinux.cn/html/Basic/azpz/20070325/7885.html
参考文档:http://kbase.redhat.com/faq/docs/DOC-11979
参考文档:http://www.pc51.net/system/unix/linux/2007-01-04/2649.html
参考文档:http://linux.chinaunix.net/bbs/thread-990090-1-1.html
参考文档:http://www.blogjava.net/parable-myth/archive/2009/05/19/156629.html
参考文档:http://www.linuxeden.com/forum/archiver/tid-160364.html
参考文档:http://www.sansky.net/article/2007-05-12-san-network-storage-sharing-software-place.html
参考文档:http://bbs.chinaunix.net/archiver/index.php?tid-1357705.html
kyle 发表于:2009.09.15 11:05 ::分类: ( os ) ::阅读:(1520次) :: 评论 (1)
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics