LVS-群集架构介绍(linux 虚拟服务)

导读:本篇文章讲解 LVS-群集架构介绍(linux 虚拟服务),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

一、企业群集应用概述

1、为什么需要使用集群?

雪崩

当没有做负载均衡的时候,nginx服务器将动态请求代理到Tmocat上,但是每个Tomcat的请求次数是有限的,如果超过请求的次数,那么Tomcat服务器就会出现崩溃,造成雪崩的情况。

群集的含义

  • Clister,集群、群集
  • 由多台主机构成,但对外值表现为一个整体,只提供一个访问入口(域名与ip地址);相当于一台大型计算机。

为什么需要使用群集?

互联网应用中,随着站点对硬件性能、相应速度、服务器稳定性,数据可靠性要求越来越高,单台服务器已经无法满足负载均衡及高可用的要求。

解决办法

  • 使用价格昂贵的小型机、大型机

  • 使用普通服务器构建服务群集

2、企业群集分类

2.1 根据群集所针对的目标差异,可分为三种类型

  • 负载均衡群集: 通过负载均衡、分流策略进行。
  • 高可用群集 : HA表示高可用,使用的VRRP协议,可以做到冗余、备份、缓解解决了单点故障
    • VRRP协议就运用到了冗余、备份,解决单点故障的
    • VRRP的特点: ①根据优先级选出主-备关系。②主-备之间,可以以ping的方式检测对方的心跳。③当主异常,优先级下降,并低于备的优先级,VIP地址进行漂移。
    • VIP特性: ①只会存在同一个热备组中优先级最高的设备上。②可以进行漂移
    • VIP好处: 因为是虚拟ip。可以保护后端的真实ip。
  • 高性能运算群集: 微服务,将一个应用拆分为一个个模块,进行分别处理。

2.2 三种类型介绍

负载均衡群集(Load Balance Cluster)—-简称:LB

  • 提高应用系统的响应能力,尽可能处理更多的访问请求,减少延时为目标,获得高并发、高负载(LB)的整体性能。
  • LB的负载分配依赖于主节点的分流算法。
    • 以nginx和2个tomcat组合举例:当第一批客户端访问nginx动态时,使用负载均衡,将客户访问页面请求平均分发到两个tomcat上,过了一段时间有第二批客户来访,此时第一批某些客户访问结束,但是两个tomcat所剩的连接数不一定是一样的,那么此时第二批客户的请求分发时,就不能再使用第一次以轮询的方式分发,而是根据后台tomcat连接数进行分发。

高可用群集(High Availability Cluster)—-简称:HA

  • 提高应用系统的可靠性、尽可能的减少终端时间为目标,确保服务的连续性,达到高可用(HA)的容错效果。
  • HA的工作方式包括双工和主从两种模式

高性能运算群集(High Performance Computer Cluster)

  • 提高应用系统的CPU运算速度,苦战硬件资源和分析能力为目标,获得相当于大型、超级计算机的高性能运算(HPC)能力
  • 高性能依赖于“分布式运算”、“并行计算”,通过专用硬件和软件将多个服务器的CPU、内存等资源整合在一起,实现只有大型、超级计算机才具备的计算能力。

二、负载均衡群集架构

1、负载均衡的结构

  • 第一层:负载调度器(Load Balancer 或 Director)
  • 第二层:服务器池(Server Pool)
  • 第三层:共享存储(Share Storage)

在这里插入图片描述

2、负载均衡集群工作模式分析

负载均衡群集是目前企业用的最多的群集类型

群集的负载调度技术有三种工作模式

  • 地址转换: NAT地址映射
  • IP隧道: 隧道模式叠加网络
  • 直接路由 : DR

3、NAT模式(地址转换)

  • NetworkAddress Translation ,简称NAT模式

  • 类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问 入口 ,也是各节点回应客户机的访问 出口

  • 服务器节点使用私有IP地址,与负载调度器位于同一个物理网络,安全性要优于其它两种方式。

4、TUN模式(IP隧道)

  • IP Tunel。简称TUN模式

  • 采用开放式的网络结构,负载调度器仅作为客户机的访问 入口 ,各节点通过各自的internet连接直接回应客户机,而不再经过负载的调度器。

  • 服务器节点分散在互联网中的不同位置,具有独立的公网IP地址哦,通过专用IP隧道与负载调度器相互通信

