免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3467 | 回复: 1
打印 上一主题 下一主题

[集群与高可用] LINUX 负载均衡及双机热备份设置(heartbeat+lvs)---测试通过 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-06-06 05:09 |只看该作者 |倒序浏览

这篇文章写得是lvs + heartbeat , 完全是我自己做出来的感受,当然有些东西我还不是十分了解:)
测试的机器有4台
10.96.100.237 虚拟ip(对外提供的)
10.96.100.233 heartbeat Load Balancer
10.96.100.234 heartbeat backup
10.96.100.235 realserver
10.96.100.236 realserver
首先在node1,node2上装centos 4.3 系统
node1
cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
10.96.100.233 node1.lvs.com.cn
10.96.100.234 node2.lvs.com.cn
cat /etc/sysconfig/network-scirpts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.96.100.233
NETMASK=255.255.255.0
下载heartbeat软件,libnet软件(heartbeat需要的)
groupadd -g 694 haclient
useradd -u 694 -g haclient hacluster
tar -zvxf libnet.tar.gz
cd libnet
./configure && make && make install
tar -zvxf heartbeat-2.0.4.tar.gz
cd heartbeat-2.0.4
./ConfigureMe configure --disable-swig --disable-snmp-subagent
&& make && make install
cp doc/ha.cf doc/haresources doc/authkeys /etc/ha.d/
cp ldirectord/ldirectord.cf /etc/ha.d/
chkconfig --add heartbeat
chkconfig --del ldirectord
grep -v -E '^#|^$' /etc/ha.d/ha.cf
logfile /var/log/ha-log
logfacility local0
keepalive 2
deadtime 30
warntime 10
initdead 120
udpport 694
baud 19200
bcast eth0 # Linux
mcast eth0 225.0.0.1 694 1 0
auto_failback on
node node1.lvs.com.cn
node node2.lvs.com.cn
respawn root /usr/lib/heartbeat/ipfail
apiauth ipfail gid=root uid=root
grep -v -E '^#|^$' /etc/ha.d/haresources
node1.lvs.com.cn IPaddr::10.96.100.237/24/eth0:0 ipvsadm ldirectord
grep -v -E '^#|^$' /etc/ha.d/ldirectord.cf
checktimeout=3
checkinterval=1
fallback=127.0.0.1:80
autoreload=yes
quiescent=yes
virtual=10.96.100.237:80
real=10.96.100.235:80 gate
real=10.96.100.236:80 gate
fallback=127.0.0.1:80 gate
service=http
scheduler=rr
#persistent=600
#netmask=255.255.255.255
protocol=tcp
认证文件(/etc/ha.d/authkeys),选取一种认证方式,这个文件的权限必须是600:
auth 1
1 crc
#2 sha1 sha1_any_password
#3 md5 md5_any_password
安装ipvsadm
rpm -ivh ipvsadm-***.rpm
cat /etc/sysconfig/ipvsadm
-A -t 10.96.100.237:80 -s wlc
-a -t 10.96.100.237:80 -r 10.96.100.235:80 -g -w 1
-a -t 10.96.100.237:80 -r 10.96.100.236:80 -g -w 1
node2的配置需要与node1完全一致即可.
realserver
cat /etc/sysconfig/network-scripts/ifcfg-eth0:0
DEVICE=eth0:0
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.96.100.237
NETMASK=255.255.255.255
BROADCAST=10.96.100.237
cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.96.100.236
NETMASK=255.255.255.0
GATEWAY=10.96.100.254
grep -v -E '^$|^#' /etc/sysctl.conf
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.conf.all.arp_ignore = 1 (忽略arp)
net.ipv4.conf.all.arp_announce = 2 (禁止arp广播)
sysctl -p 使设置生效
其他的realserver 与这个配置相同
reboot 这四台机器
如果一切顺利
http://10.96.100.237
不停的刷新她会访问10.96.100.235,236
当然235,236要装http server
测试heartbeat 拔掉网线看backup 会不会接管,注意查看/var/log/ha-log
将网线插回,看load blancer 是不是会接管,因为这是active/standby的模式
正常的话互相切换不会有问题
测试 ldirectord , 将235的网线拔掉, 看看他是不是只访问236
可以通过ipvsadm -l -c 查看
如果正常他不会访问235了
如果有问题可以与我联系
QQ
330333004


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/70914/showart_727710.html

论坛徽章:
0
2 [报告]
发表于 2008-07-11 14:47 |只看该作者
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP