自动化部署网关系统的方法、装置及系统
技术领域
本申请涉及互联网技术领域,尤其涉及自动升级网关系统的方法、装置及系统。
背景技术
在全球工业互联网或工业4.0的大趋势下,工厂迫切的需要数据的互联互通,以达到提质增效、智慧、柔性生产的目的,但工业设备的品类繁多,设备供应商之间又各自为政,导致工业通信协议琳琅满目,让数据的互联互通变的异常困难。
因此以数据采集和协议转换的工业网关的应用越来越广泛。由于工业通信协议的繁杂,以及其数据规模和频率都远远大于互联网数据规模,所以为了适应大型工厂应用场景,网关系统的复杂度也在不断攀升,这增加工程人员或用户的部署难度,工程人员或用户必须仔细阅读手册,进行网关系统的安装部署、再根据操作系统配置调试很多参数,才能投入使用。
在网关系统的使用过程中又常常会因为新增设备的通信协议无法接入而需要网关系统供应商的定制开发,获得定制补丁后的升级工作也需要由工程人员或用户来安装部署,其过程较为繁琐、效率较低。
发明内容
鉴于此,本申请提供一种自动升级网关系统的方法、装置及系统,可以自动化来部署网关系统,简单方便部署网关系统的同时提高效率。
为了实现上述目的,本申请提供了下述技术特征:
一种自动升级网关系统的方法,包括:
利用本地网关系统容器的远程应用程序接口检测公有仓库服务器是否有网关系统升级镜像;
若有,则通过所述应用程序接口从所述公有仓库服务器下载所述网关系统升级镜像;
存储并使用所述网关系统升级镜像。
可选的,还包括:
基于所述远程应用程序接口,对所述公有仓库服务器执行周期性检测操作;
判断所述公有仓库服务器是否具有最新网关系统升级镜像;
在所述公有仓库服务器具有最新网关系统升级镜像的情况下,则利用本地网关系统容器的远程应用程序接口从所述公有仓库服务器获取所述最新有网关系统升级镜像;
利用所述最新网关系统升级镜像更新所述已有网关系统升级镜像,存储并使用所述最新网关系统升级镜像。
可选的,所述判断所述公有仓库服务器是否具有最新网关系统升级镜像包括:
从所述公有仓库服务器获取最新网关系统升级镜像的第一标识码;
调用本地网关系统容器的属性接口,获取已有网关系统升级镜像的第二标识码;
比较第一标识码和所述第二标志码是否一致;
若两者不一致,则确定所述公有仓库服务器具有最新网关系统升级镜像;
若两者一致,则确定所述公有仓库服务器不具有最新网关系统升级镜像。
可选的,还包括:
预先安装本地网关系统容器并连接互联网。
一种自动升级网关系统的装置,包括:
检测单元,用于利用本地网关系统容器的远程应用程序接口检测公有仓库服务器是否有网关系统升级镜像;
下载单元,用于若有,则通过所述应用程序接口从所述公有仓库服务器下载所述网关系统升级镜像;
存储并使用单元,用于存储并使用所述网关系统升级镜像。
可选的,所述检测单元,还用于基于所述远程应用程序接口,对所述公有仓库服务器执行周期性检测操作;
自动升级网关系统的装置还包括判断所述公有仓库服务器是否具有最新网关系统升级镜像;
所述下载单元,还用于在所述公有仓库服务器具有最新网关系统升级镜像的情况下,则利用本地网关系统容器的远程应用程序接口从所述公有仓库服务器获取所述最新有网关系统升级镜像;
自动升级网关系统的装置还包括:更新单元,用于利用所述最新网关系统升级镜像更新所述已有网关系统升级镜像;
所述存储并使用单元,用于存储并使用所述最新网关系统升级镜像。
可选的,所述判断单元包括:
第一获取单元,用于从所述公有仓库服务器获取最新网关系统升级镜像的第一标识码;
第二调用本地网关系统容器的属性接口,获取已有网关系统升级镜像的第二标识码;
比较单元,用于比较第一标识码和所述第二标志码是否一致;
确定单元,用于若两者不一致,则确定所述公有仓库服务器具有最新网关系统升级镜像;若两者一致,则确定所述公有仓库服务器不具有最新网关系统升级镜像。
可选的,还包括:
预操作单元,用于预先安装本地网关系统容器并连接互联网。
一种自动升级网关系统的系统,包括:
第三方终端,用于生成网关系统升级镜像,并上传到私有仓库服务器;
私有仓库服务器,用于接收所述网关系统升级镜像,并在确认所述网关系统升级镜像通过检测的情况下,上传所述网关系统升级镜像到公有仓库服务器;
公有仓库服务器,用于存储所述网关系统升级镜像;
网关终端,用于利用本地网关系统容器的远程应用程序接口检测公有仓库服务器是否有网关系统升级镜像;若有,则通过所述应用程序接口从所述公有仓库服务器下载所述网关系统升级镜像;存储并使用所述网关系统升级镜像。
可选的,第三方终端,还用于生成最新网关系统升级镜像,并上传到私有仓库服务器;
私有仓库服务器,还用于接收所述最新网关系统升级镜像,并在确认所述最新网关系统升级镜像通过检测的情况下,上传所述最新网关系统升级镜像到公有仓库服务器;
公有仓库服务器,还用于存储所述最新网关系统升级镜像;
网关终端,还用于基于所述远程应用程序接口,对所述公有仓库服务器执行周期性检测操作;判断所述公有仓库服务器是否具有最新网关系统升级镜像;在所述公有仓库服务器具有最新网关系统升级镜像的情况下,则利用本地网关系统容器的远程应用程序接口从所述公有仓库服务器获取所述最新有网关系统升级镜像;利用所述最新网关系统升级镜像更新所述已有网关系统升级镜像,存储并使用所述最新网关系统升级镜像。
通过以上技术手段,可以实现以下有益效果:
本申请中仅仅有用户自身开发完成不同版本的网关系统升级镜像即可,后续关于网关系统的升级,完全由自动化部署工具来自动化实现网关系统的部署和升级,整个部署过程和升级过程非常简单快捷,大大提高了网关系统的升级效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种自动升级网关系统的结构示意图;
图2为本申请实施例公开的一种自动升级网关方法实施例一的流程图;
图3为本申请实施例公开的一种自动升级网关方法实施例二的流程图;
图4为本申请实施例公开的一种自动升级网关方法实施例三的流程图;
图5为本申请实施例公开的一种自动升级网关装置结构流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本发明的目的是为了简化网关系统的部署、维护、升级工作,降低用户在部署、维护、升级过程中出错的概率。用户仅需要关注网关系统升级镜像,不必关注网关系统的工作过程,由网关系统自动来实现网关系统的部署和升级操作,从而实现。本发明适用于物联网的各类数据采集网关系统部署及升级方案。
参见图1,提供了一种自动升级系统,包括:
第三方终端100;
与第三方终端100相连的私有仓库服务器200;
与私有仓库服务器200相连的公有仓库服务器300;
与公有仓库服务器300相连的网关系统400。
参见图2,本申请提供了一种自动升级网关系统的方法的实施例一,应用于第三方终端100、私有仓库服务器200和公有仓库服务器300,以用于实现在公有仓库中上传网关系统升级镜像的目的。
步骤S201:第三方终端提交网关系统升级镜像到私有仓库服务器。
工程人员于第三方终端上开发网关系统的补丁,并在补丁开发完成后对补丁进行检测,并在检测通过后向第三方终端发送提交指令。可以理解的是,补丁也即网关系统升级镜像。第三方终端提交网关系统升级镜像到私有仓库服务器。
步骤S202:私有仓库服务器在确认所述网关系统升级镜像通过检测的情况下,上传所述网关系统升级镜像到公有仓库服务器。
私有仓库服务器会对网关系统升级镜像进行进一步检测,并在网关系统升级镜像通过检测确认网关系统升级镜像没有病毒也没有被攻击缺陷等问题后,上传所述网关系统升级镜像到公有仓库服务器。
可以理解的是,私有仓库服务器于第三方终端处于同一局域网内,私有仓库服务器为局域网内的服务器。为了便于网关系统部署和升级,将网关系统升级镜像上传至公有仓库服务器。
步骤S203:公有仓库服务器存储所述网关系统升级镜像。
公有仓库服务器相当于互联网,只要网关系统升级镜像接入互联网,网关系统在不同时刻不同位置均可及时感知到网关系统升级镜像的发布,触发网关系统的自动升级部署。
可以理解的是,在网关系统内部发生变化后,第三方终端可以再次生成补丁也即最新网关系统升级镜像,并按照步骤S201~S203的方式重新上传至公有仓库服务器,以供公有仓库服务器存储最新网关系统升级镜像。
为了区分不同版本的网关系统升级镜像,采用摘要码(digest码)来区分,不同版本的网关系统升级镜像的摘要码不一致。
参见图3,本申请提供了一种自动升级网关系统的方法实施例二,应用于网关系统400,以用于实现网关系统的自动化部署,也即网关系统初始使用本方案的过程。
步骤S301:网关系统安装有网关系统容器,网关系统容器内安装自动化部署工具。
网关系统会安装网关系统容器(Docker),以用于运行网关系统升级镜像。由于网关系统容器安装于网关系统本地,所以也称为本地网关系统容器。
本实施例中网关系统会安装自动化部署工具,后续会采用自动化部署工具来对网关系统进行自动化部署和自动化升级。
步骤S302:网关系统启动自动化部署工具。
网关系统接收自动化部署工具的启动指令后(用户双击自动化工具的图标可以启动自动化部署工具),启动自动化部署工具,自动化部署工具与本地网关系统容器建立通信链路。
步骤S303:自动化部署工具利用本地网关系统容器的远程应用程序接口检测公有仓库服务器是否有网关系统升级镜像。
自动化部署工具可以调用远程应用程序接口(Docker Remote API)检测公有仓库服务器是否有网关系统升级镜像。
步骤S304:若有,则通过所述应用程序接口从所述公有仓库服务器下载所述网关系统升级镜像。
自动化工具在确认公有仓库服务器具有网关系统升级镜像后,通过远程应用程序接口(Docker Remote API)从所述公有仓库服务器下载所述网关系统升级镜像。
步骤S305:存储并使用所述网关系统升级镜像。
在网关系统本地无网关系统升级镜像的情况下,可以直接存储并于本地网关系统容器中运行网关系统升级镜像,以用于自动化部署网关系统的网络协议,以便网关系统可以正常工作。
自动部署工具能够利用Docker容器启动命令在本地无网关系统升级镜像会自动下载的特性,自动下载到网关系统升级镜像到本地。
参见图4,本申请提供了一种自动升级网关系统的方法实施例三,应用于网关系统400,以用于实现网关系统的自动化升级,也即网关系统非初始使用本方案的过程。
步骤S401:基于所述远程应用程序接口,对所述公有仓库服务器执行周期性检测操作。
步骤S402:判断所述公有仓库服务器是否具有最新网关系统升级镜像。
本步骤可以包括以下操作:
从所述公有仓库服务器获取最新网关系统升级镜像的第一标识码;调用本地网关系统容器的属性接口,获取已有网关系统升级镜像的第二标识码;比较第一标识码和所述第二标志码是否一致;若两者不一致,则确定所述公有仓库服务器具有最新网关系统升级镜像;若两者一致,则确定所述公有仓库服务器不具有最新网关系统升级镜像。
步骤S403:在所述公有仓库服务器具有最新网关系统升级镜像的情况下,则利用本地网关系统容器的远程应用程序接口从所述公有仓库服务器获取所述最新有网关系统升级镜像。
步骤S404:利用所述最新网关系统升级镜像更新所述已有网关系统升级镜像,存储并使用所述最新网关系统升级镜像。
本申请中自动化部署工具可以实现网关系统升级镜像的下载和启动,本申请可以利用远程应用程序接口(Docker Remote API)的镜像管理功能,开发一种从公有仓库服务器下载网关系统升级镜像到本地,并利用本地网关系统容器启动容器的工具。
通过上述技术特征可以得知本申请具有下述有益效果:
本申请中仅仅有用户自身开发完成不同版本的网关系统升级镜像即可,后续关于网关系统的升级,完全由自动化部署工具来自动化实现网关系统的部署和升级,整个部署过程和升级过程非常简单快捷,大大提高了网关系统的升级效率。
参见图5,本申请提供了一种自动升级网关系统的装置,包括:
检测单元51,用于利用本地网关系统容器的远程应用程序接口检测公有仓库服务器是否有网关系统升级镜像;
下载单元52,用于若有,则通过所述应用程序接口从所述公有仓库服务器下载所述网关系统升级镜像;
存储并使用单元53,用于存储并使用所述网关系统升级镜像。
其中,所述检测单元,还用于基于所述远程应用程序接口,对所述公有仓库服务器执行周期性检测操作;
自动升级网关系统的装置还包括判断所述公有仓库服务器是否具有最新网关系统升级镜像;
所述下载单元,还用于在所述公有仓库服务器具有最新网关系统升级镜像的情况下,则利用本地网关系统容器的远程应用程序接口从所述公有仓库服务器获取所述最新有网关系统升级镜像;
自动升级网关系统的装置还包括:更新单元,用于利用所述最新网关系统升级镜像更新所述已有网关系统升级镜像;
所述存储并使用单元,用于存储并使用所述最新网关系统升级镜像。
其中,所述判断单元包括:
第一获取单元,用于从所述公有仓库服务器获取最新网关系统升级镜像的第一标识码;
第二调用本地网关系统容器的属性接口,获取已有网关系统升级镜像的第二标识码;
比较单元,用于比较第一标识码和所述第二标志码是否一致;
确定单元,用于若两者不一致,则确定所述公有仓库服务器具有最新网关系统升级镜像;若两者一致,则确定所述公有仓库服务器不具有最新网关系统升级镜像。
自动升级网关系统的装置还包括:预操作单元,用于预先安装本地网关系统容器并连接互联网。
参见图1,本申请提供了一种自动升级网关系统的系统,包括:
第三方终端,用于生成网关系统升级镜像,并上传到私有仓库服务器;
私有仓库服务器,用于接收所述网关系统升级镜像,并在确认所述网关系统升级镜像通过检测的情况下,上传所述网关系统升级镜像到公有仓库服务器;
公有仓库服务器,用于存储所述网关系统升级镜像;
网关终端,用于利用本地网关系统容器的远程应用程序接口检测公有仓库服务器是否有网关系统升级镜像;若有,则通过所述应用程序接口从所述公有仓库服务器下载所述网关系统升级镜像;存储并使用所述网关系统升级镜像。
根据本申请提供的一个实施例:
第三方终端,还用于生成最新网关系统升级镜像,并上传到私有仓库服务器;
私有仓库服务器,还用于接收所述最新网关系统升级镜像,并在确认所述最新网关系统升级镜像通过检测的情况下,上传所述最新网关系统升级镜像到公有仓库服务器;
公有仓库服务器,还用于存储所述最新网关系统升级镜像;
网关终端,还用于基于所述远程应用程序接口,对所述公有仓库服务器执行周期性检测操作;判断所述公有仓库服务器是否具有最新网关系统升级镜像;在所述公有仓库服务器具有最新网关系统升级镜像的情况下,则利用本地网关系统容器的远程应用程序接口从所述公有仓库服务器获取所述最新有网关系统升级镜像;利用所述最新网关系统升级镜像更新所述已有网关系统升级镜像,存储并使用所述最新网关系统升级镜像。
本实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。