lvs中dr模式配置脚本
1 dr模式介绍
1.1 lvs的安装
安装具体解释:http://blog.csdn.net/CleverCode/article/details/50586957。
1.2 lvs模式
lvs有三种模式dr,nat,tun。这里先介绍dr模式。
1.3 dr特点
1)Load Balancer和全部的Real Server在同一个局域网段上。
2)Real Server将请求处理后。直接返回给用户。不须要在通过调度器返回。
1.4 处理过程
请求过程:客户 => vip => RealServer。
响应过程:RealServer =>客户。
2 配置环境
2.1 LoadBalancer
DIP:192.168.142.133(eth0)。
VIP:192.168.142.211(eth0:1)。
2.2 RealServer1
DIP:192.168.142.130(eth0)。
2.3 RealServer2
DIP:192.168.142.131(eth0)。
3 配置脚本
3.1 配置LoadBalancer
# mkdir -p /usr/local/lvs
# cd /usr/local/lvs
# vi lvs-dr.sh
#!/bin/sh # lvs-dr.sh
#
# lvs的dr模式LVS server脚本
#
#
# vip和rip必须在同一个网段。 VS/DR通过改写请求报文的MAC地址。将请求的包发送到realserver上。
# 不改变包的源和目标的IP地址。然后realserver直接回复client。不再经过LVS调度器,这样大大的减轻了LVS的负担。 # set the vip and port
VIP=192.168.142.211
VPORT1=80 # set the rip and port
# web
RIP1=192.168.142.130
RIP2=192.168.142.131
# port
RPORT1=80 Usage (){
echo "Usage:`basename $0` (start|stop|status) "
exit 1
} if [ $# -ne 1 ];then
Usage
fi case $1 in
start)
echo "start LVS of DirectorServer"
echo 1 > /proc/sys/net/ipv4/ip_forward # set the vip
/sbin/ifconfig eth0:1 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev eth0:1 # clear ipvs table
/sbin/ipvsadm -C # add lvs vip and port
/sbin/ipvsadm -A -t $VIP:$VPORT1 -s rr # add rip and port
/sbin/ipvsadm -a -t $VIP:$VPORT1 -r $RIP1:$RPORT1 -g -w 1
/sbin/ipvsadm -a -t $VIP:$VPORT1 -r $RIP2:$RPORT1 -g -w 1 /sbin/ipvsadm -L -n
;; stop)
echo "close LVS DirectorServer"
/sbin/ipvsadm -C
/sbin/ifconfig eth0:1 down
;; status)
/sbin/ipvsadm -L -n
;; *)
Usage
esac
启动
#sh lvs-dr.sh start
3.2 配置RealServer1
# mkdir -p /usr/local/lvs
# cd /usr/local/lvs
# vi realServer.sh
#!/bin/sh # realServer.sh
#
# lvs的dr模式RIP server脚本
# VIP=192.168.142.211 #vip's broadcast
BROADCAST=192.168.142.255 Usage ()
{
echo "Usage:`basename $0` (start|stop)"
exit 1
} if [ $# -ne 1 ];then
Usage
fi case $1 in
start)
echo "reparing for Real Server"
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/eth0/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/eth0/arp_announce
/sbin/ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $BROADCAST up
/sbin/route add -host $VIP dev lo:0
;; stop)
/sbin/ifconfig lo:0 down
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/eth0/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/eth0/arp_announce
echo "stop Real Server"
;; *)
Usage
esac
启动
#sh realServer.sh start
3.3 配置RealServer2
配置同理RealServer1。
4 建立webserver測试
1)RealServer1与RealServer2安装与配置Nginx(具体解释:http://blog.csdn.net/clevercode/article/details/45442155)
2)在RealServer1的webserver根文件夹建立index.html
# vi index.html
if you see this page,then you know this ip is 192.168.142.130 and this page is from nginx!
3)在RealServer2的webserver根文件夹建立index.html
# vi index.html
if you see this page,then you know this ip is 192.168.142.131 and this page is from nginx!
4)配置host或者dns。将my.domain.com指向VIP:192.168.142.211。
5)刷新页面将会看到不同的内同。
lvs中dr模式配置脚本的更多相关文章
- LVS+keepalived DR模式配置高可用负载均衡集群
实验环境 LVS-Master 10.0.100.201 VIP:10.0.100.203 LVS-Slave 10.0.100.204 WEB1-Tomcat 10.0.2.29 gat ...
- lvs 中DR模式负载均衡及keepalived
lvs DR配置 LVS负载均衡:三种负载均衡模式:DR,TUN(ip隧道),NAT,这里我们介绍DR模式 server1: 首先,配置server机yum源 方便后期实验流畅vim /etc/yum ...
- LVS的DR模式配置
一.基本规划负载均衡调度器 192.168.1.104 默认网关 192.168.1.1 ip别名 192.168.1.233realserver1 192.168 ...
- Lvs Keepalive DR模式高可用配置
Lvs Keepalive DR模式配置 一.环境 #DIP# eth0:192.168.233.145#VIP# eth0:0 192.168.233.250/32 #RIP1:192.168.23 ...
- LVS的DR模式
DR模式: 请求由LVS接受,由真实提供服务的服务器(RealServer, RS)直接返回给用户,返回的时候不经过LVS. DR模式下需要LVS和绑定同一个VIP(RS通过将VIP绑定在loopba ...
- LVS三种模式配置及优点缺点比较
目录: LVS三种模式配置 LVS 三种工作模式的优缺点比较 LVS三种模式配置 LVS三种(LVS-DR,LVS-NAT,LVS-TUN)模式的简要配置 LVS是什么: http://www.lin ...
- LVS三种模式配置及优点缺点比较 转
LVS三种模式配置及优点缺点比较 作者:gzh0222,发布于2012-11-12,来源:CSDN 目录: LVS三种模式配置 LVS 三种工作模式的优缺点比较 LVS三种模式配置 LVS三种 ...
- LVS:DR模式(Direct Routing)部署实验
本文介绍怎样在kvm的虚拟环境下,部署实验LVS的DR模式.包含网络结构图,怎样配置.以及使用tcpdump分析ip包. 网络结构图 kvm ...
- 虚拟集群LVS及DR模式搭建笔记
LVS(虚拟集群Linux Virtual Server) LVS-NAT:地址转换,数据包来回都要经过NAT转换,所以Director Server(即LVS服务器)将成为系统瓶颈.使用NAT模式将 ...
随机推荐
- Android开发新手HelloWorld解析
首先看这个 HelloWorld 类. Java代码public class HelloWorld extends Activity { /** Called when the activ ...
- 常见的版本号及Springcloud的版本
谈谈软件版本号的认识 一.常见版本号说明 举个瓜:2.0.3 RELEASE 2:主版本号,当功能模块有较大更新或者整体架构发生变化时,主版本号会更新 0:次版本号.次版本表示只是局部的一些变动. 2 ...
- HDU 4253 Two Famous Companies
Two Famous Companies Time Limit: 15000ms Memory Limit: 32768KB This problem will be judged on HDU. O ...
- jquery-常用插件集合
001.弹出消息插件toastr https://github.com/CodeSeven/toastr 002.弹出页面全屏插件 https://github.com/sindresorhus/sc ...
- MySQL 创建表时,设置时间字段自己主动插入当前时间
MySQL 创建表时,设置时间字段自己主动插入当前时间 DROP TABLE IF EXISTS `CONTENT`; CREATE TABLE `CONTENT` ( `ID` char(20) N ...
- 代理模式之cglib动态代理
上一篇博客说了实现InvocationHandler接口的jdk动态代理,还有一种实现动态代理的方式则是:通过继承的方式实现的cglib动态代理. 先在程序中导入cglib的包,cglib-nodep ...
- 第二次phython作业
第一题:编写程序,生成一个包含50个随机整数的列表,然后删除其中所有奇数.(注意保证删除操作的效率) import random x=[random.randint(0,100)for i in ra ...
- ubuntu 休眠之后蓝牙鼠标无效果。
ubuntu链接蓝牙鼠标之后.左上角蓝牙标志左下角应该有一个锁的标志. 可是休眠之后,蓝牙鼠标失效,锁没有了,点击按键,出来锁之后,立即消失. 运行两次例如以下命令能够解决: sudo hciconf ...
- dotnet core test with NUnit
https://github.com/nunit/dotnet-test-nunit if you are using Visual Studio. Your project.json in your ...
- python+caffe训练自己的图片数据流程
1. 准备自己的图片数据 选用部分的Caltech数据库作为训练和测试样本.Caltech是加州理工学院的图像数据库,包含Caltech101和Caltech256两个数据集.该数据集是由Fei-Fe ...