CN114553959A - 基于态势感知的云原生服务网格配置按需下发方法及应用 - Google Patents
基于态势感知的云原生服务网格配置按需下发方法及应用 Download PDFInfo
- Publication number
- CN114553959A CN114553959A CN202210158764.8A CN202210158764A CN114553959A CN 114553959 A CN114553959 A CN 114553959A CN 202210158764 A CN202210158764 A CN 202210158764A CN 114553959 A CN114553959 A CN 114553959A
- Authority
- CN
- China
- Prior art keywords
- service
- information
- configuration
- cluster
- local storage
- 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
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000003860 storage Methods 0.000 claims abstract description 61
- 238000001914 filtration Methods 0.000 claims abstract description 11
- 238000012423 maintenance Methods 0.000 claims abstract description 7
- 238000012544 monitoring process Methods 0.000 claims description 23
- 230000015654 memory Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008859 change Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 238000012552 review Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
Abstract
本发明公开了一种基于态势感知的云原生服务网格配置按需下发的方法及应用,该方法包括以下步骤:获取集群中的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的本地存储;在集群中出现新的服务或所述服务依赖信息发生改变时,更新所述本地存储;以及将更新的本地存储写入Sidecar的指定字段,并将写入结果发送至Kubernetes集群的API服务器,在Istio的控制面监听到所述API服务器的Sidecar发生变化时,向数据面下发配置。该方法能够通过态势感知策略可以在时变的环境中,根据集群中服务间的动态调用关系,采集新的依赖关系,动态调整配置的存储;通过智能配置维护策略可以不断识别调用链中的服务关系从而更新置换策略,适应更新变化。
Description
技术领域
本发明是关于微服务和云原生领域,特别是关于一种基于态势感知的云原生服务网格配置按需下发的方法及应用。
背景技术
微服务架构逐渐发展成熟,很多传统的企业开始以微服务和容器为核心实践互联网技术转型。服务网格作为微服务架构的又一发展阶段,旨在为微服务架构提供可靠、快速和安全的服务间调用。服务网格在总体架构层面,在各项服务间提供一堆紧挨的用户代理作为数据平面,以及一组任务管理流程作为控制平面。数据平面截获不同服务之间的调用并对其进行处理;控制平面通过向数据平面代理下发配置的行为,用来操控和测量整个网络。
在服务网格中,现存的配置下发方案是全量下发的,从单个代理角度,所占用的内存并不算多,但数据平面所有代理的内存累积起来数字庞大,尤其是在中、大型规模的集群中。在进行集群部署时,如何优化并减少服务网格带来的额外内存是需要考虑的一个主要问题。针对服务网格中配置下发这一问题,一种常规的方法是采用基于Istio架构的按Namespace对配置进行隔离的方法。在Istio控制面Istiod在创建发现服务时按照Namespace对服务进行隔离,Istiod缺省只会为数据面代理Envoy创建和其服务在同一Namespace中的服务相关的发现服务,在一定程度上减少了数据面配置量,但该方法过于粗粒度,对内存优化效果有限。在实际的服务部署场景中,一个Namespace中往往部署大量相关的微服务,这些逻辑相关同属一个业务系统的微服务并不在任意两个微服务之间都存在调用关系,由此产生冗余数据。
因此,针对已有方法的不足,基于场景的动态性需求,研究者提出一种增量xDS的方法,通过更改服务网格源代码的形式使得配置按需下发。然而,该方法对架构侵入性较强,对数据面和控制面逻辑都要进行大幅更改,暂未有很好实施,且会对原本架构的功能和性能产生影响。
针对轻量化场景,微服务部署在计算能力和存储能力都有限的边端结点,占用大量内存来存储配置信息的策略显然不合适,而默认的Istio系统也无法实现配置信息精准下发;此外,大部分的研究仍未能面向动态化场景,基于态势感知增强下发配置的时效性。
公开于该背景技术部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。
发明内容
本发明的目的在于提供一种基于态势感知的云原生服务网格配置按需下发的方法及应用,解决全量下发导致的大量冗余数据传输和存储的问题。
为实现上述目的,本发明的实施例提供了一种基于态势感知的云原生服务网格配置按需下发的方法。
在本发明的一个或多个实施方式中,所述方法包括:获取集群中的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的本地存储;在集群中出现新的服务或所述服务依赖信息发生改变时,更新所述本地存储;以及将更新的本地存储写入Sidecar的指定字段,并将写入结果发送至Kubernetes集群的API服务器,在Istio的控制面监听到所述API服务器的Sidecar发生变化时,向数据面下发配置。
在本发明的一个或多个实施方式中,所述获取集群中的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的本地存储,包括:监控Kubernetes集群中的服务,并生成监控日志指标数据;根据所述监控日志指标数据获取所述Kubernetes集群的实时日志信息,并将所述实时日志信息中参与业务的服务以及对应的服务依赖信息按照预设格式存储至配置过滤控制器。
在本发明的一个或多个实施方式中,所述在集群中出现新的服务或所述服务依赖信息发生改变时,更新所述本地存储,包括:在集群中出现新的服务或所述服务依赖信息发生改变时,获取集群中最新的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的最新配置信息;将所述本地存储与所述最新配置信息进行比对,将比对结果发送至所述配置过滤控制器的工作队列;以及所述工作队列按照所述比对结果到达的先后顺序依次更新本地存储。
在本发明的另一个方面当中,提供了一种基于态势感知的云原生服务网格配置按需下发的装置,其包括获取模块、更新模块和维护模块。
获取模块,用于获取集群中的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的本地存储。
更新模块,用于在集群中出现新的服务或所述服务依赖信息发生改变时,更新所述本地存储。
维护模块,用于将更新的本地存储写入Sidecar的指定字段,并将写入结果发送至Kubernetes集群的API服务器,在Istio的控制面监听到所述API服务器的Sidecar发生变化时,向数据面下发配置。
在本发明的一个或多个实施方式中,所述获取模块还用于:监控Kubernetes集群中的服务,并生成监控日志指标数据;根据所述监控日志指标数据获取所述Kubernetes集群的实时日志信息,并将所述实时日志信息中参与业务的服务以及对应的服务依赖信息按照预设格式存储至配置过滤控制器。
在本发明的一个或多个实施方式中,所述更新模块还用于:在集群中出现新的服务或所述服务依赖信息发生改变时,获取集群中最新的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的最新配置信息;将所述本地存储与所述最新配置信息进行比对,将比对结果发送至所述配置过滤控制器的工作队列;以及所述工作队列按照所述比对结果到达的先后顺序依次更新本地存储。
在本发明的另一个方面当中,提供了一种电子设备,包括:至少一个处理器;以及存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如上所述的基于态势感知的云原生服务网格配置按需下发的方法。
在本发明的另一个方面当中,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述的基于态势感知的云原生服务网格配置按需下发的方法的步骤。
与现有技术相比,根据本发明实施方式的基于态势感知的云原生服务网格配置按需下发的方法及应用,其能够通过监控日志信息,进而从监控日志信息中获取集群中所有的业务服务以及对应的服务依赖信息,实现对集群控制面的调控;通过态势感知策略可以在时变的环境中,根据集群中服务间的动态调用关系,采集新的依赖关系,动态调整配置的存储;通过智能配置维护策略可以不断识别调用链中的服务关系从而更新置换策略,适应更新变化。
根据本发明实施方式的基于态势感知的云原生服务网格配置按需下发的方法及应用,其能够保证配置信息按需下发,避免全量下发导致的大量冗余数据传输和存储。对控制面Istiod而言缓解推送事件的复杂度,减少配置下发时延和推送时的内存,避免OOM;对数据面Envoy代理而言,减少代理的启动时间和内存开销,释放大量代理的主线程,避免阻塞控制面的事件推送。除此之外,保证存储信息的实时性,适应业务服务动态变化的场景。
附图说明
图1是根据本发明一实施方式的基于态势感知的云原生服务网格配置按需下发的方法的流程图;
图2是根据本发明一实施方式的基于态势感知的云原生服务网格配置按需下发的方法的系统日志监控组件图;
图3是根据本发明一实施方式的基于态势感知的云原生服务网格配置按需下发的方法的配置过滤机制图;
图4是根据本发明一实施方式的基于态势感知的云原生服务网格配置按需下发的方法的过滤机制处理日志图;
图5是根据本发明一实施方式的基于态势感知的云原生服务网格配置按需下发的方法的Bookinfo业务的调用关系图;
图6是根据本发明一实施方式的基于态势感知的云原生服务网格配置按需下发的方法的Sidecar资源功能图;
图7是根据本发明一实施方式的基于态势感知的云原生服务网格配置按需下发的装置的结构图;
图8是根据本发明一实施方式的基于态势感知的云原生服务网格配置按需下发的计算设备的硬件结构图。
具体实施方式
下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。
除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。
以下结合附图,详细说明本发明各实施例提供的技术方案。
实施例1
如图1至图6所示,介绍本发明的一个实施例中基于态势感知的云原生服务网格配置按需下发的方法,该方法包括如下步骤。
在步骤S101中,获取集群中的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的本地存储。
将一个轻量化Prometheus组件以Kubernetes的Pod形式部署在业务服务集群中,从而使得Prometheus组件监控Kubernetes集群中的服务,Prometheus服务器收集和存储时间序列数据,并产生监控日志指标数据;
客户端通过执行PromQL查询语言从监控日志指标数据中获取Kubernetes集群的实时日志信息,从中截取参与业务的服务以及各服务之间的调用依赖关系进行存储维护,并推送至配置过滤控制器。
PromQL查询语言可以对集群在单个时刻或在一段时间内进行评估,API响应格式为JSON,<series_selector>是Prometheus时间序列选择器,例如http_requests_total或http_requests_total{method=~"(GET|POST)"}。
参与业务的服务可从活跃的目标主机上拉取监控日志指标数据,指标中metric.__name__字段的值为up时,表示该服务正在运行中,若该服务含有metric.security_istio_io_tlsMode字段,则判别此服务为参与业务的服务,而不是istio-ingressgateway、istio-egressgateway这样的Istio网关服务。
在步骤S102中,在集群中出现新的服务或服务依赖信息发生改变时,更新本地存储。
配置过滤控制器具有四个组成部分,分别是负责对接Prometheus端API服务器进行服务信息以及对应的服务依赖信息存储的本地存储,负责接收客户端推送的最新配置信息,负责比对集群中最新配置信息和本地存储的配置信息的控制循环,和负责实现调控逻辑的工作队列。
将配置过滤控制器部署为Kubernetes集群的一个服务,存储从Prometheus组件上获取的服务信息以及对应的服务依赖信息至本地存储,在集群中出现新的服务或服务依赖信息发生改变时,Prometheus的提醒服务推送提醒信息给客户端的API,客户端重新获取集群的实时日志信息并存储至最新配置信息,控制循环将最新配置信息与本地存储的信息进行比对,产生更新事件并加入工作队列,工作队列根据更新事件到达的先后顺序依次更新本地存储的信息。
具体的,首先通过PromQL语言从Prometheus中获取历史日志信息,筛选并清理历史日志信息,得到集群中的服务信息以及对应的服务依赖信息,以<key,value>形式存放在本地存储中作为初始状态;服务依赖信息发生改变时,Prometheus的提醒服务触发提醒客户端API,客户端API重新查询最新的日志信息,并将最新的日志信息存储至最新配置信息;控制循环监听到最新配置信息有新的任务到达,开启工作线程进行比对操作,比对本地存储数据和最新配置信息数据,并将对比结果发送至工作队列,控制循环将对比结果主要分为增添和删除两种;工作队列对到达的任务按照到达的先后顺序进行排队处理,并更新本地存储,由本地存储进行后续对Sidecar资源的控制工作。
在配置信息过滤机制中,存储服务信息以及对应的服务依赖信息的本地存储以数据结构Map的<key,value>形式存储,将业务服务存储为关键字key,可以保证当一个服务存在多个不同版本时,被当作一个逻辑服务处理,避免数据的冗余,服务的依赖关系存储在字符串数组中作为值value。对于本地存储的依赖关系数组使用智能的置换算法维护,保证每个value的大小根据实际情况具有一定的弹性且不含过期的序列。智能的置换算法可以动态调整置换策略,根据当前应用场景,在先进先出算法、时钟算法、最近最长未调用算法中进行选择。
在步骤S103中,将更新的本地存储写入Sidecar的指定字段,并将写入结果发送至Kubernetes集群的API服务器,在Istio的控制面监听到API服务器的Sidecar发生变化时,向数据面下发配置。
Sidecar描述Envoy代理的配置,Envoy代理将入站和出站通信调解到它所依赖的工作负载实例。当一个集群中存在一个Bookinfo业务,其中包含Productpage、Reviews、Details、Ratings四个服务时,他们的服务依赖关系如图5所示:Productpage->Reviews;Productpage->Details;Reviews->Ratings。
如图6所示,当全量下发配置时,Reviews服务会收到以上全部服务(Productpage、Reviews、Details、Ratings)的配置信息,而经Sidecar配置后,Reviews服务所接收到和所需存储的配置仅有与他有依赖关系的Ratings服务。
默认情况下,Istio将为网格中的所有Envoy代理服务,使其具有到达网格中每个工作负载所需的必要配置,并在与工作负载关联的所有端口上接收流量。Sidecar资源提供了一种方法,在向工作负载转发流量或从工作负载转发流量时,微调端口集合和代理将接收的协议。除了可以配置Envoy代理在转发流量时接受的端口或协议集合,Sidecar还可以限制Envoy代理在出站流量时能够到达的服务集合。
Envoy代理占用的内存和其配置的后端实例个数是成线性关系的,后端实例越多,Envoy占用的内存越大。而Sidecar中包含的字段workloadSelector可以决定哪些工作负载受配置影响,当不配置工作负载时,该配置控制一个命名空间内的所有Envoy代理。
网格中的服务和配置被组织成一个或多个名称空间(例如,Kubernetes名称空间或CF org/space)。命名空间中的Sidecar资源将应用于同一命名空间中的一个或多个工作负载,由workloadSelector选择。如果没有workloadSelector,它将应用于同一名称空间中的所有工作负载。在确定要应用于工作负载的Sidecar资源时,将优先使用通过workloadSelector而选择到此工作负载的的资源,而不是没有任何workloadSelector的资源。
如图7所示,介绍根据本发明具体实施方式的基于态势感知的云原生服务网格配置按需下发的装置。
在本发明的实施方式中,基于态势感知的云原生服务网格配置按需下发的装置包括获取模块701、更新模块702和维护模块703。
获取模块701,用于获取集群中的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的本地存储。
更新模块702,用于在集群中出现新的服务或服务依赖信息发生改变时,更新本地存储。
维护模块703,用于将更新的本地存储写入Sidecar的指定字段,并将写入结果发送至Kubernetes集群的API服务器,在Istio的控制面监听到API服务器的Sidecar发生变化时,向数据面下发配置。
获取模块701还用于:监控Kubernetes集群中的服务,并生成监控日志指标数据;根据监控日志指标数据获取Kubernetes集群的实时日志信息,并将实时日志信息中参与业务的服务以及对应的服务依赖信息按照预设格式存储至配置过滤控制器。
更新模块702还用于:在集群中出现新的服务或服务依赖信息发生改变时,获取集群中最新的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的最新配置信息;将本地存储与最新配置信息进行比对,将比对结果发送至配置过滤控制器的工作队列;以及工作队列按照比对结果到达的先后顺序依次更新本地存储。
图8示出了根据本说明书的实施例的用于基于态势感知的云原生服务网格配置按需下发的计算设备80的硬件结构图。如图8所示,计算设备80可以包括至少一个处理器801、存储器802(例如非易失性存储器)、内存803和通信接口804,并且至少一个处理器801、存储器802、内存803和通信接口804经由总线805连接在一起。至少一个处理器801执行在存储器802中存储或编码的至少一个计算机可读指令。
应该理解,在存储器802中存储的计算机可执行指令当执行时使得至少一个处理器801进行本说明书的各个实施例中以上结合图1-8描述的各种操作和功能。
在本说明书的实施例中,计算设备80可以包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、消息收发设备、可佩戴计算设备、消费电子设备等等。
根据一个实施例,提供了一种比如机器可读介质的程序产品。机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中以上结合图1-8描述的各种操作和功能。具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
根据本发明实施方式的基于态势感知的云原生服务网格配置按需下发的方法及应用,其能够通过监控日志信息,进而从监控日志信息中获取集群中所有的业务服务以及对应的服务依赖信息,实现对集群控制面的调控;通过态势感知策略可以在时变的环境中,根据集群中服务间的动态调用关系,采集新的依赖关系,动态调整配置的存储;通过智能配置维护策略可以不断识别调用链中的服务关系从而更新置换策略,适应更新变化。
根据本发明实施方式的基于态势感知的云原生服务网格配置按需下发的方法及应用,其能够保证配置信息按需下发,避免全量下发导致的大量冗余数据传输和存储。对控制面Istiod而言缓解推送事件的复杂度,减少配置下发时延和推送时的内存,避免OOM;对数据面Envoy代理而言,减少代理的启动时间和内存开销,释放大量代理的主线程,避免阻塞控制面的事件推送。除此之外,保证存储信息的实时性,适应业务服务动态变化的场景。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
前述对本发明的具体示例性实施方案的描述是为了说明和例证的目的。这些描述并非想将本发明限定为所公开的精确形式,并且很显然,根据上述教导,可以进行很多改变和变化。对示例性实施例进行选择和描述的目的在于解释本发明的特定原理及其实际应用,从而使得本领域的技术人员能够实现并利用本发明的各种不同的示例性实施方案以及各种不同的选择和改变。本发明的范围意在由权利要求书及其等同形式所限定。
Claims (8)
1.一种基于态势感知的云原生服务网格配置按需下发的方法,其特征在于,所述方法包括:
获取集群中的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的本地存储;
在集群中出现新的服务或所述服务依赖信息发生改变时,更新所述本地存储;以及
将更新的本地存储写入Sidecar的指定字段,并将写入结果发送至Kubernetes集群的API服务器,在Istio的控制面监听到所述API服务器的Sidecar发生变化时,向数据面下发配置。
2.如权利要求1所述的基于态势感知的云原生服务网格配置按需下发的方法,其特征在于,所述获取集群中的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的本地存储,包括:
监控Kubernetes集群中的服务,并生成监控日志指标数据;
根据所述监控日志指标数据获取所述Kubernetes集群的实时日志信息,并将所述实时日志信息中参与业务的服务以及对应的服务依赖信息按照预设格式存储至配置过滤控制器。
3.如权利要求1所述的基于态势感知的云原生服务网格配置按需下发的方法,其特征在于,所述在集群中出现新的服务或所述服务依赖信息发生改变时,更新所述本地存储,包括:
在集群中出现新的服务或所述服务依赖信息发生改变时,获取集群中最新的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的最新配置信息;
将所述本地存储与所述最新配置信息进行比对,将比对结果发送至所述配置过滤控制器的工作队列;以及
所述工作队列按照所述比对结果到达的先后顺序依次更新本地存储。
4.一种基于态势感知的云原生服务网格配置按需下发的装置,其特征在于,所述装置包括:
获取模块,用于获取集群中的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的本地存储;
更新模块,用于在集群中出现新的服务或所述服务依赖信息发生改变时,更新所述本地存储;以及
维护模块,用于将更新的本地存储写入Sidecar的指定字段,并将写入结果发送至Kubernetes集群的API服务器,在Istio的控制面监听到所述API服务器的Sidecar发生变化时,向数据面下发配置。
5.如权利要求4所述的基于态势感知的云原生服务网格配置按需下发的装置,其特征在于,所述获取模块还用于:
监控Kubernetes集群中的服务,并生成监控日志指标数据;
根据所述监控日志指标数据获取所述Kubernetes集群的实时日志信息,并将所述实时日志信息中参与业务的服务以及对应的服务依赖信息按照预设格式存储至配置过滤控制器。
6.如权利要求4所述的基于态势感知的云原生服务网格配置按需下发的装置,其特征在于,所述更新模块还用于:
在集群中出现新的服务或所述服务依赖信息发生改变时,获取集群中最新的服务信息以及对应的服务依赖信息,并存储至配置过滤控制器的最新配置信息;
将所述本地存储与所述最新配置信息进行比对,将比对结果发送至所述配置过滤控制器的工作队列;以及
所述工作队列按照所述比对结果到达的先后顺序依次更新本地存储。
7.一种电子设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如权利要求1至3中任一项所述的基于态势感知的云原生服务网格配置按需下发的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述的基于态势感知的云原生服务网格配置按需下发的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210158764.8A CN114553959A (zh) | 2022-02-21 | 2022-02-21 | 基于态势感知的云原生服务网格配置按需下发方法及应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210158764.8A CN114553959A (zh) | 2022-02-21 | 2022-02-21 | 基于态势感知的云原生服务网格配置按需下发方法及应用 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114553959A true CN114553959A (zh) | 2022-05-27 |
Family
ID=81677251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210158764.8A Pending CN114553959A (zh) | 2022-02-21 | 2022-02-21 | 基于态势感知的云原生服务网格配置按需下发方法及应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114553959A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860342A (zh) * | 2021-02-10 | 2021-05-28 | 北京百度网讯科技有限公司 | 微服务配置的方法、装置、设备、系统以及存储介质 |
CN113765965A (zh) * | 2020-08-21 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 服务网格系统的生成方法、装置、服务网格系统 |
CN113760901A (zh) * | 2021-02-19 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 数据处理方法、装置、设备及存储介质 |
-
2022
- 2022-02-21 CN CN202210158764.8A patent/CN114553959A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113765965A (zh) * | 2020-08-21 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 服务网格系统的生成方法、装置、服务网格系统 |
CN112860342A (zh) * | 2021-02-10 | 2021-05-28 | 北京百度网讯科技有限公司 | 微服务配置的方法、装置、设备、系统以及存储介质 |
CN113760901A (zh) * | 2021-02-19 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 数据处理方法、装置、设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
冯志勇;徐砚伟;薛霄;陈世展;: "微服务技术发展的现状与展望", 计算机研究与发展, no. 05, 15 May 2020 (2020-05-15) * |
施凌鹏;朱征;周俊松;李鑫;李静: "面向微服务架构的云系统负载均衡机制", 计算机工程, vol. 47, no. 9, 10 November 2021 (2021-11-10) * |
王锡龙;李鑫;秦小麟: "电力物联网下分布式状态感知的源网荷储协同机制", 计算机科学, vol. 48, no. 2, 2 March 2021 (2021-03-02) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200285514A1 (en) | Automated reconfiguration of real time data stream processing | |
CN107590001B (zh) | 负载均衡方法及装置、存储介质、电子设备 | |
US9971823B2 (en) | Dynamic replica failure detection and healing | |
JP5988621B2 (ja) | 高負荷のビジネスプロセスのスケーラビリティ | |
US8627333B2 (en) | Message queuing with flexible consistency options | |
US10673969B2 (en) | Scalable data feed system | |
US20050028171A1 (en) | System and method enabling multiple processes to efficiently log events | |
US20140181818A1 (en) | Optimization of packet processing by delaying a processor from entering an idle state | |
US20140164477A1 (en) | System and method for providing horizontal scaling of stateful applications | |
US20130104139A1 (en) | System for Managing Data Collection Processes | |
US11860741B2 (en) | Continuous data protection | |
AU2020327970B2 (en) | Distributed queueing over a redis cluster | |
US9836516B2 (en) | Parallel scanners for log based replication | |
GB2532834A (en) | A method and system for scalable job processing | |
US20120278817A1 (en) | Event distribution pattern for use with a distributed data grid | |
CN111881116A (zh) | 数据迁移方法、数据迁移系统、计算机系统和存储介质 | |
JP7161560B2 (ja) | 人工知能開発プラットフォームの管理方法及び装置、媒体 | |
WO2020258666A1 (zh) | 一种分布式系统及数据处理方法 | |
US20230275976A1 (en) | Data processing method and apparatus, and computer-readable storage medium | |
US20200220910A1 (en) | Idempotent processing of data streams | |
CN113360577A (zh) | 一种mpp数据库数据处理方法、装置、设备及存储介质 | |
US9021109B1 (en) | Controlling requests through message headers | |
CN116954944A (zh) | 基于内存网格的分布式数据流处理方法、装置及设备 | |
CN111475315A (zh) | 服务器及订阅通知推送控制、执行方法 | |
CN111190731A (zh) | 基于权重的集群任务调度系统 |
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 |