LVS集群


目录

一、集群概述

1、负载均衡技术类型

2、负载均衡实现方式

二、LVS结构

1、三层结构

2、架构对象

三、LVS工作模式

四、LVS负载均衡算法

1、静态负载均衡

2、动态负载均衡

五、ipvsadm命令详解(重要)

六、LVS配置案例

1、基础配置

2、实现NAT模型搭建

①、负载调度器配置

1.1配置IP地址,增加一块网卡

1.2配置本地yum源

1.3安装ipvsadm

1.4开启路由转发功能

1.5加载ip_vs模块

1.6启动ipvsadm服务

1.7配置负载分配策略

1.8保存策略

②、web节点配置

测试

3、实现DR模型搭建

①、负载调度器配置

3.1调整ARP参数

3.2配置虚拟IP地址

3.3安装ipvsadm

3.4加载ip_vs模块

3.5启动ipvsadm服务

3.6配置负载分配策略

3.7保存策略

②、web节点配置

2.2调整ARP参数

2.3配置虚拟IP地址

2.4添加回环路由

安装httpd,和ngin


一、集群概述

1、负载均衡技术类型

        四层负载均衡器 也称为 4 层交换机,主要通过分析 IP 层及 TCP/UDP 层的流量实现基于 IP 加端口的负载均衡,如常见的 LVS、F5 等;

        七层负载均衡器 也称为 7 层交换机,位于 OSI 的最高层,即应用层,此负载均衡器支持多种协议,如HTTP、FTP、SMTP 等。7 层负载均衡器可根据报文内容,配合一定的负载均衡算法来选择后端服务器,即“内容交换器”。如常见的 HAProxy、Nginx。

2、负载均衡实现方式

        硬件负载均衡产品:F5 、深信服 、Radware

        软件负载均衡产品: LVS(Linux Virtual Server)、 Haproxy、Nginx、Ats(apache traffic server)

二、LVS结构

1、三层结构

                负载调度器        服务器池        共享存储

2、架构对象

VS:Virtual Server,也称为 Director 负载均衡服务器
RS:Real Server 真正的服务器,集群中各节点
VIP:Director 向外部提供服务的 IP
DIP:Director 向内部与 RS 通信的 IP
RIP 真实服务器的 IP
CIP 客户端的 IP

三、LVS工作模式

                LVS-NAT(NAT模式)
                LVS-DR(直接路由模式)(应用最广泛)

                LVS-TUN(IP隧道(Tunnel)模式,不常用)
                FULL-NAT模式(双向转换模式,不常用)

四、LVS负载均衡算法

1、静态负载均衡

    rr(round robin,轮询 )
    wrr(weight round robin,加权轮询)
    sh(source hashing,源地址散列算法(HASH))

    dh(destination hashing,目标地址 HASH)

2、动态负载均衡

lc(leash-connection,最少连接 )
    简单算法:active * 256 + inactive (谁的小选谁)

wlc(加权最少连接)
    简单算法:(active * 256 + inactive) / weight(谁的小选谁)(相同处理请求下,优先权重数量高的)

sed(最少期望延迟)
    简单算法:(active + 1) * 256 / weight (谁的小选谁)

nq(never queue,永不排队)

LBLC(基于局部性的最少连接 )

LBLCR(基于局部性的带复制功能的最少连接)

五、ipvsadm命令详解(重要)

-A    添加虚拟服务节点

-D    删除虚拟服务节点

-L    查看虚拟服务节点列表

-a    添加真实服务节点

-d    删除真实服务节点

-l    查看真实服务节点列表

-t    指定虚拟服务器IP地址

-s    指定调度算法

-r    指定真实服务器节点IP地址

-w    指定权重值

-g    直接路由模式(默认)

-i    隧道模式(不常用)

-m    NAT模式
案例

ipvsadm -A -t 207.175.44.110:80 -s rr        (添加虚拟节点)
       ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.1:80 -m
       ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.2:80 -m
       ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.3:80 -m
       ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.4:80 -m
       ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.5:80 -m

六、LVS配置案例

1、基础配置

    修改主机名            关闭防火墙

    关闭Selinux    关闭Networkmanager    配置IP地址

2、实现NAT模型搭建

①、负载调度器配置

