群集服务器(HA+LB)

群集服务器,LB提供负载均衡 ,支持大量并发连接HA提供高可用性;HP用于科学计算。

拓扑图:

安装heartbeat

Node1

1Node1配置yum

[root@node1 ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo

[rhel-server]#yum仓库名

name=Red Hat Enterprise Linux server#yum仓库详细名字

baseurl=file:///mnt/cdrom/Server#指明server仓库位置

enabled=1#开启仓库

gpgcheck=1#启动签名

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release#签名文件件

2Node1用本地yum库安装heartbeat

[root@node1 ~]# yum localinstall heartbeat-2.1.4-9.el5.i386.rpm heartbeat-devel-2.1.4-9.el5.i386.rpm heartbeat-pils-2.1.4-10.el5.i386.rpm heartbeat-stonith-2.1.4-10.el5.i386.rpm libnet-1.1.4-3.el5.i386.rpm perl-MailTools-1.77-1.el5.noarch.rpm --nogpgcheck#取消签名检测

[root@node1 ~]# rpm -ivh heartbeat-ldirectord-2.1.4-9.el5.i386.rpm

Node2

1Node2配置yum

[root@node2 ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo

[rhel-server] #yum仓库名

name=Red Hat Enterprise Linux server#yum仓库详细名字

baseurl=file:///mnt/cdrom/Server#指明server仓库位置

enabled=1#开启仓库

gpgcheck=1#启动签名

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release#签名文件件

2Node2用本地yum库安装heartbeat

[root@node2 ~]# yum localinstall heartbeat-2.1.4-9.el5.i386.rpm heartbeat-devel-2.1.4-9.el5.i386.rpm heartbeat-pils-2.1.4-10.el5.i386.rpm heartbeat-stonith-2.1.4-10.el5.i386.rpm libnet-1.1.4-3.el5.i386.rpm perl-MailTools-1.77-1.el5.noarch.rpm --nogpgcheck#取消签名检测

[root@node2 ~]# rpm -ivh heartbeat-ldirectord-2.1.4-9.el5.i386.rpm

配置

1、指明ipvsadm规则

[root@node1 ~]# cp /usr/share/doc/heartbeat-ldirectord-2.1.4/ldirectord.cf /etc/ha.d/ #产生配置文档

[root@node1 ~]# cd /etc/ha.d/

[root@node1 ha.d]# vim ldirectord.cf

[root@node1 ha.d]# scp ldirectord.cf node2.a.com:/etc/ha.d/ #拷贝一份给node2

Node1产生heartbeat配置文件

[root@node1 ~]# cd /usr/share/doc/heartbeat-2.1.4/

[root@node1 heartbeat-2.1.4]# cp ha.cf /etc/ha.d/

[root@node1 heartbeat-2.1.4]# cp authkeys /etc/ha.d/

[root@node1 heartbeat-2.1.4]# cp haresources /etc/ha.d/

[root@node1 heartbeat-2.1.4]#

2、指明出口

[root@node1 ha.d]# vim ha.cf


3、配置共享密钥

[root@node1 ha.d]# dd if=/dev/random bs=512 count=1|md5sum #产生512位随机数并以md5加密



[root@node1 ha.d]#vim authkeys#配置



[root@node1 ha.d]# chmod 600 authkeys#修改文件的权限

[root@node1 ha.d]# scp authkeys ha.cf  node2.a.com:/etc/ha.d/#node1上的文件拷到node2



4设置监控的资源

[root@node1 ha.d]# vim haresources

node1.a.com   192.168.10.6/24/eth0 ldirectord::ldirectord.cf #检测服务器名、ivp、端口、服务



[root@node1 ha.d]# scp haresources node2.a.com:/etc/ha.d/#将配置文档拷给node2



安装ipvsadm

Node1

[root@node1 ~]# cd /mnt/cdrom/Cluster

[root@node1 Cluster]# rpm -ivh ipvsadm-1.24-10.i386.rpm #安装主程序

Node2

[root@node2 ~]# cd /mnt/cdrom/Cluster

[root@node2 Cluster]# rpm -ivh ipvsadm-1.24-10.i386.rpm #安装主程序

启动

[root@node1 ha.d]# service heartbeat start



[root@node2 ~]# service heartbeat start



搭建web服务器

服务器web1

安装apache

[root@web1 ~]# mkdir /mnt/cdrom #创建挂载点

[root@web1 ~]# mount /dev/cdrom /mnt/cdrom#挂载光盘

[root@web1 ~]# cd /mnt/cdrom/Server/ #进入文件夹

[root@web1 Server]# rpm -ivh httpd-2.2.3-31.el5.i386.rpm #安装

[root@web1 Server]# service httpd start #启动

配置

[root@web1 Server]# cd /var/www/html/

[root@web1 html]# echo "ok">.test.html #写出我们的监控文件

[root@web1 html]#

[root@web1 ~]# vim /etc/sysctl.conf #设置忽视arp

net.ipv4.conf.all.arp_announce=2

net.ipv4.conf.all.arp_ignore=1



[root@web1 ~]# sysctl -p #使其生效

[root@web1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-lo:0 #创建网卡

TYPE=Ethernet

DEVICE=lo:0

HWADDR=00:00:00:00:00:00

BOOTPROTO=none

NETMASK=255.255.255.255

IPADDR=192.168.10.6


[root@web1 ~]# vim /var/www/html/index.html #创建web页面

web1


服务器web2

安装apache

[root@web2 ~]# mount /dev/cdrom /mnt/cdrom#挂载光盘

[root@web2 ~]# cd /mnt/cdrom/Server/#进入文件夹

[root@web2 Server]# rpm -ivh httpd-2.2.3-31.el5.i386.rpm #安装

[root@web2 Server]# service httpd start#启动

配置

[root@web2 Server]# cd /var/www/html/

[root@web2 html]# echo "ok">.test.html#写出我们的监控文件

[root@web2 html]#

[root@web2 html]# vim /etc/sysctl.conf #设置忽视arp

net.ipv4.conf.all.arp_announce = 2

net.ipv4.conf.all.arp_ignore = 1



[root@web2 html]# sysctl -p #使其生效

[root@web2 html]# vim /etc/sysconfig/network-scripts/ifcfg-lo:0 #创建网卡

TYPE=Ethernet

DEVICE=lo:0

HWADDR=00:00:00:00:00:00

BOOTPROTO=none

NETMASK=255.255.255.255

IPADDR=192.168.10.6



[root@web2 html]# vim index.html #创建web页面

web2



测试

测试1



监测的的结果


测试2

web1关闭

[root@web1 html]# service httpd stop

监测的的结果

能够起到备份的作用。

测试3

node1关闭

[root@node1 ha.d]# /usr/lib/heartbeat/hb_standby

node2上查看

可以看到node2立即启用,可以起到高可用性。


你可能感兴趣的:(HA,heartbeat,lb,lvs-dr)