LVS-DR 配置测试
LVS
Lvs体系结构

Lvs工作模式(3种)
NAT-网络地址转换模式
当用户请求到达调度器时,调度器将请求报文的目标地址(即虚拟IP地址)改写成选定的Real Server地址,同时报文的目标端口也改成选定的Real Server的相应端口,最后将报文请求发送到选定的Real Server。在服务器端得到数据后,Real Server返回数据给用户时,需要再次经过负载调度器将报文的源地址和源端口改成虚拟IP地址和相应端口,然后把数据发送给用户,完成整个负载调度过程。
TUN-ip隧道模式
它的连接调度和管理与VS/NAT方式一样,只是它的报文转发方法不同,VS/TUN方式中,调度器采用IP隧道技术将用户请求转发到某个Real Server,而这个Real Server将直接响应用户的请求,不再经过前端调度器,
SR-直接路由模式
它的连接调度和管理与VS/NAT和VS/TUN中的一样,但它的报文转发方法又有不同,VS/DR通过改写请求报文的MAC地址,将请求发送到Real Server,而Real Server将响应直接返回给客户,免去了VS/TUN中的IP隧道开销。这种方式是三种负载调度机制中性能最高最好的.
LVS调度算法
常用:
rr:轮询调度(也叫1:1调度,把用户请求平均分配给real server)
wrr:加权轮询(根据Real Server的不同处理能力来调度访问请求调度器还可以自动查询Real Server的负载情况,并动态地调整其权值。,)
lc:最小连接数调度(动态地将网络请求调度到已建立的连接数最少的服务器上)
wlc:加权最小连接数调度(系统管理员可以动态的设置相应的权值,权值表示其处理能力)
---------------------------------------------------------------------------------------------------------------------------------------------------------
LVS-DR模式工作原理
首先CIP请求被发送到Director的VIP,然后Director使用相同的VIP将目的IP地址请求发送到集群节点或Real Server。最后,集群某个节点将回复该数据包,并将该数据包直接发送到客户端计算机(不经过director),并且以此回复数据包使用的目的VIP 地址作为源IP地址。
LVS-DR
一、环境准备
Directory centos7.3 192.168.138.11(VIP:192.168.138.110)
Rs1 centos7.3 192.168.138.12
Rs2 centos7.3 192.168.138.16
测试机器 centos7.3 192.168.138.14
配置域名解析
#cat /etc/hosts
192.168.138.11 directory
192.168.138.12 rs1
192.168.138.16 rs2
同步时间
ntpdate ntp.gwadar.cn
配置http服务(在Real server操作)
1) 安装
yum install -y httpd
2)准备测试页面
[root@rs1 ~]# cat /var/www/html/index.html
<html>
<head>
<title> This is a web test page </title>
</head>
<body>
<h1><center>Welcom to my web , my ip is 192.168.138.12</center></h1>
</body>
</html>
[root@rs2 ~]# cat /var/www/html/index.html
<html>
<head>
<title> This is a web test page </title>
</head>
<body>
<h1><center>Welcom to my web , my ip is 192.168.138.16</center></h1>
</body>
</html>
3)启动并测试http服务
[root@rs1 ~]# systemctl start httpd
[root@rs1 ~]# elinks -dump http://192.168.138.12
Welcom to my web , my ip is 192.168.138.12
二.Lvs安装及配置
1.安装
[root@direstory ~]# yum install -y ipvsadm
加载到内核
[root@direstory ~]# ipvsadm
查看
[root@direstory ~]# lsmod | grep ip_vs
ip_vs 141092 0
nf_conntrack 111302 1 ip_vs
libcrc32c 12644 2 xfs,ip_v
2.配置lvs负载均衡服务
1)配置VIP地址
方法一:
[root@direstory ~]# cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens33:110
[root@direstory network-scripts]# cat ifcfg-ens33:110
BOOTPROTO=none
DEVICE=ens33:110
ONBOOT=yes
DNS1=114.114.114.114
TYPE=Ethernet
IPADDR1=192.168.138.110
PREFIX=24
GATEWAY=192.168.138.2
方法二
查看网卡接口
[root@direstory ~]#nmcli con sh
增加ip地址
[root@direstory ~]# nmcli con mod "System ens33" +ipv4.addr 192.168.138.110/24
3. 手工执行配置添加LVS服务并增加两台RS
[root@direstory ~]# ipvsadm -A -t 192.168.138.110:80 -s rr
[root@direstory ~]# ipvsadm -a -t 192.168.138.110:80 -r 192.168.138.16:80 -g
[root@direstory ~]# ipvsadm -a -t 192.168.138.110:80 -r 192.168.138.12:80 –g
查看配置的服务
[root@direstory ~]# ipvsadm -l
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.138.110:80 rr
-> 192.168.138.12:80 Route 1 0 0
-> 192.168.138.16:80 Route 1 0 0
相关参数解释
-A 添加虚拟服务器
-t 设置群集地址(VIP,Virtual IP)
-s 指定负载调度算法
-a 添加真实服务器
-d 删除真实服务器
-r 指定真实服务器(Real Server)的地址
-m 使用NAT模式;-g、-i分别对应DR、TUN模式
-w 为节点服务器设置权重,默认为1
配置好的lvs服务保存/恢复
保存:
[root@direstory ~]# ipvsadm -S > ipvsadm.cfg
[root@direstory ~]# more ipvsadm.cfg
-A -t 192.168.138.110:http -s rr
-a -t 192.168.138.110:http -r rs1:http -g -w 1
-a -t 192.168.138.110:http -r rs2:http -g -w 1
恢复:
[root@direstory ~]# ipvsadm -R < ipvsadm.cfg
[root@direstory ~]# ipvsadm –l
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.138.110:http rr
-> rs1:http Route 1 0 0
-> rs2:http Route 1 0 0
删除示例:
[root@direstory ~]# ipvsadm -D -t 192.168.138.110:80
[root@direstory ~]# ipvsadm -d-t 192.168.138.110:80 -r 192.168.138.16:80
4. 手工在RS端绑定VIP
[root@rs1 ~]# cd /etc/sysconfig/network-scripts/
[root@rs1 network-scripts]# cp
ifcfg-lo ifcfg-lo:110
[root@rs1 network-scripts]#
vim ifcfg-lo:110
DEVICE=lo:110
IPADDR=192.168.138.110
NETMASK=255.255.255.255
ONBOOT=yes
Rs2 同上
5.调整内核参数,关闭arp响应(在每台real server执行)
内核参数配置文件:/etc/sysctl.conf
当前生效
[root@RS1 ~]# echo "1" >
/proc/sys/net/ipv4/conf/lo/arp_ignore
[root@RS1 ~]# echo "2"
> /proc/sys/net/ipv4/conf/lo/arp_announce
[root@RS1 ~]# echo
"1" > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@RS1 ~]# echo
"2" > /proc/sys/net/ipv4/conf/all/arp_announce
永久生效
[root@rs1 ~]# cat /etc/sysctl.conf
net.ipv4.conf.lo.arp_ignore=1
net.ipv4.conf.lo.arp_announce=2
net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2
rs2同上
三、测试lvs-dr集群
[root@localhost
~]# for ((i=1;i<=10;i++)); do elinks -dump http://192.168.138.110; done
Welcom to my web , my ip is
192.168.138.16
Welcom to my web , my ip is
192.168.138.12
Welcom to my web , my ip is
192.168.138.16
Welcom to my web , my ip is
192.168.138.12
Welcom to my web , my ip is
192.168.138.16
Welcom to my web , my ip is
192.168.138.12
Welcom to my web , my ip is
192.168.138.16
Welcom to my web , my ip is
192.168.138.12
Welcom to my web , my ip is
192.168.138.16
Welcom to my web , my ip is 192.168.138.12
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: ...
- 2. LVS/DR 配置
平台:RedHat Enterprise Linux centos6.3 ipvsadm ipvs 1.DR模型 DR模型:直接路由模型,每个Real Server ...
- 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的DR设置测试
dir: ipvsadm -C 清空之前ipvsadm iptables -t nat -F 防火墙规则清空v rs1,rs2: vi /etc/sysconfig/network-scrip ...
- lvs之 lvs+nginx+tomcat_1、tomcat_2+redis(lvs dr 模式)
前提:已经安装好 lvs+nginx+tomcat_1.tomcat_2+redis环境 ,可参考 (略有改动,比如tomcat_1.tomcat_2安装在两台机器上,而不是单机多实例 ,自行稍稍变动 ...
- LVS结合keepalived配置测试
LVS/DR + keepalived配置 注意:前面虽然我们已经配置过一些操作,但是下面我们使用keepaliave操作和之前的操作是有些冲突的,所以若是之前配置过DR,请首先做如下操作: 三 ...
- Keepalived + LVS/DR 安装配置
Keepalived + LVS/DR 说明 Keepalived:可以踢出掉故障服务 Keepalived:可以实现主从切换,解决单点故障 实验环境 四台主机:Linux Centos 6.4 32 ...
随机推荐
- 面试常问小知识点之Integer
背景 今天在查看Sonar的时候发现小伙伴在某些场景下如下使用 很明显sonar已经报错了,但是线上应用目前是正常的 问题 事实上经常会有面试的小伙伴或者笔试的小伙伴问这个问题 Integer的一些小 ...
- Entity Framework(四):使用DbModelBuilder API创建表结构
DbContext类有一个OnModelCreating方法,它用于流利地配置领域类到数据库模式的映射.下面我们以fluent API的方式来定义映射.首先,先将Product类注释掉,重新编写该类, ...
- 关于HTML5中hash部分API在历史管理,选项卡自动跳转中的一点使用
在群里最近有人提到如何处理在页面跳转之后,想要直接定位到相对应的选项卡的选项上,比如首页有登录和注册两个按钮,而登录注册页面有一对选项卡分别对应的是登陆和注册,想要实现的功能是点击登陆去到登录页的登录 ...
- 使用AngularJS实现的前后端分离的数据交互过程
一. AngularJS简介 AngularJS是什么 AngularJS是一个开源Web应用程序框架.最初是由MISKO Hevery和Adam Abrons于2009年开发,现在是由谷歌维护. A ...
- 在MVC设计模式中,JavaBean的作用是。(选择1项)
A.Controller B.Model C.业务数据的封装 D.View 解答:B
- hdu 5443 The Water Problem(长春网络赛——暴力)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5443 The Water Problem Time Limit: 1500/1000 MS (Java ...
- 原生YII2 增删改查的一些操作(非ActiveRecord)
1.添加数据 如下,使用insert方法:t_admin_user为数据表名..其他的是属性.. $num = Yii::$app->db->createCommand()->ins ...
- string类(一、string基础)
string基础 1.字符串常量具备字符串池特性. 字符串常量在创建前,首先在字符串池中查找是否存在相同文本. 如果存在,则直接返回该对象引用:若不存在,则开辟空间存储. 目的:提高内存利用率. 2. ...
- web版pdf在线阅读器
近期论坛里有人提到了,在线pdf阅读器怎么做.我百度了一下,发现非常多人都非常懒.程序猿都非常懒吗? 答案是否定的. 为什么都不愿意去搜索一下呢.网上非常多答案的.我这里就列举一例.大家共勉. 看代码 ...
- cocos2dx热更新tmx的一个坑
游戏项目中使用了tmx地图,当对tmx文件进行热更新时,进入该地图总是宕机,纠结了几小时终于发现,cocos读取tmx文件时,会默认tmx关联的图集文件和tmx在同一目录,然而那个图集文件并没有在热更 ...