一种基于Kubernetes的配电物联数据采集系统技术方案

技术编号:38193280 阅读:8 留言:0更新日期:2023-07-20 21:12
本发明专利技术公开了一种基于Kubernetes的配电物联数据采集系统,包括终端档案管理服务、网关服务和通信服务。本发明专利技术在网关服务的启动脚本中配置了网关服务的Kubernetes Service对象与通信服务的Kubernetes Service对象之间的端口映射,在模板文件中配置了负载均衡算法,根据启动脚本和模板文件并结合proxy

【技术实现步骤摘要】
一种基于Kubernetes的配电物联数据采集系统


[0001]本专利技术涉及一种基于Kubernetes的配电物联数据采集系统,属于配电数据采集


技术介绍

[0002]目前配电数据采集
内,是由传统的前置服务实现终端数据的采集;传统前置服务本身不具备负载功能,因此终端只能与指定的前置服务进行直接通信,若前置服务出现故障,则无法采集该前置服务所连的所有终端的数据;另外传统的负载均衡软件如nginx、haproxy等,在后端服务进行扩容后,需要重新添加扩容后节点信息并重启负载均衡软件,影响整个系统运行的稳定性及连续性。

技术实现思路

[0003]本专利技术提供了一种基于Kubernetes的配电物联数据采集系统,解决了
技术介绍
中披露的问题。
[0004]为了解决上述技术问题,本专利技术所采用的技术方案是:
[0005]一种基于Kubernetes的配电物联数据采集系统,包括:
[0006]终端档案管理服务,用以维护终端的档案信息,并将终端的档案信息写入高速缓存;
[0007]网关服务,根据预设的启动脚本和模板文件,将终端发起的通信连接负载至通信服务的POD副本上;其中,启动脚本中配置了网关服务的Kubernetes Service对象与通信服务的Kubernetes Service对象之间的端口映射,模板文件中配置了负载均衡算法;
[0008]通信服务,启动多个POD副本;通过网关服务实现与终端之间的通信连接,为通信连接的服务端;解析通信连接的源端IP和端口信息,采用高速缓存中的档案信息对源端IP和端口信息进行校验,若校验成功,将终端上传的配电物联数据转发至配电云主站。
[0009]所述基于Kubernetes的配电物联数据采集系统部署在Kubernetes集群上,终端档案管理服务通过Kubernetes的Ingress对象对外提供服务,Ingress由Kubernetes的nginx

ingress组件实现。
[0010]网关服务由Kubernetes的nginx

ingress组件实现;在nginx

ingress组件的启动脚本中配置网关服务的Kubernetes Service对象与通信服务的Kubernetes Service对象之间的端口映射,包括:
[0011]在启动脚本中找到名称为tcp

serivces的Configmap,添加配置port:<namespace/servicename>:<serviceport>::[PROXY];
[0012]其中,port为网关服务的Kubernetes Service对象端口,namespace为通信服务的Kubernetes Service对象的命名空间名称,servicename为通信服务的Kubernetes Service对象名称,serviceport为通信服务的Kubernetes Service对象端口,PROXY为网关服务与通信服务之间的通信协议。
[0013]网关服务的Kubernetes Service对象通过YAML文件的方式创建,YAML文件中的namespace、name以及spec.selector的属性app.kubernetes.io/name、app.kubernetes.io/part

of为ingress

nginx,YAML文件中的port及targetPort为网关服务对外提供的端口。
[0014]网关服务由Kubernetes的nginx

ingress组件实现,在nginx

ingress组件的模板文件中配置负载均衡算法,包括:
[0015]在nginx

ingress的模板文件nginx.tmpl中找到stream模块,并在stream模块的upstream子模块中为网关服务添加负载均衡算法,将模板文件nginx.tmpl制作为Configmap对象,并将Configmap对象挂载至nginx

ingress的pod内部。
[0016]负载均衡算法为最小连接数算法。
[0017]网关服务的Kubernetes Service对象,通过NodePort或者LoadBalance方式对外发布。
[0018]网关服务与通信服务通过proxy

