一种面向服务网格的多控制器架构与部署方法技术

技术编号:35816458 阅读:16 留言:0更新日期:2022-12-03 13:40
本发明专利技术属于云原生和边缘原生计算领域,公开了一种面向服务网格的多控制器架构与部署方法,包括多个控制器,多个控制器分布在不同的服务器上,每个控制器管理部分微服务,所述微服务通过在同一平面的sidecar进行通信;每个控制器同构,服务器异构,所述控制器之间通过同步通信来实现多控制器的透明,使得用户仍然感受到的是一个控制器。本发明专利技术将多个控制器分别部署在不同的服务器上,每个控制器连接若干个微服务,管理着微服务的执行和通信。根据边缘服务器的资源情况和微服务的部署情况确定需要部署的控制器数量、位置以及连接哪些微服务。能够将传统的服务网格应用于边缘环境中,且保证微服务的正常运行和通信。且保证微服务的正常运行和通信。且保证微服务的正常运行和通信。

【技术实现步骤摘要】
一种面向服务网格的多控制器架构与部署方法


[0001]本专利技术属于云原生和边缘原生计算领域,尤其涉及一种面向服务网格的多控制器架构与部署方法。

技术介绍

[0002]微服务是近年来新兴的一种软件开发技术。这种技术将传统业务分成很多细粒度的、松散耦合且可独立部署的微服务。在原有的单体软件架构已经无法满足当前互联网产品的技术需求的情况下,微服务技术得到了蓬勃发展。
[0003]在微服务技术发展的同时,服务网格(Service Mesh)应运而生。服务网格是用于处理微服务间通信的基础设施层,它负责为构架复杂的云原生应用传递可靠的网络请求。在微服务系统引入服务网格后,微服务之间的网络通信被服务网格代理,经由服务网格实现彼此之间的通信。服务网格对微服务之间的网络通信进行代理,是通过为每个微服务创建一个边车并与之建立关联关系实现的。
[0004]边缘计算,作为云计算的替代或补充,迫切需要应用云原生概念来实现边缘原生计算。服务网格在管理微服务问题上提供了一个单一控制器的解决方案,这种方式在资源充足的云计算环境中得到很好的效果,但由于边缘环境意味着资源受限,集中式的控制器架构会受到网络带宽、服务器处理能力不足等影响导致较长的微服务响应时间。因此,在边缘环境中缺少一种有效的架构来管理和部署微服务。

技术实现思路

[0005]本专利技术目的在于提供一种面向服务网格的多控制器架构与部署方法,以解决上述的技术问题。
[0006]为解决上述技术问题,本专利技术的一种面向服务网格的多控制器架构与部署方法的具体技术方案如下:
[0007]一种面向服务网格的多控制器架构,包括多个控制器,多个控制器分布在不同的服务器上,每个控制器管理管理部分微服务,所述微服务被部署在不同的服务器上,所述微服务通过在同一平面的sidecar进行通信;每个控制器同构,服务器异构,所述控制器之间通过同步通信来实现多控制器的透明,使得用户仍然感受到的是一个控制器。
[0008]进一步的,所述控制器的部署数量以及位置根据服务器之间的异构性以及微服务的部署情况确定;所述微服务根据控制器部署的情况连接至控制器。
[0009]进一步的,所述服务器之间的异构性包括服务器之间的带宽,服务器的处理能力。
[0010]进一步的,多个控制器之间进行同步通信,所述同步通信发送的信息包括:控制器本身的状态、控制器管理的服务状态。
[0011]进一步的,所述架构包括微服务与控制器之间的通信延迟,所述微服务与控制器的通信延迟为其中ρ
C
为与控制器协商部分的信息比率,为部署在服务器n上的微服务s的请求率;为01变量,表示部署在服务器n上的微服务s是否连接
至服务器m上的控制器,c
nm
表示服务器n和服务器m之间的带宽。
[0012]进一步的,所述架构包括微服务的响应延迟,对于每一个控制器来说,其处理服务请求的过程模拟为M/M/1模型,因此每一个控制器的平均处理时间为其中α
n
为处理能力,θ
n
为其负载,平均控制器响应时间可以表示为V
n
的加权平均值:
[0013]进一步的,所述架构包括控制器之间的同步延迟,总的同步延迟表示为:
[0014][0015]其中y
n
为01变量,表示服务器n上是否放置控制器,B为常量,表示控制器本身的状态信息,ρ
S
控制器之间同步请求控制信息比率。
[0016]本专利技术还公开了一种面向服务网格的多控制器架构的部署方法,包括如下步骤:
[0017]步骤1:首先将最终的结果变量cost
min
设置为一个任意的很大的数,k设置为1,的值取随机,设置一个k的最大取值k
max
,其值应当小于服务器的数量;
[0018]步骤2:得到服务的分配方案步骤2:得到服务的分配方案表示微服务s部署在服务器n上并且连接至服务器n上的控制器;
[0019]步骤3:算出优化目标的成本cost
greedy

