LVS-net
一、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的更多相关文章
- 【大型网站技术实践】初级篇:借助LVS+Keepalived实现负载均衡
一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是Web应用服务 ...
- [原]一个针对LVS的压力测试报告
LVS 测试报告 测试计划 基本功能测试 流量压力测试 响应时间测试 配置正确性测试 灾难恢复测试 测试点 基本功能测试 客户端IP地址正确性 RealServer 访问Internet测试(包括Ip ...
- 负载均衡之LVS集群
h3 { color: rgb(255, 255, 255); background-color: rgb(30,144,255); padding: 3px; margin: 10px 0px } ...
- Keepalived+LVS+nginx双机热备
Keepalived简介 什么是Keepalived呢,keepalived观其名可知,保持存活,在网络里面就是保持在线了, 也就是所谓的高可用或热备,用来防止单点故障的发生. Keepalived采 ...
- 基于keepalived双主模型的高可用LVS
背景知识: keepalived:Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web 服务器从系统中剔除, ...
- LVS原理详解
一.集群简介 什么是集群 计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系统中的单个计算 ...
- 配置LVS + Keepalived高可用负载均衡集群之图文教程
负载均衡系统可以选用LVS方案,而为避免Director Server单点故障引起系统崩溃,我们可以选用LVS+Keepalived组合保证高可用性. 重点:每个节点时间都同步哈! C++代码 [r ...
- lvs+keepalived
一.简介 VS/NAT原理图: 二.系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2.6.32-279.el6.i686 LVS版本:ipvsadm-1.26 keepalive ...
- 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 ...
- LVS DR模式 RealServer 为 Windows 2008 R2配置
有3篇文档详细介绍 http://kb.linuxvirtualserver.org/wiki/Windows_Servers_in_LVS/DR_and_LVS/TUN_Clusters http: ...
随机推荐
- Python爬虫实例(一)爬取百度贴吧帖子中的图片
程序功能说明:爬取百度贴吧帖子中的图片,用户输入贴吧名称和要爬取的起始和终止页数即可进行爬取. 思路分析: 一.指定贴吧url的获取 例如我们进入秦时明月吧,提取并分析其有效url如下 http:// ...
- vue状态管理器(用户登录简单应用)
技术点:通过vue状态管理器,对已经登录的用户显示不同的页面: 一 vue之状态管理器应用 主要用来存储cookie信息 与vue-cookies一起使用 安装:npm install vue-co ...
- struts2之Action获取请求参数与web元素
文章思路清晰 http://blog.csdn.net/zeqblog/article/details/8665052
- 微信对接HIS——微信可查检验结果
患者仅仅要关注医院官方微信,不管身处何地,输入自己预留在医院的电话号码.检验单的条码号,就能够了解检验结果. 医院信息系统在提供病人数据信息前,会对查询方做身份认证和安全防护检測,录入患者挂号时预留的 ...
- 360UI 界面框架 即QUI框架与EXT比较
EXTJS框架是非常全面和成熟的,这是因为它发展的年头久远,并且有全世界的EXTJS爱好者为其出谋献策,它的组件库尤其是DataGrid组件无人能出其右.我在最初也考虑过使用EXTJS来做项目,学习了 ...
- Jmeter(九)压力测试
一般我们在做压力测试的时候,分单场景和混合场景,单场景也就是咱们压测单个接口的时候,多场景也就是有业务流程的情况下,比如说一个购物流程,那么这样的场景就是混合场景,就是有多个接口一起来做操作.1.单场 ...
- Linux 远程复制
一.将本机文件复制到远程服务器上 #scp /usr/local/kafka_2.11-0.11.0.0/config/server.properties app@172.25.6.11:/haha ...
- MFC程序执行过程剖析
一 MFC程序执行过程剖析 1)我们知道在WIN32API程序当中,程序的入口为WinMain函数,在这个函数当中我们完成注册窗口类,创建窗口,进入消息循环,最后由操作系统根据发送到程序窗口的消息调用 ...
- Python 学习笔记之random 模块
要使用Random 模块里的一些随机数方法需要先导入random 模块. 下面是几种常用的随机数方法: 以生成随机8位密码,包括大小写字母,数字为例 pwd = ''.join(random.samp ...
- Linux系统——系统安全及应用
系统账号清理 将非登录用户的shell设为/sbin/nologin 方法一:usermod -s 方法二: chsh命令,交互式修改,用来修改用户的登录情况 方法三: chsh -s 方法四:vim ...