首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Linux频道
Google
首页 入门 Linux编程 系统管理 网络管理 Linux认证 Unix/BSD Linux数据库 Linux集群 Linux手册 Linux下载 Ubuntu 论坛 专题 RSS
您现在的位置: 中国IT实验室 >> Linux >> 网络管理 >> Linux服务器 >> 正文

Linux Virtual Server负载均衡之DR配置实例

    1.安装ipvsadm

    下载ipvsadm ,下载时需注意对应自己的内核版本。

    ipvsadm 下载网址:linuxvirtualserver.org/software/">http://www.linuxvirtualserver.org/software/

    本文使用的是FC8 系统,内核版本2.6.23.1,对应ipvsadm 版本1.24.
   
    安装时需要Linux内核源码,如果安装系统时没有安装源码,需要再下载内核源码。本文使用的内核是linux-2.6.23.1.tar.bz2。把内核解压到/usr/src/linux-2.6.23.1。下面开始编译安装:

    建立内核快捷方式:ln -s /usr/src/linux-2.6.23.1 /usr/src/linux

    解压ipvsadm:

    tar zxvf ipvsadm-1.24.tar.gz

    安装ipvsadm:

    cd ipvsadm-1.24

    make

    make install

    安装完成后,下一步我们开始配置IPVS,本文主要介绍Direct Routing方式的配置。

    2. 配置IPVS(Direct Routing)

    2.1.网络结构

    三台计算机,一台Director安装Linux作负载均衡器,另两台Real Server提供服务。

    Director:eth0=192.168.34.40,eth0:0(Virtual IP) =192.168.34.41

    RealServer1:IP=192.168.34.26

    RealServer2:IP=192.168.34.27

    服务端口:443

    客户通过Virtual IP 192.168.34.41访问服务器。Load Balancer将来自客户的访问按一定的负载均衡机制分发到192.168.34.26和192.168.34.27这两台实际提供服务的服务器

    2.2.Load Balancer配置

    步骤1:配置Director IP

    在Director上配置好eth0的IP(192.168.34.40),然后在eth0上新增一个IP(192.168.34.41),命名为eth0:0,作为Virtual IP。

    步骤2:配置IPVS Table脚本

    编写sh脚本如下:

    VIP=192.168.34.41 #Vritual IP地址
    RIP1=192.168.34.27 #Real Server 1 IP
    RIP2=192.168.34.26 #Real Server 2 IP
    GW=192.168.34.1 #Real Server 网关IP

    #清除IPVS Table
    ipvsadm -C

    #设置IPVS Table
    ipvsadm -A -t $VIP:443 -s wlc
    ipvsadm -a -t $VIP:443 -r $RIP1:443 -g -w 1
    ipvsadm -a -t $VIP:443 -r $RIP2:443 -g -w 1

    #将IPVS Table保存到/etc/sysconfig/ipvsadm
    /etc/rc.d/init.d/ipvsadm save

    #启动IPVS
    service ipvsadm start #或者/etc/rc.d/init.d/ipvsadm start也可以

    #显示IPVS状态
    ipvsadm -l

    #脚本结束----------------------------

    该脚本配置IPVS Table,并将配置保存到/etc/sysconfig/ipvsadm文件中。以后修改IPVS TABLE可直接修改该脚本。当然,您也可以直接编辑该文件来实现IPVS Table的配置。

    配置完毕后执行/etc/rc.d/init.d/ipvsadm start(或service ipvsadm start)启动IPVS。


    通过以上两个步骤,就完成了负载均衡器IPVS的配置。

    2.3.Real Server配置

    Real Server主要做两个配置,一是添加一个虚拟IP,二是关闭该IP的ARP响应。

    2.3.1.Windows系统

    对于Windows系统的服务器,只要添加一个Loopback的网卡,IP地址设置成虚拟IP(192.168.34.41),子网掩码设置成255.255.255.255,网关地址留空。

    操作:

    l 从控制面板选择添加硬件;

    l 选择“是,硬件已连好”;

    l 选择“添加新的硬件设备”;

    l 选择“安装我手动从列表选择的硬件”;

    l 选择“网络适配器”;

    l 从厂商列表选择“Microsoft”,从网卡列表选择“Microsoft Loopback Adapter”;

    点下一步开始安装硬件,安装完毕后出现一个新的网卡,配置好IP和子网掩码。Windows子网掩码无法配置成255.255.255.255,我们可以先按默认的保存配置,然后从注册表修改子网掩码。

    注册表修改子网掩码:

    从注册表

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces]下找到对应的网卡,将SubnetMask修改成255.255.255.255。然后禁用再启用该网卡即可。


    2.3.2.Linux系统

    (略)


    3.配置LDirectord RealServer故障检测及管理

    LDirectord进程定时检测各Real Server运行状态,当检测到某台Real Server故障时,则将该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:

    tar zxf libnet.tar.gz

    cd libnet

    ./configure

    make

    make install


    安装HeartBeat:

    ./ConfigureMe configure

    make

    make install


    安装完后执行以下命令加入自启动项:

    chkconfig –add ldirectord


     3.2.配置LDirectord

     heartbeat/ldirectord目录下有个ldirectord.cf文件。该文件是ldirectord的配置范例。

     在/etc/ha.d/目录下新建一个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:443 gate

     real=192.168.34.27:443 gate

     fallback=127.0.0.1:443 #所有服务器都故障时访问该服务器

     service=none

     scheduler=wlc

     persistent=600

     protocol=tcp

     checktype=on


     3.3.启动ldirectord

    /etc/rc.d/init.d ldirectord start

    注意,启动时如果提示ldirectord某行出错,一般是有些运行需要的软件没安装,大部分是perl开头的软件包。

    net-snmp-5.3-4.2.i386.rpm
    net-snmp-libs-5.3-4.2.i386.rpm
    perl-Compress-Zlib-1.41-1.2.2.i386.rpm
    perl-HTML-Parser-3.50-1.i386.rpm
    perl-HTML-Tagset-3.10-2.1.noarch.rpm
    perl-libwww-perl-5.805-1.1.noarch.rpm
    perl-MailTools-1.74-1.fc5.noarch.rpm
    perl-TimeDate-1.16-3.2.noarch.rpm
    perl-URI-1.35-2.2.noarch.rpm

【责编:Zenghui】
中国IT教育
相关产品和培训
文章评论
 友情推荐链接
 专题推荐

 ·防范Linux病毒 打造没有病毒的乐土…
 ·Linux Shell编程实用指南…
 ·Linux日志分析与管理
 ·揭密Linux内存管理
 ·邮件服务Sendmail应用配置
 ·Linux 安全管理…
 ·Linux 下DNS服务器架设攻略…
 ·Linux 下的路由的配置与应用…
 ·专题:Apache实用手册
 ·全面剖析Linux文件系统
 今日更新
 认证培训
 频道精选
 Windows频道导航