【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/24ifconfig eth0:0 4.4.64.1/24
echo 1 > /proc/sys/net/ipv4/ip_forward
d】 Director 分发器的配置
ifconfig eth0 4.4.64.66/24ifconfig 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
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 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

