轻松实现基于Heartbeat的高可用web服务集群

高可用集群就是为了保证某项服务能够时时在线,我们可以通过几个9来衡量一个高可用集群提供服务的稳定性,例如5个9的高可用集群必须保证服务一年在线的时间占99.999%,也就是说一年的时间中仅允许服务电线不到6分钟的时间,可见高可用集群非同反响。
       下面我就给大家讲解一下高可用性集群的工作机制,由于只是为了讲明原理,在此处我们就假设一个集群中之后两个节点(即两台提供服务的主机,假设提供的是web服务)。
       最简单的高可用集群的工作机制为,两个节点都在线,但是只有节点1提供web服务,在提供服务的同时,节点1还要在特定的时间段内不停的向外发送自己的心跳信息,以此来通告在同一个集群中的节点2自己运行正常,当节点2连续2-3此在规定的时间段内没有接受到几点1的心跳信息,则就认为节点1已经不能正常的提供web服务了,此时节点2就直接将节点1的资源(资源:就是为提供一个服务所需要必须东西,如IP,数据等)抢夺过来,并立刻提供相同的服务,这样就保证了服务的时时在线。
       当然这是最简单的靠可用集群的工作机制,但是只有理解了基本的原理,才能进行更高层次的探索,下面我们就基于这个最简单、最基本的高可用集群的原理来实现基于Heartbeat的高可用web服务集群

实验目的:通过Heartbeat来实现高可用web服务集群模拟

实验拓扑图如下图所示:

image

每个节点都有两块网卡分别为eth0、eth1,前者和交换机或路由器相连来为外界提供服务,后者直接连接为彼此传递心跳信息,VIP为在线提供服务的节点向外提供服务的IP地址,这是一个虚拟的IP地址,当提供服务的节点宕机之后,这个VIP就将被替代者所使用。
        这里我们要使用到heartbeat软件,下面我们就对这款软件的三个主要的配置问津进行一下介绍:

        /etc/ha.d/ha.cf 定义心跳信息传输的端口以及整个集群一共有多少个节点
       /etc/ha.d/haresources 本地最简单的基于纯文本文件的CRM,用来定义集群使用的VIP、广播等基本资源  
      /etc/ha.d/authkeys(400) 对传递的心跳信息进行签名,防止心跳信息被改动

下面 我们就开始进行相应的配置:

1、给noid1配置地址
             ifconfig eth0 192.168.0.202/24
             ifconfig eth1 1.1.1.1
             给noid2配置地址
             ifconfig eth0 192.168.0.204/24
             ifconfig eth1 1.1.1.2

2、配置本地主机名称解析  

在node1上
             vim /etc/hosts  添加如下内容
            192.168.0.202     node1.a.org 
            192.168.0.204     node2.a.org

node1、node2的主机名进行相应的修改
             在node1上
             hostname  node1.a.org
             在node2上
             hostname  node2.a.org

3、只有我们要多次在连个节点间拷贝文件,为了省去繁琐的密码输入,我们在两个节点上进行如下配置

在node1上
            ssh-keygen -t rsa
            ssh-copy-id -i .ssh/id_rsa.pub root@192.168.0.204
             在node2上
            ssh-keygen -t rsa
            ssh-copy-id -i .ssh/id_rsa.pub root@192.168.0.202
            从此我们在两个节点上拷贝文件就不需要输入密码了

4、在两个节点上分别安装httpd
             yum install httpd –y
             任何集群服务都需要使用集群启动,而非手动启动,并保证开机不能自动启动
             chkconfig httpd off  防止开机自动启动 
             给每个http写一个网页,内容分别为自己的主机名,以便进行测试
             在两个节点上进行同样的操作

5、开始安装集群服务

(1)、下载安装包

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/a2d6825b45458ea2d416eb4bf3c81026.html