本发明专利技术公开了一种基于服务网格的数据传输方法及装置、电子设备,涉及云计算技术领域,其中,该数据传输方法包括:接收网络流量数据;将网络流量数据推送至代理边车,其中,在代理边车中预先配置有内核扩展程序;通过内核扩展程序,将网络流量数据发送至目标容器调度单元所管理的目标业务容器中。本发明专利技术解决了现有技术中服务网格中通过网络预定规则拦截转发业务容器流量,造成网络链路变长,耗时增加的技术问题。术问题。术问题。
【技术实现步骤摘要】
基于服务网格的数据传输方法及装置、电子设备
[0001]本专利技术涉及云计算
,具体而言,涉及一种基于服务网格的数据传输方法及装置、电子设备。
技术介绍
[0002]随着分布式微服务的流行,服务网格作为一种新兴分布式服务架构,在容器调度单元中通过一个代理边车/代理容器sidecar来代理业务容器网络流量,从而促使业务与基础设施解耦,加快业务迭代周期,从而被广泛认可。
[0003]然而在相关技术中,每个容器调度单元中的代理边车都会占用一部分系统资源,在大集群规模下,累积的资源开销会很多,不容小觑。同时,sidecar代理边车通过现有的iptables规则(网络管理员预定义的条件),拦截转发进出业务容器的流量,从而使原有的业务网路调用链路也增加了一定的耗时。
[0004]图1是现有技术中一种可选的分布式服务架构的示意图,如图1所示,注册中心与控制平台连接,通过注册中心将多个K8S群组的信息注册至控制平台,通过控制平台进行规则下发至各个K8S群组的容器调度单元pod(pod中所有容器共享网络存储资源),在容器调度单元中包括:用户consumer和代理边车sidecar,同时K8S群组还包括各个API服务模块,如图1所示,在pod中通过一个代理边车sidecar来代理业务容器网络流量,从而促使业务与基础设施解耦。
[0005]图2是现有技术中一种可选的服务网格中代理边车Sidecar的流量代理的示意图,如图2所示,采用iptables规则,代理边车Sidecar对于输入信息进行网络拦截,然后将信息转发至各APP,各APP的信息也会被代理边车Sidecar进行信息拦截,通过代理边车Sidecar输出信息,图2示意的流量代理方式,sidecar代理边车通过拦截转发进出业务容器的流量,强制进出pod的流量重定向到sidecar,从而促使业务与基础设施解耦,即通过代理通信流量,实现灰度路由,监控,安全认证等能力。但是这种方式,造成网络链路变长,使原有的业务网路调用链路增加了大量的耗时,同时iptables规则不易于维护。
[0006]针对上述的问题,目前尚未提出有效的解决方案。
技术实现思路
[0007]本专利技术实施例提供了一种基于服务网格的数据传输方法及装置、电子设备,以至少解决现有技术中服务网格中通过网络预定规则拦截转发业务容器流量,造成网络链路变长,耗时增加的技术问题。
[0008]根据本专利技术实施例的一个方面,提供了一种基于服务网格的数据传输方法,包括:接收网络流量数据;将所述网络流量数据推送至代理边车,其中,在代理边车中预先配置有内核扩展程序;通过所述内核扩展程序,将所述网络流量数据发送至目标容器调度单元所管理的目标业务容器中。
[0009]可选地,在接收网络流量数据之前,还包括:采用预设接口调度策略,与每个所述
容器调度单元所管理的业务容器建立链接关系;基于所述链接关系,调度所述业务容器的容器内核的内核扩展接口;基于所述内核扩展接口,编写与所述业务容器对应的所述内核扩展程序。
[0010]可选地,在接收网络流量数据之前,还包括:获取每个容器调度单元的命名空间;基于所述命名空间,确定与每个所述容器调度单元对应的租赁信息,其中,所述租赁信息提供所述容器调度单元的调度信息和链接信息;基于所述租赁信息,在所述内核扩展程序中分别设置与每个所述容器调度单元对应的调度租户。
[0011]可选地,通过所述内核扩展程序,将所述网络流量数据发送至目标容器调度单元所管理的目标业务容器中的步骤,包括:提取所述网络流量数据中的业务租赁信息;基于所述业务租赁信息,确定与所述目标业务容器对应的目标调度租户;通过所述目标调度租户和所述内核扩展程序,将所述网络流量数据发送至所述目标业务容器。
[0012]可选地,基于服务网格的数据传输方法应用于虚拟机,所述虚拟机中包含有多个容器调度单元,每个所述容器调度单元对应管理多个业务容器,所有所述业务容器共享所述代理边车。
[0013]可选地,多个所述虚拟机上的业务容器对接有容器集群管理系统,所述容器集群管理系统管理多个业务容器。
[0014]根据本专利技术实施例的另一方面,还提供了一种基于服务网格的数据传输装置,包括:接收单元,用于接收网络流量数据;推送单元,用于将所述网络流量数据推送至代理边车,其中,在代理边车中预先配置有内核扩展程序;传输单元,用于通过所述内核扩展程序,将所述网络流量数据发送至目标容器调度单元所管理的目标业务容器中。
[0015]可选地,基于服务网格的数据传输装置还包括:建立单元,用于在接收网络流量数据之前,采用预设接口调度策略,与每个所述容器调度单元所管理的业务容器建立链接关系;调度单元,用于基于所述链接关系,调度所述业务容器的容器内核的内核扩展接口;编写单元,用于基于所述内核扩展接口,编写与所述业务容器对应的所述内核扩展程序。
[0016]可选地,基于服务网格的数据传输装置还包括:第一获取模块,用于在接收网络流量数据之前,获取每个容器调度单元的命名空间;第一确定模块,用于基于所述命名空间,确定与每个所述容器调度单元对应的租赁信息,其中,所述租赁信息提供所述容器调度单元的调度信息和链接信息;第一设置模块,用于基于所述租赁信息,在所述内核扩展程序中分别设置与每个所述容器调度单元对应的调度租户。
[0017]可选地,传输单元包括:第一提取模块,用于提取所述网络流量数据中的业务租赁信息;第二确定模块,用于基于所述业务租赁信息,确定与所述目标业务容器对应的目标调度租户;第一发送模块,用于通过所述目标调度租户和所述内核扩展程序,将所述网络流量数据发送至所述目标业务容器。
[0018]可选地,基于服务网格的数据传输方法应用于虚拟机,所述虚拟机中包含有多个容器调度单元,每个所述容器调度单元对应管理多个业务容器,所有所述业务容器共享所述代理边车。
[0019]可选地,多个所述虚拟机上的业务容器对接有容器集群管理系统,所述容器集群管理系统管理多个业务容器。
[0020]根据本专利技术实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机
可读存储介质用于存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任意一项所述的基于服务网格的数据传输方法。
[0021]根据本专利技术实施例的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述任意一项所述的基于服务网格的数据传输方法。
[0022]本专利技术中,采用接收网络流量数据,将网络流量数据推送至代理边车,其中,在代理边车中预先配置有内核扩展程序,通过内核扩展程序,将网络流量数据发送至目标容器调度单元所管理的目标业务容器中。在该实施例中,可以通过主机内核接口自定义扩展接口程序,将服务网格上所有pod网络流量由一个公共的代理边车sidecar代理程序代理流量,大大本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于服务网格的数据传输方法,其特征在于,包括:接收网络流量数据;将所述网络流量数据推送至代理边车,其中,在代理边车中预先配置有内核扩展程序;通过所述内核扩展程序,将所述网络流量数据发送至目标容器调度单元所管理的目标业务容器中。2.根据权利要求1所述的数据传输方法,其特征在于,在接收网络流量数据之前,还包括:采用预设接口调度策略,与每个容器调度单元所管理的业务容器建立链接关系;基于所述链接关系,调度所述业务容器的容器内核的内核扩展接口;基于所述内核扩展接口,编写与所述业务容器对应的所述内核扩展程序。3.根据权利要求1所述的数据传输方法,其特征在于,在接收网络流量数据之前,还包括:获取每个容器调度单元的命名空间;基于所述命名空间,确定与每个所述容器调度单元对应的租赁信息,其中,所述租赁信息提供所述容器调度单元的调度信息和链接信息;基于所述租赁信息,在所述内核扩展程序中分别设置与每个所述容器调度单元对应的调度租户。4.根据权利要求3所述的数据传输方法,其特征在于,通过所述内核扩展程序,将所述网络流量数据发送至目标容器调度单元所管理的目标业务容器中的步骤,包括:提取所述网络流量数据中的业务租赁信息;基于所述业务租赁信息,确定与所述目标业务容器对应的目标调度租户;通过所述目标调度租户和所述内核扩展程序,将所述网络流量数据发送至所述目标业务容器。5.根据权利要求1至4中任意一项所述的数据传输方法,其特征在于,基于服务网格的数据传输方法应用于虚拟机,所述虚拟机中包含有多个容器调...
【专利技术属性】
技术研发人员:顾欣,王鹏培,凌晨,刘成锋,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。