searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

云原生负载均衡

2023-06-16 03:15:57
46
0

什么是负载均衡

在互联网发展的今天,我们一般会把多台机器组成一个集群对外提供服务。然而,我们的网站对外提供的访问入口都是一个的,比如 http://www.baidu.com 那么当用户在浏览器输入 http://www.baidu.com 的时候如何将用户的请求分发到集群中不同的机器上呢,这就是负载均衡在做的事情。

                                 

负载均衡的分类

负载均衡就是一种计算机网络技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁碟驱动器或其他资源中分配负载,以达到最佳化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。那么,这种计算机技术的实现方式有多种。大致可以分为以下几种,其中最常用的是四层和七层负载均衡:

 

  • 四层负载均衡四层负载均衡工作在OSI模型的传输层,由于在传输层,只有TCP/UDP协议,这两种协议中除了包含源IP、目标IP以外,还包含源端口号及目的端口号。四层负载均衡服务器在接受到客户端请求后,以后通过修改数据包的地址信息(IP+端口号)将流量转发到应用服务器。
  • 七层负载均衡七层负载均衡工作在OSI模型的应用层,应用层协议较多,常用http、radius、dns等。七层负载就可以基于这些协议来负载。这些应用层协议中会包含很多有意义的内容。比如同一个Web服务器的负载均衡,除了根据IP加端口进行负载外,还可根据七层的URL、浏览器类别、语言来决定是否要进行负载均衡。

 

常见负载均衡算法

1.1.  轮询(Round Robin)

请求到达后,将客户端发送到负载均衡器的请求依次轮流地转发给服务集群的某个节点。

优点:实现简单,每个集群节点平均分担所有的请求。

缺点:当集群中服务器硬件配置不同、性能差别大时,无法区别对待。引出下面的算法。

1.2.  随机(Random)

随机选取集群中的某个节点来处理该请求,由概率论的知识可知,随着请求量的变大,随机算法会逐渐演变为轮询算法,即集群各个节点会处理差不多数量的请求。

优点:简单使用,不需要额外的配置和算法。

缺点:随机数的特点是在数据量大到一定量时才能保证均衡,所以如果请求量有限的话,可能会达不到均衡负载的要求。

1.3.  加权

加权算法主要是根据集群的节点对应机器的性能的差异,给每个节点设置一个权重值,其中性能好的机器节点设置一个较大的权重值,而性能差的机器节点则设置一个较小的权重值。权重大的节点能够被更多的选中。它是和随机、轮训一起使用的。

优点:可以根据机器的具体情况,分配不同的负载,达到能者多劳。

缺点:需要额外管理加权系数。

1.4.  最小连接数

主要是根据集群的每个节点的当前连接数来决定将请求转发给哪个节点,即每次都将请求转发给当前存在最少并发连接的节点。

优点:可以根据集群节点的负载情况来进行请求的动态分发,即机器性能好,处理请求快,积压请求少的节点分配更多的请求。避免某个节点因为处理超过自身所能承受的请求量而导致宕机或者响应过慢。

1.5.  hash

将对请求的IP地址或者URL计算一个哈希值,然后与集群节点的数量进行取模来决定将请求分发给哪个集群节点。它不是真正意义上的负载均衡,在某些意义上也是一个单点服务。

优点:实现简单

缺点:如果某个节点挂了,会使得一部分流量不可用。

 

云原生负载均衡介绍

中国电信天翼云云原生负载均衡系统(以下简称系统)是基于开源组件LVS、Nginx实现高可用的L4和L7负载均衡服务,高性能支持水平扩展,提供对HTTP、TCP等协议的支持,并为用户提供易于交互的可视化界面操作,能有效的解决单点故障,可随业务需要动态线性扩展,并降低了运维的成本,具有方便快捷、操作简单、安全可靠等特点。

用户可以根据需要创建四层/七层/四层+七层的负载集群,系统会根据用户选择,自动生成负载配置并将负载信息展示于界面上,达到应用的负载均衡效果。

产品功能

(一)提供“L7单实例”、“L4高可用”、“L4+L7标准型” 、“L4+L7进阶型”四种产品规格供用户选择,每种规格对应不同的负载集群。

(二)提供集群管理功能,可查看所创建集群详细信息并修改现有集群配置。

(三)提供实例管理功能,每一个实例可创建多个监听,相应的可配置多个不同的负载策略,达到所需负载效果,同时提供实例拓扑图方便用户查看。

(四)提供zookeeper(以下简称zk)管理功能,能自动发现通过zk注册上来的应用,对应用信息进行查看和管理。

 

产品特点

  • 简单易用——提供可视化管理界面供用户使用,操作简单易懂,实时查看各节点状态,轻松完成负载均衡配置,达到应用负载分发效果
  • 高稳定架构——基于四层/七层负载均衡模式构建负载均衡集群,实现应用的负载分发与高可用
  • 高可用性——主从机器同时运作避免发生单点故障,集群架构模式部署无单点,各节点分摊流量,同时具备健康检查等功能,实时检测服务状态
  • 可扩展性——支持负载均衡器自身的横向扩展;支持应用集群的动态伸缩
  • 应用自动探测——支持应用自动探测的功能,应用发布和升级自动伸缩扩展;支持后端应用健康检查,自动剔除/恢复后端应用

 

0条评论
0 / 1000
罗斯基
12文章数
0粉丝数
罗斯基
12 文章 | 0 粉丝
原创

