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. HDU 1242 rescue (优先队列模板题)

    Rescue Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  2. Linux编程---进程通信

    Linux的通信方式主要有分类有以下几种: -匿名管道和FIFO有名管道 -消息队列,信号量和共享存储 -套接字 对于套接字的进程通信,我就留在套接字的文章中再写了. 一.管道 管道是最古老的进程通信 ...

  3. u-boot简单学习笔记(二)——AR9331 uboot.lds分析

    最开始系统上电后 从uboot.lds开始引导 OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", ...

  4. Codeforces Round #253 (Div. 2)——Borya and Hanabi

    题目连接 题意: n表示有n个卡片.每一个卡片有一种颜色和一个数字(共五种不同的颜色和五个不同的数字). 事先知道每种卡片有几张.可是不知道详细的位置. 问须要几次提示就能够知道全部卡片的位置都在哪里 ...

  5. Linux epoll 源码注释

    https://www.cnblogs.com/stonehat/p/8613505.html 这篇文章值得好好读,先留个记录,回头看. IO多路复用之epoll总结 - Anker's Blog - ...

  6. Replace Type Code With Class和Replace Type Code With Subclass和Replace Type Code With State/Strategy

    周末闲来写写看书总结,今天写<重构>中的3个重要手法,分别是Replace Type Code With Class.Replace Type Code With Subclass和Rep ...

  7. MapReduce ChainMapper/ChainReducer

    The ChainMapper class allows to use multiple Mapper classes within a single Map task.  The ChainRedu ...

  8. String常量池

    http://developer.51cto.com/art/201106/266454.htm

  9. HDU3294 Girls' research —— Manacher算法 输出解

    题目链接:https://vjudge.net/problem/HDU-3294 Girls' research Time Limit: 3000/1000 MS (Java/Others)    M ...

  10. JAVA MAIL基本功能

    1. [代码][Java]代码package emailrobot; import java.io.*;import java.text.*;import java.util.*;import jav ...