LVS(虚拟集群Linux Virtual Server)

LVS-NAT:地址转换,数据包来回都要经过NAT转换,所以Director Server(即LVS服务器)将成为系统瓶颈。使用NAT模式将需要两个不同网段的IP,一个IP接受外部请求服务,一般为外网ip,此IP称为VIP,一个IP与后realserver同一地址段,负责相互通信,称为DIP。后端realserver的网关地址需指向DIP。同时需开启linux内核的数据包转发功能。

LVS-TUN:隧道 ,LVS/TUN与 LVS/DR 类似。只是在报文外面再加一层IP封装,整个过程比LVS/DR模式多一次报文的封装/解封过程。LVS/DR只支持本地网络,LVS/TUN却可以跨机房。

LVS-DR: 直接路由,此种方式是最常用的方式,

所有的Director和RealServer都在同一个物理网络中(交换机)并且都只有一块网卡。

常用的几种调度:

1. 轮叫调度 rr                    所有real_server轮流

2. 加权轮叫 wrr                 按照性能比例,好的多分,差的少分

3. 最少链接 lc                    给链接数少的分

4. 加权最少链接 wlc          按照性能比例,好的多分,差的少分,链接数也要保持比例

5. 基于局部性的最少连接调度算法 lblc

6. 复杂的基于局部性最少的连接算法 lblcr

7. 目标地址散列调度算法 dh

8. 源地址散列调度算法 sh

用DR模式配置(必须同一网段)

首先准备构建集群的三台设备

direct_server:192.168.254.17

real_server1:192.168.254.18

real_server2:192.168.254.19

拟定vip为:192.168.254.250

direct_server:

 # yum -y install ipvsadm
# yum -y install httpd*
# ipvsadm -C
# ipvsadm -A -t 192.168.11.250: -s rr
# ipvsadm -a -t 192.168.11.250: -r 192.168.11.138: -g
# ipvsadm -a -t 192.168.11.250: -r 192.168.11.140: -g
# ifconfig ens33: 192.168.11.250 broadcast 192.168.11.250 netmask 255.255.255.255 up 在ens33的子网卡添加一个虚拟ip,保证服务可以访问到VIP;
# route add -host 192.168.11.250 dev ens33:
添加一个路由通过ens33来访问Vip 192.168.254.250
# vim /dev/sysconfig/ipvsadm 随便编辑一下
# ipvsadm -Ln --stats -L显示内核虚拟服务器表

--zero  清空流量      -n 输出IP地址和端口的数字形式

/# -a添加          -t 添加一个虚拟IP的tcp 协议

/# -C:–clear 清除内核虚拟服务器表中的所有记录

/# -A添加一个虚拟IP  -s调度器

/# -r real_server         -g DR模式

/# ens33:0 是子网卡,设置第二个ip

/# broadcast 广播

/# ipvsadm文件缺失后会导致ipvsadm start失败

real_server:

# yum -y install httpd*
# ifconfig lo: 192.168.11.250 broadcast 192.168.11.250 netmask 255.255.255.255 up
# route add -host 192.168.11.250 dev lo:
/#loopback网卡,默认地址127.0.0.
# echo "">/proc/sys/net/ipv4/conf/lo/arp_ignore
# echo "">/proc/sys/net/ipv4/conf/lo/arp_announce
# echo "">/proc/sys/net/ipv4/conf/all/arp_ignore
# echo "">/proc/sys/net/ipv4/conf/all/arp_announce
# vim /etc/www/html/index.html
<h1>this is (或者140) host</h1>
# systemctl start httpd.service

测试:

用第四台虚拟机

# curl 192.168.11.250    出现下图情况即成功

也可以windows装curl包后,在命令行输入上述命令测试

arp_ignore:定义接收到ARP请求时的响应级别

0:默认,只用本地配置的有响应地址都给予响应

1:仅仅在目标IP是本地地址,并且是配置在请求进来的接口上的时候才给予响应

(仅在请求的目标地址配置请求到达的接口上的时候,才给予响应)

arp_announce:定义将自己的地址向外通告时的级别

0:默认,表示使用配置在任何接口的任何地址向外通告

1:尽量仅向目标网络通告与其网络匹配的地址

2:仅向与本地接口上地址匹配的网络进行通告

tun隧道模式

lvs-server:

       ifconfig tunl0 192.168.254.250 broadcast 192.168.254.250 netmask 255.255.255.0 up
route add -host 192.168.254.250 dev tunl0
ipvsadm -A -t 192.168.254.250: -s rr
ipvsadm -a -t 192.168.254.250: -r 192.168.254.18 -i
ipvsadm -a -t 192.168.254.250: -r 192.168.254.19 -i

real server:

  ifconfig tunl0 192.168.254.250 netmask 255.255.255.255 broadcast 192.168.254.250 up
route add -host 192.168.254.250 dev tunl0
echo "" >/proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/tunl0/arp_announce
echo "" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "" >/proc/sys/net/ipv4/conf/all/arp_announce
echo "" >/proc/sys/net/ipv4/conf/tunl0/rp_filter
echo "" > /proc/sys/net/ipv4/conf/all/rp_filter

0:不开启源地址校验。

1:开启严格的反向路径校验。对每个进来的数据包,校验其反向路径是否是最佳路径。

