tigh 发表于 2019-1-5 13:52:59

基于LVS实现负载均衡

  LVS-NAT模型:
  工作原理:将内部地址转化为Internets上可用的外部地址。NAT的工作原理是报文头(目标地址、源地址和端口等)被正确改写后,客户相信它们连接一个IP地址,而不同IP地址的服务器组也认为它们是与客户直接相连的。由此,可以用NAT方法将不同IP地址的并行网络服务变成在一个IP地址上的一个虚拟服务。
  http://s3.运维网.com/wyfs02/M01/24/43/wKioL1NOBLrRdnkgAAP7f1inH9g958.jpg
  实验环境:3台虚拟机,其中一台做Director Server配备2个网卡,另外2台是Real Server
  操作步骤:
  一:在Real Server上:
  1:RIP1:# ifconfig eth0 172.16.100.101/24 --->配置Real Server 1的IP地址
  2:RIP1:# route add default gw 172.16.100.100 -->指定默认网关为Director Server的DIP
  3:RIP1:# vim /var/www/html/index.html
  http://s3.运维网.com/wyfs02/M01/24/43/wKiom1NOCtGSBWuhAAChrUGQDQ4511.jpg
  4:RIP1:# service httpd start ---> 启动http服务。
  http://s3.运维网.com/wyfs02/M00/24/43/wKioL1NOCyDT_A1tAAF7llbEVIc997.jpg
  5:RIP2:# ifconfig eth0 172.16.100.102/24
  6:RIP2:# route add default gw 172.16.100.100
  7:RI2:# vim /var/www/html/index.html
  http://s3.运维网.com/wyfs02/M01/24/43/wKioL1NODinAxXoNAACN7_1OxSU564.jpg
  8:RIP2:# service httpd start
  二:在Director Server上:
  1:# yum -y install ipvsadm --->安装ipvs的rpm包
  1:# ifconfig eth1 172.16.100.100/24 --->配置DIP
  2:# ifconfig eth0 192.168.0.109/24 --->配置VIP
  3:# vim /etc/sysctl.conf --->启动路由转发功能
  http://s3.运维网.com/wyfs02/M01/24/43/wKiom1NOEA6Tk4tSAAEm30qiLjo271.jpg
  4:# sysctl -p --->让修改的路由转发立即生效
  5:# ipvsadm -A -t 192.168.100.100:80 -s rr--->添加集群服务
  6:# ipvsadm -a -t 192.168.0.109:80 -r 172.16.100.101 -m --->把两个主机添加到集群服务
  7:# ipvsadm -a -t 192.168.0.109:80 -r 172.16.100.102 -m
http://s3.运维网.com/wyfs02/M02/24/43/wKiom1NOEIiSxG7zAAHYRGJPIA8463.jpg
  验证:
  
http://s3.运维网.com/wyfs02/M00/24/43/wKioL1NOEtaBvJW7AABQAWytPpw067.jpg
http://s3.运维网.com/wyfs02/M02/24/43/wKiom1NOEv_Qk071AABL1eooZEQ968.jpg
  


  1:LVS-DR模型之
  工作原理:调度器根据各个服务器的负载情况,动态地选择一台服务器,不修改也不封装IP报文,而是将数据帧的MAC地址改为选出服务器的MAC地址,再将修改后的数据帧在与服务器组的局域网上发送。因为数据帧的MAC地址是选出的服务器,所以服务器肯定可以收到这个数据帧,从中可以获得该IP报文。当服务器发现报文的目标地址VIP是在本地的网络设备上,服务器处理这个报文,然后根据路由表将响应报文直接返回给客户。
   (1)DIP、VIP、RIP、处于同一网段:
  拓扑图:
http://s3.运维网.com/wyfs02/M02/25/8D/wKiom1NjvOegsRngAARgeq6LTuo626.jpg
  实验环境:3台虚拟机,其中一台做Director Server配备2个网卡,另外2台是Real Server

  
  Director Server:配置:
# ifconfig eth0:0 192.168.2.100/24 --->配置VIP
# vim /etc/sysctl.conf             --->配置转发
net.ipv4.ip_forward = 1
# sysctl -p  Real Server的配置:
修改2个内核参数:
# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
# echo 1 > /proc/sys/net/ipv4/conf/etho/arp_ignore
# echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
配置VIP 禁止广播,禁止响应
# ifconfig lo:0 192.168.2.100 netmask 255.255.255.255 broadcast 192.168.2.100 up
配置转发接口
# route add -host 192.168.2.100 dev lo:0
开启httpd服务,并提供测试页面
# service httpd start
# vim /var/www/html/index.html
This is web1   验证:
http://s3.运维网.com/wyfs02/M01/25/8D/wKiom1Njv_OCZKFxAABh17SVfSw132.jpg
http://s3.运维网.com/wyfs02/M00/25/8D/wKioL1Njv8mxY45TAABch-2hOm4853.jpg
  三:LVS-TUN:
  工作原理:是将一个IP报文封装在另一个IP报文的技术,这可以使得目标为一个IP地址的数据报文能被封装和转发到另一个IP地址。IP隧道技术亦称为IP封装技术
     实验拓扑:
  http://s3.运维网.com/wyfs02/M01/25/8F/wKioL1NkWryTigW3AAObh8uPQpY636.jpg
     Real Server
     修改内核参数:
# cat /proc/sys/net/ipv4/conf/all/arp_ignore
1
# cat /proc/sys/net/ipv4/conf/eth0/arp_ignore
1
# cat /proc/sys/net/ipv4/conf/eth0/arp_announce
2
# cat /proc/sys/net/ipv4/conf/all/arp_announce
2      指定默认网关:
# route add default gw 172.16.20.13
# route
Kernel IP routing table
Destination   Gateway         Genmask         Flags Metric Ref    Use Iface
link-local      *               255.255.0.0   U   1002   0      0 eth0
172.16.0.0      *               255.255.0.0   U   0      0      0 eth0
default         172.16.20.13    0.0.0.0         UG    0      0      0 eth0  
      配置VIP并指定转发机制:
# ifconfig lo:0 192.168.2.200 netmask 255.255.255.255 broadcast 192.168.2.200 up
# route add -host 192.168.2.200 dev lo:0http://s3.运维网.com/wyfs02/M00/25/8F/wKiom1NkXgXhu_uBAAZMycwkjo4837.jpg
      开启httpd服务,提供测试页面并测试
  http://s3.运维网.com/wyfs02/M02/25/8F/wKiom1NkYBuDUUidAADmD8IONcI853.jpg
     Director Servver配置:
  
  
# yum -y install ipvsadm
# ipvsadm start
# echo 1 > /proc/sys/net/ipv4/ip_forward
# ifconfig eth0:0 192.168.2.200/24 up
# ipvsadm -A -t 192.168.2.200:80 -s rr
# ipvsadm -a -t 192.168.2.200:80 -r 172.16.20.11 -i
# ipvsadm -a -t 192.168.2.200:80 -r 172.16.20.12 -i
# ipvsadm -L -n  http://s3.运维网.com/wyfs02/M02/25/8F/wKiom1NkZbrzBoaoAAGkzunBpjk388.jpg   

  

  

  
  
  
  

  
  

  
  
  

  

  




页: [1]
查看完整版本: 基于LVS实现负载均衡