LinuxVirtualServer负载均衡之DR配置实例
核心提示:文章标题:LinuxVirtualServer负载均衡之DR配置实例。Linux是中国站长站的1个技术频道。包括桌面利用,Linux系统治理,内核研究,嵌进式系统和开源等1些基天职类
1.安装ipvsadm
下载ipvsadm,下载时需留意对应自己的内核版本。
ipvsadm下载网址:http://www.linuxvirtualserver.org/software/
本文使用的是FC8系统,内核版本2.6.23.1,对应ipvsadm版本1.24.
安装时需要Linux内核源码,假设安装系统时没有安装源码,需要再下载内核源码。本文使用的内核是linux⑵.6.23.1.tar.bz2。把内核解压到/usr/src/linux⑵.6.23.1。下面开始编译安装:
建立内核快捷方式:ln-s/usr/src/linux⑵.6.23.1/usr/src/linux
解压ipvsadm:
tarzxvfipvsadm⑴.24.tar.gz
安装ipvsadm:
cdipvsadm⑴.24
make
makeinstall
安装完成后,下1步我们开始配置IPVS,本文主要先容DirectRouting方式的配置。
2.配置IPVS(DirectRouting)
2.1.网络结构
3台计算机,1台Director安装Linux作负载均衡器,另两台RealServer提供服务。
Director:eth0=192.168.34.40,eth0:0(VirtualIP)=192.168.34.41
RealServer1:IP=192.168.34.26
RealServer2:IP=192.168.34.27
服务端口:443
客户通过VirtualIP192.168.34.41访问服务器。LoadBalancer将来自客户的访问按1定的负载均衡机制分发到192.168.34.26和192.168.34.27这两台实际提供服务的服务器。
2.2.LoadBalancer配置
步骤1:配置DirectorIP
在Director上配置好eth0的IP(192.168.34.40),然后在eth0上新增1个IP(192.168.34.41),命名为eth0:0,作为VirtualIP。
步骤2:配置IPVSTable脚本
编写sh脚本以下:
VIP=192.168.34.41#VritualIP地址
RIP1=192.168.34.27#RealServer1IP
RIP2=192.168.34.26#RealServer2IP
GW=192.168.34.1#RealServer网关IP
#清除IPVSTable
ipvsadm-C
#设置IPVSTable
ipvsadm-A-t$VIP:443-swlc
ipvsadm-a-t$VIP:443-r$RIP1:443-g-w1
ipvsadm-a-t$VIP:443-r$RIP2:443-g-w1
#将IPVSTable保存到/etc/sysconfig/ipvsadm
/etc/rc.d/init.d/ipvsadmsave
#启动IPVS
serviceipvsadmstart#或/etc/rc.d/init.d/ipvsadmstart也能够
#显示IPVS状态
ipvsadm-l
#脚本结束----------------------------
该脚本配置IPVSTable,并将配置保存到/etc/sysconfig/ipvsadm文件中。以后修改IPVSTABLE可直接修改该脚本。固然,您也能够直接编辑该文件来实现IPVSTable的配置。
配置终了后履行/etc/rc.d/init.d/ipvsadmstart(或serviceipvsadmstart)启动IPVS。
通过以上两个步骤,就完成了负载均衡器IPVS的配置。
2.3.RealServer配置
RealServer主要做两个配置,1是添加1个虚拟IP,2是封闭该IP的ARP响应。
2.3.1.Windows系统
对Windows系统的服务器,只要添加1个Loopback的网卡,IP地址设置成虚拟IP(192.168.34.41),子网掩码设置成255.255.255.255,网关地址留空。
操纵:
l从控制面板选择添加硬件;
l选择“是,硬件已连好”;
l选择“添加新的硬件设备”;
l选择“安装我手动从列表选择的硬件”;
l选择“网络适配器”;
l从厂商列表选择“Microsoft”,从网卡列表选择“MicrosoftLoopbackAdapter”;
点下1步开始安装硬件,安装终了后出现1个新的网卡,配置好IP和子网掩码。Windows子网掩码没法配置成255.255.255.255,我们可以先按默许的保存配置,然后从注册表修改子网掩码。
注册表修改子网掩码:
从注册表
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Inte***ces]下找到对应的网卡,将SubnetMask修改成255.255.255.255。然后禁用再启用该网卡即可。
2.3.2.Linux系统
(略)
3.配置LDirectordRealServer故障检测及治理
LDirectord进程定时检测各RealServer运行状态,当检测到某台RealServer故障时,则将该Server从负载均衡调度列表删除,当恢复正常时再加进。
3.1.安装LDirectord
LDirectord软件包括在HeartBeat软件包中。安装HeartBeat时就同时安装了LDirectord。
HeartBeat下载网址:http://www.linuxvirtualserver.org/software/。
安装HeartBeat还需要安装libnet等软件包。可以到网上下载这些软件包来安装。
Libnet下载网址:http://www.packetfactory.net/libnet/dist/libnet.tar.gz
安装libnet:
tarzxflibnet.tar.gz
cdlibnet
./configure
make
makeinstall
安装HeartBeat:
./ConfigureMeconfigure
make
makeinstall
安装完后履行以下命令加进自启动项:
chkconfig–addldirectord
3.2.配置LDirectord
heartbeat/ldirectord目录下有个ldirectord.cf文件。该文件是ldirectord的配置范例。
在/etc/ha.d/目录下新建1个ldirectord.cf文件,按配置范例格式进行配置,主要配置项以下:
checktimeout=3#检测超时3s
checkinterval=1#检测间隔1s
fallback=127.0.0.1:443#所有服务器都故障时访问该服务器
autoreload=yes#配置文件改变时自动加载
logfile="/var/log/ldirectord.log"#日志文件
quiescent=yes
virtual=192.168.34.41:443#虚拟IP
real=192.168.34.26:443gate
real=192.168.34.27:443gate
fallback=127.0.0.1:443#所有服务器都故障时访问该服务器
service=none
scheduler=wlc
persistent=600
protocol=tcp
checktype=on
3.3.启动ldirectord
/etc/rc.d/init.dldirectordstart
留意,启动时假设提示ldirectord某行出错,1般是有些运行需要的软件没安装,大部份是perl开头的软件包。
net-snmp⑸.3⑷.2.i386.rpm
net-snmp-libs⑸.3⑷.2.i386.rpm
perl-Compress-Zlib⑴.41⑴.2.2.i386.rpm
perl-HTML-Parser⑶.50⑴.i386.rpm
perl-HTML-Tagset⑶.10⑵.1.noarch.rpm
perl-libwww-perl⑸.805⑴.1.noarch.rpm
perl-MailTools⑴.74⑴.fc5.noarch.rpm
perl-TimeDate⑴.16⑶.2.noarch.rpm
perl-URI⑴.35⑵.2.noarch.rpm
TAG:服务器,系统,脚本,网卡,内核
评论加载中...
|