client:192.168.4.10/24

proxy:192.168.4.5/24

  VIP:   192.168.4.15/24

web1:192.168.4.100/24

  VIP:192.168.4.15/24

web2:192.168.4.200/24

  VIP:192.168.4.15/24

重点要领:

1.在DR模式中后端服务器必须要伪装成调度器的IP。

2.修改内核参数禁止vip对外响应arp请求和申告。

3.VIP必须必须配置辅助接口,DIP必须配置在主接口上。

4.每一个后端RealServer都需要配置VIP在lo本地回环上。

一、给调度器配置VIP

  cd /etc/sysconfig/network-scripts/

  cp ifcfg-eth0 ifcfg-eth0:0                       //拷贝一份eth0 为 eth0:0

  vim ifcfg-eth0:0   //对其进行修改

  TYPE=Ethernet    //网卡类型以太网卡

  BOOTPROTO=none  //协议类型(无)

  NAME=eth0:0 //网卡名字

  DEVICE=eth0:0 //网卡设备

  ONBOOT=yes //自动连接

  IPADDR=192.168.4.15 //VIP地址

  PREFIX=24 //子网掩码

要领

1:网卡名字不能为eth0 否则会与eth0网卡冲突

2:设备名不能为eth0 否则会与eth0网卡冲突

3:IP地址设置为VIP

4:删除UUID设备唯一识别码

  nmcli connection up eth0  //重新激活eth0网卡去查看新配置的VIP

  进入到后端RealServer 中拷贝一份本地回环的配置文件并进行配置VIP

  cd /etc/sysconfig/network-scripts/

  cp ifcfg-lo ifcfg-lo:0

  vim ifcfg-lo:0

  

  DEVICE=lo:0     //设备名
  IPADDR=192.168.4.15   //IP地址 配置的VIP
  NETMASK=255.255.255.255   //子网掩码
  NETWORK=192.168.4.15   //网络位
  # If you're having problems with gated making 127.0.0.0/8 a martian,
  # you can change this to something else (255.255.255.255, for example)
  BROADCAST=192.168.4.15   //主机位
  ONBOOT=yes   //自动连接
  NAME=lo:0   //网卡名

  

  另外一台realserver 也需要这样伪装VIP   将这个文件scp过去

  scp "/etc/sysconfig/network-scripts/ifcfg-lo:0" root@192.168.4.200:/etc/sysconfig/network-scripts/

  注意这里我们在一个网络中出现了重复IP所以如果你重启了网络管理那么会出现IP地址冲突,所以这边需要修改内核对arp请求不回应不申告

  在/etc/sysctl.conf中加入参数

  net.ipv4.conf.all.arp_ignore = 1     //所有的网卡都忽略arp广播,默认值0  回应arp广播

  net.ipv4.conf.lo.arp_ignore = 1      //本地回环lo忽略arp广播

  net.ipv4.conf.lo.arp_announce = 2  //本地回环不对外申告

  net.ipv4.conf.all.arp_announce = 2  //所有网卡不对外申告

  

  sysctl -p 让配置文件立即生效

  systemctl restart network   //重启网卡

  可以看到两台RealServer 已经配置VIP成功即可

  

  清空之前的lvs规则新添加本次的实验

