CentOS 6.3 HA集群搭建详细过程 提供 软件包

Linux集群种类


l  高可用性集群:

§  这类集群中比较著名的有Turbolinux TurboHAHeartbeatRedhat RHCS等。

l  负载均衡集群:

§  Turbolinux Cluster ServerLinux Virtual Server都属于负载均衡集群。

l  高性能计算集群:

§  这类软件有Turbolinux EnFusionSCorerocks cluster等。


HA软件

l  Heartbeat是一个守护程序,向其客户提供集群基础框架(通信和成员)服务。

l  heartbeat最核心的包括两个部分,心跳监测部分和资源接管部分.

§  心跳监测可以通过网络链路和串口进行,它们之间相互发送报文来告诉对方自己当前的状态,如果在指定的时间内未受到对方发送的报文,那么就认为对方失效,这时需启动资源接管模块来接管运行在对方主机上的资源或者服务。


Heartbeat应用

l  HA主机拓扑图

§  两台主机连接到以太网

§  两台主机共享存储

§  mysql数据库使用共享存储


2台   CentOS 6.3


Host1    192.168.0.119

Host2    192.168.0.120

Host3    192.168.0.116



配置host1   192.168.0.119    双网卡

eth0 :192.168.0.119

eth1 : 172.16.100.1


ifconfig eth1 172.16.100.1 netmask 255.255.0.0 broadcast 172.16.255.255 up   启动eth1

# ifconfig lo:0 192.168.0.100 netmask 255.255.255.255 broadcast 192.168.0.100 up   #VIP

# route add -host 192.168.0.100 dev lo:0   #加一条主机路由表项


配置host2   192.168.0.120   双网卡

eth0:   192.168.0.120

eth1:   172.16.100.2

ifconfig eth1 172.16.100.2  netmask 255.255.0.0 broadcast 172.16.255.255 up

# ifconfig lo:0 192.168.0.100 netmask 255.255.255.255 broadcast 192.168.0.100 up   #VIP

# route add -host 192.168.0.100 dev lo:0   #加一条主机路由表项


在2台服务器上  添加各自解析主机名

192.168.0.119   host1

192.168.0.120   host2


003WxKF8zy6H4wpMHqc94&690


# rpm -e --nodeps gnutls-2.8.5 cluster-glue-libs-1.0.5 resource-agents


如果没卸载会与下面的heartbeat-2.1.3-3.el5.centos冲突

# rpm -ivh PyXML

# rpm -ivh heartbeat-pils

# yum -y install telnet

# rpm -ivh heartbeat-stonith

# rpm -ivh gnutls

# rpm -ivh heartbeat   装这个的时候需要先安装上面的lzo和libgnutls 才能装上  因为我的就报错需要这2个

#yum �Cy install perl

配置Apache(Host1, Host2配置相同)

Apache是通过VIP访问的,VIP是:192.168.0.100,在两台Web服务器配置以192.168.0.100访问的虚拟主机。

在Apache的配置文件中设定以下的项

ServerName 192.168.0.100

Listen 192.168.0.100:80


分别在/var/www/html下写一个index.html  网页文件进行测试分别是:

1)HostA




This server's IP is 192.168.0.119--host1



2)HostB




This server's IP is 192.168.0.120--host2



下面是真正开始配置


Host1

# cp /usr/share/doc/heartbeat-2.1.3/ha.cf  /etc/ha.d/

# cp /usr/share/doc/heartbeat-2.1.3/haresources  /etc/ha.d/

# cp /usr/share/doc/heartbeat-2.1.3/authkeys  /etc/ha.d/


编辑authkeys文件

# vi /etc/ha.d/authkeys

auth 1

1 crc

去掉注释


authkeys文件的权限为600

# chmod 600 /etc/ha.d/authkeys


编辑haresources

# vi /etc/ha.d/haresources

添加一行:

host1      192.168.0.100      httpd

第一列为默认主机,第二列为虚拟IP,第三列为需要实现高可用的服务名称(在/etc/init.d列表内)


编辑ha.cf

# vi /etc/ha.d/ha.cf

去掉注释,并编辑

logfile /var/log/ha-log

logfacility     local0

keepalive 2

deadtime 30

warntime 10

initdead 120

udpport 694

ucast eth1 172.16.100.2   #使用单播通知对方host2地址

auto_failback on   #主节点恢复正常服务后,是否取回资源

node   host1

node   host2

ping 192.168.220.2  #测试外部网络连通性,通常使用一个外部网关



host2  配置

和上面的一样   只需改一个地方

ucast eth1 172.16.100.1     #使用单播通知对方host1地址


host1和host2启动service heartbeat start

   service httpd  start


host1,host2,host3   关闭selinux   以及iptables   ip6tables

然后在  host3 即可浏览  http://12.168.0.100

可以看到 host1  的index.html 的索引文件内容  



我们可以假设host1关机了   在host2  里  tail   -f  /var/log/messages 可以看到一些提示信息。当再次刷新host3的 网页时 会发现  显示的是host2  的索引文件内容  


http://blog.sina.com.cn/pankuokuo 我的新浪微博地址  求粉 求关注



百度云盘下载 账号[email protected]密码pk492940446





你可能感兴趣的:(linux,centos6.3,HA集群)