• LVS几种模式的部署


    目录

    一、LVS-NAT集群

    1、目的

    2、前期准备

    3、部署

    ①LVS

    ②web1

    ③web2

    ④访问

    二、LVS-DR集群

    1、目的

    2、准备

    3、原理

    4、部署

    ①LVS

    ②web1和web2

    ③验证

    三、LVS+keepalived集群

    1、keepalived

    2、keepalived模块

    ①core模块

    ②check模块

    ③VRRP模块

    3、keepalived主要功能

    4、部署LVS-DR+keepalived


    一、LVS-NAT集群

    1、目的

    通过LVS作为负载均衡器来给后端服务器分发流量

    2、前期准备

    LVS

    ens33:192.168.100.10 外网;ens36:192.168.10.20 内网

    web1:192.168.10.101;web2:192.168.10.102

    3、部署

    ①LVS

    1) 启动httpd

    2)配置SNAT转发规则

    设置开启路由转发功能

    清空iptables规则

    添加地址转换功能,

    加载ip_vs模块

     安装ipvsadm工具

    创建环境生成文件

     启动ipvsadm

    配置负载分配策略

    -A:添加虚拟服务器

    -a:添加真实服务器

    -t:指定VIP地址及端口

    -s:指定负载调度算法

    -m:使用nat集群模式

    -w:设置权重 

     启动策略

    Masq代表NAT模式

     查看当前策略

    ②web1

    启动httpd服务

    写入页面内容

     

    网关指向lvs

     

    ③web2

    启动httpd服务

    写入页面内容

    网关指向lvs

     

    ④访问

    访问对外地址,可以跳转到真实服务器的内容而不显示真实服务器的IP

     

    二、LVS-DR集群

    1、目的

    由于NAT模式下,数据来回都需要经过LVS服务器,将会造成LVS服务器压力非常大。于是便出现了DR模式。

    2、准备

    负载调度器  ens33:192.168.10.30   虚拟子接口 ens33:0:192.168.10.100 

    web1  ens33:192.168.10.101        lo:0:192.168.10.100

    web2  ens33:192.168.10.102        lo:0:192.168.10.100

    3、原理

    集群对外暴露一个虚拟端口IP192.168.10.100,客户机在访问时先到达路由;路由将会进行ARP广播,来获得服务器192.168.10.100的MAC地址;正常情况下3台服务器均会响应路由器的ARP广播,这时我们需要设置服务器只响应访问ip为本地ip的ARP请求,所以只有director服务器响应;director服务器接收到数据后,因为在同一个内网上所以通过数据帧传输的方式发送给下面的web服务器处理;web服务器处理完成后需要向外面发送,所以需要先进行ARP广播,获取到路由的MAC地址,但是如果使用的是192.168.10.100的IP会导致路由器更新自己的IP和MAC的对应关系,暴露自己的物理服务器地址,所以在这里我们需要设置在进行ARP广播的时候采用的是ens33网卡的真实IP和MAC地址;之后发送数据包的时候用的是192.168.10.100的IP和真实MAC地址,但因为路由工作在三层,基于IP和端口进行传输,不再更新MAC地址,从而使整个服务器正常工作。

    4、部署

    ①LVS

    安装环境

     配置虚拟子网接口

     

    开启 

     调整LVS的proc的响应参数

     配置负载均衡策略

    ②web1和web2

    配置环回ip地址

     

     

     在web服务器中添加vip本地范围跟路由

     

     在web中调整内核的ARP、响应参数使得ARP广播时使用ens33ip

     net.ipv4.conf.all.arp_ignore = 1                只响应目的ip为本地的arp请求
     net.ipv4.conf.all.arp_announce = 2          使用发送接口的ip地址来代替ip包的源地址发送arp广播

    ③验证

    三、LVS+keepalived集群

    1、keepalived

    ①keepalived是一个转为LVS和HA设计的一款健康检查工具,基于VRRP协议来实现的LVS高可用,支持故障自动切换,节点健康状态检查来解决静态路由出现的单点故障问题。

    ②在一个LVS集群中通常由多台服务器组成一个热备组,对外表现为一个虚拟IP

    ③在keepalived服务之间,只有作为主的服务器会一直发送VRRP广播包,表名自己或者。当主服务器不在发送时,备用就是启动相关服务接管资源,保证业务的连续性。

    2、keepalived模块

    ①core模块

    为keepalived的核心,负责主进程的启动、维护及全局配置文件的加载和解析

    ②check模块

    负责健康检查,常见的方式有端口检查和URL检查

    ③VRRP模块

    实现VRRP协议

    3、keepalived主要功能

    ①管理LVS负载均衡软件

    ②支持故障自动切换

    ③实现LVS集群中节点的健康检查

    ④实现LVS负载调度器、节点服务器的高可用性

    4、部署LVS-DR+keepalived

    在之前的基础上再加入一台备用DR服务器 192.168.10.20

    修改配置文件keepalived.conf

    开启keepalived服务

     

    直接开启ens33:0会报错,需要重启网卡

     验证

    主断开keepalived,VIP消失 

    仍可以访问

  • 相关阅读:
    桥接设计模式
    【业务功能篇108】CDN Nginx
    Python基于宽度优先搜索的程序综合-SyGus求解器
    VXlan隧道三层网关功能对接华为设备测试
    SpringBoot整合微信扫码登录
    【C++】lock_guard用法
    贪心算法-金条切割问题
    C++常考面试题(第一篇)
    对线程池的理解
    hugo个人博客 even主题美化记录
  • 原文地址:https://blog.csdn.net/sjc090132/article/details/126818559