2. LVS/DR 配置
平台:RedHat Enterprise Linux centos6.3 ipvsadm ipvs
1、DR模型
DR模型:直接路由模型,每个Real Server上都有两个IP:VIP和RIP,但是VIP是隐藏的,就是不能提高解析等功能,只是用来做请求回复的源IP的,Director上只需要一个网卡,然后利用别名来配置两个IP:VIP和DIP
Director在接受到外部主机的请求的时候转发给Real Server的时候并不更改目标地址,只是通过arp解析的MAC地址进行封装然后转给Real Server,Real Server在接受到信息以后拆除MAC帧封装,然后直接回复给CIP。
企业中最常用的就是LB架构就是DR模型
特点和架构要求:
1、各个集群节点必须和Director在同一个物理网络中
2、RIP地址不能为私有地址,可以实现便捷的远程管理和监控
3、Director仅仅负责处理入站请求,响应报文则由Real Server直接发往客户端
4、集群节点Real Server 的网关一定不能指向DIP,而是指向外部路由
5、Director不支持端口映射
6、Director能够支持比NAT多很多的Real Server
注意:由于在负载均衡集群和高可用集群的时候要求服务器的时间必须一致,否则将会出现服务不协调等致命性的错误,我们这里把DR设置成为时间服务器,来为RS1和RS2提供时间校准,从而来保证负载均衡集群的正常运行!(关于时间服务器NTP-SERVER的搭建和配置我会在后两天的时间里发表博文详细介绍时间服务器的安装和配置),当然如果没有时间服务器也可以自己手动设置各个服务器的时间来保证时间的一致性!
相关服务和名字的定义:
CIP:客户端IP
Director:负载调度集群的主机,也简称DR
VIP:Virtual IP,向外提供服务的IP
DIP:与内部主机通信的IP,在DR主机上
RIP:Real Server IP,内部真正提供服务的IP

