运维实战 负载均衡LVS(DR模式)

前期概述

LVS

LVS,全称Linux Virtual Server,翻译为Linux虚拟服务器,即一个虚拟的服务器集群系统.

简单来说,LVS是一个基于四层且具有强大性能的反向代理服务器.

LVS通过工作于内核的ipvs模块来实现功能,主要工作于netfilter 的INPUT链.
而用户需要对ipvs进行操作配置则需要使用ipvsadm这个工具.
ipvsadm主要用于设置lvs模型/调度方式以及指定后端主机.

简单来说,分为两个部分

  • ipvs (真正生效实现调度的代码所在的位置)
  • ipvsadm (编写规则事先定义的位置)

LVS中的角色

LVS的模型中有两个角色:
调度器: Director,又称为Dispatcher,Balancer.
调度器主要用于接受用户请求.
真实主机: Real Server,简称为RS.
用于真正处理用户的请求.

为了更好地理解,可以将所在角色的IP地址分为以下三种:

Director Virtual IP: 调度器用于与客户端通信的IP地址,简称为VIP
Director IP: 调度器用于与RealServer通信的IP地址,简称为DIP
Real Server : 后端主机的用于与调度器通信的IP地址,简称为RIP

三种调度模式

NAT模式: 基于ip伪装MASQUERADES,原理是多目标DNAT;所有请求和响应都经由Director调度器.

TUN模式: 基于隧道封装技术。在IP报文的外面再包一层IP报文,调度器和RS不需要在同一网段,RS直接对客户端响应.

DR模式: 所有RS都需要有VIP,将目标地址的MAC地址改为RealServer的MAC地址RS直接对客户端响应;但调度器和RS需要在同一网段.

NAT模式
TUN模式
DR模式

本次项目使用DR模式进行试验.

项目内容

前期准备

  • 四台虚拟机(Server1-4),其中14为调度机,23为RealServer.
  • 调度端安装ipvsadm,RS安装测试所需的httpd和处理arp协议所需的防火墙arptables_jf
  • 所有虚拟机设置VIP为172.25.5.100/32
  • 宿主机充当测试用客户端

可能遇到的问题

  • 所有虚拟机都添加了同一个VIP,也就是说客户端获取到的VIP可能对应任意一台服务器,当对应的是RS而不是调度机时,即使所有设置都正确也无法进行论调(毕竟根本没有经过调度端),为避免这种情况,需要对RS进行arp防火墙设置.
  • LVS本身并不具有健康检查功能,也就是说如果23上的httpd出现问题无法正常工作时,他也会一如既往的调度到出现问题的RS,出现报错.keepalived可以解决这个问题.
  • 如果只有一台调度机而调度机损坏,则无论RS是否完好整个系统都会崩溃.当需要多台调度机做高可用时也可以使用keepalived来进行设置.

具体操作

设置VIP


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值