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

[经验分享] LVS三种IP负载均衡配置

[复制链接]

尚未签到

发表于 2019-1-6 06:40:17 | 显示全部楼层 |阅读模式
  1: LVS-DR  模式(调度器与实际服务器都有一块网卡连在同一物理网段上)
  简要的网络结构如下所示

  配置LVS  server
引用#!/bin/sh  VIP=192.168.0.210
  RIP1=192.168.0.175
  RIP2=192.168.0.145
  .  /etc/rc.d/init.d/functions
  case "$1"  in
  start)
  echo "start LVS of  DirectorServer"
  #Set the Virtual IP Address
  /sbin/ifconfig  eth0:1 $VIP broadcast $VIP netmask 255.255.255.255 up
  /sbin/route add  -host $VIP dev eth0:1
  #Clear IPVS Table
  /sbin/ipvsadm  -C
  #Set Lvs
  /sbin/ipvsadm -A -t $VIP:80 -s  rr
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80  -g
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
  #Run  Lvs
  /sbin/ipvsadm
  ;;
  stop)
  echo  "close LVS Directorserver"
  /sbin/ipvsadm -C
  /sbin/ifconfig  eth0:1 down
  ;;
  *)
  echo "Usage: $0  {start|stop}"
  exit 1
  esac
  配置 RIP server
引用#!/bin/bash  VIP=192.168.0.210
  LOCAL_Name=50bang
  BROADCAST=192.168.0.255  #vip's  broadcast
  . /etc/rc.d/init.d/functions
  case "$1" in
  start)
  echo "reparing for Real Server"
  echo "1"  >/proc/sys/net/ipv4/conf/lo/arp_ignore
  echo "2"  >/proc/sys/net/ipv4/conf/lo/arp_announce
  echo "1"  >/proc/sys/net/ipv4/conf/all/arp_ignore
  echo "2"  >/proc/sys/net/ipv4/conf/all/arp_announce
  ifconfig lo:0 $VIP  netmask 255.255.255.255 broadcast $VIP up
  /sbin/route add -host $VIP  dev lo:0
  ;;
  stop)
  ifconfig lo:0 down
  echo  "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
  echo "0"  >/proc/sys/net/ipv4/conf/lo/arp_announce
  echo "0"  >/proc/sys/net/ipv4/conf/all/arp_ignore
  echo "0"  >/proc/sys/net/ipv4/conf/all/arp_announce
  ;;
  *)
  echo  "Usage: lvs {start|stop}"
  exit 1
  esac
  扩展知识:
  arp_ignore  - 整型
  当对要求解析本地目标IP地址的ARP请求做响应时,定义不同的模式:
  0 - (缺省): 响应配置在任何接口上的任何本地目标地址
  1 - 只有当目标IP地址是配置在进入接口上的本地地址时才响应
  2 - 只有当目标IP地址是配置在进入接口上的本地地址,并且发送者的IP地址处于本接口的同一网段时才响应
  3 - 不响应用scope host配置的本地地址,只有通用地址和链接地址会被响应
  4-7 - 保留
  8 - 不响应所有的本地地址
  conf/{all,interface}/arp_ignore的最大值在{interface}上收到APR请求的时候被使用。
  arp_announce  - 整型
  在ARP请求被送到接口上,要在IP包中宣布本地源IP地址时,定义不同的限制级别:
  0 - (缺省)使用配置在任何接口上的任何本地地址
  1 - 尝试避免本接口上的本地地址不是目标的子网段。当目标主机请求的源地址是逻辑网段的一部分时候,这种模式有用。
  如果我们生成这个请求,我们将会检查包含目标IP的所有子网,保留来自这些子网的源地址。
  如果没有这样的子网,就用级别2的规则来选择。
  2 - 总是使用这个目标的最好的本地地址。在这种模式下,我们忽略IP包中的源地址,尝试选择我们喜欢的本地地址给目标主机。
  选择的方式是在输出接口上包含目标IP地址的所有子网里寻找主要的IP地址。
  如果没有合适的的目标地址,就选择输出接口或者所有其他接口上的第一个地址。
  conf/{all,interface}/arp_announce的最大值是被使用的。
  提高限制级别会提供更多的机会来接收到解析目标的响应回答,而降低级别会宣布更多有效的发送者信息。
  在最开始,客户端发出命令来寻找VIP的时候,只有Director  会应答客户端的ARP广播,这个是为什么要对ARP广播进行限制的原因
  2: LVS-TUN  模式
  简要的网络架构如下:

  配置lvs  server