如果反向路径不是最佳路径,则直接丢弃该数据包。

2:开启松散的反向路径校验。对每个进来的数据包,校验其源地址是否可达,即反向路径是否能通(通过任意网口),

如果反向路径不同,则直接丢弃该数据包。

虚拟集群LVS及DR模式搭建笔记的更多相关文章

  1. CentOS高可用集群LVS+Keepalived(DR模式)

    操作系统:CentOS6.5_x64 mini 负载均衡模式:DR(直接路由) LVS与Keepalived简述: LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是 ...

  2. LVS+Keepalived(DR模式)学习笔记

    1.简述 在互联网的中型项目中,单服务器往往已经无法满足业务本身的性能要求,这时候就会平行扩展,把负载分摊到数台服务器上(集群).一般实现集群有DNS轮询,LVS,nginx负载均衡. 集群主要目的包 ...

  3. LVS+Keepalived+Nginx+Tomcat高可用负载均衡集群配置(DR模式,一个VIP,多个端口)

    一.概述 LVS作用:实现负载均衡 Keepalived作用:监控集群系统中各个服务节点的状态,HA cluster. 配置LVS有两种方式: 1. 通过ipvsadm命令行方式配置 2. 通过Red ...

  4. LVS基于DR模式搭建负载均衡群集

    LVS -DR模式集群架构原理图

  5. keepalived的功能及DR模式搭建笔记

    一.HA集群中的相关术语 1.节点(node) 运行HA进程的一个独立主机,称为节点,节点是HA的核心组成部分,每个节点上运行着操作系统和高可用软件服务,在高可用集群中,节点有主次之分,分别称之为主节 ...

  6. 集群--LVS的DR模型配置

    1.查看内核是否有IPVS内核模块 grep -i 'ip_vs' /boot/config-2.6.32-431.el6.x86_64

  7. Linux centosVMware Linux集群架构LVS DR模式搭建、keepalived + LVS

    一.LVS DR模式搭建 三台机器 分发器,也叫调度器(简写为dir) davery :1.101 rs1 davery01:1.106 rs2 davery02:11.107 vip 133.200 ...

  8. LVS DR模式搭建、keepalived+lvs

    1.LVS DR模式搭建 条件: 即三台机器,在同一内网. 编辑脚本文件:/usr/local/sbin/lvs_dr.sh #! /bin/bashecho 1 > /proc/sys/net ...

  9. LVS DR模式搭建 keepalived lvs

    LVS DR模式搭建• 三台机器 • 分发器,也叫调度器(简写为dir)172.16.161.130 • rs1 172.16.161.131 • rs2 172.16.161.132 • vip 1 ...

随机推荐

  1. H5-移动端适配

    之前写H5页面也会遇到适配问题, 是通过媒体查询一点一点调整,始终觉得很繁琐,但一直也没去想想解决的办法. 今天专门花了一上午的时间来去研究.  小生只是刚踏入前端路的小白,对于网上各位大佬的讲解适配 ...

  2. JavaScript 运行机制 & EventLoop

    JavaScript 运行机制 & EventLoop 看阮老师博客和自己的理解,记录的学习笔记,js的单线程和 事件EventLoop 机制. 1. JavaScript是单线程 JavaS ...

  3. 2019-03-21 Python Request InsecureRequestWarning

    问题: 使用Python3 requests发送HTTPS请求,已经关闭认证(verify=False)情况下,控制台会输出以下错误: InsecureRequestWarning: Unverifi ...

  4. WEB开发兼容性---浏览器渲染模式—— document.compatMode

    document.compatMode主要是用来判断浏览器采用何种方式渲染,它有两种可能的返回值:BackCompat和CSS1Compat,官方对其解释如下: BackCompat:标准兼容模式关闭 ...

  5. Redis-server在windows下闪退

    在win7下使用Redis(windows版)很简单,只需要去Git上下载一个压缩包,解压运行即可.但是前段时间发现win10下双击redis-server既然闪退.非常不解... 在观察了错误日志才 ...

  6. HDU 2879

    利用x<n的信息,可以证得当n为素数时,he[n]=2;同时,若n 为素数,则有HE[N^K]=2;因为若等式成立则有n|x(x-1).抓住这个证即可. 至于符合积性函数,想了很久也没想出来,看 ...

  7. ZOJ 3688

    做出这题,小有成就感 本来已打算要用那个禁位的排列公式,可是,问题在于,每个阶乘前的系数r的求法是一个难点. 随便翻了翻那本美国教材<组合数学>,在容斥原理一章的习题里竟有一道类似,虽然并 ...

  8. Windows下面使用curl

    Windows下面使用curl 学习了:https://www.cnblogs.com/xing901022/p/4652624.html 下载地址:https://curl.haxx.se/down ...

  9. 快学Scala习题解答—第三章 数组相关操作

    3 数组相关操作  3.1 编写一段代码.将a设置为一个n个随机整数的数组,要求随机数介于0(包括)和n(不包括)之间  random和yield的使用 import scala.math.rando ...

  10. pandaboard安装ubuntu

    参照:https://wiki.ubuntu.com/ARM/OmapDesktopInstall 主要是在linux下安装,主要命令为: zcat ./ubuntu-12.04-preinstall ...