LVS负载均衡服务

LVS负载均衡调度技术是在Linux内核中实现的,因此被称为Linux虚拟服务器。使用LVS时,不能直接配置内核中的ipvs,而需要使用ipvs的管理工具ipvsadm进行管理。

VIP 虚拟IP

RIP  真实IP

DIP  Director IP,连接外网的IP地址

CIP  Client 客服端主机IP

1.IP虚拟服务器软件IPVS

VS/NAT 技术:通过网络地址转换将一组服务器构成一个高性能的、高可用的虚拟服务器。

NAT(Network Address Translation)、TUN(Tunneling)、DR(Direct Routing)、FULL Network Address Translation

NAT模式:

改写目标地址和目标端口,

将请求的报文DNAT和响应报文SNAT,通过调度器地址重写然后再转发给内部的服务器,报文返回时再改写成原来得地址。调度器有记录报文的哈希表,然后返回对应的地址。

由于数据包来回都需要经过调度器,因此,要开启内核转发net.ipv4.ip_forward-1

TUNNEL模式

后台直接将报文返回给客户

DR模式:

Direct Routing通过改写请求报文的目标MAC地址,将请求发送给真实的服务器。但是要求调度器与真实的服务器都有一块网卡连在同一物理设备上,必须在同一个局域网环境。

注意:节点的VIP绑定和ARP抑制问题。

SNAT

Lvs安装,要与系统内核版本号一致。

lsmod  list modules

lsmod | grep ip_vs 查看内核模块是否有ipvs

使用1.2.4版本的支持2.6.*内核的lvs软件

wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz

添加软链接:

ln -s /usr/src/kernels/2.6.32-573.el6.x86_64/ /usr/src/linux

ll /usr/src/ | grep linux 查看软连接状态,不能为红色

如果没有/usr/src/kernels/2.6.32-573.el6.x86_64, 是因为缺少该软件包,可以通过yum install kernel-devel -y 安装

安装lvs

make && make install

ipvsadm  加载内核

配置LVS

ipvsadm -C 清空

设置超时参数:ipvsadm --set 30 5 60

设置主机端口、算法、超时时间:ipvsadm -A -t 192.168.6.6:80 -s wrr -p 20

查看配置选项:ipvsadm -n -L

添加Real Server:

ipvsadm -a -t 192.168.6.6:80 -r 192.168.6.12:80 -g -w 1

然后再RS端绑定VIP

ifconfig lo:9 192.168.6.6 netmask 255.255.255.255 up

route add -host 192.168.6.6 dev lo

然后抑制arp:

watch --interval=1 ipvsadm -Ln

一秒钟查看一次

LVS负载均衡服务的更多相关文章

  1. 十 LVS 负载均衡

    回顾nginx 反向代理负载均衡 负载均衡的妙用 负载均衡(Load Balance)集群提供了一种廉价.有效.透明的方法, 来扩展网络设备和服务器的负载.带宽.增加吞吐量.加强网络数据处理能力. 提 ...

  2. LVS负载均衡集群

    回顾-Nginx反向代理型负载 负载均衡(load balance)集群,提供了一种廉价.有效.透明的方法,来扩展网络设备和服务器的负载.带宽.增加吞吐量.加强网络数据处理能力.提高网络的灵活性和可用 ...

  3. LVS 负载均衡 keepalive

    为什么要学lvs 工作在网络模型的7层,可以针对http应用做一些分流的策略,比如针对域名.目录结构, Nginx单凭这点可利用的场合就远多于LVS了.最新版本的Nginx也支持4层TCP负载,曾经这 ...

  4. LVS DR模式 负载均衡服务搭建

    LVS 负载均衡 最近在研究服务器负载均衡,阅读了网上的一些资料,发现主要的软件负载均衡方案有nginx(针对HTTP服务的负载均衡),LVS(针对IP层,MAC层的负载均衡).LVS模式工作在网络层 ...

  5. 高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群

    高性能Linux服务器 第11章 构建高可用的LVS负载均衡集群 libnet软件包<-依赖-heartbeat(包含ldirectord插件(需要perl-MailTools的rpm包)) l ...

  6. lvs负载均衡的搭建

       lvs负载均衡的搭建 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.         在部署环境前,我们需要了解一下一些协议 一.什么是arp 地址解析协议,即ARP(Addr ...

  7. (转)详解LVS负载均衡之三种工作模型原理和10种调度算法

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://linuxnx.blog.51cto.com/6676498/1195379 LV ...

  8. 三种LVS负载均衡技术的优缺点----负载均衡调度算法

    三种LVS负载均衡技术的优缺点归纳以下表: VS/NATVS/TUNVS/DR 服务器操作系统任意支持隧道多数(支持Non-arp) 服务器网络私有网络局域网/广域网局域网 服务器数目(100M网络) ...

  9. 大数据高并发系统架构实战方案(LVS负载均衡、Nginx、共享存储、海量数据、队列缓存)

    课程简介: 随着互联网的发展,高并发.大数据量的网站要求越来越高.而这些高要求都是基础的技术和细节组合而成的.本课程就从实际案例出发给大家原景重现高并发架构常用技术点及详细演练. 通过该课程的学习,普 ...

随机推荐

  1. C# DataTable Operations

    DataTable详解 https://www.cnblogs.com/Sandon/p/5175829.html 怎样删除一行 https://www.cnblogs.com/jhxk/articl ...

  2. informix遇到错误 25571:Cannot create an user thread

    今天发现informix数据库不能用dbaccess访问,报错:   25571: Cannot create an user thread. On NT check username, and IX ...

  3. Mybatis(六):spring与mybatis三种整合方法

    1.采用MapperScannerConfigurer,它将会查找类路径下的映射器并自动将它们创建成MapperFactoryBean. spring-mybatis.xml: <?xml ve ...

  4. 【Android】13.3 使用SQLite.NET-PCL访问SQLite数据库

    分类:C#.Android.VS2015: 创建日期:2016-02-26 一.简介 本章开头已经说过了,SQLite.NET-PCL用起来很爽,这一节咱们看看怎样使用吧. 二.示例3运行截图 下面左 ...

  5. DB2检测表字段改动的方法(不用触发器)

    ALTER TABLE TEST ADD COLUMN RTS TIMESTAMP NOT NULL GENERATED ALWAYS FOR EACH ROW ON UPDATE AS ROW CH ...

  6. android.view.animation(2) - 插值器Interpolator

    public interface Interpolator implements TimeInterpolator android.view.animation.Interpolator Known ...

  7. vue2.0 实现click点击当前li,并动态添加class(这种方法不太喜欢)

    1,文件内容 ---- 使用v-for遍历数据 ---- @click="selectSort(item)"添加点击事件,并把每个obj=item传入 ---- v-show=&q ...

  8. 0069 如何在Intellij IDEA中查看Spring MVC项目的所有请求与处理方法的映射列表

    @RequestMapping注解分散于Controller中,如何在一个列表中看到所有的请求呢,比如下面这样: File-->Project Structure-->Modules--& ...

  9. Qt禁止调整窗口的大小

    项目中使用的是基于对话框的程序,所以限制调整窗口大小会比较合适,下面是两种方法. 1.使用代码修改 #include "dialog.h" #include "ui_di ...

  10. 流式布局的使用方法--Masonry

    http://www.jq22.com/demo/masonry/ 范例 css部分 body { background-color: #c7cad0; } .post_box { backgroun ...