三台机器:
director(eth0192.168.31.166, vip eth0:0: 192.168.31.110)
real server1(eth0 rip: 192.168. 31.100, vip lo:0: 192.168.31.110)
real server2(eth0 rip: 192.168.31.101, vip lo:0: 192.168.31.110)
Director 上 vim /usr/local/sbin/lvs_dr.sh //增加
#! /bin/bash
echo 1 > /proc/sys/net/ipv4/ip_forward
ipv=/sbin/ipvsadm
vip=192.168.31.110
rs1=192.168.31.100
rs2=192.168.31.101
ifconfig eth0:0 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip dev eth0:0
$ipv -C
$ipv -A -t $vip:80 -s rr #rr可以改为wrr或者wlc,这里是算法
$ipv -a -t $vip:80 -r $rs1:80 -g -w 1
$ipv -a -t $vip:80 -r $rs2:80 -g -w 1
两台rs上:vim /usr/local/sbin/lvs_dr_rs.sh
#! /bin/bash
vip=192.168.31.110
ifconfig lo:0 $vip broadcast $vip netmask 255.255.255.255 up
route add -host $vip lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
关于arp_ignore和 arp_announce 参考:http://www.cnblogs.com/lgfeng/archive/2012/10/16/2726308.html
然后director上执行: bash /usr/local/sbin/lvs_dr.sh
两台rs上执行: bash /usr/local/sbin/lvs_dr_rs.sh
Windows下浏览器测试访问
在客户端测试:curl 192.168.31.110 其中192.168.31.166是VIP:Virtual IP,向外提供服务的IP
其中LVS的调度算法:轮叫调度(Round Robin)(简称rr) ,加权轮叫(Weighted Round Robin)(简称wrr),最少链接(least connection)(LC),加权最少链接(Weighted Least Connections)(WLC) 等等 (其他算法,参考 http://www.aminglinux.com/bbs/thread-7407-1-1.html)
参考博客:http://chrinux.blog.51cto.com/6466723/1198748
http://www.aminglinux.com/bbs/data/attachment/forum/201406/16/115114l0ez0aga011e901u.jpg
2. LVS/DR 配置的更多相关文章
- centos LB负载均衡集群 三种模式区别 LVS/NAT 配置 LVS/DR 配置 LVS/DR + keepalived配置 nginx ip_hash 实现长连接 LVS是四层LB 注意down掉网卡的方法 nginx效率没有LVS高 ipvsadm命令集 测试LVS方法 第三十三节课
centos LB负载均衡集群 三种模式区别 LVS/NAT 配置 LVS/DR 配置 LVS/DR + keepalived配置 nginx ip_hash 实现长连接 LVS是四层LB ...
- LVS/DR 配置
LVS/DR 配置 实验环境 三台主机:Linux Centos 6.4 32位 调度器Director:192.168.1.160(公网IP).192.168.1.100(VIP) HTTP真实服务 ...
- lvs/dr配置
lvs/dr Director server : DIP:192.168.1.100/24 eth0 VIP:192.168.1.101/24 eth0:0 Real server: Real1: ...
- Centos7 中lvs DR配置
服务器主机: 10.200.3.100 DirectServer 10.200.3.99 RealServer1 10.200.3.101 RealServer2 10.2 ...
- Linux lvs DR配置
三台服务器,(1)做路由.(2)(3)做realserver IP为:192.168.196.121 (1) 192.168.196.122 (2) 192.168.196.123 (3) ...
- lvs之 lvs+nginx+tomcat_1、tomcat_2+redis(lvs dr 模式)
前提:已经安装好 lvs+nginx+tomcat_1.tomcat_2+redis环境 ,可参考 (略有改动,比如tomcat_1.tomcat_2安装在两台机器上,而不是单机多实例 ,自行稍稍变动 ...
- Lvs Dr 模式配置
1.Dr 安装 ipvsadm # yum -y install ipvsadm # lsmod | grep ip_vs #检查ipvs模块是否加载进系统.把ipvs模块加载进系统,需要我们执 ...
- Keepalived + LVS/DR 安装配置
Keepalived + LVS/DR 说明 Keepalived:可以踢出掉故障服务 Keepalived:可以实现主从切换,解决单点故障 实验环境 四台主机:Linux Centos 6.4 32 ...
- CentOS下LVS DR模式负载均衡配置详解
一安装LVS准备: 1.准备4台Centos 6.2 x86_64 注:本实验关闭 SELinux和IPtables防火墙. 管理IP地址 角色 备注 192.168.1.101 LVS主调度器(Ma ...
随机推荐
- BZOJ 1483:[HNOI2009]梦幻布丁(链表+启发式合并)
[HNOI2009]梦幻布丁 Description N个布丁摆成一行,进行M次操作.每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色.例如颜色分别为1,2,2,1的四个布丁一 ...
- Android的WebView有哪些坑?
今天逛知乎的时候,看到一个有关Android应用开发中,WebView 的问题,算是开发中比较常见的问题了吧,而且赞同数比较多的答案,确实回答得还不错,这里小编就整理了一下,分享出来大家借鉴借鉴,避免 ...
- [bzoj3813] 奇数国 [线段树+欧拉函数]
题面 传送门 思路 这题目是真的难读......阅读理解题啊...... 但是理解了以后就发现,题目等价于: 给你一个区间,支持单点修改,以及查询一段区间的乘积的欧拉函数值,这个答案对19961993 ...
- busybox根文件系统使用记录
1.DHCP功能配置 1.1.配置Linux内核使能DHCP相关选项: [*]Networking support --> Networking support Networking optio ...
- 公共文件js加载
头部:例如 <header id="header" class="clearfix"> <a class="col-xs-9&quo ...
- OpenNI2安装
1.Openni2:从官网下载linux用zip压缩包,解压再解压2.终端转到解压目录下,找到install.sh文件,执行$sudo ./install.sh 3.执行后,生成OpenNIDevEn ...
- 通过CLI命令将ESXi主机进入维护模式
将主机置于维护模式# vimsh -n -e /hostsvc/maintenance_mode_enter # vim-cmd /hostsvc/maintenance_mode_enter 退出维 ...
- python之短路计算-布尔类型
Python中布尔类型 我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算: 与运算:只有两个布尔值都为 True 时,计算结果才为 Tr ...
- Linux应用层的定时器Timer使用详解【转】
转自:http://blog.csdn.net/wwwtovvv/article/details/8601528 版权声明:本文为博主原创文章,未经博主允许不得转载. linux下定时器的使用 -- ...
- MFC中CTime获取日期时间的方法
MFC中CTime类的功能非常强大,可以获取年.月.日.小时.分钟.秒.星期等等,最最重要的是可根据需要去格式化.下面是具体的使用方式: ① 定义一个CTime类对象 CTime time; ② 得到 ...