LVS DR集群-阿里云开发者社区

开发者社区> 科技小能手> 正文

LVS DR集群

简介:
+关注继续查看

原理:LVS DR(director Routing)技术利用了Internet服务的非堆成特带你,调度器只负责调度Client发出的请求,

而服务器realserver直接将响应结果发挥给Client,因此相对LVS NAT方式而言可以提高整个集群数据包的吞吐量。关

于LVS DR的搭建架构应满足:电镀漆和服务器在物理上有一个网卡通过局域网链接,VIP地址被电镀漆和服务器组共享,

电镀漆配置的VIP地址对外部是可见的,用于接收虚拟服务的请求报文。把所有服务器的VIP地址配置在各自的NOn-ARP

网路设备,它对外不可见,只是用于处理目标地址为VIP的网络请求。

实验环境:

客户机1: 客户机2 转发器 realserver1 realserver2
node2 宿主主机 node1 web1 web2

网络拓扑图

wKiom1edr5fi4L5MAACpFfkDvAk117.png-wh_50


node1设置文件:

需要修改文件

网元位置 网卡名 链接方式 对应ip

node1     eth0 桥接 RIP

node1      eth0:0     虚拟网卡     VIP

转发器node1相关配置信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
eth0eth0:0
DEVICE=eth0DEVICE=eth0:1                 
TYPE=Ethernet                              TYPE=Ethernet                 
UUID=c64ec2f3-0393-4215-9488-b87eb098fc33               ONBOOT=yes                    
ONBOOT=yes                                NM_CONTROLLED=yes             
NM_CONTROLLED=yes                            BOOTPROTO=none                
BOOTPROTO=none                              DEFROUTE=yes                  
PREFIX=24                                 IPV4_FAILURE_FATAL=yes        
DEFROUTE=yes                               IPV6INIT=no                   
IPV4_FAILURE_FATAL=yes                        HWADDR=00:0C:29:D0:6B:6B      
IPV6INIT=no                                USERCTL=no                    
NAME="System eth0"                           IPADDR=192.168.4.233          
HWADDR=00:0C:29:D0:6B:6B                       NETMASK=255.255.255.0         
USERCTL=no                                GATEWAY=192.168.4.149           
IPADDR=192.168.4.201                          DNS1=192.168.4.149              
NETMASK=255.255.255.0                         [root@node1 network-scripts]
GATEWAY=192.168.4.149
DNS1=192.168.4.149

realserver::

网元位置 网卡名 链接方式 对应IP

web1 eth0 桥接 RIP

web1 lo:1 复制lo VIP

相关网卡配置

eth0

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
lo:1
DEVICE=eth0                         DEVICE=lo:0            
TYPE=Ethernet                        IPADDR=192.168.4.233         //VIP
UUID=3a5f26b3-6ef6-4f8f-8a67-dd65291a109e          NETMASK=255.255.255.255      //只针对此IP地址的包进行处理
ONBOOT=yes                          ONBOOT=yes             
NM_CONTROLLED=yes                      NAME=loopback          
BOOTPROTO=none                           
PREFIX=24                                
DEFROUTE=yes                             
IPV4_FAILURE_FATAL=yes                   
IPV6INIT=no                              
NAME=System eth0                         
HWADDR=00:0C:29:E4:32:DC                 
USERCTL=no                               
IPADDR=192.168.4.211                     
NETMASK=255.255.255.0                    
GATEWAY=192.168.4.149                      
DNS1=192.168.4.149

realserver2:web2

网元位置: 网卡名   链接方式 对应IP

web2 eth0   桥接 RIP

web2 lo:0     复制lo VIP

相关网卡配置信息

eth0

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
eth0                                                    lo:0
DEVICE=eth0                           DEVICE=lo:0           
TYPE=Ethernet                          IPADDR=192.168.4.203   
UUID=3a5f26b3-6ef6-4f8f-8a67-dd65291a109e            NETMASK=255.255.255.255
ONBOOT=yes                            ONBOOT=yes             
NM_CONTROLLED=yes                        NAME=loopback          
BOOTPROTO=none                           
PREFIX=24                                
DEFROUTE=yes                             
IPV4_FAILURE_FATAL=yes                   
IPV6INIT=no                              
NAME="System eth0"                       
HWADDR=00:0C:29:D4:56:5C                 
USERCTL=no                               
IPADDR=192.168.4.212                     
NETMASK=255.255.255.0                    
GATEWAY=192.168.4.149                      
DNS1=192.168.4.149