protocol协议通信。
[0019]通信服务通过Kubernetes Service的方式对外提供通信服务端口。
[0020]本专利技术所达到的有益效果:本专利技术在网关服务的启动脚本中配置了网关服务的Kubernetes Service对象与通信服务的Kubernetes Service对象之间的端口映射,在模板文件中配置了负载均衡算法,根据启动脚本和模板文件,将终端发起的通信连接负载至通信服务的POD副本上,可实现通信服务的无感知扩/缩容,减少了人工干预,避免了传统前置服务单机故障问题,并且无需额外部署负载均衡软件,提升了系统运行的稳定性及连续性。
附图说明
[0021]图1为基于Kubernetes的配电物联数据采集系统的架构图;
[0022]图2为基于Kubernetes的配电物联数据采集系统采集数据的流程图。
具体实施方式
[0023]下面结合附图对本专利技术作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。
[0024]如图1所示,一种基于Kubernetes的配电物联数据采集系统,包括终端档案管理服务、网关服务和通信服务;其中,
[0025]终端档案管理服务,用以维护终端的档案信息,并将终端的档案信息写入高速缓存;
[0026]网关服务,根据预设的启动脚本和模板文件,将终端发起的通信连接负载至通信服务的POD副本上;其中,启动脚本中配置了网关服务的Kubernetes Service对象与通信服务的Kubernetes Service对象之间的端口映射,模板文件中配置了负载均衡算法;
[0027]通信服务,启动多个POD副本;通过网关服务实现与终端之间的通信连接,为通信连接的服务端;解析通信连接的源端IP和端口信息,采用高速缓存中的档案信息对源端IP和端口信息进行校验,若校验成功,将终端上传的配电物联数据转发至配电云主站。
[0028]上述系统在网关服务的启动脚本中配置了网关服务的Kubernetes Service对象与通信服务的Kubernetes Service对象之间的端口映射,在模板文件中配置了负载均衡算
法,根据启动脚本和模板文件,将终端发起的通信连接负载至通信服务的POD副本上,可实现通信服务的无感知扩/缩容,减少了人工干预,避免了传统前置本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Kubernetes的配电物联数据采集系统,其特征在于,包括:终端档案管理服务,用以维护终端的档案信息,并将终端的档案信息写入高速缓存;网关服务,根据预设的启动脚本和模板文件,将终端发起的通信连接负载至通信服务的POD副本上;其中,启动脚本中配置了网关服务的Kubernetes Service对象与通信服务的Kubernetes Service对象之间的端口映射,模板文件中配置了负载均衡算法;通信服务,启动多个POD副本;通过网关服务实现与终端之间的通信连接,为通信连接的服务端;解析通信连接的源端IP和端口信息,采用高速缓存中的档案信息对源端IP和端口信息进行校验,若校验成功,将终端上传的配电物联数据转发至配电云主站。2.根据权利要求1所述的一种基于Kubernetes的配电物联数据采集系统,其特征在于,所述基于Kubernetes的配电物联数据采集系统部署在Kubernetes集群上,终端档案管理服务通过Kubernetes的Ingress对象对外提供服务,Ingress由Kubernetes的nginx

ingress组件实现。3.根据权利要求1所述的一种基于Kubernetes的配电物联数据采集系统,其特征在于,网关服务由Kubernetes的nginx

ingress组件实现;在nginx

ingress组件的启动脚本中配置网关服务的Kubernetes Service对象与通信服务的Kubernetes Service对象之间的端口映射,包括:在启动脚本中找到名称为tcp

serivces的Configmap,添加配置port:<namespace/servicename>:<serviceport>::[PROXY];其中,port为网关服务的Kubernetes Service对象端口,namespace为通信服务的Kubernetes Service对象的命名空间名称,servicename为通信服务的Kubernetes Service对象名称,serviceport为通信服务的Ku...

【专利技术属性】
技术研发人员:陈凯旋吕非孙云枫范迎宗伟康乔柱何鸣一候继鑫王立旭周福陶定元张艳张名扬胡振洲王文彬吴子栋
申请(专利权)人:国电南瑞科技股份有限公司
类型:发明
国别省市:

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

1