LVS DR模式实践
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模式实践的更多相关文章
- Keepalived+LVS DR模式高可用架构实践
Keepalived最初是为LVS设计,专门监控各服务器节点的状态(LVS不带健康检查功能,所以使用keepalived进行健康检查),后来加入了VRRP(虚拟路由热备协议(Virtual Route ...
- LVS DR模式 负载均衡服务搭建
LVS 负载均衡 最近在研究服务器负载均衡,阅读了网上的一些资料,发现主要的软件负载均衡方案有nginx(针对HTTP服务的负载均衡),LVS(针对IP层,MAC层的负载均衡).LVS模式工作在网络层 ...
- 一个公网地址部署LVS/DR模式
http://blog.chinaunix.net/uid-7411781-id-3436142.html 一个公网地址部署LVS/DR模式 网上看了很多关于LVS的文章,在选取2种模式LVS/D ...
- LVS DR模式搭建、keepalived+lvs
1.LVS DR模式搭建 条件: 即三台机器,在同一内网. 编辑脚本文件:/usr/local/sbin/lvs_dr.sh #! /bin/bashecho 1 > /proc/sys/net ...
- LVS DR模式搭建 keepalived lvs
LVS DR模式搭建• 三台机器 • 分发器,也叫调度器(简写为dir)172.16.161.130 • rs1 172.16.161.131 • rs2 172.16.161.132 • vip 1 ...
- lvs之 lvs+nginx+tomcat_1、tomcat_2+redis(lvs dr 模式)
前提:已经安装好 lvs+nginx+tomcat_1.tomcat_2+redis环境 ,可参考 (略有改动,比如tomcat_1.tomcat_2安装在两台机器上,而不是单机多实例 ,自行稍稍变动 ...
- CentOS下LVS DR模式负载均衡配置详解
一安装LVS准备: 1.准备4台Centos 6.2 x86_64 注:本实验关闭 SELinux和IPtables防火墙. 管理IP地址 角色 备注 192.168.1.101 LVS主调度器(Ma ...
- Linux centosVMware Linux集群架构LVS DR模式搭建、keepalived + LVS
一.LVS DR模式搭建 三台机器 分发器,也叫调度器(简写为dir) davery :1.101 rs1 davery01:1.106 rs2 davery02:11.107 vip 133.200 ...
- LVS DR模式实验
LVS DR模式实验 三台虚拟机,两个台节点机(Apache),一台DR实验调度机 一:关闭相关安全机制 systemctl stop firewalld iptables -F setenforce ...
随机推荐
- Video/audio标签的一些基础使用心得
常用方法 .play():用于音频视频的播放 .pause():用于音频视频的暂停 常用属性 <audio src="Batmobile Battle Mode Reveal Musi ...
- 【linux】jdk安装及环境变量配置
登录linux后,切换目录到 /usr/local cd /user/local 在/usr/local目录新建文件夹java用于存放jdk文件 mkdir java 在文件夹java中下载jdk文件 ...
- ADB命令无法导出文件到物理机上处理办法
因为想查看一下脚本生成的sqlite文件.就想导出文件,,结果导出adb pull命令一直报错.使用su也是错误的..最后发现adb pull 不能再adb的命令状态下执行.需要退出adb命令.然后直 ...
- vue路由跳转的方式
vue路由跳转有四种方式 1. router-link 2. this.$router.push() (函数里面调用) 3. this.$router.replace() (用法同push) 4. t ...
- 某CTF平台一道PHP代码审计
这道题不是说太难,但是思路一定要灵活,灵活的利用源码中给的东西.先看一下源码. 首先要理解大意. 这段源码的大致的意思就是,先将flag的值读取放在$flag里面. 后面再接受你输入的值进行判断(黑名 ...
- 网络驱动之net_device结构体
在Linux系统中,网络设备都被抽象为struct net_device结构体.它是网络设备硬件与上层协议之间联系的接口,了解它对编写网络驱动程序非常有益,所以本文将着手简要介绍linux-2.6.3 ...
- 由一次线上故障来理解下 TCP 三握、四挥 & Java 堆栈分析到源码的探秘
本文导读: 生产故障场景介绍 TCP 建连三次握手过程 TCP 断连四次挥手过程 结合 Java 堆栈剖析源码 再从堆栈中找到"罪魁祸首" 问题优化方案总结 1.生产故障场景介绍 ...
- 微信小程序发起请求
一.示例代码 wx.request({ url: 'test.php', // 仅为示例,并非真实的接口地址 data: { x: '', y: '' }, header: { 'content-ty ...
- Bran的内核开发教程(bkerndev)-03 内核初步
目录 内核初步 内核入口 链接脚本 汇编和链接 PS: 下面是我自己写的 64位Linux下的编译脚本 内核初步 在这节教程, 我们将深入研究一些汇编程序, 学习创建链接脚本的基础知识以及使用它的 ...
- 基于常规DNS隧道进行的tcp端口转发dns2tcp的使用
0x01 安装Dns2TCP dns2tcp 是一个利用DNS隧道转发TCP连接的工具,使用C语言开发. sudo apt-get install dns2tcp 0x02配置dns2tcp 配置DN ...