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模式将 ...
随机推荐
- python_字典的使用
'''info = { "stu1":"Lie","stu2":"Weite","stu3":&qu ...
- 一行代码解决IE兼容性问题
在网站开发中不免因为各种兼容问题苦恼,针对兼容问题,其实IE给出了解决方案Google也给出了解决方案百度也应用了这种方案去解决IE的兼容问题 百度源代码如下 <!Doctype html> ...
- js数字转换为float,取N个小数
javascript中的变量都是弱类型,所有的变量都声明为var,在类型转换过程中就没有java那么方便,它是通过 parseInt(变量).parseFloat(变量)等方法来进行类型转换的.注意: ...
- 【【henuacm2016级暑期训练】动态规划专题 M】Little Pony and Harmony Chest
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 每一位显然只要取1..60这些数字. 然后需要保证每个这些数字里面,每个数字所用到的质因子都它所唯一拥有的.别人不能用 因为如果别人 ...
- libvips
libvips : an image processing library libvips is a 2D image processing library. Compared tosimilar l ...
- myeclipse导入工程 Some projects cannot be imported because they already exist in the workspace
问题描述: 1 第一次从外部导入工程或者新建工程,成功: 2 删除该工程,但是没有选择delete project contents on disk 3 再次需要该工程,导入该工程时出现警告:Some ...
- grep常见使用方法总结
grep -E 'l\{2,\}' 2.txt grep -E 'h(ell|a)o' test.txt grep '[a-z]\{5,\}' test.txt grep -xf a.txt b.tx ...
- 安卓通过OkHttp获取json数据
使用Http协议访问网络 OkHttp使用 可以很好的获取接口数据!json数据! 支持get和post提交方式!!! 1.引入模块 compile 'com.squareup.okhttp3:okh ...
- GIT GUI简易教程
GIT GUI简易教程 前言 之前一直想一篇这样的东西,因为最初接触时,我也认真看了廖雪峰的教程,但是似乎我觉得讲得有点多,而且还是会给我带来很多多余且重复的操作负担,所以我希望能压缩一下它在我工作中 ...
- zzulioj--1712--神秘的数列(水题)
1712: 神密的数列 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 122 Solved: 92 SubmitStatusWeb Board De ...