一种嵌入式车载容器云平台和一种电子设备的制作方法

文档序号:35375717发布日期:2023-09-08 15:47阅读:62来源:国知局
一种嵌入式车载容器云平台和一种电子设备的制作方法

本发明涉及云计算,特别是涉及一种嵌入式车载容器云平台和一种电子设备。


背景技术:

1、嵌入式车载容器云平台主要应用于高铁、地铁、列车、公交等轨道交通设备,利用车载上的嵌入式板卡设备,构建pis(乘客信息系统)、pa(轨道交通广播系统)、cctv(车载多谋体系统)、受电弓视频监控等车载信息化系统。嵌入式车载设备考虑到列车空间与散热,通常采用低功耗、小体积的嵌入式板卡,导致嵌入式设备的硬件资源非常紧缺。并且在车载环境中,嵌入式设备经常会出现异常掉电、外部网络不稳定的情况,导致数据未能及时迁移而遗失。

2、现有技术中,存在以下两种方案:

3、(1)基于kubeedge的边缘节点纳管方案。参照图1,是基于kubeedge的边缘节点纳管架构图。kubeedge是一个开源系统,用于将容器化应用程序编排功能扩展到edge的主机。它基于kubernetes构建,并为网络应用程序提供基础架构支持。云和边缘之间的部署和元数据同步。在嵌入式车载场景下,在每节车厢的嵌入式设备上部署kubeedge,kubeedge作为worker节点加入到k8s中心云。

4、但该方案强依赖于k8s中心云的调度控制。每节车厢的kubeedge节点全部依赖于k8s进行统一的调度控制,一旦列车与k8s中心云之间的无线网络出现中断,整个列车的所有嵌入式节点之间会失去调度能力,如发送嵌入式设备异常掉电,其承载容器应用无法及时容灾迁移。

5、(2)基于k8s的边缘集群方案。参照图2,是基于k8s的边缘集群架构图。k8s全称kubernetes,是用于自动部署、扩展和管理容器化应用程序的开源系统,也是目前业界主流的开源容器云平台项目之一。在车载嵌入式云平台场景下,将k8s部署在嵌入式节点上。

6、但该方案中,k8s的资源占用较大难以在嵌入式节点上运行,这是因为k8s设计之初,主要面向大型应用的容器集群管理,主要是在服务器整机上运行,其采用的是go语言,而go语言的gc内存机制其内存占用率较大、etcd分布式数据库的内存、cpu占用底噪较大,因此k8s在小型嵌入式设备上难以部署。


技术实现思路

1、鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种嵌入式车载容器云平台和一种电子设备。

2、本发明实施例公开了一种嵌入式车载容器云平台,所述嵌入式车载容器云平台包括控制层、执行层、数据层;

3、所述控制层包括云控制器;所述云控制器用于接收容器创建请求并调度节点控制器以处理所述容器创建请求;所述云控制器包括主云控制器和备用云控制器;

4、所述执行层包括至少一个节点控制器;所述节点控制器按照车厢嵌入式节点分布;所述节点控制器用于处理所述云控制器发送的容器创建请求;

5、所述数据层包括至少一个kv数据库和至少一个同步模块;所述kv数据库按照车厢嵌入式节点分布,与按照所述车厢嵌入式节点分布的节点控制器一一对应;所述kv数据库用于存储容器数据;所述同步模块用于同步所述kv数据库之间的容器数据。

6、可选地,所述云控制器包括web控制台组件、api组件、身份认证组件、调度控制组件;

7、所述web控制台组件提供web界面用于接收用户在浏览器的操作,生成所述容器创建请求并发送至所述身份认证组件;

8、所述api组件提供api接口用于接收应用的api调用请求,生成所述容器创建请求并发送至所述身份认证组件;

9、所述身份认证组件用于对所述容器创建请求进行合法性校验,并在通过合法性校验的情况下将所述容器创建请求发送至所述调度控制组件;

10、所述调度控制组件用于处理所述容器创建请求,并将处理结果返回给所述用户或所述应用。

11、可选地,所述调度控制组件用于根据所述容器创建请求中记载的调度策略确定目标节点控制器,调度所述目标节点控制器处理所述容器创建请求。

12、可选地,所述节点控制器包括api组件、容器控制组件、存储控制组件、网络控制组件、监控上报组件;

