Linux服务器负载均衡LB Cluster的(LVS)技术 实现方案

【1】 LVS简介
           LVS(linux virtual server)在linux内核中实现的基于IP层和基于内容请求分发的负载平衡调度解决方法,工作在传输层


【2】 LVS的三种路由方式
         1】 VS-NAT
                数据包流向: CIP-DGW-VIP-RIP-DIP-DGW-CIP
                VS-NAT 最易于配置
                不适用于大量服务器(20台)及大量数据更新的服务,所有流量都经挂分发器
                可扩展性差
                双向修改数据包的IP和端口
         2】 VS-DR
                 数据包流向: CIP-DGW-VIP-RIP-DGW-CIP
                 能够同时处理大量的客户端请求(出站流量不经过分发器),多用于大量真是服务器或频繁更新的服务(服务器IP为真实IP) 
                 可扩展性好     
                 仅修改请求包的MAC地址
         3】 VS-TUN
                 数据包流向: CIP-DGW-VIP-RIP-DGW-CIP
                 可以夸广播域,即不再同一局域网内    
                 可扩展性好
                 仅修改请求进入IP

【3】 LVS的调度算法(10种)
           1】循环调度(rr)
           2】加权循环调度(wrr)
           3】最少连接(lc)
           4】加权最少连接(wlc)(默认)
           5】基于地区的最少连接调度(lblc)

【4】 安装软件包
           在安装镜像的Cluster文件夹内
           yum -y install ipvsadmin

【5】 ipvsadmin 常用命令
           ipvsadm -Ln                    查看分发规测和分发情况
           ipvsadm -Ln -c                查看连接状态
           ipvsadm -L -n --rate       查看当前连接数
           ipvsadm -L -n --stats     查看总连接数
           ipvsadm -C                      清空规则
  
【6】 LVS的常用架构搭建与配置
           1】 VS-NAT路由方式的搭建与配置
                  a】网络拓扑结构
                                                client  8.8.48.22 (CIP)
                                                        |
                                                        |
                                                        | 8.8.48.1 
                                               DGW
                                                        | 4.4.64.1
                                                        |
                                                        | 4.4.64.66 (VIP)
                                          Director 
                                                        | 10.10.68.1 (DIP)
                                                        |
                                   ------------------------------
                                   |                   |                       |
                                  A                  B                    C   (real http server) (RIP)
                          10.10.68.201   10.10.68.202  10.10.68.203

               b】 real http server (ABC)的配置

                      A(10.10.68.201)的配置
                      ifconfig eth0 10.10.68.201/24   
                      route add default gw 10.10.68.1
                      echo 10.10.68.201 > /var/www/html/index.html

                      service httpd start

                      B(10.10.68.202) C(10.10.68.203)同上配置

   

               c】  DGW 的配置

                       ifconfig eth0 8.8.48.1/24
                       ifconfig eth0:0 4.4.64.1/24
                       echo 1 > /proc/sys/net/ipv4/ip_forward 

            

               d】  Director 分发器的配置

                       ifconfig eth0 4.4.64.66/24
                       ifconfig eth0:0 10.10.68.1/24
                       echo 1 > /proc/sys/net/ipv4/ip_forward
                       route add default gw 4.4.64.1
                       ipvsadm -A -t 4.4.64.66:80 -s rr
                       ipvsadm -a -t 2.2.2.2:80 -r 10.10.68.201 -m
                       ipvsadm -a -t 2.2.2.2:80 -r 10.10.68.201 -m
                       ipvsadm -a -t 2.2.2.2:80 -r 10.10.68.201 -m
               e】 Client 端 测试
                       ifconfig eth0 8.8.48.22/24
                       route add default gw 8.8.48.1
 
                       elinks -dump http://4.4.64.66  

          2】 VS-DR 路由方式搭建配置
               a】 网络拓扑结构
                                        Client  8.8.48.22
                                                  |
                                                  |
                                                  |  8.8.48.1
                                         DGW
                                                  |  4.4.64.1
                                                  |
                                                  |  4.4.64.66 (VIP)
                                    Director
                                                  |  4.4.64.100 (DIP)
                                                  |
                                -----------------------------------
                               |                  |                           |
                              A                 B                         C    (real http  server) (RIP)
                     eth0:4.4.64.201    4.4.64.202        4.4.64.203
                       lo:0 4.4.64.66     4.4.64.66         4.4.64.66
  
                 b】real http server (ABC)的配置
                       A(4.4.64.201)的配置
                       ifconfig lo:0 4.4.64.66/32  (VIP)
                       echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
                       echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce  (关闭VIP的arp响应)
                       ifconfig eth0 4.4.64.201/24
                       route add default gw 4.4.64.1
 
                      echo 10.10.68.201 > /var/www/html/index.html
                      service httpd start
       
                      B(10.10.68.202) C(10.10.68.203)同上配置
       
     
                c】DGW 的配置
                     ifconfig eth0 8.8.48.1/24
                     ifconfig eth0:0 4.4.64.1/24
                     echo 1 > /proc/sys/net/ipv4/ip_forward 

               d】 Director 分发器的配置
                      ifconfig eth0 4.4.64.100/24             #(顺序不能和下行颠倒,保证同一广播域数据由eth0 发出)
                      ifconfig eth0:0 4.4.64.66/24
                      echo 1 > /proc/sys/net/ipv4/ip_forward

                      route add default gw 4.4.64.1

                      ipvsadm -A -t 4.4.64.66:80 -s wrr
                      ipvsadm -a -t 2.2.2.2:80 -r 10.10.68.201 -g  -w 10    (权重)
                      ipvsadm -a -t 2.2.2.2:80 -r 10.10.68.201 -g  -w 20
                      ipvsadm -a -t 2.2.2.2:80 -r 10.10.68.201 -g  -w 30

               e】  配置完成 Client 端 测试
                      ifconfig eth0 8.8.48.22/24
                      route add default gw 8.8.48.1
 
                      elinks -dump http://4.4.64.66  

相关推荐