一、LVS基本情况

lvs:Linux Virtual Server,是一种负载均衡集群,其主要是由工作在内核的ipvs与用户空间的命令行工具ipvsadm组成。支持TCP,UDP,AH,EST,AH_EST,SCTP等诸多协议。

lvs-type:

lvs-nat

​ lvs-dr(direct routing)

​  lvs-tun(ip tunneling)

​  lvs-fullnat

lvs scheduler:

静态方法:仅根据算法本身进行调度

RR:round robin,轮调

​    ​WRR:weighted rr,加权轮调

​    SH:source hash,源地址hash,实现session保持的机制,将来自于同一个IP的请求始终调度至同一RS

​    ​DH:destination hash,将对同一个目标的请求始终发往同一个RS

​动态方法:根据算法及各RS的当前负载状态进行调度

​    ​LC:Least Connection   最少连接数

​    ​Overhead=Active×256+Inactive

​    ​WLC:Weighted LC    加权最少连接数

​    ​Overhead=(Active×256+Inactive)/weight

​    ​SED:Shortest Expect Delay  最短期望延迟,WLC算法的改进

​    ​Overhead=(Active+1)×256/weight

​    ​NQ:Never Queue

​    ​SED的算法改进

​    ​LBLC:Locality-Based LC,即为动态的DH算法,基于本地的最少连接数

正向代理情形下的cache server调度;

​LBLCR:Locality-Based Least Connection with Replication,带复制功能的LBLC算法

二、命令行管理工具ipvsadm的用法

ipvsadm的用法:
管理集群服务
增加,修改
ipvsadm -A|E -t|u|f service-address [-s scheduler]
删除
ipvsadm -D -t|u|f service-address service-address:
tcp:-t ip:port
udp:-u ip:port
fwm:-f mark(防火墙标记) -s scheduler:
默认为wlc算法 管理集群服务的RS
增加,修改
ipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight] [-x upper] [-y lower]
删除
ipvsadm -d -t|u|f service-address -r server-address server-address:
ip[:port] lvs-type:
-g:gateway,dr
-i:ipip,tun
-m:masquerade,nat 清空所有和查询
ipvsadm -C
ipvsadm -L|l [options]
-n:numeric,基于数字格式显示地址和端口
-c:connection,显示当前已建立的ipvs连接
--stats:显示统计数据
--rate:速率
--sort:排序
--exact:显示精确值,不做单位换算 保存和重载:
ipvsadm -R 重载
ipvsadm -S [-n] 保存 置零计数器:
ipvsadm -Z [-t|u|f service-address]

三、实验环境

Client:本机windows7
Director:CentOS 7.1
RealServer:node1,node2均为CentOS6.
其中vip为公网地址(实验为内网),dip与rip为内网地址

拓扑如下:

确保node1,与node2的web服务正常

[root@ ~]# curl http://192.168.20.7
<h1>this is node1 <\h1>
[root@ ~]# curl http://192.168.20.8
<h1>this is node2 <\h1>

四、定义ipvsadm

#定义集群服务
[root@ ~]# ipvsadm -A -t 192.168.101.130: -s rr
[root@ ~]# ipvsadm -L -n
IP Virtual Server version 1.2. (size=)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.101.130: rr #定义RS
[root@ ~]# ipvsadm -a -t 192.168.101.130: -r 192.168.20.7 -m
[root@ ~]# ipvsadm -a -t 192.168.101.130: -r 192.168.20.8 -m
[root@ ~]# ipvsadm -L -n
IP Virtual Server version 1.2. (size=)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.101.130: rr
-> 192.168.20.7: Masq
-> 192.168.20.8: Masq #在定义RS是IP后加PORT,可做端口映射

五、测试

[root@ ~]# ipvsadm -L -n
IP Virtual Server version 1.2. (size=)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.101.130: rr
-> 192.168.20.7: Masq
-> 192.168.20.8: Masq

可以看到,轮询的结果。

六、保存配置,清空,并恢复

