集群
主要讲了HA(HighAvailability)网络高可用(在大多数情况下网络不会挂掉)。
配置:启动三个企业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.基本配置
在两台节点端(server2、server3)安装ricci(以下操作都是在两个节点上同时进行)
yum installricci –y
安装完之后一般会生成/etc/cluster这个目录,在这个目录中会有cluster.conf和cman-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删掉重新弄
出现如下错误:
可以看出是server中cman开启失败,所以在servser2中执行
/etc/init.d/cmanstart
弄好之后会出现下列情况
此时luci管理端正在为ricci的HA节点上自动安装所需要的包
完成后图形端:
在字符界面输入clustst会看到节点显示为online
2.fence(栅)设备的配置
Fence设备是RHCS集群中必不可少的一个组成部分,通过fence设备可以避免因出现不可预知的情况而造成“脑裂”现象,fence设备的出现,就是为了解决类似这些问题,fence设备主要就是通过服务器或存储本身的硬件管理接口,或者外部电源管理设备,来对服务或存储直接发出硬件管理指令,将服务器重启或关机,或者与网络断开连接。
Fence的工作原理是:当意外原因导致主机异常或者宕机时,备机会首先调用fence设备,然后通过fence设备将异常主机重启或者从网络隔离,当fence操作成功执行后,返回信息给备机,备机在接到fence成功的信息后,开始接管主机的服务和资源。这样通过fence设备,将异常节点占据的资源进行了释放,保证了资源和服务始终运行在一个节点上。
在本次试验中使用物理主机作为fence设备。
选择fencedevices并命名
在物理主机(fencce设备)中安装下列软件
然后执行fence_virtd–c(fence_virtd)
直接空格
实验中写的是br0
高亮的文件要自己事先建立好,之后空格y就好
下面几步不是很懂,照着做就了。
往两个节点中也拷贝入fence_xvm.key拷到/etc/cluster下(server2和server3)
在物理主机(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.添加服务组:
选择你刚刚添加的错误组的名字
然后点选择刚刚写的浮动ip与httpd
然后继续点,不要点
这次点浮动ip
然后可以看到
(网络资源)
可看见集群自己自动将192.268.122.34(浮动ip,按本次试验的话应该是在server1上启动了)上的httpd启动了。
注:后面的截图因为老师的机子出问题,所以重新安装了虚拟机。Sever11和server12为节点,server3为服务端。
在server11上配置测试页。
在server12上配置测试页。
在server12上clustat查看集群状态可以看到现在是server11在进行服务。
在server11上 ip addrshow 可以看出除了server11原来的ip之外server11上还有浮动ip。
6.测试
我们可以使server挂掉,然后看服务是不是转移到server上了
(1)把server的网断掉
再继续通过clustat查看集群服务状态,可以看到server12顶替了server11。同时浮动ip也会出现在server12上。可以用 ip addrshow查看。
(2)可以通过内核奔溃
266张