LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。

宗旨:
  使用集群技术和Linux操作系统实现一个高性能、高可用的服务器.
  很好的可伸缩性(Scalability)
  很好的可靠性(Reliability)
  很好的可管理性(Manageability)。

特点:

  可伸缩网络服务的几种结构,它们都需要一个前端的负载调度器(或者多个进行主从备份)。我们先分析实现虚拟网络服务的主要技术,指出IP负载均衡技术是在负载调度器的实现技术中效率最高的。在已有的IP负载均衡技术中,主要有通过网络地址转换(Network Address Translation)将一组服务器构成一个高性能的、高可用的虚拟服务器,我们称之为VS/NAT技术(Virtual Server via Network Address Translation)。在分析VS/NAT的缺点和网络服务的非对称性的基础上,我们提出了通过IP隧道实现虚拟服务器的方法VS/TUN (Virtual Server via IP Tunneling),和通过直接路由实现虚拟服务器的方法VS/DR(Virtual Server via Direct Routing),它们可以极大地提高系统的伸缩性。VS/NAT、VS/TUN和VS/DR技术是LVS集群中实现的三种IP负载均衡技术。

优点:

  1、开源,免费
  2、在网上能找到一些相关技术资源
  3、具有软件负载均衡的一些优点
缺点:
  1、最核心的就是没有可靠的支持服务,没有人对其结果负责;
  2、功能比较简单,支持复杂应用的负载均衡能力较差,如算法较少等;
  3、开启隧道方式需重编译内核;
  4、配置复杂;
  5、主要应用于LINUX,目前没有专门用于WINDOWS的版本,不过可以通过配置,使windows成为LVS集群中的real server(win2003、win2008中)。

环境:

Web-Server:Centos6.8    192.168.126.135

Web-Server:Centos6.8    192.168.126.134

在Web服务器上搭建web:

1、安装web系统,在centOS上可以使用命令yum install进行安装,-y 表示安装过程中全部选择yes,我这里做测试环境,所以简单安装

yum -y install httpd 

2、设置httpd、mysqld为开机启动服务

chkconfig httpd on

3、启动服务、关闭防火墙

service httpd start
service iptables stop #为了测试方便,直接关闭防火墙

4、安装虚拟IP管理工具:ipvsadm

yum -y install ipvsadm

5、新建脚本:

#!/bin/bash

VIP=192.168.126.100  #假设126.100是VIP
RIP1=192.168.126.135 #web-
RIP2=192.168.126.134 #web- case "$1" in
start)
echo "开始配置LVS Director Server"
ifconfig eth0: $VIP broadcast $VIP netmask 255.255.255.255 up
route add -host $VIP dev eth0:
echo "">/proc/sys/net/ipv4/ip_forward
ipvsadm -C
ipvsadm -A -t $VIP: -s rr
ipvsadm -a -t $VIP: -r $RIP1: -g
ipvsadm -a -t $VIP: -r $RIP2: -g
ipvsadm
echo "配置成功"
;;
stop)
echo "正在关闭LVS Director Server"
echo "">/proc/sys/net/ipv4/ip_forward
ipvsadm -C
ifconfig eth0: down
echo "关闭成功!"
;;
*)
echo "用法:$0 {start|stop}"
exit
esac

6、赋予脚本权限并运行脚本

[root@localhost /]# sh lvs.sh start
开始配置LVS Director Server
IP Virtual Server version 1.2. (size=)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.126.100:http rr #虚拟IP
-> 192.168.126.134:http Route #WEB-1
-> 192.168.126.135:http Route #WEB-2
配置成功

在另一台 Web服务器上搭建web:

1、安装web系统,在centOS上可以使用命令yum install进行安装,-y 表示安装过程中全部选择yes,我这里做测试环境,所以简单安装

yum -y install httpd 

2、设置httpd、mysqld为开机启动服务

chkconfig httpd on

3、启动服务、关闭防火墙

service httpd start
service iptables stop #为了测试方便,直接关闭防火墙

4、安装虚拟IP管理工具:ipvsadm

yum -y install ipvsadm

5、新建脚本:

[root@localhost /]# vim lvs.sh
#!/bin/bash VIP=192.168.126.100 #VIP case "$1" in
start)
echo "配置lvs Real Server开始..."
ifconfig lo: $VIP broadcast $VIP netmask 255.255.255.255 up
route add -host $VIP dev lo:
echo "" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
stop)
echo "正在关闭lvs Real server"
ifconfig lo: down
echo "" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo "用法:$0 {start|stop}"
exit
esac [root@localhost /]# sh lvs.sh start
配置lvs Real Server开始...

  配置完成!

  打开浏览器访问VIP地址:http://192.168.126.100  持续刷新网页看会不会出现访问到两个web服务器地址的页面

  如果你需要进一步配置LVS+Keepalived,可以参考:LVS+keepalived配置