13、所述api组件用于接收所述云控制器发送的所述容器创建请求时,对所述容器创建请求进行合法性校验,并在通过合法性校验的情况下将所述容器创建请求下发到所述容器控制组件、所述存储控制组件、网络控制组件进行处理;

14、所述容器控制组件用于接收所述api组件下发的所述容器创建请求,根据所述容器创建请求创建所述容器创建请求对应的容器实例;

15、所述存储控制组件用于从存储系统中寻找固定容量的存储空间作为容器实例的逻辑存储卷,并执行存储卷的创建;

16、所述网络控制组件用于根据节点以及云平台的组网信息,分配未被使用或自定义的ip地址,判断ip地址的可用性,并执行虚拟网卡的创建;

17、所述监控上报组件作为节点控制器的守护进程运行,以多线程并行方式监控主机上的网络资源、计算资源、存储资源的情况,将监控信息缓存到所述kv数据库,并在网络可用的情况下上报至所述云控制器,以协助所述云控制器判断所述容器创建请求的分发与调度。

18、可选地,所述节点控制器具体用于:

19、收集创建所述容器所需的存储资源信息、网络资源信息、计算资源信息;

20、根据所述存储资源信息,将主机上的可用存储资源格式化生成一个或者多个存储卷;

21、根据所述网络资源信息,在主机上创建虚拟网卡,将虚拟网卡加入到所述车厢嵌入式节点的虚拟网桥上;

22、根据所述计算资源信息,创建容器配置文件;

23、基于所述容器配置文件,执行docker命令创建并运行容器实例。

24、可选地,所述节点控制器监控所述容器实例的存活状态并将所述容器实例的存活状态上报至所述云控制器,以使所述云控制器在所述容器实例宕机后重新调度所述节点控制器创建新的容器实例。

25、可选地,所述云控制器与所述节点控制器通过通用服务器gen_server通讯连接;所述节点控制器之间没有网络通讯。

26、可选地,所述主控制器所在的嵌入式节点和所述备用控制器所在的嵌入式节点通过独立的心跳线连接。

27、可选地,所述主控制器和所述备用控制器分别部署在相邻编号的两节车厢。

28、本发明实施例还提供一种电子设备,所述电子设备包含本发明实施例所述的嵌入式车载容器云平台。

29、本发明实施例包括以下优点:

30、通过本发明实施例的嵌入式车载容器云平台,嵌入式车载容器云平台包括控制层、执行层、数据层;控制层包括云控制器,云控制器用于接收容器创建请求并调度节点控制器以处理容器创建请求,云控制器包括主云控制器和备用云控制器;执行层包括至少一个节点控制器,节点控制器按照车厢嵌入式节点分布,节点控制器用于处理云控制器发送的容器创建请求;数据层包括至少一个kv数据库和至少一个同步模块,kv数据库按照车厢嵌入式节点分布,与按照车厢嵌入式节点分布的节点控制器一一对应;kv数据库用于存储容器数据;同步模块用于同步kv数据库之间的容器数据。实现嵌入式轻量化、恶劣供电环境下的高可用、离线或弱网的车载节点自治管理等需求。

31、此外,本发明的嵌入式车载容器云平台还可以达到以下技术效果:

32、1)通过erlang语言编写如云控制器、节点控制器等核心部件代码,使用容器作为虚拟服务的基础,为云平台提供高容错、分布式、轻量化等重要特性,满足了云平台下沉到嵌入式设备的需求。

33、2)云平台通过简洁的二层架构实现,裁剪传统云平台的网络通讯处理逻辑,有效减少云平台在网络不稳定等情况下进行调度、监控等操作的无效性。

34、3)嵌入式车载容器云平台提供弹性容器处理机制,快速监测以及响应,在节点宕机、断网等情况下,失联节点上的实例瞬时迁移到在线节点,为应用服务提供持续服务的基础,解决了车载高机动性的工作环境下应用服务不具备持续性的问题。

35、4)分布式部署方式,将云平台的数据库、节点控制器按列车车厢嵌入式节点分布,从部署结构提升嵌入式容器云平台的整体高可用能力,在网络大面积中断的情况,节点控制器仍然可以通过缓存管理信息维持云平台的基础服务,防止因为管理信息无法从云控制器获取而导致的云平台全面崩溃。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1