- 论坛徽章:
- 0
|
四台GNBD,两台node。分别将四台gnbd上的/dev/sda6导出到网络中,然后再在两台node上分别导入所有的/dev/sda6,在其中一台node上用mdadm将这四个/dev/sda6做raid5,,创建/etc/mdadm.conf 并将它copy到另一台node上。 接着创建 gfs 文件系统 并mount上。 再另一台上激活raid 并mount上。
假设上面的挂载点是/mnt/cluster 在往里面执行cp 或 dd 命令时经常会遇到没响应了,一直停在那里。 用其他tty连上去,执行其他的命令只要不涉及到/mnt/cluster都能正常执行,一涉及到就停在那里。 在另一个node上也是如此,应该是集群出了问题。查/var/log/messages 文件却没发现有什么错误提示。我想问为什么会出现这种情况呢?
下面是我的配置及操作步骤:
一、测试环境
主机五台,都安装centos5的操作系统。其中名为:gnbd1,gnbd2,gnbd3和gnbd4的为存储服务器,名为:node1和node2的为应用服务器。同时给这五台主机分配如下的IP地址:
10.0.0.1 gnbd1
10.0.0.2 gnbd2
10.0.0.3 gnbd3
10.0.0.4 gnbd4
10.0.0.11 node1
10.0.0.12 node2
二、修改各个节点上的/etc/hosts 文件
如下:
[root@node1 ~]# vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
10.0.0.1 gnbd1
10.0.0.2 gnbd2
10.0.0.3 gnbd3
10.0.0.4 gnbd4
10.0.0.11 node1
10.0.0.12 node2
三、分别在gnbd1-4上进行分区
用fdisk进行分区,只进行分区,不格式化。而且转换为适合raid的FD类型分区。
四、在节点node1上创建/etc/cluster/cluster.conf 文件进行配置
如下:
<?xml version="1.0"?>
<cluster alias="gfs_cluster" config_version="5" name="bob_cluster">
<fence_daemon post_fail_delay="0" post_join_delay="3"/>
<clusternodes>
<clusternode name="node1" nodeid="1" votes="1">
<fence>
<method name="1">
<device name="manual" nodename="node1"/>
</method>
</fence>
</clusternode>
<clusternode name="node2" nodeid="2" votes="1">
<fence>
<method name="1">
<device name="manual" nodename="node2"/>
</method>
</fence>
</clusternode>
<clusternode name="gnbd1" nodeid="3" votes="1">
<fence>
<method name="1">
<device name="manual" nodename="gnbd1"/>
</method>
</fence>
</clusternode>
<clusternode name="gnbd2" nodeid="4" votes="1">
<fence>
<method name="1">
<device name="manual" nodename="gnbd2"/>
</method>
</fence>
</clusternode>
<clusternode name="gnbd3" nodeid="5" votes="1">
<fence>
<method name="1">
<device name="manual" nodename="gnbd3"/>
</method>
</fence>
</clusternode>
<clusternode name="gnbd4" nodeid="6" votes="1">
<fence>
<method name="1">
<device name="manual" nodename="gnbd4"/>
</method>
</fence>
</clusternode>
</clusternodes>
<cman/>
<fencedevices>
<fencedevice agent="fence_manual" name="manual"/>
</fencedevices>
<rm>
<failoverdomains>
<failoverdomain name="gnbd_failover" ordered="0" restricted="0">
<failoverdomainnode name="gnbd1" priority="1"/>
<failoverdomainnode name="gnbd2" priority="1"/>
<failoverdomainnode name="gnbd3" priority="1"/>
<failoverdomainnode name="gnbd4" priority="1"/>
</failoverdomain>
<failoverdomain name="node_failover">
<failoverdomainnode name="node1" priority="1"/>
<failoverdomainnode name="node2" priority="1"/>
</failoverdomain>
</failoverdomains>
<resources/>
</rm>
</cluster>
把这个配置文件copy到其他的五台主机上。
五、在所有主机上启动 cman,gfs,rgmanager服务
启动 cman,gfs,rgmanager服务.如:
[root@node1 ~]# service cman start
Starting cluster:
Loading modules... done
Mounting configfs... done
Starting ccsd... done
Starting cman... done
Starting daemons... done
Starting fencing... done
[确定]
[root@node1 ~]# service gfs start
[root@node1 ~]# service rgmanager start
启动 Cluster Service Manager: [确定]
其他五台也执行相同的命令
六、分别在gnbd1-4上导出设备
启动gnbd_serv服务
[root@gnbd1 ~]# gnbd_serv
[root@gnbd2 ~]# gnbd_serv
[root@gnbd3 ~]# gnbd_serv
[root@gnbd4 ~]# gnbd_servv
导出设备
[root@gnbd1 ~]# gnbd_export -e gfs1 -d /dev/sda6
[root@gnbd2 ~]# gnbd_export -e gfs2 -d /dev/sda6
[root@gnbd3 ~]# gnbd_export -e gfs3 -d /dev/sda6
[root@gnbd4 ~]# gnbd_export -e gfs4 -d /dev/sda6
七、导入设备
分别在node1和node2上加载模块
[root@node1~]# modprobe lock_dlm
[root@node1 ~]# modprobe gnbd
[root@node1 ~]# modprobe gfs
[root@node2 ~]# modprobe lock_dlm
[root@node2 ~]# modprobe gnbd
[root@node2 ~]# modprobe gfs
在 node1和node2上导入设备
[root@node1 ~]# gnbd_import -i gnbd1
[root@node1 ~]# gnbd_import -i gnbd2
[root@node1 ~]# gnbd_import -i gnbd3
[root@node1 ~]# gnbd_import -i gnbd4
[root@node2 ~]# gnbd_import -i gnbd1
[root@node2 ~]# gnbd_import -i gnbd2
[root@node2 ~]# gnbd_import -i gnbd3
[root@node2 ~]# gnbd_import -i gnbd4
八、在node1上对设备/dev/gnbd[0-3]制作raid5
[root@node1 ~]# mdadm -c /dev/md0 -l5 -n4 /dev/gnbd[0-3]
[root@node1 ~]# echo DEVICE /dev/gnbd[0-3]>/etc/mdadm.conf
[root@node1 ~]# mdadm -Ds >>/etc/mdadm.conf
将/etc/mdadm.conf拷贝一份到node2上
九、建立gfs文件系统并且挂载
在node1上建立gfs文件系统
[root@node1 ~]# gfs_mkfs -p lock_dlm -t bob_cluster:gfs -j 2 /dev/md0
挂载
[root@node1 ~]# mount -t gfs /dev/md0 /mnt/cluster
在node2上挂载设备
[root@node2 ~]# mdadm -As /dev/md0
[root@node2 ~]# mount -t gfs /dev/md0 /mnt/cluster
[ 本帖最后由 yman 于 2008-4-29 14:34 编辑 ] |
|