引用  #!/bin/sh
  # description: start LVS of  Directorserver
  VIP=192.168.25.41(注意,lvs  server那台机器2个ip,一个是vip,一个是本身ip例如192.168.25.42)
  RIP1=192.168.25.44
  RIP2=192.168.25.45
  #RIPn=192.168.0.n
  GW=192.168.25.254
  .  /etc/rc.d/init.d/functions
  case "$1" in
  start)
  echo " start LVS of  DirectorServer"
  # set the Virtual IP Address
  /sbin/ifconfig tunl0 $VIP  broadcast $VIP netmask 255.255.255.0 up
  /sbin/route add -host $VIP dev  tunl0
  #Clear IPVS table
  /sbin/ipvsadm -C
  #set LVS
  /sbin/ipvsadm -A  -t $VIP:80 -s rr
  /sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -i
  /sbin/ipvsadm  -a -t $VIP:80 -r $RIP2:80 -i
  #/sbin/ipvsadm -a -t $VIP:80 -r $RIP3:80  -i
  #Run LVS
  /sbin/ipvsadm
  #end
  ;;
  stop)
  echo "close LVS  Directorserver"
  ifconfig tunl0 down
  /sbin/ipvsadm -C
  ;;
  *)
  echo  "Usage: $0 {start|stop}"
  exit 1
  esac
  .
  配置real server
引用#!/bin/sh  # ghb in 20060812
  # description: Config  realserver tunl port and apply arp patch
  VIP=192.168.25.43
  .  /etc/rc.d/init.d/functions
  case "$1" in
  start)
  echo "Tunl port  starting"
  ifconfig tunl0 $VIP netmask 255.255.255.0 broadcast $VIP  up
  /sbin/route add -host $VIP dev tunl0
  echo "1"  >/proc/sys/net/ipv4/conf/tunl0/arp_ignore
  echo "2"  >/proc/sys/net/ipv4/conf/tunl0/arp_announce
  echo "1"  >/proc/sys/net/ipv4/conf/all/arp_ignore
  echo "2"  >/proc/sys/net/ipv4/conf/all/arp_announce
  sysctl -p
  ;;
  stop)
  echo  "Tunl port closing"
  ifconfig tunl0 down
  echo 1 >  /proc/sys/net/ipv4/ip_forward
  echo 0 >  /proc/sys/net/ipv4/conf/all/arp_announce
  ;;
  *)
  echo "Usage: $0  {start|stop}"
  exit 1
  esac
  3: LVS-NAT  模式
  简要的网络架构如下图:

  配置LVS  server
引用#!/bin/sh  # description: start LVS of  Nat
  VLAN-IP=202.99.59.110
  RIP1=10.1.1.2
  RIP2=10.1.1.3
  #RIPn=10.1.1.n
  GW=10.1.1.1
  .  /etc/rc.d/init.d/functions
  case "$1" in
  start)
  echo " start LVS of  NAtServer"
  echo "1" >/proc/sys/net/ipv4/ip_forward
  echo "0"  >/proc/sys/net/ipv4/conf/all/send_redirects
  echo "0"  >/proc/sys/net/ipv4/conf/default/send_redirects
  echo "0"  >/proc/sys/net/ipv4/conf/eth0/send_redirects
  echo "0"  >/proc/sys/net/ipv4/conf/eth1/send_redirects(内网卡上的)
  #Clear IPVS  table
  /sbin/ipvsadm -C
  #set LVS
  /sbin/ipvsadm -a -t 202.99.59.110:80 -r  10.1.1.2:80 -m -w 1
  /sbin/ipvsadm -a -t 202.99.59.110:80 -r 10.1.1.3:80 -m -w  1
  #Run LVS
  /sbin/ipvsadm
  #end
  ;;
  stop)
  echo "close LVS Nat  server"
  echo "0" >/proc/sys/net/ipv4/ip_forward
  echo "1"  >/proc/sys/net/ipv4/conf/all/send_redirects
  echo "1"  >/proc/sys/net/ipv4/conf/default/send_redirects
  echo "1"  >/proc/sys/net/ipv4/conf/eth0/send_redirects
  echo "1"  >/proc/sys/net/ipv4/conf/eth1/send_redirects(内网卡上的)
  /sbin/ipvsadm  -C
  ;;
  *)
  echo "Usage: $0 {start|stop}"
  exit 1
  esac
  配置real  server
  LVS-Nat 模式的后端机器不需要配置.
  tips: -g  表示使用DR方式,-m表示NAT方式,-i表示tunneling方式。


运维网声明 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-659776-1-1.html 上篇帖子: lvs负载均衡搭建笔记 下篇帖子: lvs负载均衡实现机制、及、ipvs调度算法 lvs可靠性、可用性、使用环境
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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