博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2019/05/22 LVS的NAT模型实现
阅读量:3928 次
发布时间:2019-05-23

本文共 1865 字,大约阅读时间需要 6 分钟。

在这里插入图片描述

如何实现LVS
在这里插入图片描述
实现NAT模型
在这里插入图片描述
在这里插入图片描述
大写A和小写a两条命令
在这里插入图片描述
在这里插入图片描述
先定义集群服务,是基于哪个协议来实现lvs调度,-A -E(修改) 服务器地址service-address **
在这里插入图片描述
在这里插入图片描述
-t代表tcp协议,后面跟端口号
定义把哪个服务发布到lvs上
-s scheduler调度算法,10种
在这里插入图片描述
-r是 real-server 告诉lvs哪些是后端服务器,如果有两个rS,就需要敲两条命令,加到集群服务里
在这里插入图片描述
lvs有4种工作模式,就需要通过这个来定义
-g是DR模型,默认的
-i对应 tun模式
-m nat模式
-w是权重,不写就是大家都是1
在这里插入图片描述
在这里插入图片描述
客户端和lvs在一个网段,就不需要加网关,直接就可以访问
30.6做客户端,
30.7做lvs服务器,并且修改ip地址
在这里插入图片描述
30.7上的公网地址修改
在这里插入图片描述
重启服务
在这里插入图片描述
生效了
在这里插入图片描述
本质上因为是DNAT,还需要启用ipforward
在这里插入图片描述
在这里插入图片描述
现在启用IPforward
在这里插入图片描述
接着把客户端搭建起来
在这里插入图片描述
修改地址生效
在这里插入图片描述
在这里插入图片描述
在后面两台服务器装http服务,而且这两台机器的网管必须指向30.200
在这里插入图片描述
在这里插入图片描述
修改地址安装http服务
在这里插入图片描述
修改主机名
在这里插入图片描述
在另外的27上也一样操作
在这里插入图片描述
在这里插入图片描述
重新启动服务
在这里插入图片描述
在这里插入图片描述
在lvs上应该可以看到两个web界面
在这里插入图片描述
现在就缺调度了,网关都没有加,说明到不了192的网段
在这里插入图片描述
现在定义IPvs规则
在这里插入图片描述
安装ipvs包
在这里插入图片描述
-
-r r(轮询,静态算法**
在这里插入图片描述
现在可以用Ln查看
在这里插入图片描述
现在需要把后端的rs加进来,用-a
在这里插入图片描述
在这里插入图片描述
-r rs -m nat类型,因为用的是r轮询,就和权重没有关系
把两个加进去就成为可以被集群服务调用的主机了
在这里插入图片描述
nat支持端口映射,所以后面可以把rs的端口地址改了,可以不用80
在这里插入图片描述
在后端的realserver上看到的是客户端cip发起的请求
在这里插入图片描述
ping是直接访问LVS,不会转发到内部的
在这里插入图片描述
发布的是tcp80,只有访问tcp80,才会转发,ping是走icmp协议
在这里插入图片描述
x现在就实现了NAT的模式
但是如果中间加上路由器是否可以
在这里插入图片描述
可以是可以,就变成下面的样子了
在这里插入图片描述
中间这个变成路由器在这里插入图片描述
在这里插入图片描述
路由需要两块网卡
在这里插入图片描述
lvs也需要修改一下
在这里插入图片描述
修改lvs地址
在这里插入图片描述
不加网关也要加路由否则到达不了rs
在这里插入图片描述
在这里插入图片描述
默认网管就有了
在这里插入图片描述
路由器的网卡名字不对
在这里插入图片描述
把原来的1删除,2改成1
在这里插入图片描述
rs的网关不用修改,因为还是192.168.30.200
在这里插入图片描述30.0的地址需要修改一下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
修改第二个地址
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

因为目标地址是不变的,需要加上到达172网段的路由,
在这里插入图片描述
虽然配了路由,还是还需要给路由器启用ipforward。cen’t’os默认有这一选项
在这里插入图片描述在这里插入图片描述
生效
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
过不去,抓包看看能不能看到数据包来源
在这里插入图片描述
在这里插入图片描述
rs1看看80端口的抓包数据
在这里插入图片描述
在这里插入图片描述
lvs可以访问后端服务器没有问题
在这里插入图片描述
rs能出去但是回不来
在这里插入图片描述
在这里插入图片描述
客户端再去访问
在这里插入图片描述
在这里插入图片描述
已经调度过去了,17的80端口
收到了请求
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
只看80端口
在这里插入图片描述
两台rs都抓一下

在这里插入图片描述

防火墙没有问题
在这里插入图片描述
在这里插入图片描述
网关加错了,应该是0.200在这里插入图片描述
在这里插入图片描述
现在就可以了
在这里插入图片描述
rs服务器也能看清楚是谁访问的在这里插入图片描述
在这里插入图片描述
nat模式是可以加路由的,只不过一般不加而已
rs的服务器端口不一定 非要80
在这里插入图片描述、改成8080
在这里插入图片描述
就需要在调度器上把80端口改成8080
在这里插入图片描述
直接改改不了,只能删除
在这里插入图片描述
在这里插入图片描述
应该是成功了在这里插入图片描述
所以端口映射也支持,现在加个权重看看,调度算法(在定义集群服务的时候定义的。-E修改的是集群服务的信息
-小写e是改的rs的信息
在这里插入图片描述
在这里插入图片描述
修改lvs服务器
在这里插入图片描述
增加权重
在这里插入图片描述
1 多一点,应该是3比1的比例
在这里插入图片描述
在这里插入图片描述
还有一种是源地址哈希,只要你的客户端ip是同一个地址来的,就访问的是同一个realserver
就要改成sh
在这里插入图片描述
就一直往rs1上调度了
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
目标地址哈希,只要访问的地址目标是固定的,永远往固定的机器上调度。目标地址URL路径
创建10个页面
在这里插入图片描述
在这里插入图片描述
在另一台RS也这么玩
在这里插入图片描述
在这里插入图片描述
把LVS改成目标地址哈希
在这里插入图片描述
在这里插入图片描述
目标地址一样就调度到固定的主机上,目标地址不一样,可能调度的主机会变
把之前的权重删除,变成1比1
在这里插入图片描述
因为没有配置文件所以报错,所以重启一下,把之前记录的缓存丢了
在这里插入图片描述
在这里插入图片描述
-A增加调度集群服务信息,-a增加rs的地址
在这里插入图片描述
没有加m,默认是dr模型,端口都是一样的,不支持端口映射
删除rs的 记录
在这里插入图片描述
添加8080记录
在这里插入图片描述
一旦调度到1上就永远是1,调度到2就永远是2
只要目标地址一样,无论是谁现在访问都是2
在这里插入图片描述
再创建多点的页面试试
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
一个都不是1
在这里插入图片描述
这边调度好了,无论谁链接都是2
在这里插入图片描述
在这里插入图片描述
-m表示的是用nat模式
也可以加个权重
在这里插入图片描述
这就是nat模式的LVS
客户端发起请求到服务器端,服务器可以看到是从哪个机器上发起的请求,而且数据报文和请求报文都要经过原路LVS服务器返回,这样LVS服务器压力就比较大,所以使用DR模型就可以解决这个问题

转载地址:http://dfkgn.baihongyu.com/

你可能感兴趣的文章
模式12.状态模式-Java
查看>>
Volatile-1.保证可见性
查看>>
Volatile-2.不保证原子性
查看>>
剑指 Offer 25. 合并两个排序的链表
查看>>
剑指 Offer 26. 树的子结构
查看>>
剑指 Offer 27. 二叉树的镜像
查看>>
剑指 Offer 29. 顺时针打印矩阵
查看>>
剑指 Offer 31. 栈的压入、弹出序列
查看>>
剑指 Offer 32 - III. 从上到下打印二叉树 III
查看>>
剑指 Offer 33. 二叉搜索树的后序遍历序列
查看>>
剑指 Offer 68 - I. 二叉搜索树的最近公共祖先
查看>>
剑指 Offer 68 - II. 二叉树的最近公共祖先
查看>>
剑指 Offer 18. 删除链表的节点
查看>>
剑指 Offer 32 - II. 从上到下打印二叉树 II
查看>>
杭电oj-2011 多项式求和 C++
查看>>
杭电oj-2014 青年歌手大奖赛_评委会打分 C++
查看>>
杭电oj-2015 偶数求和 C++
查看>>
杭电oj-2016 数据的交换输出 C++
查看>>
杭电oj-2017 字符串统计 C++
查看>>
杭电oj-2018 母牛的故事 C++
查看>>