director相关文件:

1
2
3
4
5
6
7
vi /etc/sysctl.conf 
net.ipv4.ip_forward = 1   //修改位置
sysctl -p   //对刚才配置文件进行保存
对于realserver web1和web2服务器可以通过配置文件永久生效如下所示
realserver(1&2):echo"net.ipv4.conf.eth0.arp_ignore=1 
                 net.ipv4.conf.eth0.arp_announce=2 " >>/etc/sysctl.conf
                 sysctl -p
1
2
3
4
RealServer或临时生效:
  
echo 2 >  /proc/sys/net/ipv4/conf/eth0/arp_announce  
 echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore

主角部分:在分发器上安装ipvsadm管理工具

1
2
3
4
5
6
rpm -ivh /media/cdrom/LoadBlanced/ipvsadm-1.26-4.el6.x86_64.rpm 
ipvsadm -A -t 192.168.4.201:80 -s rr
ipvsadm -a -t 192.168.4.201:80 -r 192.168.4.211 -g
ipvsadm -a -t 192.168.4.201:80 -r 192.168.4.212 -g  
/etc/init.d/ipvsadm save
ipvsadm -L -n

生成验证文件

1
2
3
realserver:生成验证文件,使用httpd服务
并对:web1   echo "web11111" >> /var/www/html/index.html
web2 echo "web22222" >> /var/www/html/index.html

虚拟机linux客户端测试:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
yum -y install elinks
elinks 192.168.4.201 -dump  //观察结果  满足预测结果
[root@node2 ~]# elinks 192.168.4.233 -dump
   web5678
[root@node2 ~]# elinks 192.168.4.233 -dump
   web1234
[root@node2 ~]# elinks 192.168.4.233 -dump
   web1234
[root@node2 ~]# elinks 192.168.4.233 -dump
   web5678
[root@node2 ~]# elinks 192.168.4.233 -dump
   web1234
[root@node2 ~]# elinks 192.168.4.233 -dump
   web5678
[root@node2 ~]#

宿主主机测试

wKioL1eds8LyJ_4iAAALcCPahRs140.png-wh_50

转发器node1结果

1
2
3
4
5
6
7
[root@node1 ~]# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.4.233:80 rr
  -> 192.168.4.211:80             Route   1      0          8         
  -> 192.168.4.212:80             Route   1      0          7
1
2
3
4
5
6
7
[root@node1 ~]# ipvsadm -L -n --stats
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port               Conns   InPkts  OutPkts  InBytes OutBytes
  -> RemoteAddress:Port
TCP  192.168.4.233:80                   24      116        0     9597        0
  -> 192.168.4.211:80                   12       60        0     4980        0
  -> 192.168.4.212:80                   12       56        0     4617        0

现实情况中可根据实际规划信息进行相应的算法调度,LVS所提供的12中调度算法,在一定程度上能满足大多数服务器的架构需求。



本文转自 CARYFLASH 51CTO博客,原文链接:http://blog.51cto.com/maoxiaoxiong/1832438

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
负载均衡LVS集群详解
一、LB--负载均衡 在负载均衡集群中需要一个分发器,我们将其称之为Director,它位于多台服务器的上面的中间层,根据内部锁定义的规则或调度方式从下面的服务器群中选择一个以此来进行响应请求,而其分发的方式则是根据某个算法进行的。
742 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
4614 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
10784 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
3664 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,云吞铺子总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系统盘、创建快照、配置安全组等操作如何登录ECS云服务器控制台? 1、先登录到阿里云ECS服务器控制台 2、点击顶部的“控制台” 3、通过左侧栏,切换到“云服务器ECS”即可,如下图所示 通过ECS控制台的远程连接来登录到云服务器 阿里云ECS云服务器自带远程连接功能,使用该功能可以登录到云服务器,简单且方便,如下图:点击“远程连接”,第一次连接会自动生成6位数字密码,输入密码即可登录到云服务器上。
17375 0
14527
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载