在设计之初就充分考虑了针对容器的服务发现与负载均衡机制,提供了资源,并通过kube-proxy配合cloud 来适应不同的应用场景。随着用户的激增,用户场景的不断丰富,产生了一些新的负载均衡机制。

平台的特点

是对一组提供相同功能的Pods的抽象,并为它们提供一个统一的入口。借助,应用可以方便的实现服务发现与负载均衡,并实现应用的零宕机升级。通过标签来选取服务后端,一般配合 或者来保证后端容器的正常运行。

目前 共有三种服务暴露的方式:

·

·

·

是深度结合云平台的一个组件;当使 暴露服务时,实际上是通过向底层云平台申请创建一个负载均衡器来向外暴露服务;目前 支持的云平台已经相对完善,比如国外的GCE、,国内的 阿里云,私有云 等等,由于 深度结合了云平台,所以只能在一些云平台上来使用。

,实质上就是通过在集群的每个node上暴露一个端口,然后将这个端口映射到某个具体的来实现的,虽然每个node的端口有很多(默认的取值范围是30000-32767),但是由于安全性和易用性(服务多了就乱了,还有端口冲突问题)实际使用可能并不多。

可以实现使用nginx等开源的反向代理负载均衡器实现对外暴露服务,可以理解就是用于配置域名转发,在nginx中就类似,它与-结合使用,通过-监控到pod及的变化,动态地将中的转发信息写到诸如nginx、、等组件中实现方向代理和负载均衡。

平台 介绍

是一个规则的集合,它允许集群外的流量通过一定的规则到达集群内的 。如下图:

负载均衡集群的三种实现方式_负载均衡集群的工作原理_负载均衡和集群的区别

三个组件:

反向代理负载均衡器,即常见的负载均衡软件,如 nginx、等。

与 API 进行交互,实时的感知后端、pod 等变化,再结合下文的 生成配置负载均衡和集群的区别,然后更新反向代理负载均衡器负载均衡和集群的区别,并刷新其配置,实现动态服务发现与更新。

是规则集合;定义了域名与的的对应关系;这个规则将与 结合, 将其动态写入到负载均衡器配置中,从而实现整体的服务发现和负载均衡。

Træfɪk 是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理、负载均衡工具。它支持多种后台来自动化、动态的应用它的配置文件设置。

特性

工作原理

负载均衡集群的工作原理_负载均衡集群的三种实现方式_负载均衡和集群的区别

可以与的API进行交互,每当使用

对微服务进行添加、移除、或更新都会被感知,并且可以自动生成它们的配置文件。指向到你服务的路由将会被直接创建出来。

UI界面

结合LVS高可用负载均衡与集群外服务访问实践

前端为两台LVS服务器,通过实现负载集群高可用以及虚拟IP,实现外部流量的四层负载,以及作为集群服务访问的入口。LVS负载均衡采用DR模式提高集群的处理速度。

后端三台服务器组成集群,每台节点使用 的方式部署容器,监听节点的80端口,前端LVS负载均衡监听后端三台节点的80端口将外部访问负载分担。

然后由进行七层负载均衡,可以实现基于域名或访问目录等来实现映射与负载,将访问流量映射至 并通过负载至最终业务POD所在的容器。

组网拓扑如下:

负载均衡集群的三种实现方式_负载均衡和集群的区别_负载均衡集群的工作原理

关键配置

: /

kind:

:

name: -svc

:

app: -svc

spec:

: 3

:

type:

:

:

:

app: -svc

tier:

spec:

:

- image:"192.168.18.250:5002//:4.4-"

name: -svc

ports:

- : 80

关键配置

: v1

kind:

:

name: -svc

:

app: -svc

spec:

ports:

- port: 8912

: 80

:

app: -svc

关键配置

: /

kind:

:

name: -ing

spec:

rules:

- host:


限时特惠:
本站持续每日更新海量各大内部创业课程,一年会员仅需要98元,全站资源免费下载
点击查看详情

站长微信:Jiucxh

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注