CN113296927A - 服务网格实例的构建方法、服务网格系统以及多集群系统 - Google Patents
服务网格实例的构建方法、服务网格系统以及多集群系统 Download PDFInfo
- Publication number
- CN113296927A CN113296927A CN202010516849.XA CN202010516849A CN113296927A CN 113296927 A CN113296927 A CN 113296927A CN 202010516849 A CN202010516849 A CN 202010516849A CN 113296927 A CN113296927 A CN 113296927A
- Authority
- CN
- China
- Prior art keywords
- service
- instance
- grid
- plane component
- instances
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
公开了一种服务网格实例的构建方法、服务网格系统以及多集群系统。在第一运行环境中创建服务网格实例;将位于第二运行环境中的多个服务实例注册到服务网格实例;将服务网格实例的数据平面组件部署到第二运行环境中,将服务网格实例的用于为数据平面组件提供策略和/或配置的控制平面组件部署到第一运行环境中,并将控制平面组件的参数下发到第二运行环境中,以使得数据平面组件能够遵循控制平面组件所提供的提供策略和/或配置,来实现不同服务实例之间的调用。由此,可以解耦服务网格实例与服务运行时环境的生命周期管理,为实现服务网格实例的托管提供了支持。
Description
技术领域
本公开涉及计算机技术领域,特别是涉及一种服务网格实例的构建方法、服务网格系统以及多集群系统。
背景技术
微服务是指将数据和功能公开为一组松散耦合的API服务方式,然后将这些API服务组合在一起以解决应用需求。借助微服务,组织可以快速适应不断变化的客户需求,并提供可创造竞争优势的组合服务。
随着应用功能复杂度增加以及越来越多的微服务,这些松散耦合的服务需要了解服务之间的依赖关系,以最大程度地减少以后进行更改的麻烦。
服务网格是微服务基础结构中的关键部分,可以实现服务之间的调用,提高应用程序的弹性和安全性。现有服务网格构建方案通常是在微服务架构内构建服务网格实例,以为微服务架构内的多个服务提供治理、流量管理能力,但这种方式存在一定的弊端,包括:控制平面是单点故障,单个配置错误可能会导致整个控制与数据平面失效;控制平面的配置复杂性需要用户维护管理,无法做到托管;服务网格实例与服务运行时环境的生命周期管理紧耦合。
因此,需要一种能够解决上述至少一种弊端的服务网格构建方案。
发明内容
本公开要解决的一个技术问题是提供一种能够解决上述至少一种弊端的服务网格构建方案。
根据本公开的第一个方面,提供了一种服务网格实例的构建方法,包括:在第一运行环境中创建服务网格实例;将位于第二运行环境中的多个服务实例注册到服务网格实例;将服务网格实例的数据平面组件部署到第二运行环境中,将服务网格实例的用于为数据平面组件提供策略和/或配置的控制平面组件部署到第一运行环境中,并将控制平面组件的参数下发到第二运行环境中,以使得数据平面组件能够遵循控制平面组件所提供的提供策略和/或配置,来实现不同服务实例之间的调用。
根据本公开的第二个方面,还提供了一种应用运行方法,应用包括位于第二运行环境中的多个服务实例,该方法包括:利用部署在第二运行环境中的数据平面组件实现不同服务实例之间的调用,其中,用于为数据平面组件提供策略和/或配置的控制平面组件部署到不同于第二运行环境的第一运行环境中,数据平面组件和控制平面组件构成针对多个服务实例的服务网格实例。
根据本公开的第三个方面,还提供了一种服务网格系统,包括:一个或多个服务网格实例,服务网格实例用于实现多个集群上不同服务实例之间的调用,服务网格实例的数据平面组件部署在多个集群上,服务网格实例的控制平面组件部署在服务网格系统中,控制平面组件用于为数据平面组件提供策略和/或配置,服务网格系统将控制平面组件的参数下发给多个集群,以使得数据平面组件能够遵循控制平面组件所提供的提供策略和/或配置,来实现不同服务实例之间的调用。
根据本公开的第四个方面,还提供了一种多集群系统,包括:多个集群,每个集群上部署一个或多个服务实例;集群接入控制器,用于将多个集群接入部署在服务网格系统中的服务网格实例;多个代理容器,每个代理容器对应一个服务实例,服务实例调用与之对应的代理容器与其他服务实例对应的代理容器进行通信;代理容器通过部署在服务网格系统中的入口网关组件提供的接入入口获取服务实例的控制平面组件的参数。
根据本公开的第五个方面,提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行如上述第一方面或第二方面所述的方法。
根据本公开的第六个方面,提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行如上述第一方面或第二方面所述的方法。
由此,通过将控制平面组件和数据平面组件部署在不同运行环境中,使得可以解耦服务网格实例与服务运行时环境的生命周期管理,为实现服务网格实例的托管提供了支持。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了根据本公开一个实施例的服务网格实例的构建方法的示意性原理图。
图2示出了根据本公开一个实施例的服务网格系统以及部署在多集群环境中的相关组件的结构示意意图。
图3示出了本公开一个实施例的将代理容器与非容器化应用的进程部署在一起的示意图。
图4示出了根据本公开一个实施例的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
服务网格主要由两个关键的组件组成:数据平面和控制平面。
在数据平面中,应用服务部署被修改为包括了一个专用的代理组件(对应于下文述及的代理容器,如Sidecar代理)。数据平面使得每个服务不是直接通过网络调用服务,而是调用其本地代理组件与其他服务中的代理组件进行通信。代理组件又封装了服务到服务交换的复杂逻辑。服务网格中的一组相互连接的代理组件构成了整个数据平面。
控制平面用于为数据平面提供策略和/或配置。换言之,控制平面用于控制整个服务网格上的代理行为。可以在控制平面上总体指定服务路由规则、身份验证策略,或者收集指标并配置数据平面的参数等。一般来说,数据平面和控制平面之间的通信是通过API定义进行规范的。
本公开提出了一种托管式的服务网格构建方案,通过将服务网格的控制平面组件和数据平面组件部署在不同运行环境中,可以解耦服务网格实例与服务运行时环境的生命周期管理,实现控制平面组件的托管。
图1示出了根据本公开一个实施例的服务网格实例的构建方法的示意性原理图。参见图1,第二运行环境是指服务实例所处的运行环境,第二运行环境中可以部署多个服务实例。第一运行环境不同于第二运行环境。第一运行环境是指服务网格的托管环境,即用于创建服务网格实例的环境。
可以在第一运行环境中创建服务网格实例,并将位于第二运行环境中的多个服务实例注册到服务网格实例。
服务网格实例主要包括数据平面组件和控制平面组件。在本公开中,可以将数据平面组件从服务网格实例中拆分出去,将数据平面组件部署到第二运行环境中。将用于为数据平面组件提供策略和/或配置的控制平面组件保留在服务网格实例中,即将控制平面组件部署到第一运行环境中。并通过预定的方式将控制平面组件的参数下发到第二运行环境中,以使得数据平面组件能够遵循控制平面组件所提供的提供策略和/或配置,来实现不同服务实例之间的调用。
响应于第一运行环境中控制平面组件的更新,可以将更新后的控制平面组件的参数下发到第二运行环境中,以使得数据平面组件能够遵循更新后控制平面组件所提供的提供策略和/或配置,来实现不同服务实例之间的调用。其中,对控制平面组件进行更新的操作可以由用户执行,也可以由提供服务网格托管服务的系统(如下文述及的托管服务网格系统)执行。
作为示例,第一运行环境可以是指基于公有云、私有云或混合云的托管服务网格系统,即托管服务网格系统可以部署在公有云、私有云或混合云上。第二运行环境可以是多集群环境。集群是指作为一个单元运行的逻辑分组的计算机资源的集合,可以是一个独立的物理集群,或者一个包含多个物理集群的逻辑集群组,如可以是指Kubernetes集群。每个集群中可以部署一个或多个服务实例。多集群环境中部署的所有服务实例可以构成一个完整的应用架构(如微服务架构)。
托管服务网格系统对外提供服务网格实例的托管服务。可以由托管服务网格系统执行本公开的服务网格实例的构建方法,针对部署在多个集群上的服务实例创建服务网格实例,以实现不同服务实例之间的调用。
通过将控制平面组件和数据平面组件部署在不同运行环境中,使得可以在一定程度上解耦服务网格实例与服务运行时环境的生命周期管理。以第二运行环境为托管服务网格系统为例,控制平面组件的配置参数的设定、更新可以通过托管的方式实现,即可以由托管服务网格系统维护控制平面组件的配置,而无需用户维护控制平面的配置复杂性。
并且由于控制平面组件和数据平面组件部署在不同运行环境中,即使控制平面组件在更新时出现参数配置错误,数据平面组件也可以遵循原先控制平面组件所提供的策略和/或配置,不会导致整个数据平面失效。
以第一运行环境为托管服务网格系统,第二运行环境为多集群环境为例,服务网格实例还可以包括服务注册控制器和服务注册库。其中,服务注册控制器和服务注册库部署在托管服务网格系统中,多集群环境中还设有集群接入控制器。可以由集群接入控制器将多个集群接入服务网格实例;由服务注册控制器将多个集群上的不同服务实例注册到服务网格实例;由服务注册库对多个集群上的不同服务实例的服务注册信息进行统一管理。
本公开还可以将服务网格实例中的入口网关组件部署到第一运行环境中,入口网关组件用于为数据平面组件提供接入入口。例如,入口网关组件可以是将控制平面的参数提供给数据平面的接入入口,可以通过内网或私网的负载均衡器实现。
数据平面组件可以包括多个代理容器,每个代理容器对应一个服务实例。服务实例可以调用与之对应的代理容器与其他服务实例对应的代理容器进行通信,以实现不同服务实例之间的调用。
代理容器可以作为进程外Sidecar与应用实例一起部署,并负责执行网络级别操作并观察所有的入站和出站流量。服务实例可以分为容器化应用和非容器化应用的进程。对于属于容器化应用的服务实例,可以将代理容器与服务实例的应用所在容器部署在一起;对于属于非容器化应用的进程的服务实例,可以将进程所在节点注册为第二运行环境的工作节点,通过第二运行环境中的容器运行时管理环境协调进程和与该进程对应的代理容器之间的交互。
本公开还可以将与服务实例的配置参数相关的远程服务网格元数据下发到第二运行环境中,以便部署在第二运行环境中的与服务网格实例相关的组件能够基于远程服务网格元数据进行同步。
如上文所述,本公开的服务网格实例的构建方法可以由用于提供服务网格托管服务的服务网格系统执行。下面结合服务网格系统就本公开涉及的细节做进一步说明。
图2示出了根据本公开一个实施例的服务网格系统以及部署在多集群环境中的相关组件的结构示意意图。
如图2所示,服务网格系统101提供了一种以托管的方式对外暴露服务网格的控制平面的能力,一个托管服务网格系统101可以构建多个不同的服务网格实例102。
服务网格实例102用于实现多个集群上不同服务实例之间的调用。每一个服务网格实例102提供了完整的服务网格控制平面104(对应于上文述及的控制平面组件),服务网格实例102的数据平面组件部署在多个集群上。服务网格控制平面104用于为数据平面组件提供策略和/或配置,服务网格系统101可以将服务网格控制平面104的参数下发给多个集群,以使得数据平面组件能够遵循控制平面组件所提供的提供策略和/或配置,来实现不同服务实例之间的调用。
部署在多个集群上的与服务网格实例102相关的组件构成了多集群数据平面。多集群数据平面中包括集群接入控制器108,可以由集群接入控制器108将多个集群接入服务网格实例101。服务网格实例102中可以包括服务注册控制器109和服务注册库110,响应于集群接入控制器108将多个集群接入服务网格实例101,服务注册控制器109可以将多个集群上的不同服务实例注册到服务网格实例101。服务注册控制器109同时能够支持跨多个集群的服务统一发现、注册;集群中的每个服务不依赖于其他设置,支持任意类型的暴露方式。作为示例,服务网格实例102可以以声明式API管理路由规则定义,由此可以以声明式方法暴露服务端点到服务注册库中。其中,服务发现是指从集群中根据服务名定位服务端点的过程。
服务注册库110可以对多个集群上的不同服务实例的服务注册信息进行统一管理。例如,服务注册库110将服务注册控制器109处理的注册服务信息进行统一管理,以一种标准化的方式统一存储所有的注册服务信息。
服务网格实例102还包括服务网格控制器103和服务网格入口网关105(对应于上文述及的入口网关组件)。服务网格控制器103用于设置服务网格控制平面104和服务网格入口网关105,服务网格入口网关105用于为多个集群提供服务网格控制平面104的接入入口。
具体来说,服务网格控制器103提供了解耦服务网格实例与服务运行时环境的生命周期管理的能力;支持动态创建服务网格控制平面104与服务网格入口网关105,并支持基于服务网格的配置参数动态同步更新托管服务网格控制平面104与服务网格入口网关105。
服务网格控制平面104运行于服务网格系统101中,为服务网格数据平面中的代理提供流量配置和控制选项,可提供弹性、负载平衡和流量控制功能。服务网格入口网关105是将托管服务网格控制平面104提供给数据平面的多个集群的接入入口,往往以内网或私网的负载均衡器实现。
服务网格实例102还包括远程服务网格控制器106,用于将与服务实例的配置参数相关的远程服务网格元数据107下发给多个集群,以便部署在多个集群上的与服务网格实例相关的组件能够基于远程服务网格元数据107与服务网格实例101进行同步。
换言之,远程服务网格控制器106提供了一种远程将远程服务网格元数据107下发到服务网格内集群的能力,并支持基于服务网格的配置参数动态同步更新下发到数据平面集群上的远程服务网格元数据107。远程服务网格元数据107用于动态同步数据平面多集群上的服务网格相关组件和配置参数,以支持代理容器111能够随着控制平面的参数变更而动态调整,保证与服务网格入口网关105的连接能力。
部署在多个集群上的服务实例可以分为容器化应用和非容器化应用的进程。对于属于容器化应用的服务实例,可以将代理容器111作为进程外Sidecar与服务实例的应用容器112一起部署,并负责执行网络级别操作并观察所有的入站和出站流量。其中应用容器112是指服务实例的应用所在的容器,应用之间的调用经过代理容器111截流控制。
非容器化应用的进程,不能通过容器化处理,通常需要与代理容器111共享一个主机网络。对于非容器化应用的进程的服务实例,可以由部署在多集群环境中的应用进程注入器113将进程所在节点注册为集群的工作节点,通过集群中的容器运行时管理环境协调进程和与该进程对应的代理容器111之间的交互。如图3所示,代理容器和应用进程可以部署在一个pod中,在将进程所在节点注册为集群的工作节点后,Pod可以通过Host网络使用节点的网络空间和网络资源。
综上,通过服务网格控制器103与远程服务网格控制器106提出了一种支持多集群管理的托管服务网格的方法与系统,提供了一种高可用的方式实现跨集群的服务注册、服务发现与流量路由管理;通过服务网格控制器103提供了解耦服务网格实例与服务运行时环境的生命周期管理的能力;支持动态创建托管服务网格控制平面104与服务网格入口网关105,并支持基于服务网格的配置参数动态同步更新托管服务网格控制平面104与服务网格入口网关105;通过服务注册控制器109支持多个集群上的不同服务实例注册于一个服务网格实例,同时能够支持跨多个集群的服务统一发现注册;集群中的每个服务不依赖于其他设置,支持任意类型的暴露方式;通过应用进程注入器113支持容器化应用和非容器化应用的统一管理。
本公开还提出了一种应用运行方法。本实施例述及的应用可以是指包括多个服务实例的应用,即基于微服务架构的应用。这多个服务实例所在的运行环境即为上文述及的第二运行环境。可以利用上文述及的服务网格构建方案为这多个服务实例构建对应的服务网格实例,关于服务网格实例的构建过程可以参见上文相关描述,此处不再赘述。
在应用运行过程中,在需要进行服务实例之间的调用时,可以利用部署在第二运行环境中的数据平面组件实现不同服务实例之间的调用。其中,如上文服务网格实例的构建方案所述,用于为数据平面组件提供策略和/或配置的控制平面组件部署到不同于第二运行环境的第一运行环境中,数据平面组件和控制平面组件构成针对这多个服务实例的服务网格实例。
作为示例,数据平面组件可以包括多个代理容器,每个代理容器对应一个服务实例。在所述多个服务实例中某一服务实例需要调用其他服务实例时,属于调用方的服务实例可以调用与之对应的代理容器与属于被调用方的其他服务实例对应的代理容器进行通信。关于代理容器和服务实例可以参见上文相关描述,此处不再赘述。
本公开还提供了一种多集群系统,包括:多个集群,每个集群上部署一个或多个服务实例,多个集群可以是指由多于一个的集群构成的集群组合,如可以是指多个Kubernetes集群所构成的集群联邦;集群接入控制器,用于将多个集群接入部署在服务网格系统中的服务网格实例;多个代理容器,每个代理容器对应一个服务实例,服务实例调用与之对应的代理容器与其他服务实例对应的代理容器进行通信;代理容器通过部署在服务网格系统中的入口网关组件提供的接入入口获取服务实例的控制平面组件的参数。
应用实例分为容器化应用和非容器化应用的进程,多集群系统还包括:应用进程注入器,用于将非容器化应用的进程所在节点注册为集群的工作节点,通过所集群的容器运行时管理环境协调进程和与该进程对应的代理容器之间的交互。
多集群系统还可以接收服务网格系统发送的与服务实例的配置参数相关的远程服务网格元数据,部署在多集群系统中的与服务实例相关的组件(如集群接入控制器、代理容器)可以基于远程服务网格元数据进行同步。关于多集群系统涉及的细节部分可以参见上文相关描述,此处不再赘述。
图4示出了根据本发明一实施例可用于实现上述服务网格实例的构建方法的计算设备的结构示意图。
参见图4,计算设备400包括存储器410和处理器420。
处理器420可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器420可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如图形处理器(GPU)、数字信号处理器(DSP)等等。在一些实施例中,处理器420可以使用定制的电路实现,例如特定用途集成电路(ASIC,Application Specific Integrated Circuit)或者现场可编程逻辑门阵列(FPGA,Field Programmable Gate Arrays)。
存储器410可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器420或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器410可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器410可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器410上存储有可执行代码,当可执行代码被处理器420处理时,可以使处理器420执行上文述及的服务网格实例的构建方法。
上文中已经参考附图详细描述了根据本发明的服务网格实例的构建方法、服务网格系统、应用运行方法以及多集群系统。
此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (18)
1.一种服务网格实例的构建方法,包括:
在第一运行环境中创建服务网格实例;
将位于第二运行环境中的多个服务实例注册到所述服务网格实例;
将所述服务网格实例的数据平面组件部署到所述第二运行环境中,将所述服务网格实例的用于为所述数据平面组件提供策略和/或配置的控制平面组件部署到所述第一运行环境中,并将所述控制平面组件的参数下发到所述第二运行环境中,以使得所述数据平面组件能够遵循所述控制平面组件所提供的提供策略和/或配置,来实现不同服务实例之间的调用。
2.根据权利要求1所述的方法,还包括:
将所述服务网格实例中的入口网关组件部署到所述第一运行环境中,所述入口网关组件用于为所述数据平面组件提供接入入口。
3.根据权利要求1所述的方法,其中,
所述数据平面组件包括多个代理容器,每个所述代理容器对应一个服务实例,所述服务实例调用与之对应的代理容器与其他服务实例对应的代理容器进行通信。
4.根据权利要求3所述的方法,还包括:
对于属于容器化应用的服务实例,将所述代理容器与所述服务实例的应用所在容器部署在一起;并且/或者
对于属于非容器化应用的进程的服务实例,将所述进程所在节点注册为所述第二运行环境的工作节点,通过所述第二运行环境中的容器运行时管理环境协调所述进程和与该进程对应的代理容器之间的交互。
5.根据权利要求1所述的方法,其中,
所述第一运行环境为基于公有云、私有云或混合云的服务网格系统,所述第二运行环境为多集群环境。
6.根据权利要求5所述的方法,其中,所述服务网格实例还包括服务注册控制器和服务注册库,所述多集群环境中还设有集群接入控制器,所述将位于第二运行环境中的多个服务实例注册到所述服务网格实例的步骤包括:
由所述集群接入控制器将多个集群接入所述服务网格实例;
由所述服务注册控制器将所述多个集群上的不同服务实例注册到所述服务网格实例;
由所述服务注册库对所述多个集群上的不同服务实例的服务注册信息进行统一管理。
7.根据权利要求1所述的方法,还包括:
将与所述服务实例的配置参数相关的远程服务网格元数据下发到所述第二运行环境中,以便部署在所述第二运行环境中的与所述服务网格实例相关的组件能够基于所述远程服务网格元数据进行同步。
8.一种应用运行方法,所述应用包括位于第二运行环境中的多个服务实例,该方法包括:
利用部署在所述第二运行环境中的数据平面组件实现不同服务实例之间的调用,其中,用于为所述数据平面组件提供策略和/或配置的控制平面组件部署到不同于所述第二运行环境的第一运行环境中,所述数据平面组件和所述控制平面组件构成针对所述多个服务实例的服务网格实例。
9.根据权利要求8所述的方法,其中,
所述数据平面组件包括多个代理容器,每个所述代理容器对应一个服务实例,所述服务实例调用与之对应的代理容器与其他服务实例对应的代理容器进行通信。
10.一种服务网格系统,包括:一个或多个服务网格实例,
所述服务网格实例用于实现多个集群上不同服务实例之间的调用,
所述服务网格实例的数据平面组件部署在所述多个集群上,所述服务网格实例的控制平面组件部署在所述服务网格系统中,所述控制平面组件用于为所述数据平面组件提供策略和/或配置,
所述服务网格系统将所述控制平面组件的参数下发给所述多个集群,以使得所述数据平面组件能够遵循所述控制平面组件所提供的提供策略和/或配置,来实现不同服务实例之间的调用。
11.根据权利要求10所述的服务网格系统,其中,
所述服务网格实例还包括服务网格控制器和入口网关组件,所述服务网格控制器用于设置所述控制平面组件和所述入口网关组件,所述入口网关组件用于为所述多个集群提供所述控制平面组件的接入入口。
12.根据权利要求10所述的服务网格系统,其中,
所述服务网格实例还包括远程服务网格控制器,用于将与所述服务实例的配置参数相关的远程服务网格元数据下发给所述多个集群,以便部署在所述多个集群上的与所述服务网格实例相关的组件能够基于所述远程服务网格元数据与所述服务网格实例进行同步。
13.根据权利要求10所述的服务网格系统,其中,
所述服务网格实例还包括服务注册控制器和服务注册库,
响应于部署在所述多个集群上的集群接入控制器将所述多个集群接入所述服务网格实例,所述服务注册控制器将所述多个集群上的不同服务实例注册到所述服务网格实例,所述服务注册库对所述多个集群上的不同服务实例的服务注册信息进行统一管理。
14.一种多集群系统,包括:
多个集群,每个所述集群上部署一个或多个服务实例;
集群接入控制器,用于将所述多个集群接入部署在服务网格系统中的服务网格实例;
多个代理容器,每个所述代理容器对应一个服务实例,所述服务实例调用与之对应的代理容器与其他服务实例对应的代理容器进行通信;
所述代理容器通过部署在服务网格系统中的入口网关组件提供的接入入口获取所述服务实例的控制平面组件的参数。
15.根据权利要求14所述的多集群系统,其中,所述应用实例分为容器化应用和非容器化应用的进程,所述多集群系统还包括:
应用进程注入器,用于将非容器化应用的进程所在节点注册为集群的工作节点,通过所集群的容器运行时管理环境协调所述进程和与该进程对应的代理容器之间的交互。
16.根据权利要求14所述的多集群系统,其中,
所述多集群系统还接收所述服务网格系统发送的与所述服务实例的配置参数相关的远程服务网格元数据,部署在所述多集群系统中的与所述服务实例相关的组件基于所述远程服务网格元数据进行同步。
17.一种计算设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1至9中任何一项所述的方法。
18.一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1至9中任何一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010516849.XA CN113296927A (zh) | 2020-06-09 | 2020-06-09 | 服务网格实例的构建方法、服务网格系统以及多集群系统 |
PCT/CN2021/098052 WO2021249268A1 (zh) | 2020-06-09 | 2021-06-03 | 服务网格实例的构建方法、服务网格系统以及多集群系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010516849.XA CN113296927A (zh) | 2020-06-09 | 2020-06-09 | 服务网格实例的构建方法、服务网格系统以及多集群系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113296927A true CN113296927A (zh) | 2021-08-24 |
Family
ID=77318184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010516849.XA Pending CN113296927A (zh) | 2020-06-09 | 2020-06-09 | 服务网格实例的构建方法、服务网格系统以及多集群系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113296927A (zh) |
WO (1) | WO2021249268A1 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113542437A (zh) * | 2021-09-16 | 2021-10-22 | 阿里云计算有限公司 | 网络系统、网络代理方法及设备 |
CN113709707A (zh) * | 2021-10-29 | 2021-11-26 | 中兴通讯股份有限公司 | 服务网格中边车部署的方法、装置、电子设备和存储介质 |
CN114143313A (zh) * | 2021-11-30 | 2022-03-04 | 招商局金融科技有限公司 | 基于云原生的集群通信装置、方法及相关设备 |
CN114745380A (zh) * | 2022-03-29 | 2022-07-12 | 阿里巴巴(中国)有限公司 | 基于服务网格的跨私网多集群管理方法及装置 |
CN114884956A (zh) * | 2022-07-05 | 2022-08-09 | 北京世纪好未来教育科技有限公司 | 多集群架构的实现方法、装置及多集群架构系统 |
CN115426257A (zh) * | 2022-07-29 | 2022-12-02 | 之江实验室 | 一种面向服务网格的多控制器架构与部署方法 |
CN116107564A (zh) * | 2023-04-12 | 2023-05-12 | 中国人民解放军国防科技大学 | 面向数据的云原生软件架构及软件平台 |
CN116886497A (zh) * | 2023-07-28 | 2023-10-13 | 中科驭数(北京)科技有限公司 | 基于dpu的服务网格业务集中代理切换方法及处理系统 |
CN116886497B (zh) * | 2023-07-28 | 2024-06-07 | 中科驭数(北京)科技有限公司 | 基于dpu的服务网格业务集中代理切换方法及处理系统 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114285889B (zh) * | 2021-12-21 | 2024-05-17 | 中国农业银行股份有限公司 | 应用服务的配置信息的处理方法、装置和设备 |
CN114637549A (zh) * | 2022-02-22 | 2022-06-17 | 阿里巴巴(中国)有限公司 | 基于服务网格的应用的数据处理方法、系统和存储介质 |
CN114579199B (zh) * | 2022-02-22 | 2024-04-26 | 阿里巴巴(中国)有限公司 | 一种服务网格中代理的扩展方法、系统及存储介质 |
CN114666131A (zh) * | 2022-03-22 | 2022-06-24 | 阿里巴巴(中国)有限公司 | 证书管理系统、证书管理方法及证书管理系统的构建方法 |
CN115174687A (zh) * | 2022-07-21 | 2022-10-11 | 亚信科技(中国)有限公司 | 服务调用方法、装置、电子设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109450790B (zh) * | 2018-10-22 | 2020-10-09 | 北京交通大学 | 一种基于流量感知的网络服务功能链智慧供应方法 |
CN109617873A (zh) * | 2018-12-06 | 2019-04-12 | 中山大学 | 一种基于sdn云安全功能服务树模型的流量攻击防御系统 |
CN109981789B (zh) * | 2019-04-03 | 2021-09-07 | 浪潮云信息技术股份公司 | 一种基于代理模式的微服务引擎 |
-
2020
- 2020-06-09 CN CN202010516849.XA patent/CN113296927A/zh active Pending
-
2021
- 2021-06-03 WO PCT/CN2021/098052 patent/WO2021249268A1/zh active Application Filing
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113542437A (zh) * | 2021-09-16 | 2021-10-22 | 阿里云计算有限公司 | 网络系统、网络代理方法及设备 |
CN113709707A (zh) * | 2021-10-29 | 2021-11-26 | 中兴通讯股份有限公司 | 服务网格中边车部署的方法、装置、电子设备和存储介质 |
CN113709707B (zh) * | 2021-10-29 | 2022-03-15 | 中兴通讯股份有限公司 | 服务网格中边车部署的方法、装置、电子设备和存储介质 |
CN114143313A (zh) * | 2021-11-30 | 2022-03-04 | 招商局金融科技有限公司 | 基于云原生的集群通信装置、方法及相关设备 |
CN114143313B (zh) * | 2021-11-30 | 2024-03-19 | 招商局金融科技有限公司 | 基于云原生的集群通信装置、方法及相关设备 |
CN114745380B (zh) * | 2022-03-29 | 2024-02-06 | 阿里巴巴(中国)有限公司 | 基于服务网格的跨私网多集群管理方法及装置 |
CN114745380A (zh) * | 2022-03-29 | 2022-07-12 | 阿里巴巴(中国)有限公司 | 基于服务网格的跨私网多集群管理方法及装置 |
CN114884956B (zh) * | 2022-07-05 | 2022-09-06 | 北京世纪好未来教育科技有限公司 | 多集群架构的实现方法、装置及多集群架构系统 |
CN114884956A (zh) * | 2022-07-05 | 2022-08-09 | 北京世纪好未来教育科技有限公司 | 多集群架构的实现方法、装置及多集群架构系统 |
CN115426257B (zh) * | 2022-07-29 | 2023-09-05 | 之江实验室 | 一种面向服务网格的多控制器架构与部署方法 |
CN115426257A (zh) * | 2022-07-29 | 2022-12-02 | 之江实验室 | 一种面向服务网格的多控制器架构与部署方法 |
CN116107564A (zh) * | 2023-04-12 | 2023-05-12 | 中国人民解放军国防科技大学 | 面向数据的云原生软件架构及软件平台 |
CN116107564B (zh) * | 2023-04-12 | 2023-06-30 | 中国人民解放军国防科技大学 | 面向数据的云原生软件装置及软件平台 |
CN116886497A (zh) * | 2023-07-28 | 2023-10-13 | 中科驭数(北京)科技有限公司 | 基于dpu的服务网格业务集中代理切换方法及处理系统 |
CN116886497B (zh) * | 2023-07-28 | 2024-06-07 | 中科驭数(北京)科技有限公司 | 基于dpu的服务网格业务集中代理切换方法及处理系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2021249268A1 (zh) | 2021-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113296927A (zh) | 服务网格实例的构建方法、服务网格系统以及多集群系统 | |
CN112119374B (zh) | 使用替代服务器名称选择性地提供相互传输层安全 | |
US10782950B2 (en) | Function portability for services hubs using a function checkpoint | |
US20210132974A1 (en) | System for peering container clusters running on different container orchestration systems | |
CN106663033B (zh) | 在事务中间件机器环境支持绕域和代理模型并更新服务信息以跨域消息传送的系统和方法 | |
CN109189334B (zh) | 一种区块链网络服务平台及其扩容方法、存储介质 | |
US11853816B2 (en) | Extending the Kubernetes API in-process | |
EP1840741A1 (en) | Device, method, and computer program product for accessing a non-native application executing in a virtual machine environment | |
US10594800B2 (en) | Platform runtime abstraction | |
US9648084B2 (en) | System and method for providing an in-memory data grid application container | |
WO2013122815A1 (en) | Coordination of processes in cloud computing environments | |
CN112882792B (zh) | 信息加载方法、计算机设备及存储介质 | |
CN113204353B (zh) | 一种大数据平台组件部署方法及装置 | |
CN117897691A (zh) | 在Kubernetes中使用远程POD | |
CN114239055A (zh) | 分布式数据库多租户隔离方法及系统 | |
CN114826869A (zh) | 设备管理方法和设备管理系统 | |
US9106676B1 (en) | Grid-based server messaging infrastructure | |
US10817280B1 (en) | Overriding shared service interfaces | |
CN110515697A (zh) | 一种虚拟机迁移方法、装置、存储介质及计算机设备 | |
CN114077435A (zh) | 基于容器化快速部署的电子存证系统和方法 | |
CN115103012B (zh) | 一种地理空间信息微服务集成系统及方法 | |
CN112698840B (zh) | 一种实现用于银行云平台服务的架构系统 | |
CN110413381A (zh) | 用于对应用服务容器化的方法和装置 | |
US11843517B1 (en) | Satellite virtual private cloud network environments | |
US11671353B2 (en) | Distributed health monitoring and rerouting in a computer network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40058679 Country of ref document: HK |