云原生负载均衡

2023-06-16 03:15:57
46
0

什么是负载均衡

在互联网发展的今天,我们一般会把多台机器组成一个集群对外提供服务。然而,我们的网站对外提供的访问入口都是一个的,比如 http://www.baidu.com 那么当用户在浏览器输入 http://www.baidu.com 的时候如何将用户的请求分发到集群中不同的机器上呢,这就是负载均衡在做的事情。

                                 

负载均衡的分类

负载均衡就是一种计算机网络技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁碟驱动器或其他资源中分配负载,以达到最佳化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。那么,这种计算机技术的实现方式有多种。大致可以分为以下几种,其中最常用的是四层和七层负载均衡:

 

  • 四层负载均衡四层负载均衡工作在OSI模型的传输层,由于在传输层,只有TCP/UDP协议,这两种协议中除了包含源IP、目标IP以外,还包含源端口号及目的端口号。四层负载均衡服务器在接受到客户端请求后,以后通过修改数据包的地址信息(IP+端口号)将流量转发到应用服务器。
  • 七层负载均衡七层负载均衡工作在OSI模型的应用层,应用层协议较多,常用http、radius、dns等。七层负载就可以基于这些协议来负载。这些应用层协议中会包含很多有意义的内容。比如同一个Web服务器的负载均衡,除了根据IP加端口进行负载外,还可根据七层的URL、浏览器类别、语言来决定是否要进行负载均衡。

 

常见负载均衡算法

1.1.  轮询(Round Robin)

请求到达后,将客户端发送到负载均衡器的请求依次轮流地转发给服务集群的某个节点。

优点:实现简单,每个集群节点平均分担所有的请求。

缺点:当集群中服务器硬件配置不同、性能差别大时,无法区别对待。引出下面的算法。

1.2.  随机(Random)

随机选取集群中的某个节点来处理该请求,由概率论的知识可知,随着请求量的变大,随机算法会逐渐演变为轮询算法,即集群各个节点会处理差不多数量的请求。

优点:简单使用,不需要额外的配置和算法。

缺点:随机数的特点是在数据量大到一定量时才能保证均衡,所以如果请求量有限的话,可能会达不到均衡负载的要求。

1.3.  加权

加权算法主要是根据集群的节点对应机器的性能的差异,给每个节点设置一个权重值,其中性能好的机器节点设置一个较大的权重值,而性能差的机器节点则设置一个较小的权重值。权重大的节点能够被更多的选中。它是和随机、轮训一起使用的。

优点:可以根据机器的具体情况,分配不同的负载,达到能者多劳。

缺点:需要额外管理加权系数。

1.4.  最小连接数

主要是根据集群的每个节点的当前连接数来决定将请求转发给哪个节点,即每次都将请求转发给当前存在最少并发连接的节点。

优点:可以根据集群节点的负载情况来进行请求的动态分发,即机器性能好,处理请求快,积压请求少的节点分配更多的请求。避免某个节点因为处理超过自身所能承受的请求量而导致宕机或者响应过慢。

1.5.  hash

将对请求的IP地址或者URL计算一个哈希值,然后与集群节点的数量进行取模来决定将请求分发给哪个集群节点。它不是真正意义上的负载均衡,在某些意义上也是一个单点服务。

优点:实现简单

缺点:如果某个节点挂了,会使得一部分流量不可用。

 

云原生负载均衡介绍

中国电信天翼云云原生负载均衡系统(以下简称系统)是基于开源组件LVS、Nginx实现高可用的L4和L7负载均衡服务,高性能支持水平扩展,提供对HTTP、TCP等协议的支持,并为用户提供易于交互的可视化界面操作,能有效的解决单点故障,可随业务需要动态线性扩展,并降低了运维的成本,具有方便快捷、操作简单、安全可靠等特点。

用户可以根据需要创建四层/七层/四层+七层的负载集群,系统会根据用户选择,自动生成负载配置并将负载信息展示于界面上,达到应用的负载均衡效果。

产品功能

(一)提供“L7单实例”、“L4高可用”、“L4+L7标准型” 、“L4+L7进阶型”四种产品规格供用户选择,每种规格对应不同的负载集群。

(二)提供集群管理功能,可查看所创建集群详细信息并修改现有集群配置。

(三)提供实例管理功能,每一个实例可创建多个监听,相应的可配置多个不同的负载策略,达到所需负载效果,同时提供实例拓扑图方便用户查看。

(四)提供zookeeper(以下简称zk)管理功能,能自动发现通过zk注册上来的应用,对应用信息进行查看和管理。

 

产品特点

  • 简单易用——提供可视化管理界面供用户使用,操作简单易懂,实时查看各节点状态,轻松完成负载均衡配置,达到应用负载分发效果
  • 高稳定架构——基于四层/七层负载均衡模式构建负载均衡集群,实现应用的负载分发与高可用
  • 高可用性——主从机器同时运作避免发生单点故障,集群架构模式部署无单点,各节点分摊流量,同时具备健康检查等功能,实时检测服务状态
  • 可扩展性——支持负载均衡器自身的横向扩展;支持应用集群的动态伸缩
  • 应用自动探测——支持应用自动探测的功能,应用发布和升级自动伸缩扩展;支持后端应用健康检查,自动剔除/恢复后端应用

 

文章来自个人专栏
罗斯基
12 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0