Chinaunix首页 | 论坛 | 博客
  • 博客访问: 745634
  • 博文数量: 256
  • 博客积分: 3502
  • 博客等级: 中校
  • 技术积分: 3988
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-17 21:13
文章分类

全部博文(256)

文章存档

2014年(11)

2013年(134)

2012年(111)

我的朋友

分类: 系统运维

2012-05-08 19:41:41

Linux Virtual Server负载均衡 ipvsadm应用 行动

1. 安装ipvsadm

  下载ipvsadm,下载时需留意 对应本身 的内核版本。

  ipvsadm下载网址:

  本文应用 的是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下载网址:。

  安装HeartBeat还必要 安装libnet等软件包。可以到网崎岖载这些软件包来安装。

  Libnet下载网址:

  安装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

阅读(1867) | 评论(0) | 转发(3) |
给主人留下些什么吧!~~