[0020]步骤4:如果cost
greedy
<cost
min
,cost
min
=cost
greedy
,并且更新y
min
和z
min
;y
min
表示当前最优的控制器部署方案,y
n
=1表示在服务器上部署控制器,z
min
表示当前最优的微服务连接方式;
[0021]步骤5:应用k

means重新组织控制器放置y;
[0022]步骤6:判断cost
min
是否收敛,否则返回步骤2;
[0023]步骤7:k=k+1;
[0024]步骤8:向y添加一个新控制器,使同步成本最小;
[0025]步骤9:判断是否k≤k
max
,否则返回步骤2;
[0026]步骤10:直到结果收敛,输出结果。
[0027]本专利技术的一种面向服务网格的多控制器架构与部署方法具有以下优点:本专利技术通过将多个控制器分别部署在不同的服务器上,每个控制器连接若干个微服务,管理着微服务的执行和通信,并根据边缘服务器的资源情况和微服务的部署情况确定需要部署的控制器数量、位置以及连接哪些微服务优化部署方案,减少了服务网格在边缘环境中由于服务器异构导致的资源不足、网络环境不稳定产生的高延迟,保证了服务网格在边缘环境中的正常运行和充分利用有限资源达到延迟最低的目的。
附图说明
[0028]图1为本专利技术面向服务网格的多控制器部署架构原理图;
[0029]图2为本专利技术面向服务网格的多控制器架构时序图;
[0030]图3为本专利技术解决面向服务网格的多控制器架构部署问题的ck

均值算法流程图;
[0031]图4为本专利技术仿真实验中α对结果的影响的实验图,其中α为[0,1]之间的数,表示部署方案对通信成本和响应时间和同步成本的比率;
[0032]图5为本专利技术的算法所用符号的意义描述表;
[0033]图6为本专利技术的仿真实验所设定的参数表。
具体实施方式
[0034]为了更好地了解本专利技术的目的、结构及功能,下面结合附图,对本专利技术一种面向服务网格的多控制器架构与部署方法做进一步详细的描述。
[0035]在云计算的环境中,服务器的资源可以看做无限大,因此一个控制器可以管理所有的微服务,并且微服务与控制器之间的通信由于带宽资源的充足可以忽略。所以服务网格能够取得很好的效果。然而在边缘环境中由于服务器的异构,且服务器资源有限,因此单控制器的架构会导致高延迟甚至无法运行。
[0036]如图1所示,本专利技术的一种面向服务网格的多控制器架构,包括多个控制器,多个控制器分布在不同的服务器上,每个控制器管理部分微服务,以减少服本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种面向服务网格的多控制器架构,其特征在于,包括多个控制器,多个控制器分布在不同的服务器上,每个控制器管理部分微服务,所述微服务被部署在不同的服务器上,所述微服务通过在同一平面的sidecar进行通信;每个控制器同构,服务器异构,所述控制器之间通过同步通信来实现多控制器的透明,使得用户仍然感受到的是一个控制器。2.根据权利要求1所述的面向服务网格的多控制器架构,其特征在于,所述控制器的部署数量以及位置根据服务器之间的异构性以及微服务的部署情况确定;所述微服务根据控制器部署的情况连接至控制器。3.根据权利要求2所述的面向服务网格的多控制器架构,其特征在于,所述服务器之间的异构性包括服务器之间的带宽,服务器的处理能力。4.根据权利要求1所述的面向服务网格的多控制器架构,其特征在于,多个控制器之间进行同步通信,所述同步通信发送的信息包括:控制器本身的状态、控制器管理的服务状态。5.根据权利要求1所述的面向服务网格的多控制器架构,其特征在于,所述架构包括微服务与控制器之间的通信延迟,所述微服务与控制器的通信延迟为其中ρ
C
为与控制器协商部分的信息比率,为部署在服务器n上的微服务s的请求率;为01变量,表示部署在服务器n上的微服务s是否连接至服务器m上的控制器,c
nm
表示服务器n和服务器m之间的带宽。6.根据权利要求1所述的面向服务网格的多控制器架构,其特征在于,所述架构包括微服务的响应延迟,对于每一个控制器来说,其处理服务请求的过程模拟为M/M/1模型,因此每一个控制器的平均处理时间为其中α
n
为处理能力,θ
n
为其负载,平均控制器响应时间可以表示为V
n
的加权平均值:7.根据权利要求1所述的面向服务网格的多控制器架构,其特征在于,...

【专利技术属性】
技术研发人员:曾德泽欧明伟李跃鹏高丰
申请(专利权)人:中国地质大学武汉
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1