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

[经验分享] LVS+NAT模式教程测试

[复制链接]

尚未签到

发表于 2019-1-4 12:55:24 | 显示全部楼层 |阅读模式
  本教程是根据赶星视频在网上找的教程:
  非常感谢这位哥们的分享:
  http://bbs.chinaunix.net/thread-3578707-1-1.html
  配置过程如下:望高手指点  这就是传说中的 LVS-NAT模式吗   ?  我做对了吗 ?心里没底啊 ? 生产环境也是这么搞的吗 ?求正解!!!谢谢!!!
  ===========================
  Lvs-Nat模式是做地址转换,所以调度器(Director Server)必需要拥要两块物理网卡。
  2、环境描述
  负载均衡器         eth0:192.168.1.250    eth1:10.0.0.1
  VIP         192.168.1.240
  节点服务器 RIP        10.0.0.13  10.0.0.14     10.0.0.15
  网关:10.0.0.1
  负载均衡器安装和配置
  A:安装 ipvsadm
  [root@localhost ~]# yum install ipvsadm
  [root@localhost ~]# ipvsadm
  [root@localhost ~]# lsmod | grep ip_vs
  ip_vs                  78209  0
  B:编写脚本
  为了方便启动停止和调试,写成脚本形式,方便管理
  [root@localhost ~]# vi /etc/init.d/lvsnet
  #!/bin/bash
  #LVS script NAT
  VIP=192.168.1.240
  RIP1=10.0.0.13
  RIP2=10.0.0.14
  RIP3=10.0.0.15
  case "$1" in
  start)
  echo "1">/proc/sys/net/ipv4/ip_forward
  /sbin/iptables -F
  /sbin/ipvsadm -C
  /sbin/ifconfig eth0:0 $VIP netmask 255.255.255.0 up
  /sbin/ipvsadm -A -t $VIP:80 -s rr
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP1 -m
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP2 -m
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP3 -m
  /sbin/ipvsadm
  echo "start LVS of DirectorServer NAT"
  ;;
  stop)
  echo "0" > /proc/sys/net/ipv4/ip_forward
  /sbin/ipvsadm -C
  /sbin/ifconfig eth0:0 down
  echo "stop LVS of DirectorServer NAT"
  ;;
  *)
  echo "Usage: $0 {start|stop}"
  exit 1
  esac
  要执行此脚本,必需赋可执行权限
  [root@localhost ~]# chmod +x /etc/init.d/lvsnet
  启动脚务测试,因为脚本存放在/etc/init.d/目录下,可以使用service方式来执行
  [root@localhost ~]# service lvsnet start
  IP Virtual Server version 1.2.1 (size=4096)
  Prot LocalAddress DSC0000.gif ort Scheduler Flags
  -> RemoteAddressort           Forward Weight ActiveConn InActConn
  TCP  192.168.1.240:http rr
  -> 10.0.0.15:http               Masq    1      0          0
  -> 10.0.0.14:http               Masq    1      0          0
  -> 10.0.0.13:http               Masq    1      0          0
  4、节点服务器配置
  节点服务器不需要安装任何软件,
  只需要把网关地址设为负载均衡器的 eth1 的 ip(10.0.0.1)。
  如果以 NAT 方式做高可用性集群,eth1也是一个漂移 IP,可以使用虚拟 IP。如在配置脚本中加入一条VIP2=10.0.0.1 把这个
  VIP2绑定到 eth1网卡上。
  5、打开客户机访问测试 VIP:192.168.1.240
  A:启服 10.0.0.14的 http 服务
  [root@localhost ~]# service httpd start
  [root@localhost ~]# cat /var/www/html/index.htm
  web 14
  打开一台客户机,提交 3次请求,结果如下:
  [root@CentOS ~]# curl http://192.168.1.240
  curl: (7) couldn't connect to host
  [root@CentOS ~]# curl http://192.168.1.240
  web 14
  [root@CentOS ~]# curl http://192.168.1.240
  curl: (7) couldn't connect to host
  由上面结果可以看出,有两次访问返回失败,因为 LVS 负载均衡器只是根据调度算法将请求分发,不检测节点服务器是否可用。
  B:启动另两台服务器的 http服务
  写入不同的主页文件,在客户端向 VIP发 3次请求结果
  [root@CentOS ~]# curl http://192.168.1.240/
  web 15
  [root@CentOS ~]# curl http://192.168.1.240/
  web 14
  [root@CentOS ~]# curl http://192.168.1.240/
  web 13
  查负载均衡器的信息
  [root@localhost ~]# ipvsadm
  IP Virtual Server version 1.2.1 (size=4096)
  Prot LocalAddressort Scheduler Flags
  -> RemoteAddressort           Forward Weight ActiveConn InActConn
  TCP  192.168.1.240:http rr
  -> 10.0.0.15:http               Masq    1      0          1
  -> 10.0.0.14:http               Masq    1      0          1
  -> 10.0.0.13:http               Masq    1      0          1
  C:用脚本发大量请求
  [root@CentOS ~]# for i in $(seq 1 999);do curl http://192.168.1.240;done
  web 15
  web 14
  web 13
  web 15
  web 14
  web 13
  以上是部分结果,以下是查看负载均衡器的结果
  [root@localhost ~]# ipvsadm
  IP Virtual Server version 1.2.1 (size=4096)
  Prot LocalAddressort Scheduler Flags
  -> RemoteAddressort           Forward Weight ActiveConn InActConn
  TCP  192.168.1.240:http rr
  -> 10.0.0.15:http               Masq    1      0          333
  -> 10.0.0.14:http               Masq    1      0          333
  -> 10.0.0.13:http                 Masq    1      0          333
  由以上结果可以看出,发送 999次请求被平均分发到三台真实主机上。
  ========================================================================
  根据赶星的视频和这篇文章的教程,做实验,痛苦三天,一切按照教程做,但是地址就是不分发,总是访问自己,节点服务器都设置了网关为负载服务器的IP。
  最后找出原因;
  1:内网IP,也就是上面例子:10.0.0.1这个IP开始使用的NAT模式,不行,后来修改为桥接模式bridged,即可。
  2:还有测试的时候一定不要在负载均衡器上测试,一定在客户端机器上测试。因为在负载均衡机器上测试它会不分发,并且总是访问自己的。


运维网声明 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-659336-1-1.html 上篇帖子: LVS应用笔记——基础 下篇帖子: F5/LVS/Nginx/HAProxy硬软件级网络负载均衡介绍
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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