频道栏目
首页 > 资讯 > 网络协议 > 正文

负载均衡集群的开源软件:LVS配置详情

17-11-30        来源:[db:作者]  
收藏   我要投稿

先了解常识,负载均衡集群典型的开源软件:LVS,haproxy,nginx.

高可用性集群的软件:keepalived,heartbeat.
配置准备:
1.三台服务器或者虚拟机(我用的centos7)
Server1:用作LVS负载均衡器,即(LB)
IP:192..168.202.101
Server2:作为RS
IP:192.168.202.103
Server3:作为RS
IP:192.168.202.104
2.下载LVS(软件包名字为ipvsadm)
大家可以根据自己的内核版本,从LVS官网下载,或者直接YUM直接安装(我采取的YUM)
内核版本:3.10.0-327.el7.x86_64
软件版本:ipvsadm-1.27-7.el7.x86_64
LB配置:

1.首先,启动ipvsadm。
————————————————————————————————————————————————————————
2.执行lsmod | grep ip_vs      ##ip_vs是LVS在内核中的一个模块
   出现如下样式则代表启动成功
ip_vs_rr               12600  1 
ip_vs                 140944  3 ip_vs_rr
nf_conntrack          105745  6 ip_vs,nf_nat,nf_nat_ipv4,xt_conntrack,nf_nat_masquerade_ipv4,nf_conntrack_ipv4
libcrc32c              12644  2 xfs,ip_vs
————————————————————————————————————————————————————————
3.确定启动成功后,根据原理,需要在网卡上添加VIP
ifconfig eno16777736:0 192.168.202.29 up
添加后查看:
2: eno16777736:  mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:fe:6e:2e brd ff:ff:ff:ff:ff:ff
    inet 192.168.202.101/24 brd 192.168.202.255 scope global eno16777736
       valid_lft forever preferred_lft forever
    inet 192.168.202.29/24 brd 192.168.202.255 scope global secondary eno16777736:0       ##此IP为添加的虚拟IP
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fefe:6e2e/64 scope link 
       valid_lft forever preferred_lft forever
————————————————————————————————————————————————————————
4.执行命令添加VIP的网关     ##经本人测试,不添加此处的网关也可以实验成功。
    route add -host 192.168.202.29 eno16777736
    查看:route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.202.0   0.0.0.0         255.255.255.0   U     100    0        0 eno16777736
192.168.202.29  0.0.0.0         255.255.255.255 UH    0      0        0 eno16777736       ##所添加的网关
————————————————————————————————————————————————————————
5.执行ipvsadm -A -t 192.168.202.29:80 -s rr 将VIP与LVS绑定
  ipvsadm -Ln查看:
  IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.202.29:80 rr       ##绑定成功
##-A表示添加绑定的VIP,-t指定VIP,-s指定算法。
————————————————————————————————————————————————————————
6.执行
ipvsadm -a -t 192.168.202.29:80 -r 192.168.202.103:80 -g
ipvsadm -a -t 192.168.202.29:80 -r 192.168.202.104:80 -g
添加RS。   ##-a表示添加,-t指定添加的RS所对应的VIP地址,-r表示指定RS的IP,-g表示DR模式,-m表示NAT模式,-i表示TUN模式。具体可以--help查看。
ipvsadm -Ln
添加后检查:
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.202.29:80 rr
 -> 192.168.202.103:80           Route   1      0          0         
 -> 192.168.202.104:80           Route   1      0          0 
    ##添加成功

RS配置:

根据原理,RS上需要添加VIP,并且需要抑制ARP,以防止从原本从客户端发送到LB的数据请求,与RS的VIP发生冲突。
1.添加VIP,注意是添加到lo网卡。
ifconfig lo:29 192.168.202.29/32 up
—————————————————————————————————————————————————————
2.添加网关  ##不执行这一步也执行成功
route add -host 192.168.202.29 eno16777736
—————————————————————————————————————————————————————
3.抑制ARP,防止VIP冲突。
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

之后,通过网页访问VIP:192.168.202.29即可测试。
DR模式不需要开启内核转发功能,与NAT不同

相关TAG标签
上一篇:docker中常用命令详情
下一篇:宿主机通过NAT模式给kvm虚拟机配置公网IP
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站