cman启动失败排错思路:

(1)关闭IPTABLES SELINUX
(2)RHCS包是否安装完整
(3)IP与主机名是否帮定是否可以ping通对方的主机名
(4)配置文件是否正确:主要问题是在配置集群节点上主机名是否跟配置的主机

名一致

(5)启动cman前关闭luci服务

 

实例操作(不带共享存储)
红帽建议做RHCS集群,一般要三台服务器以上,含三台,其中一台作LUCI,这里作实验因为用的是虚拟环境,加上PC机性能差,所以只用到二台。
RHCS集群实例操作_RHCS

修改各节点的/etc/hosts文件
注意格式要一致,特别是127.0.0.1行,默认的不合rhcs集群要求,必须改,否则在用luci建立集群时会报错。
RHCS集群实例操作_RHCS_02

在节点1上安装luci软件
[root@rhcs1 ~]# yum install luci*
RHCS集群实例操作_RHCS_03

Luci初始化及重启
RHCS集群实例操作_RHCS_04


在所有集群节点上(rhcs1,rhcs2)安装RHCS软件
[root@rhcs1 ~]# yum install cman
[root@rhcs1 ~]# yum install ricci
[root@rhcs1 ~]# yum install rgmanager
RHCS集群实例操作_RHCS_05

其它ricci,rgmanager不截图了
安装完所有RHCS组件后,重启所有节点,并启动ricci,luci服务,rhcs1节点需要启动luci,rhcs2不需要,服务启动完毕后,查看rhcs1节点的11111端口,8084端口有没有在监听,rhcs2节点的11111端口有没有在监听。
[root@rhcs1 ~]# /etc/init.d/ricci start
[root@rhcs1 ~]# /etc/init.d/luci start

Web登录luci进行集群设置
在客户机上,打开浏览器,这里我用火狐,输入https://192.168.145.232:8084,输入初始化时设置的密码,进行web登录。
RHCS集群实例操作_RHCS_06


新建cluster
设置集群名称,节点信息,然后点submit按钮
RHCS集群实例操作_RHCS_07

RHCS集群实例操作_RHCS_08

RHCS集群实例操作_RHCS_09


火狐浏览器中,显示这个进度有问题,总是初始化,正常情况下,如果install完毕后,空心圆点会变实心圆点,然后接下是reboot阶段,configure阶段,join阶段,因为我在建集群时选择了reboot所以,集群建完后,所有节点会自动重启。重启后,要确保luci,ricci服务有没有起来。
建立mtt_web后情况
RHCS集群实例操作_RHCS_10

点cluster list,查看一下刚创建的集群状态是否正常,从图上看,集群显示绿色,表示正常。
RHCS集群实例操作_RHCS_11


新建一个失败转移域
点击mtt_web,进去一个新界面,然后在左边窗中选failover domains下的add a failover domain,根据选项填写转移域名,这里我们取web-failover,在此界面中,可以设置转移域中的优先级,从图上所示,rhcs1节点的优先级为1,rhcs2节点的优先级为10,数值越大,优先级越低,在生产环境中也可以把优先级设置为一样,谁先启动服务,谁就是主节点。
RHCS集群实例操作_RHCS_12


创建必要的web资源
创建一些web服务所需要的资源,IP地址,脚本,这里的虚拟IP或叫公用IP,我们设置为192.168.145.235,这个IP要确保不能被其它服务器占用了。
RHCS集群实例操作_RHCS_13

RHCS集群实例操作_RHCS_14

创建一个脚本资源,这个脚本文件其实是一个shell程序,因为本次的httpd是通过yum安装的所以系统会把apache的启动脚本放在/etc/init.d/httpd目录下,如果是源码包安装的,就需要自己编写apache的启动脚本,该脚本里要包括start,stop等字段。
RHCS集群实例操作_RHCS_15

新建service
这里的service,并不指apache服务,或mysql服务,这里指整个集群的资源全部组成一个服务,所以这里先定义一个service,然后选择上面定义好的策略,如失败转移域,转移策略,所用的公共IP及脚本资源。
RHCS集群实例操作_RHCS_16

RHCS集群实例操作_RHCS_17


新建fence设备
上面已讲到fence设备是防止脑裂现象出现,所以我们在此集群中,再增加一个fence设备,因为我们用的是虚拟机,所以就添加虚拟设备的选项,实际生产环境中,根据条件定fence设备。

RHCS集群实例操作_RHCS_18

RHCS集群实例操作_RHCS_19

RHCS集群实例操作_RHCS_20

RHCS集群实例操作_RHCS_21

RHCS集群实例操作_RHCS_22


这样下来,集群的环境都搭建好了,完整的配置文件见/etc/cluster/cluster.conf文件
在所有节点上安装http服务
Shell>[root@rhcs1 ~]# yum install httpd
在rhcs1节点上的/var/www/html目录,新建index.html,内容如下:

  1. <html>

  2. <body>

  3. kkkk this is 145.232 

  4. </body>

  5. </html>


在rhcs2节点上的/var/www/html目录,新建index.html,内容如下:

  1. <html>

  2. <body>

  3. kkkk this is 145.233 

  4. </body>

  5. </html>

启动RHCS集群
先在所有节点是启动cman
Shell>service cman start
如果cman启动没有报错,再在所有节点是启动rgmanager,集群管理器
Shell>service rgmanager start

通过浏览器访问一下,集群
http://192.168.145.235
RHCS集群实例操作_RHCS_23

在rhcs1节点上,把httpd关闭
Shell>pkill -9 httpd
再通过客户端计算机访问145.235,建立先关闭刚打开的页面,新开一个页面,再输入IP地址,发现,页面显示为145.233。
RHCS集群实例操作_RHCS_24

同样,在rhcs2节点上把httpd关闭,不到一分钟,再到访问,网页结果又显示为145.232了。
这里我用两个不同的index.html来显示内容,是为了好区别集群有没有作故障转移,在实际环境里,所有节点都是一样的,即次节点是主节点的镜像。


后记:
生产环境中,很多情况下,集群都会挂共享存储,一般为SAN或DAS,所以在以上基础上,还要加GFS文件系统,配置表决磁盘,具体可看附件中redhat官方手册

本文出自 “系统网络运维” 博客,请务必保留此出处http://369369.blog.51cto.com/319630/836001