1.1配置IP地址,增加一块网卡

                cd /etc/sysconfig/network-scripts/
                cp ifcfg-ens33 ifcfg-ens38

主机查看VMnet1的地址

LVS集群_第1张图片
                vim ifcfg-ens37

 LVS集群_第2张图片

ip a

LVS集群_第3张图片

1.2配置本地yum源

1.3安装ipvsadm

                yum  install -y ipvsadm

LVS集群_第4张图片

1.4开启路由转发功能

                vim /etc/sysctl.conf
                net.ipv4.ip_forward = 1
                sysctl -p

在外面查看

LVS集群_第5张图片

1.5加载ip_vs模块

                modprobe ip_vs
                lsmod |grep ip_vs

LVS集群_第6张图片

1.6启动ipvsadm服务

                systemctl start ipvsadm

1.7配置负载分配策略

                ipvsadm -A -t 192.168.142.100:80 -s rr
                ipvsadm -a -t 192.168.142.100:80 -r 192.168.115.4:80 -m
                ipvsadm -a -t 192.168.142.100:80 -r 192.168.115.5:80 -m

LVS集群_第7张图片

LVS集群_第8张图片

查看

LVS集群_第9张图片

1.8保存策略

                ipvsadm-save > /etc/sysconfig/ipvsadm

②、web节点配置

安装httpd,和nginx

web1

LVS集群_第10张图片

写入内容

LVS集群_第11张图片

web2(http)

LVS集群_第12张图片

写入内容

LVS集群_第13张图片

调度服务器查看

LVS集群_第14张图片

测试

LVS集群_第15张图片

LVS集群_第16张图片

3、实现DR模型搭建

配置虚拟网卡,地址段与真实地址相同第四段不同

需要dns和网关

①、负载调度器配置

3.1调整ARP参数

                vim /etc/sysctl.conf
                net.ipv4.conf.all.send_redirects = 0
                net.ipv4.conf.default.send_redirects=0
                net.ipv4.conf.ens33.send_redirects = 0
                sysctl -p

LVS集群_第17张图片

3.2配置虚拟IP地址

                cd /etc/sysconfig/network-scripts/
                cp ifcfg-ens33 ifcfg-ens33:0

 网卡配置

                TYPE=Ethernet
                BOOTPROTO=static
                NAME=ens33:0
                DEVICE=ens33:0
                ONBOOT=yes
                IPADDR=192.168.2.200
                PREFIX=24

LVS集群_第18张图片

查看

LVS集群_第19张图片

3.3安装ipvsadm

                yum  install -y ipvsadm

LVS集群_第20张图片

3.4加载ip_vs模块

                modprobe ip_vs
                lsmod |grep ip_vs

LVS集群_第21张图片

3.5启动ipvsadm服务

                systemctl start ipvsadm

3.6配置负载分配策略

        ipvsadm -A -t 192.168.115.200:80 -s rr
        ipvsadm -a -t 192.168.115.200:80 -r 192.168.115.4:80 -g
        ipvsadm -a -t 192.168.115.200:80 -r 192.168.115.5:80 -g

查看

LVS集群_第22张图片

3.7保存策略

ipvsadm-save > /etc/sysconfig/ipvsadm

LVS集群_第23张图片

LVS集群_第24张图片

②、web节点配置

与真实网卡段相同

不需要网卡和dns

回环地址注意添加。

2.2调整ARP参数

vim /etc/sysctl.conf
                net.ipv4.conf.all.arp_ignore=1
                net.ipv4.conf.all.arp_announce=2
                net.ipv4.conf.default.arp_ignore=1
                net.ipv4.conf.default.arp_announce = 2
                net.ipv4.conf.lo.arp_ignore = 1
                net.ipv4.conf.lo.arp_announce=2
        sysctl -p

LVS集群_第25张图片

2.3配置虚拟IP地址

cd /etc/sysconfig/network-scripts/
cp ifcfg-lo ifcfg-lo:0
vim ifcfg-lo:0

LVS集群_第26张图片

2.4添加回环路由

route add -host 192.168.2.200/32 dev lo:0

安装httpd,和nginx

查看状态

LVS集群_第27张图片

LVS集群_第28张图片

抓包查看


 

你可能感兴趣的:(lvs)