实例解析:虚拟机中Lvs的负载均衡实验

2016-01-29 17:39 88 1 收藏

实例解析:虚拟机中Lvs的负载均衡实验,实例解析:虚拟机中Lvs的负载均衡实验

【 tulaoshi.com - Linux 】

环境,三台虚拟机系统,debian,centos,rhel。基于ipvsadm的负载均衡,采用DR方式,rhel做lvs的director,其余两台是real。负载均衡的服务是web。

实现如下:

所需的软件:os(废话),ipvsadm,及其相关库文件(默认安装即可)

ipvsadm下载地址:ipvsadm下载 采用源码包的安装形式安装。

安装要点:

1、ipvsadm需要os的内核源路径支持,从www.kernel.org下载最新的内核,放到/usr/src中并解压。

一般解压后是linux-2.6.x的目录,使用命令#ln -s linux-2.6.x linux 这样以来就生成了/usr/src/linux,这才是ipvsadm的默认编译器包含文件路径,否则会报错!切记。

2、director服务器需要开启ip_forward功能,

在/etc/sysctl.conf中添加net.ipv4.ip_forward = 1

脚本 echo "net.ipv4.ip_forward = 1" /etc/sysctl.conf

需要配置虚拟ip,网卡是eth0:192.168.1.154,vip是eth0:0192.168.1.2

脚本 ifconfig eth0 192.168.1.154 broadcast 192.168.1.255 netmask 255.255.255.0

ifconfig eth0:0 192.168.1.2 broadcast 192.168.1.255 netmask 255.255.255.0

需要设置路由

脚本 route add -host 192.168.1.2 dev eth0:0

ipvsadm的设置脚本:

ipvsadm –C

ipvsadm -A -t 192.168.1.2:80 -s wcl

ipvsadm -a -t 192.168.1.2:80 -r 192.168.1.138 -g -w 3

ipvsadm -a -t 192.168.1.2:80 -r 192.168.1.156 -g -w 1

ipvsadm

可以将以上脚本成一个文件,加入到/etc/rc.local中,开机自动运行。

3、real机器需要关闭arp,否则无法接收数据包。

具体操作是在/etc/sysctl.conf文件中添加如下几行:

net.ipv4.ip_forward = 1

net.ipv4.conf.lo.arp_ignore = 1

net.ipv4.conf.lo.arp_announce = 2

net.ipv4.conf.all.arp_ignore = 1

net.ipv4.conf.all.arp_announce = 2

4、real机器需要设置本地虚拟地址脚本如下:

ifconfig lo:0 192.168.1.2 broadcast 192.168.1.2 netmask 255.255.255.255

对于linux机器,直接创建文件etc/sysconfig/network-scripts/ifcfg-lo:0,

写入脚本

DEVICE=lo:0

IPADDR=192.168.1.2

NETMASK=255.255.255.255

ONBOOT=yes即可;

5、real服务器上分别安装apache服务

6、lvs服务器最好不要安装防火墙,即使安装了,那么根据需要建立相应的规则,否则无法生效。在本例中,需要开启80端口。

安装配置完毕后即可生效。

为了测试方便,我使用linux系统中的links工具进行测试,经过反复执行,看到网页不断的在两个apache服务器之间交替显示。

使用软件汇总:

os kernel:

debian:Linux debiancpu 2.6.18-4-686 #1 SMP Wed May 9 23:03:12 UTC 2007 i686 GNU/Linux

centos:Linux localhost.localdomain 2.6.18-8.1.4.el5xen #1 SMP Thu May 17 05:27:0

来源:https://www.tulaoshi.com/n/20160129/1502378.html

延伸阅读
  基于DNS的多机均衡负载的实现- 前二天为一个客户添加了一台服务器。共同承担一个论坛的运作。但是。要实现负载均衡。的确是件难事。 之前有试过几个方法, 一、DNS轮值。。优点:简单实现。缺点:无法检测各个服务器的负荷。难控制访客的访问地址(一般DNS服务器都有缓存,所以。效果不明显) 二、前台程序。。使用了一个类似Zeus...
标签: 服务器
VMware虚拟机安装图解 更新了一下 VMware虚拟机. 也重新编写了安装批处理程序,和卸载程序. 测试后觉得还不错,遂发上来了. 简单说明一下: Xp下测试完全没问题. 沐珑还特意在虚拟机中安装了个Windows7测试一下. (由于xp和Windows7用户路径不同,安装程序会自动识别系统版本,并配置路径.) 运行 "安装.bat&qu...
标签: 电脑入门
Win10预览版一经发布,众多用户们便在热火朝天的升级安装Win10系统。不过对于这款发布不久的系统,图老师小编还是很好奇的,想到了许多与它相关的问题,其中一个便是能否用虚拟安装Win10系统。为了验证这个问题,图老师小编便决定用虚拟机试试。 用虚拟机安装Win10的方法/步骤: 1. 安装vmware 10后进和这个软件,再点击 2. 进入新建虚拟机...
标签: 电脑入门
微软将Hyper-V管理器集成到个人Windows 8系统中,可以说是一大改进。而这一改进也说明虚拟化与云计算在IT行业中举足轻重的位置。利用Hyper-V可以在个人电脑中直接创建出Hyper-V,具体的方法在之前已经与大家分享过,接下来,看一看Hyper-V一些基础操作与应用。 a. 连接到虚拟机与开机 在Hyper-V管理器中双击待启动的虚拟机或在待启动的虚拟机...
标签: 服务器
如何连接虚拟机的系统   演示环境 Windows 7 是我电脑使用本机 VMware8.0安装了Linux CentOS 6.2 X32 我先来讲讲我的网络情况,目前我使用的IP地址是192.168.1.99、子网掩码是255.255.255.0、网关是192.168.1.1。而我希望我电脑本机能远程虚拟机的操作系统CentOS,把它弄成同一个网段的。 好,前提下VM里面的Cent...

经验教程

308

收藏

47
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部