[root@ ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
[root@ ~]# ipvsadm -C
[root@ ~]# ipvsadm -L -n
IP Virtual Server version 1.2. (size=)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
[root@ ~]# ipvsadm -R < /etc/sysconfig/ipvsadm

七、其他配置实例

#改变调度算法为sh
[root@ ~]# ipvsadm -E -t 192.168.101.130: -s sh
#做端口地址转换
[root@ ~]# ipvsadm -e -t 192.168.101.130 -r 192.168.20.7: -m
#删除集群中的RS
[root@ ~]# ipvsadm -d -t 192.168.101.130 -r 192.168.20.7:
#删除集群服务
[root@ ~]# ipvsadm -D -t 192.168.101.130:

LVS-net的更多相关文章

  1. 【大型网站技术实践】初级篇:借助LVS+Keepalived实现负载均衡

    一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是Web应用服务 ...

  2. [原]一个针对LVS的压力测试报告

    LVS 测试报告 测试计划 基本功能测试 流量压力测试 响应时间测试 配置正确性测试 灾难恢复测试 测试点 基本功能测试 客户端IP地址正确性 RealServer 访问Internet测试(包括Ip ...

  3. 负载均衡之LVS集群

    h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...

  4. Keepalived+LVS+nginx双机热备

    Keepalived简介 什么是Keepalived呢,keepalived观其名可知,保持存活,在网络里面就是保持在线了, 也就是所谓的高可用或热备,用来防止单点故障的发生. Keepalived采 ...

  5. 基于keepalived双主模型的高可用LVS

    背景知识: keepalived:Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web 服务器从系统中剔除, ...

  6. LVS原理详解

    一.集群简介 什么是集群 计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系统中的单个计算 ...

  7. 配置LVS + Keepalived高可用负载均衡集群之图文教程

    负载均衡系统可以选用LVS方案,而为避免Director Server单点故障引起系统崩溃,我们可以选用LVS+Keepalived组合保证高可用性.  重点:每个节点时间都同步哈! C++代码 [r ...

  8. lvs+keepalived

    一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2.6.32-279.el6.i686 LVS版本:ipvsadm-1.26 keepalive ...

  9. CentOS7 编译安装LVS 互为主备 (实测 笔记 Centos 7.0 + ipvsadm 1.27 + keepalived 1.2.15 )

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) LVS服务器(两台): 系统:Centos7.0 64位(LVS+keepalived) LvsMaster:1 ...

  10. LVS DR模式 RealServer 为 Windows 2008 R2配置

    有3篇文档详细介绍 http://kb.linuxvirtualserver.org/wiki/Windows_Servers_in_LVS/DR_and_LVS/TUN_Clusters http: ...

随机推荐

  1. ICO成本价

    [当前ICO成本价]仅供参考:ICOcoin 成本价1元SNT 成本价0.26元UGT 成本价2.7元PAY 成本价6元OMG 成本价2.6元YOYO 成本价 0.17元BNT 成本价26元BAT 成 ...

  2. PHP 支持8种基本的数据类型。

    四种标量类型:boolean (布尔型):这是最简单的类型,只有两种取值,可以为 TRUE/true 或 FALSE/false ,不区分大小写.详细请查看:PHP布尔类型(boolean)integ ...

  3. MapReduce辅助排序

    需求:订单数据 求出每个订单中最贵的商品? 订单id正序,成交金额倒序. 结果文件三个,每个结果文件只要一条数据. 1.Mapper类 package com.css.order.mr; import ...

  4. bios设置启动方式问题

    uefi和legacy是两种不同的引导方式,uefi是新式的BIOS,legacy是传统BIOS.你在UEFI模式下安装的系统,只能用UEFI模式引导:同理,如果你是在Legacy模式下安装的系统,也 ...

  5. Linux cp命令

    cp命令(copy),用来对一个或多个文件,目录进行拷贝 1.语法 cp [选项] [参数] 2.命令选项 -b 当文件存在时,覆盖前,为其创建一个备份-d 当复制软连接时,把目标文件或目录也建立为软 ...

  6. python collections模块 计数器(counter)

    一.计数器(counter) Counter是对字典类型的补充,用于追踪值的出现次数. ps:具备字典的所有功能 + 自己的功能 把我写入的元素出现的多少次都计算出来 import collectio ...

  7. Java Code Template

    设置注释模板的入口:Window->Preference->Java->Code Style->Code Template 然后展开Comments节点就是所有需设置注释的元素 ...

  8. Java队列存储结构及实现

    一.队列(Queue) 队列是一种特殊的线性表,它只允许在表的前段(front)进行删除操作,只允许在表的后端(rear)进行插入操作.进行插入操作的端称为队尾,进行删除操作的端称为队头. 对于一个队 ...

  9. IOS自动化定位方式

    原文地址http://blog.csdn.net/wuyepiaoxue789/article/details/77885136 元素属性的介绍 type:元素类型,与className作用一致,如: ...

  10. JQuery点击标题实现div的收缩

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...