集群

主要讲了HAHighAvailability)网络高可用(在大多数情况下网络不会挂掉)

配置:启动三个企业6的虚拟机、关闭火墙和selinux

每台虚拟机上最好配置好解析,这样快(/etc/hosts)

eg:

修改主机名分别为(/etc/sysconfig/network:

Server1.example.com(管理机、控制端)

Server2.example.com(节点)

Server3.example.com(节点)

配置三个虚拟机的yum源为(/etc/yum.repos.d)

[Server]

name=localserver

baseurl=http://172.25.9.250/rh6.5

gpgcheck=0

 

[HighAvailability]

name=localserver

baseurl=http://172.25.9.250/rh6.5/HighAvailability

gpgcheck=0

 

[LoadBalancer](负载均衡)

name=localserver

baseurl=http://172.25.9.250/rh6.5/LoadBalancer

gpgcheck=0

 

[ResilientStorage]

name=localserver

baseurl=http://172.25.9.250/rh6.5/ResilientStorage

gpgcheck=0

 

[ScalableFileSystem]

name=localserver

baseurl=http://172.25.9.250/rh6.5/ScalableFileSystem

"rhel-source.repo"25L, 464C                                 

原来只有第一个,最后几个是要加的。

1.基本配置

在两台节点端(server2server3)安装ricci(以下操作都是在两个节点上同时进行)

yum installricci –y

安装完之后一般会生成/etc/cluster这个目录,在这个目录中会有cluster.confcman-notify.d。如果没有的话,可能是因为没有cman这个包,把它按上。yum install cman –y

chkconfig riccion                设置ricci开机启动

/etc/init.d/riccistart                           开启ricci

echo westos |passwd –stdin ricci   ricci密码(一定要有否则将认证失败)

在管理机|控制端(servser1)中安装luci

yum install luci-y

/etc/init.d/lucistart              开启luci

开启最后一行会出现一个地址,在wed端登录着个地址

root登录

然后添加节点

注:如果出现问题提示你创建的集群存在,而你又想用该名字,那就进入/etc/cluster/中把cluster.conf删掉重新弄

出现如下错误:

可以看出是servercman开启失败,所以在servser2中执行

/etc/init.d/cmanstart

 

 

 

弄好之后会出现下列情况

此时luci管理端正在为ricciHA节点上自动安装所需要的包

完成后图形端:

在字符界面输入clustst会看到节点显示为online 

2.fence(栅)设备的配置

Fence设备是RHCS集群中必不可少的一个组成部分,通过fence设备可以避免因出现不可预知的情况而造成“脑裂”现象,fence设备的出现,就是为了解决类似这些问题,fence设备主要就是通过服务器或存储本身的硬件管理接口,或者外部电源管理设备,来对服务或存储直接发出硬件管理指令,将服务器重启或关机,或者与网络断开连接。

Fence的工作原理是:当意外原因导致主机异常或者宕机时,备机会首先调用fence设备,然后通过fence设备将异常主机重启或者从网络隔离,当fence操作成功执行后,返回信息给备机,备机在接到fence成功的信息后,开始接管主机的服务和资源。这样通过fence设备,将异常节点占据的资源进行了释放,保证了资源和服务始终运行在一个节点上。

在本次试验中使用物理主机作为fence设备。

选择fencedevices并命名

在物理主机(fencce设备)中安装下列软件

然后执行fence_virtd–cfence_virtd

直接空格

实验中写的是br0

高亮的文件要自己事先建立好,之后空格y就好

 

 

下面几步不是很懂,照着做就了。

往两个节点中也拷贝入fence_xvm.key拷到/etc/cluster下(server2server3

在物理主机(fence设备)中开启fence_virtd服务

然后查看fence端口开了没(1229

然后添加fence设备(注意虚拟机的主机名与虚拟机名字要对应,最好使用id

然后添加第二个fence设备

后面的和添加第一个一样

然后检验fence设计是否成功

停掉server2之后如果出现 fenceserver2.example.com success并且server2虚拟机重启的话,fence就设置成功。

3.添加错误域(失效转移):两个服务同时支持一个挂后之后另一个补上

Failover:又称故障切换,指系统中其中一项设备或服务失效而无法运作时,另一项设备或服务即可自动接手原失效系统所执行的工作。

 

进入之后点Add增加

Priority:为优先级,越小优先级越高

Restricted:该服务只能在该节点中

No Failback:为服务不切回(默认为切回),就是指当坏掉的节点号了时,服务切不切回。一般只有当原来节点的性能大于备用节点的性能时,才切回。当两个节点的性能差不多时,一般不切回。

4.添加资源:

这个ip是一个虚拟的浮动ip,用于外界访问。当外界访问的是哪一个节点时,该ip就在哪个节点上。如果该节点坏掉之后,另一个节点顶上的话,该ip就出现在顶替的节点上。(将会浮动出现在后端提供服务的HA节点上;最后一行的数字越小,浮动ip切换的速度越快。)

httpd服务必须是自己在HA节点上提前安装,但不要启动(在节点上不要开启httpd服务)。(这一步我不知道干嘛)

5.添加服务组:

选择你刚刚添加的错误组的名字

 

然后点选择刚刚写的浮动iphttpd

 

然后继续点,不要点

 

 

这次点浮动ip

然后可以看到

(网络资源)

可看见集群自己自动将192.268.122.34(浮动ip,按本次试验的话应该是在server1上启动了)上的httpd启动了。

注:后面的截图因为老师的机子出问题,所以重新安装了虚拟机。Sever11server12为节点,server3为服务端。

server11上配置测试页。

server12上配置测试页。

server12clustat查看集群状态可以看到现在是server11在进行服务。

server11 ip addrshow 可以看出除了server11原来的ip之外server11上还有浮动ip

6.测试

我们可以使server挂掉,然后看服务是不是转移到server上了

1)把server的网断掉

再继续通过clustat查看集群服务状态,可以看到server12顶替了server11。同时浮动ip也会出现在server12上。可以用 ip addrshow查看。

2)可以通过内核奔溃

 

266