本文共 2070 字,大约阅读时间需要 6 分钟。
实现DR模型的LVS中,ipforward功能启用了没,不需要启用 NAT模型中,LVS服务器的ipforward是必须启用的 DR模型中,是不需要启用的,因为只是修改了目标的mac地址把源mac和目标mac修改了 开始抓包 就访问一次 三次握手 syn包是三次握手的第一次握手 但是下面一个也是syn(请求包原本只有一个,现在有两个,就是修改了mac地址 源地址是CIP,目标地址是VIP, 但是mac地址是路由器接口的mac地址,目标mac是LVS服务器的mac地址 先看看30.200接口mac地址是多少 lvs服务器网卡地址是多少 还有rs1,rs2 现在分析一下数据报文 收到以后会把mac地址的报文拆开,重新封装一个新的 mac地址,所以还是syn包 源地址和目标地址是不变的,修改的是mac地址 请求报文之后,应该有回应报SYN,ACK,就一个包 因为回应报文不需要经过LVS服务器,就直接回来了 ack又是两个报文,客户都向lvs服务器发的请求报文(最后的确认报文) 这是第三次握手,只要是请求报文就两个包,回应报文就一个包 请求报文需要经过LVS服务器,响应报文不需要经过LVS服务器接下来实现更常见的场景 VIP是公网IP,DIP和RIP都是私网地址,私网地址和公网地址混在一个网段里 lvs服务器和rs服务器必须在一个网段里
上次实验的基本配置好了,现在配置路由器 还缺一个10的地址 加一个地址 路由器配置好了,接下来配置三个主机 rs1就缺一个VIP了 rs2也一样 还有一个30.7的机器 刚才做实验是30.100 现在试着拿脚本执行 根据start就是跑一遍 另外一个rs也跑一遍。复制过去 地址就绑定上去了 lvs服务器也修改下 -g就是dr模型 现在用客户端测一下,就成功了 试试lvs网关随便指是否可以 为了干净,彻底重启一下 这才是生产中,用到的场景 lvs启动了,现在重启一下 试试配10.地址的网关 不通 了 说明虽然是随便配置,但是也是有一定范围的随便配,配置DIP网段的是随便配的 重新配置一下 有arp缓存,就记住了之前的网关,需要重启一下 跑跑脚本就实现了 作为http服务来讲经常和https一起使用,原来的做法的是80一个集群,443一个集群,这就需要分别调度了 一个用户访问http调度到1机器,后面的用户因为是轮循,就也可能调度到1机器上去 现在希望不论http和https都轮循,第一个访问http,第二个访问https就往下一个机器调度 以前是分两个集群服务,现在能否定为一个集群服务 FWM防火墙标签 在数据报文头部,添加一个标记,只要访问http 80 和https443 都打上标签,标签带来的好处就是ipvs规则中,可以根据标签来集群调度 就是选项f -t代表tcp协议,u是代表udp协议,-f防火墙标签 请求是https,因为不支持端口映射,随意返回响应的时候也是走的https 如何打标签 用到mangle表了,之前用的是filter,nat表,prerouting这个链接上-,-d目标地址。收到请求后,-p 协议 -m multiport 80和443都写上, 如果目标地址来自哪里和协议时tcp,端口是80,443,就贴标签 就在防火墙打上标签 在ipvsadm规则中就可以使用-f了+标签对应数字 不去申请证书,直接mod_ssl(本身就会生成连个文件,一个私钥一个证书,只不过是自签名的 把服务启动一下,应该会自动打开443端口 由于这两个服务器的443端口并没有发布出来,所以现在并不能去调度 把443和80作为一个集群服务来进行调度,先把lvs上的先停了 这个时候就能看到这个标签 现在就可以针对这个来定义ipvs规则了 顺便绑定VIP地址 先测一下自己是否能访问自己 因为是轮询,所以访问http和https应该是轮询的 现在已经靠标签来区分了 现在是轮询的,轮询带来的结果就是这次访问这个机器,下次就轮到其他机器上去了 这样就不利于会话保存, 现在想即使是rr,轮询,上次访问了rs1,下次尽可能也调度到rs1比较好 (之前的sh,源地址只要是同一个,就固定的往同一个服务器上调度) 如何让在rr的情况下也能短期内往同一服务器上调度 只需要加-p timeout -p默认时间300秒,5分钟不动,就往同意机器上调度 文档有错误,其实是360秒 360秒以内,一直往一台机器上调度 持久链接实现,基于某个端口, 也可以基于某个防火墙 0代表所有端口(只要访问lvs的任意端口,就调度到其他机器上去,访问22,就调度到内部的22端口上去,就等于把企业内部的端口都发布到了互联网上去了 现在有一个麻烦问题,当服务器宕机 了 但是还往这里调度 先把持久链接关闭了 现在有一个机器出了故障了,另外一个是好的 一个机器死 了,还调度就不符合逻辑 可以自己写一个脚本在lvs上定期探测后端服务器是否正常使用,不行的就自动从ipvsadm列表删除 5秒查一次转载地址:http://jfkgn.baihongyu.com/