[root@proxy network-scripts]# ipvsadm -C   //清空之前的实验
[root@proxy network-scripts]# ipvsadm -Ln  //查看当前规则
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
[root@proxy network-scripts]# ipvsadm -A -t 192.168.4.15:80 -s wrr  //创建一个虚拟主机192.168.4.15 端口80 算法加权轮询
[root@proxy network-scripts]# ipvsadm -a -t 192.168.4.15:80 -r 192.168.4.100:80 -w 2  //添加realserver 192.168.4.100到4.15 权重2
[root@proxy network-scripts]# ipvsadm -a -t 192.168.4.15:80 -r 192.168.4.200:80 -w 1
[root@proxy network-scripts]# ipvsadm 0L
Try `ipvsadm -h' or 'ipvsadm --help' for more information.
[root@proxy network-scripts]# ipvsadm -Ln  //查看当前规则
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.4.15:80 wrr
-> 192.168.4.100:80 Route 2 0 0
-> 192.168.4.200:80 Route 1 0 0
[root@proxy network-scripts]# ipvsadm --save  //保存
-A -t proxy:http -s wrr
-a -t proxy:http -r 192.168.4.100:http -g -w 2
-a -t proxy:http -r 192.168.4.200:http -g -w 1
[root@proxy network-scripts]#

  

LVS DR模式实践的更多相关文章

  1. Keepalived+LVS DR模式高可用架构实践

    Keepalived最初是为LVS设计,专门监控各服务器节点的状态(LVS不带健康检查功能,所以使用keepalived进行健康检查),后来加入了VRRP(虚拟路由热备协议(Virtual Route ...

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

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

  3. 一个公网地址部署LVS/DR模式

    http://blog.chinaunix.net/uid-7411781-id-3436142.html 一个公网地址部署LVS/DR模式   网上看了很多关于LVS的文章,在选取2种模式LVS/D ...

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

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

  5. LVS DR模式搭建 keepalived lvs

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

  6. lvs之 lvs+nginx+tomcat_1、tomcat_2+redis(lvs dr 模式)

    前提:已经安装好 lvs+nginx+tomcat_1.tomcat_2+redis环境 ,可参考 (略有改动,比如tomcat_1.tomcat_2安装在两台机器上,而不是单机多实例 ,自行稍稍变动 ...

  7. CentOS下LVS DR模式负载均衡配置详解

    一安装LVS准备: 1.准备4台Centos 6.2 x86_64 注:本实验关闭 SELinux和IPtables防火墙. 管理IP地址 角色 备注 192.168.1.101 LVS主调度器(Ma ...

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

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

  9. LVS DR模式实验

    LVS DR模式实验 三台虚拟机,两个台节点机(Apache),一台DR实验调度机 一:关闭相关安全机制 systemctl stop firewalld iptables -F setenforce ...

随机推荐

  1. Java 学习笔记之 Thread运行过程分析

    Thread运行过程分析: 以下是一个最普通的Thread实现过程,我们今天就来看仔细分析下他是如何运行的. public class ThreadRunMain { public static vo ...

  2. postgres 数据库 citus 集群分片

    前言 什么时候需要考虑做数据切分? 1.能不切分尽量不要切分 并不是所有表都需要进行切分,主要还是看数据的增长速度.切分后会在某种程度上提升业务的复杂度,数据库除了承载数据的存储和查询外,协助业务更好 ...

  3. 五、springboot 简单优雅是实现邮件服务

    前言 spring boot 的项目放下小半个月没有更新了,终于闲下来可以开心的接着写啦. 之前我们配置好mybatis 多数据源的,接下来我们需要做一个邮件服务.比如你注册的时候,需要输入验证码来校 ...

  4. axios对put操作对Android的支持之坑

    ### 前段时间我做的一个手机端H5项目,需要发送一个put请求.因为ajax现在用的人有点少了,而且公司里边都是用的axios,所以我也是用的是axios做的请求. ### 再开发的时候测试都没有问 ...

  5. spring5 源码深度解析----- 事务增强器(100%理解事务)

    上一篇文章我们讲解了事务的Advisor是如何注册进Spring容器的,也讲解了Spring是如何将有配置事务的类配置上事务的,实际上也就是用了AOP那一套,也讲解了Advisor,pointcut验 ...

  6. 你不可错过的Java学习资源清单

    学习Java和其他技术的资源其实非常多,但是我们需要取其精华去其糟粕,选择那些最好的,最适合我们的,同时也要由浅入深,先易后难.基于这样的一个标准,我在这里为大家提供一份Java的学习资源清单. Ja ...

  7. Python_生成随机验证码

    内置函数 chr() ord() 这两个内置函数是用来对十进制(十六进制也可以)与ASCii之间进行转换 chr() : 将十进制转换成ASCii对应字母或符号 t_1 = chr(99) t_2 = ...

  8. Neo4j:图数据库GraphDB(四)Python中的操作

    本文总结下Python中如何操作Neo4j数据库,用到py2neo包,Pip install 一下. 1 连接neo4j数据库:跟其它数据库一样,操作前必须输入用户名和密码及地址连接一下. from ...

  9. vue+element 实现商品sku效果

    在网上搜索了很久,没有发现合适sku编辑的文章,只能自己写一个vue+element 的sku编辑功能.实现的效果如下图 除成本.售价.库存.货号这几个写死的属性外,可自行添加/删除商品属性,自行添加 ...

  10. 《Java并发编程实战》读书笔记-第2章 线程安全性

    要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享的和可变的状态的访问. 修复多线程问题的方式: 不在线程之间共享该状态变量 将状态变量修改为不可变的变量 在访问状态变量时使用同步 ...