5、DR模式(直接路由)

  • Direct Routing,简称DR模式

  • 采用半开放式的网络结构,与TUN的结构类似,但各节点并不是分散在各地,而是与调度器位于同一物理网络

  • 负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道。

三、LVS虚拟服务器

1、Linux Virtual Server

  • 针对Linux内核的负载均衡解决方案
  • 1998年5月,由我国的章文嵩博士创建

使用场景

工作位置

  • 单台LVS服务器的话:LVS只做LB负载调度器,那么工作再4层,并且工作再4层的LVS负载均衡能在LVS、Nginx、Apache、Haproxy几个常用的负载均衡器中时最强的,而且在K8S中,默认的负载均衡技术就是LVS。

  • 如果作为HA高可用的负载均衡,LVS+keepalived,那么工作再4层和7层

2、LVS负载调度算法

轮询(Round Robin)—–简称:RR

  • 将受到的访问请求按照顺序轮流分配给群集中的各节点(真实服务器),均平等对待每一台服务器,而不管服务器实际的连接数和系统负载。

加权轮询(Weighted Round Robin)简称:WRR

  • 根据调度器设置的权重值来分发请求,权重高的节点优先获得任务,分配的请求数越多。
  • 保证性能力强的服务器承担更多的访问流量。

最小连接(Least Connections)

  • 根据真实服务器已建立的连接数进行分配,将收到的访问请求优先分配给连接最小的节点。

加权最小连接(Weighted Least Connections)

  • 在服务器节点的性能差异较大时,可以为真实服务器自动调整权重
  • 性能较高的节点将承担更大比例的活动连接接负载

轮询和最小连接的区别

  • 轮询分配时,他不管后台的连接数有多少,它只是按照轮询的方式进行分配。加权轮询可手动提高服务器的分配的次数。

  • 最小连接分配时,它考虑的时后台连接数的多少,它会先将访问请求分给最小连接的后台服务器。加权最小连接可以自动将最小连接的数量的服务器补全,变成和其它服务器一样的连接数,再进行分配。

3、LVS的管理工具ipvsadm

ipvs(ip virtual servcer):LVS是基于内核态的netfilter 框架实现的IPVS功能,工作在内核态。用户配置VIP等相关信息并传递到IPVS就需要用得到ipvsadm工具。

ipvsadm :ipvsadm是LVS用户态的配套工具,可以实现VIP和RS的增删改查功能,是基于netlink或raw socket方式与内核LVS进行通信的,如果LVS类比喻netfilter,那ipvsadm就是类似于iptables工具的地位。

作用:

  • 主要用于服务器的负载均衡
  • 工作在网络层,可实现高性能,高可用的服务器群集技术
  • 廉价,可把许多低性能的服务器组合在一起形成一个超级服务器
  • 易用,配置简单,有多种负载均衡的方法。
  • 稳定可靠,即使在集群的服务器中某台服务器无法正常工作,也不影响整体效果。
  • 可扩展性好。

3.1 lvs相关术语

术语 描述
DS(Director Server) 前台负载均衡服务器
RS(Real Server) 后端真实服务器
CIP(client IP) 客户端ip地址
VIP(virtual IP) 负载均衡器对外提供的IP地址,一般负载均衡IP都会通过virtual IP实现可可用
RIP(Realserver IP) 负载均衡后端的真实服务器IP地址
DIP 负载均衡与后端服务器通信的IP地址
CMAC 客户端MAC地址,LVS连接的路由器的MAC地址
VMAC 负载均衡LVS的VIP对应的MAC地址
DMAC 负载均衡LVS的DIP对应的MAC地址
RMAC 后端真实服务器的RIP地址对应的MAC地址

3.2 ipvsadm工具的选项

选项 功能
-A 添加虚拟服务器
-D 删除整个虚拟服务器
-s 指定负载调度算法(轮询:rr,加权轮询:wrr,最少连接:lc,加权最少连接:wlc)
-a 表示添加真实服务器(节点服务器)
-d 删除某一个节点
-t 指定VIP地址及TCP端口
-r 指定RIP地址及TCP端口
-m 表示使用NAT模式
-g 表示使用DR模式
-i 表示使用TUN模式
-w 设置权重(权重为0时表示暂停节点)
-p 60 表示保持长连接60秒
-l 列表查看LVS虚拟服务器(默认查看所有)
-n 艺术字形式显示地址,端口等信息,长与’-l’选项组合使用

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/75032.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!