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

[经验分享] lvs之DR模型实现

[复制链接]

尚未签到

发表于 2019-1-5 07:23:38 | 显示全部楼层 |阅读模式
  前言:基于IPVS实现web服务的负载均衡的DR模型的实现。
  首先让两台服务器当RealServer:让两台服务器都需要启动web服务,并提供不同的页面,方便以后测试的时候知道是哪台服务器在提供web服务。其中,RIP在eth0上,VIP在lo:0上;
  Director的eth0上配置DIP,在eth0:0上配置VIP

  RIP 1:192.168.1.7  

  RIP 2:192.168.1.8
  VIP:192.168.1.2
  DIP:192.168.1.50

  

DSC0000.gif

  

  RealServer:    

  首先在RealServer上定义两个参数:一个是ARP的响应级别,arp_ignore=1;另外一个是ARP的通告级别,arp_announce=2;用来实现来自客户请求VIP时RealServer上的VIP不予响应。(让调度器来响应,并分配给合适的RealServer来响应)
  #echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
  #echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
  #echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
  #echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
  RealSever上的VIP配置在回环口上,其广播地址也为192.168.1.2,网关为255.255.255.255。(其响应报文要从eth0出去)
  #ifconfig lo:0 192.168.1.2 broadcast 192.168.1.2 netmask 255.255.255.255 up
  加一个路由信息:
  #route add -host 192.168.1.2
  Dirctor:
  #ifconfig eth0:0 192.168.1.2 broadcast 192.168.1.2 netmask 255.255.255.255
  #route add -host 192.168.1.2 dev eth0:0
  #ipvsadm -A -t 192.168.1.2:80 -s wrr (添加一个集群服务,并指定为wrr的调度算法)

  #ipvsadm -a -t 192.168.1.2:80 -r 192.168.1.7 -g -w 2 (-g指定DR模型,-w指定权重)
  #ipvsadm -a -t 192.168.1.2:80 -r 192.168.1.8 -g -w 1
  下面我们来检测下负载均衡能工作否:
  现在调度器上执行# watch -n1 'ipvsadm -L -n --stats'来时刻关注那个响应的。


  好了,试的访问下192.168.1.2吧:
这是192.168.1.8这台主机提供的服务;

  这里我遇到一个小问题:需要等个几分钟再刷新网页才能出现来自另一台服务器的页面……(可能是我在虚拟机中做的实验,每个给的内存有点少了280左右的内存)也有可能我哪里出现问题了,还望各位大神给出宝贵的意见~

  在每隔几分钟刷新n次页面后,很明显的可以在调度器上看到监控这两台服务器每个所响应的个数,大概是2比1的比例;因为我的规则里面是加权轮巡的,嘻嘻~

  

  下面介绍下ipvsadm的几个参数:
  ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p timeout] [-O] [-M netmask]
  A:添加   E:编辑   

  -t:tcp   -u:udp -f:firewallmark(防火墙标记,在lvs实现将多个服务(端口)捆绑,一起实现负载均衡。)
  service-address:VIP:Port

  -s:指定调度方法 (rr,wrr,sh,lc,wlc等)

  删除一个集群服务:ipvsadm -D -t|u|f service-address
  ipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight] [-x upper] [-y lower]
  -a:添加  -e;编辑

  -r IP[:port] 指定realserver地址
  指定lvs类型:-g:dr模型,(默认);-i tun模型 ;-m:nat模型
  -w weight 指定权重;
  删除一个:例:ipvsadm -d -t 192.168.1.2:80 -r 192.168.1.7
  等配置好后记得保存:#service ipvsadm save(保存在/etc/sysyconfig/ipvsadm)
  也可以使用一个特定的文件,方便以后的使用:
  ipvsadm -S > /path/to/ipvsadm.rules 输入重定向
  ipvsadm -R < /path/to/ipvsadm.rules 输出重定向
  查看:#ipvsadm -L|l -n --rate --stats

  

  





运维网声明 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.iyunv.com/thread-659447-1-1.html 上篇帖子: LVS之DR模式 下篇帖子: 解析linux集群服务之LVS
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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