Centos 6.8 配置Lvs的更多相关文章

  1. centos LB负载均衡集群 三种模式区别 LVS/NAT 配置 LVS/DR 配置 LVS/DR + keepalived配置 nginx ip_hash 实现长连接 LVS是四层LB 注意down掉网卡的方法 nginx效率没有LVS高 ipvsadm命令集 测试LVS方法 第三十三节课

    centos   LB负载均衡集群 三种模式区别 LVS/NAT 配置  LVS/DR 配置  LVS/DR + keepalived配置  nginx ip_hash 实现长连接  LVS是四层LB ...

  2. centos配置LVS

    LVS有三种工作模式:NAT, TUN, DR.  DR是三种工作模式中性能最高的,TUN次之. 本文记录LVS/TUN和LVS/DR工作模式的配置过程. 环境: 三台CentOS 7 x64 虚拟机 ...

  3. centos下LVM配置与管理

    centos下LVM配置与管理 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层, ...

  4. Ubuntu下配置LVS【h】

    以后服务器只用CentOS和Ubuntu.下午用redhat装个lvs装了一下午都没搞好,TNND的.果断用Ubuntu,不到两个小时就搞定了. 原文参见: http://kamengwang.blo ...

  5. CentOS下Apache配置多域名或者多端口映射

    CentOS下Apache默认网站根目录为/var/www/html,假如我默认存了一个CI项目在html文件夹里,同时服务器的外网IP为ExampleIp,因为使用的是MVC框架,Apache需开启 ...

  6. CentOS 6.3配置PPTP VPN的方法

    1.验证ppp 用cat命令检查是否开启ppp,一般服务器都是开启的,除了特殊的VPS主机之外. [root@localhost1 /]# cat /dev/ppp cat: /dev/ppp: No ...

  7. 基于VMware为CentOS 6.5配置两个网卡

    为CentOS 6.5配置两块网卡,一块是eth0,一块是eth1,下面以master为例 1.选择“master”-->“编辑虚拟机设置”,如下所示 2.单击“添加”,如下 3.选择“网络适配 ...

  8. Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)

    Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)   关于LAMP的各种知识,还请大家自行百度谷歌,在这里就不详细的介绍了,今天主要是介绍一下在Centos下安装,搭建一 ...

  9. 安装LVS安装LVS和配置LVS的工作比较繁杂

    安装LVS安装LVS和配置LVS的工作比较繁杂,读者在配置的过程中需要非常细心和耐心.在本节我们将对其进行详细地介绍.主要包括如下几个核心步骤:1.获取支持LVS的内核源代码如果读者需要使用LVS,需 ...

随机推荐

  1. centos6.3升级python至2.7.5

    centos6.3自带的python版本是2.6.6,有时候需要升级到2.7.这里记录一下升级过程,方便查阅.实际上是转载自http://flyingdutchman.iteye.com/blog/1 ...

  2. DOM编程 --《高性能JavaScript》

    1.重绘和重排 浏览器下载完页面的所有组件 —— HTML标记,CSS,JavaScript,图片,会解析并生成两个内部数据结构. DOM树 表示页面结构 渲染树(CSS) 表示DOM节点如何显示 当 ...

  3. HashMap底层原理以及与ConCurrentHashMap区别

    HashMap基于hashing原理,我们通过put()和get()方法储存和获取对象.当我们将键值对传递给put()方法时,它调用键对象的hashCode()方法来计算hashcode,让后找到bu ...

  4. Ajax的简单实现(Json)

    之前写的是一般的Ajax if (request.status === 200) { document.getElementById("createResult").innerHT ...

  5. poj 3017 Cut the Sequence(单调队列优化DP)

    Cut the Sequence \(solution:\) 这道题出的真的很好,奈何数据水啊! 这道题当时看得一脸懵逼,说二分也不像二分,说贪心也不像贪心,说搜索吧这题数据范围怎么这么大?而且这题看 ...

  6. HDU 6114 Chess 【组合数】(2017"百度之星"程序设计大赛 - 初赛(B))

    Chess Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  7. css3某些特性

    在下列情况下,建议使用opacity属性而不是rgba()函数 1.实现多种颜色(元素)的半透明效果.使用opacity属性,不仅背景颜色,就连文本颜色.边框颜色都会变透明. 2.在不知道颜色的情况下 ...

  8. ES6 数组的解构赋值

    数组的解构赋值 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 以前,为变量赋值,只能直接指定值. let a = 1; let b = ...

  9. 一步一步学Silverlight 2系列(22):在Silverlight中如何用JavaScript调用.NET代码

    概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  10. Centos6.6安装后一些常见问题详解

    <一>.centos6.6通过VM最小化安装后上不了网的解决方法: 在安装centos6.6时,没有在网络设置中设置网卡自动启动的,安装完系统后,是不能联网的,解决方法如下: vi/etc ...