Centos4.8-Linux下用heartbeat做双机热
备服务实验
Linux上的heartbeat双机热备服务架设
一、 环境搭建
(一) 安装前准备
1、 硬件需求:VMware workstation 一台,并在虚拟机上安装好linux系统(此实验用的centos4.8),克隆出两台实验机子,分别将其命名为sev1,sev2且分别虚拟出两张网卡。
2、 软件需求:ipvsadm与heartbeat(此实验用的是,heartbeat-2.1.3-3.el4.centos.i386.rpm,heartbeat-pils-2.1.3-3.el4.centos.i386.rpm,heartbeat-stonith-2.1.3-3.el4.centos.i386.rpm,ipvsadm-1.24-6.1.i386.rpm)
(二) 两台机子的基本配置
1、网络基本配置:
sev1主机名为:sev1.example.com ip:eth0:192.168.1.10
eth1:10.0.0.10 (心跳地址)
sev2主机名为:sev2.example.com ip:eth0:192.168.1.20
eth1:10.0.0.20 (心跳地址)
特别注意检查以下几个文件:
/etc/hosts
/etc/resolv.conf
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
2、sev1与sev2主机下/etc/hosts内容的配置相同:
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1
localhost.localdomain localhost
192.168.1.10
sev1.example.com sev2
192.168.1.20
sev2.example.com sev2
10.0.0.10
sev1
10.0.0.20
sev2
3、分别在sev1与sev2机子上安装httpd服务:
#yum install httpd
在sev1下编辑如下
#vi /var/www/html/index.html
This is web~~~1111111111111
在sev2下编辑如下
#vi /var/www/html/index.html
This is web~~~222222222222
4、关闭防火墙与selinux:配置:
#vi /etc/sysconfig/selinux
SELINUX=disabled
#chkconfig --level 3 iptables off
5、安装ipvsadm与heartbeat:
# rpm –ivh /var/ftp/pub/ipvsadm-1.24-6.1.i386.rpm
# rpm –ivh /var/ftp/pub/heartbeat-pils-2.1.3-3.el4.centos.i386.rpm
# rpm –ivh /var/ftp/pub/heartbeat-stonith-2.1.3-3.el4.centos.i386.rpm
# rpm –ivh /var/ftp/pub/ heartbeat-stonith-2.1.3-3.el4.centos.i386.rpm
二、 配置heartbeat
(一) 配置sev1主机下ha.cf、authkeys、
haresources内容
1、将/usr/share/doc/heartbeat-2.1.3/ha.cf这个文件复制到/etc/ha.d/目录下:
#cp /usr/share/doc/heartbeat-2.1.3/ha.cf
/etc/ha.d/
#cp /usr/share/doc/heartbeat-2.1.3/authkeys
/etc/ha.d/
#cp /usr/share/doc/heartbeat-2.1.3/hareources
/etc/ha.d/
2、配置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
bcast
eth1 # Linux
ucast eth1 10.0.0.20
node
sev1.example.com
node
sev2.example.com
ping 192.168.1.1
3、配置authkeys文件内容如下:
# vi /etc/ha.d/authkeys
auth 1
1 crc
#2 sha1 HI!
#3 md5 Hello!
注意:开启验证模式要必须执行下面一天命令
#chmod 600 authkeys
4、配置haresources文件内容如下:
# vi /etc/ha.d/haresources
#node-name resource1 resource2 ... resourceN
sev1.example.com 192.168.1.88 httpd
(二) 配置sev2主机下ha.cf、authkeys、
haresources内容
1、将/usr/share/doc/heartbeat-2.1.3/ha.cf这个文件复制到/etc/ha.d/目录下:
#cp /usr/share/doc/heartbeat-2.1.3/ha.cf
/etc/ha.d/
#cp /usr/share/doc/heartbeat-2.1.3/authkeys
/etc/ha.d/
#cp /usr/share/doc/heartbeat-2.1.3/hareources
/etc/ha.d/
2、配置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
bcast
eth1 # Linux
ucast eth1 10.0.0.10
node
sev1.example.com
node
sev2.example.com
ping 192.168.1.1
3、配置authkeys文件内容如下:
# vi /etc/ha.d/authkeys
auth 1
1 crc
#2 sha1 HI!
#3 md5 Hello!
注意:开启验证模式要必须执行下面一天命令
#chmod 600 authkeys
4、配置haresources文件内容如下:
# vi /etc/ha.d/haresources
#node-name resource1 resource2 ... resourceN
sev1.example.com 192.168.1.88 httpd
5、启动heartbeat服务:
# service
heartbeat start
三、 测试
(一) 查看是否有虚拟ip:192.168.1.88,如下:
eth0:0
Link encap:Ethernet HWaddr 00:0C:29:1F:56:B7
inet addr:192.168.1.88 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:185 Base address:0x2000
若有,则说明我们heartbeat配置成功了
(二) 在测试机上打开ie浏览器:
在地址栏输入:
http://192.168.1.88,回车出现下图:
关闭sev1的heartbeat服务器,在地址栏输入:
http://192.168.1.88,回车出现下图
四、 心得体会
今天是开心而又难忘的一天,终于在Linux下成功的完成了这次用heartbeat来做双机备份,其实后头一想,也不是像想象中那样难,尽管花费了很多时间去查找资料,研究她,但我认为这是值得的,因为喜欢她,才回去追逐她,就好比像自己的女友似的,同时也说明了自己是菜鸟,还需要加倍努力去学习,去恶补自己不知道的新知识。
转载于:https://blog.51cto.com/posevirus/426896