设为首页 收藏本站
查看: 1159|回复: 0

LVS-DR实现基于LAMP的负载均衡

[复制链接]
累计签到:2 天
连续签到:1 天
发表于 2016-3-21 10:07:08 | 显示全部楼层 |阅读模式
基于搭建LAMP环境,并实践基于DNS做基于域名的虚拟主机中的环境,重新搭建一个同样的环境要求:
     a)实现web服务文件更新的自动同步到另一台机器上
     b)数据库实现主从复制
     c)通过shell脚本实现网站源代码备份和mysql备份,备份策略包括全量备份、增量备份、差异备份


通过lvs实现负载均衡,要求使用DR模式,并能把其中的原理部分通过自己的理解汇总出来。
   lvs:Linux Virtual Server, Linux虚拟四层交换的服务器,是一个虚拟的服务器集群系统。LVS有LVS-NAT,LVS-DR,LVS-TUN三种模式,其中DR模式意为Direct Routing(直接路由),是调度器与实际服务器都有一块网卡连在同一物理网段上的情况。以下是DR模式配置实验。
1,实验环境如下:
QQ截图20160321100642.jpg
首先需在DR上安装IPVSADM程序包。并利用前面实验搭建好的两台LAMP环境的服务器做真实服务器。并启动HTTPD服务,验证如下:
QQ截图20160321100650.jpg
wKioL1bslr6gAgxbAABuagMT6dY410.jpg
2:在DR上配置VIP和DIP,并配置DR.
wKiom1bslj6B9I27AAAvPPICnUE496.jpg
wKioL1bsltyzYAy4AAFXPmtgcWQ920.jpg
3,分别配置两台RS。先抑制ARP响应,然后设置lo:0上IP地址。
    wKioL1bsluzC2uqVAAF9ID2oN48378.jpg
wKiom1bslmeSUAX8AAFWSuVstHI910.jpg
wKiom1bslnOj0xCqAAD3VEskpnE822.jpg
4,LVS负载均衡测试:
    wKioL1bslxDg4hGFAABsH1GUrhk985.jpg
QQ截图20160321100657.jpg
arp响应限制说明:
1)arp_ignore:
定义对目标地址为本地IP的ARP询问不同的应答模式0
0 - (默认值): 回应任何网络接口上对任何本地IP地址的arp查询请求
1 - 只回答目标IP地址是来访网络接口本地地址的ARP查询请求
2 -只回答目标IP地址是来访网络接口本地地址的ARP查询请求,且来访IP必须在该网络接口的子网段内
3 - 不回应该网络界面的arp请求,而只对设置的唯一和连接地址做出回应
4-7 - 保留未使用
8 -不回应所有(本地地址)的arp查询

2)arp_announce:
对网络接口上,本地IP地址的发出的,ARP回应,作出相应级别的限制: 确定不同程度的限制,宣布对来自本地源IP地址发出Arp请求的接口
0 - (默认) 在任意网络接口(eth0,eth1,lo)上的任何本地地址
1 -尽量避免不在该网络接口子网段的本地地址做出arp回应. 当发起ARP请求的源IP地址是被设置应该经由路由达到此网络接口的时候很有用.此时会检查来访IP是否为所有接口上的子网段内ip之一.如果改来访IP不属于各个网络接口上的子网段内,那么将采用级别2的方式来进行处理.
2 - 对查询目标使用最适当的本地地址.在此模式下将忽略这个IP数据包的源地址并尝试选择与能与该地址通信的本地地址.首要是选择所有的网络接口的子网中外出访问子网中包含该目标IP地址的本地地址. 如果没有合适的地址被发现,将选择当前的发送网络接口或其他的有可能接受到该ARP回应的网络接口来进行发送.


LVS原理总结:
         ipvsadm:用户空间的命令行工具,用于管理集群服务;
            ipvs: 工作内核中netfilter INPUT钩子上;
1、LVS的LVS-DR,LVS-NAT,LVS-TUN三种模式:
   lvs-nat:多目标的DNAT(iptables);它通过修改请求报文的目标IP地址(同时可能会修改目标端口)至挑选出某RS的RIP地址实现转发;
      (1)RS应该和DIP应该使用私网地址,且RS的网关要指向DIP;
      (2)请求和响应报文都要经由director转发;极高负载的场景中,director可能会成为系统瓶颈;
      (3)支持端口映射;
      (4)RS可以使用任意OS;
      (5)RS的RIP和Director的DIP必须在同一IP网络;
   lvs-dr:direct routing它通过修改请求报文的目标MAC地址进行转发;
      (1) 保证前端路由器将目标IP为VIP的请求报文发送给director;通过静态绑定或者arptables或者修改RS主机内核的参数实现。
      (2)RS的RIP可以使用私有地址;但也可以使用公网地址;
      (3)RS跟Director必须在同一物理网络中;
      (4)请求报文经由Director调度,但响应报文一定不能经由Director;
      (5)不支持端口映射;
      (6)RS的网关不能指向DIP;
      (7) RS可以大多数OS;

  lvs-tun:不修改请求报文的ip首部,而是通过在原有的ip首部之外,再封装一个ip首部,类似于网络隧道机制实现。
      (1)RIP, DIP, VIP均为公网地址;
      (2)RS的网关的不能指向DIP;
      (3)请求报文必须经由director调度,但响应报文必须不能经由director;
      (4)不支持端口映射;
      (5)RS的OS必须支持隧道功能;
2、DR模式工作原理:
    1,接收client的请求,根据设定的负载均衡算法选取一台realserver的ip;
    2,以选取的这个ip对应的mac地址作为目标mac,然后重新将IP包封装成帧转发给这台RS;DR将请求转发给RS是在数据链路层来实现的,所以DR必须和RS在同一网段里面。
3,RealServer要在lo接口上配置VIP,因为要让RS能够处理目标地址为vip的IP包,首先必须要让RS能接收到这个包,所以在lo上配置vip能够完成接收包并将结果返回client。
RealServer在局域网中收到包,拆开后发现目标IP(VIP)与本地匹配,于是处理这个报文。随后重新封装报文,发送到局域网。client与VS同一网段,那么client将收到这个回复报文。如果跨了网段,那么报文通过经由网关路由器从Internet返回给client。





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-193664-1-1.html 上篇帖子: LAMP中apache的相关配置 下篇帖子: 搭建LAMP环境,并实践基于DNS做基于域名的虚拟主机
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表