CN110233904A - 设备更新方法、装置、系统、存储介质以及计算机设备 - Google Patents
设备更新方法、装置、系统、存储介质以及计算机设备 Download PDFInfo
- Publication number
- CN110233904A CN110233904A CN201910625654.6A CN201910625654A CN110233904A CN 110233904 A CN110233904 A CN 110233904A CN 201910625654 A CN201910625654 A CN 201910625654A CN 110233904 A CN110233904 A CN 110233904A
- Authority
- CN
- China
- Prior art keywords
- equipment
- network
- update
- current
- level
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种设备更新方法、装置、系统、存储介质以及计算机设备,所述方法包括:获取目标网络的更新文件,更新文件包括目标网络中网络层级对应的更新子文件,更新子文件包括多种设备属性对应的更新数据,从本地配置文件中获取目标网络的网络载体来源信息,根据网络载体来源信息,获取目标网络中网络层级上设备的当前设备属性,根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据,根据当前更新数据对网络层级上设备进行更新。该方案可以根据获取到目标网络中网络层级上设备的当前设备属性,对目标网络中设备进行更新,从而提高设备更新的准确性。
Description
技术领域
本申请涉及通信技术领域,具体涉及设备更新方法、装置、系统、存储介质以及计算机设备。
背景技术
CDN(内容分发网络,Content Delivery Network),是一种构建在网络之上的内容分发网络,可以依靠部署在各地的边缘节点,并通过中心平台的负载均衡、内容分发、调度等功能模块,使得用户可以就近获取所需要的内容,从而降低了网络的堵塞,提高了用户访问的响应速度以及命中率。由于内容分发网络自身的诸多优点,因此可以采取设备更新的方式部署内容分发网络。但是现在通常使用通用的方法进行设备更新,使得设备更新的准确性较低。
发明内容
本申请实施例提供一种设备更新方法、装置、系统、存储介质以及计算机设备,可以根据获取到目标网络中网络层级上设备的当前设备属性,对目标网络中设备进行更新,从而提高设备更新的准确性。
本申请实施例提供一种设备更新方法,包括:
获取目标网络的更新文件,所述更新文件包括所述目标网络中网络层级对应的更新子文件,所述更新子文件包括多种设备属性对应的更新数据;
从本地配置文件中获取所述目标网络的网络载体来源信息;
根据所述网络载体来源信息,获取所述目标网络中所述网络层级上设备的当前设备属性;
根据所述当前设备属性从所述更新文件中查询所述网络层级上设备对应的当前更新数据;
根据所述当前更新数据对所述网络层级上设备进行更新。
相应的,本申请实施例还提供一种设备更新装置,包括:
文件获取模块,用于获取目标网络的更新文件,所述更新文件包括所述目标网络中网络层级对应的更新子文件,所述更新子文件包括多种设备属性对应的更新数据;
信息获取模块,用于从本地配置文件中获取所述目标网络的网络载体来源信息;
属性获取模块,用于根据所述网络载体来源信息,获取所述目标网络中所述网络层级上设备的当前设备属性;
查询模块,用于根据所述当前设备属性从所述更新文件中查询所述网络层级上设备对应的当前更新数据;
更新模块,用于根据所述当前更新数据对所述网络层级上设备进行更新。
可选的,在一些实施例中,所述更新模块可以包括查询子模块、确定子模块和更新子单元,如下:
所述查询子模块,可以用于查询所述当前更新数据对应的当前更新类型指示数据;
所述确定子模块,可以用于根据所述当前更新类型指示数据确定当前更新类型;
所述更新子模块,可以用于根据所述当前更新类型对所述网络层级上设备进行更新。
可选的,在一些实施例中,所述更新子模块可以包括第一更新子模块、类型获取子模块和第二更新子模块,如下:
所述第一更新子模块,可以用于当所述当前更新类型为全量更新类型时,对所述网络层级上设备进行重启更新;
所述类型获取子模块,可以用于当所述当前更新类型为增量更新类型时,获取所述更新类型指示数据的更新内容数据类型;
所述第二更新子模块,可以用于根据所述更新内容数据类型对所述网络层级上设备进行更新。
所述第二更新子模块,可以用于当所述更新内容数据类型包括逻辑更新数据类型时,对所述网络层级上设备进行重启更新,当所述更新内容数据类型不包括逻辑更新数据类型,且包括配置更新数据类型时,对所述网络层级上设备进行加载更新。
所述查询模块,可以用于根据所述目标网络中设备对应的网络层级,从所述更新文件中查询所述网络层级上设备对应的当前更新子文件,根据所述当前设备属性,从所述当前更新子文件中查询所述网络层级上设备对应的当前更新数据。
所述属性获取模块,可以用于获取网络载体来源信息与所述网络层级上设备对应的设备属性之间的映射关系,根据所述映射关系,获取所述目标网络的网络载体来源信息对应的所述目标网络中网络层级上设备的当前设备属性。
可选的,在一些实施例中,所述设备更新装置还可以包括设备数量确定模块和属性更新模块,如下:
所述设备数量确定模块,可以用于当所述更新文件中包括预设网络层级对应的更新子文件时,确定所述目标网络中所述预设网络层级上设备的设备数量;
所述属性更新模块,可以用于根据所述设备数量对所述预设网络层级上设备进行更新。
所述设备数量确定模块,可以用于当所述更新文件中包括预设网络层级对应的更新子文件时,确定预设网络层级上待检测设备的待检测鉴权标识,当检测到所述目标网络中设备对应的设备鉴权标识包括所述待检测鉴权标识时,根据所述待检测鉴权标识确定所述目标网络中所述预设网络层级上设备的设备数量,当检测到所述目标网络中设备对应的设备鉴权标识不包括所述待检测鉴权标识时,返回执行所述确定预设网络层级上待检测设备的待检测鉴权标识的步骤,直至确定所述目标网络中所述预设网络层级上设备的设备数量。
此外,本申请实施例还提供一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例提供的任一种设备更新方法中的步骤。
此外,本申请实施例还提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行本申请实施例提供的任一种设备更新方法中的步骤。
此外,本申请实施例还提供一种设备更新系统,所述设备更新系统包括部署在列车上的内容分发网络,所述内容分发网络包括位于不同网络层级上的第一服务器和第二服务器,所述第一服务器部署在列车的每个车厢上。其中,第二服务器,用于获取内容分发网络的更新文件,所述更新文件包括所述内容分发网络中网络层级对应的更新子文件,所述更新子文件包括多种设备属性对应的更新数据,从本地配置文件中获取所述内容分发网络的网络载体来源信息,根据所述网络载体来源信息,获取所述内容分发网络中所述网络层级上设备对应的当前设备属性,根据所述当前设备属性从所述更新文件中查询目标服务器对应的当前更新数据,其中所述目标服务器包括第一服务器和/或第二服务器,根据所述当前更新数据对所述目标服务器进行更新。
本申请实施例可以获取目标网络的更新文件,更新文件包括目标网络中网络层级对应的更新子文件,更新子文件包括多种设备属性对应的更新数据,从本地配置文件中获取目标网络的网络载体来源信息,根据网络载体来源信息,获取目标网络中网络层级上设备的当前设备属性,根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据,根据当前更新数据对网络层级上设备进行更新。该方案可以根据获取到目标网络中网络层级上设备的当前设备属性,对目标网络中设备进行更新,从而提高设备更新的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的设备更新系统的场景示意图;
图2是本申请实施例提供的设备更新方法的第一流程图;
图3是本申请实施例提供的设备更新方法的第二流程图;
图4是本申请实施例提供的设备更新流程示意图;
图5是本申请实施例提供的获取设备数量的流程示意图;
图6是本申请实施例提供的获取设备属性的流程示意图;
图7是本申请实施例提供的更新文件中的目录结构;
图8本申请实施例提供的对中心服务器进行更新的流程图;
图9本申请实施例提供的对车厢服务器进行更新的流程图;
图10是本申请实施例提供的列车上服务器的部署情况示意图;
图11是本申请实施例提供的设备更新装置的结构示意图;
图12是本申请实施例提供的网络设备的结构示意图。
具体实施方式
请参照图式,其中相同的组件符号代表相同的组件,本申请的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本申请具体实施例,其不应被视为限制本申请未在此详述的其它具体实施例。
在以下的说明中,本申请的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本申请原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
本文所使用的术语“模块”可看作为在该运算系统上执行的软件对象。本文所述的不同组件、模块、引擎及服务可看作为在该运算系统上的实施对象。而本文所述的装置及方法可以以软件的方式进行实施,当然也可在硬件上进行实施,均在本申请保护范围之内。
本申请中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或模块的过程、方法、系统、产品或设备没有限定于已列出的步骤或模块,而是某些实施例还包括没有列出的步骤或模块,或某些实施例还包括对于这些过程、方法、产品或设备固有的其它步骤或模块。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例提供一种设备更新方法,该设备更新方法的执行主体可以是本申请实施例提供的设备更新装置,或者集成了该设备更新装置的网络设备,其中该设备更新装置可以采用硬件或者软件的方式实现。其中,网络设备可以是智能手机、平板电脑、掌上电脑、笔记本电脑、或者台式电脑等设备。网络设备包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或者多个服务器构成的云。
请参阅图1,图1为本申请实施例提供的设备更新方法的应用场景示意图,以设备更新装置集成在网络设备中为例,网络设备可以获取目标网络的更新文件,更新文件包括目标网络中网络层级对应的更新子文件,更新子文件包括多种设备属性对应的更新数据,从本地配置文件中获取目标网络的网络载体来源信息,根据网络载体来源信息,获取目标网络中网络层级上设备的当前设备属性,根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据,根据当前更新数据对网络层级上设备进行更新。
请参阅图2,图2为本申请实施例提供的设备更新方法的流程示意图。本申请实施例提供的设备更新方法的具体流程可以如下:
201、获取目标网络的更新文件。
其中,目标网络可以为需要进行部署的网络,可以通过对网络部署载体中原本存在的多个设备进行更新,得到多个经过设备更新后的设备,这些更新后的设备可以完成目标网络的架构,从而达到部署目标网络的目的。比如,该目标网络可以为内容分发网络,目标网络部署载体可以为列车,可以通过将列车原本存在的多个服务器进行设备更新后,使得更新后的服务器起到内容分发网络中缓存服务器的作用,从而实现在列车中部署内容分发网络。其中,目标网络可以包括多个网络层级,比如,目标网络可以为内容分发网络,该内容分发网络中可以包括位于不同网络层级上的中心服务器和车厢服务器。
其中,内容分发网络可以通过避开互联网上有可能影响数据传输速度和稳定性的部分,从而更快、更稳定地进行内容传输。通过在网络各处设置缓存节点,并构成在现有互联网基础上的智能虚拟网络,内容分发网络能够实时地根据获取到的综合信息将用户请求导向距离用户最近的缓存节点上,该综合信息可以包括网络流量、各节点的连接和负载情况、以及与用户之间的距离和响应时间等。用户即可就近获取所需内容,从而解决了互联网拥挤堵塞的现象,提高用户访问网站时的响应速度。内容分发网络可以包括源站、以及若干缓存节点。源站可以为集成了整体数据的业务服务器。在若干缓存节点中可以进行多级缓存,比如多级缓存还可以包括一级缓存、二级缓存等。
其中,网络部署载体可以为通过设备更新进行网络部署的多个设备所在的载体,比如,当需要在列车上部署内容分发网络时,列车即可以作为网络部署载体。
其中,更新文件可以为进行目标网络部署时,指导目标网络部署载体中设备进行设备更新的文件。比如,该更新文件中可以包括目标网络中网络层级对应的更新子文件,更新子文件中可以包括多种设备属性对应的更新数据。其中,该更新文件中可以包括多个文件层级,比如,当需要在列车上部署内容分发网络时,可以获取内容分发网络中不同网络层级对应的中心服务器和车厢服务器,在更新文件中,中心服务器对应的更新子文件和车厢服务器对应的更新子文件可以位于同一个文件层级,可以通过“L1”表示车厢服务器对应的更新子文件,通过“L2”表示中心服务器对应的更新子文件。车厢服务器对应的更新子文件中可以包括多种车厢服务器的设备属性对应的更新数据,中心服务器对应的更新子文件中可以包括多种中心服务器的设备属性对应的更新数据,多种设备属性对应的更新数据可以位于同一个文件层级,等等。
其中,网络层级可以根据网络内设备之间的关系对网络进行的层级划分。比如,目标网络可以为部署在列车上的内容分发网络,该内容分发网络中可以包括位于不同网络层级上的中心服务器和车厢服务器。
其中,设备属性可以为表征设备的软件以及硬件情况的属性信息,比如,服务器的CPU可以分为x86-32、x86-64、arm32小端、arm32大端、arm64小端、arm64大端、mips32小端、mips32大端、mips64小端、mips64大端等属性信息。服务器的操作系统可以分为openwrt、centos(Community Enterprise Operating System,社区企业操作系统)等属性信息。而对于一个服务器而言,同一服务器的设备属性包括唯一的CPU属性信息、以及唯一的操作系统属性信息,如对于列车A上的中心服务器而言,该中心服务器的设备属性可以为基于x86-64小端CPU的centos操作系统。
在实际应用中,可以获取目标网络的更新文件。比如,当需要在列车上部署内容分发网络时,研发人员可以获取列车上部署内容分发网络需要的更新文件,并对更新文件进行分类,将分类后的更新文件写入相应类别的目录下,使得更新文件包括多个文件层级,然后进行压缩打包,形成目录结构的更新文件压缩包,以便更新文件进行准确传输。研发人员制作好更新文件压缩包后,可以将其发送给运维人员,运维人员可以将获取到的更新文件压缩包上传至列车的中心服务器中,中心服务器可以对该更新文件压缩包进行解压,因此,中心服务器可以获取到解压后目标网络的更新文件。
在一实施例中,运维人员可以通过多种方式将更新文件压缩包上传至中心服务器中,比如,运维人员可以通过Linux系统的rz上传命令、Linux系统的scp远程文件拷贝命令、Linux系统的rsync文件备份命令、Linux系统的curl文件传输命令、Linux系统的wget文件下载命令等工具将更新文件压缩包上传至中心服务器中。
在一实施例中,更新文件中可以包括多个文件层级,该文件层级可以通过目录的形式进行表示,目录下包括该目录对应的数据,比如,如图7所示,当需要在列车上部署内容分发网络时,该更新文件中可以包括一级目录“package”、二级目录“L1”和“L2”、三级目录“arm32.big”“arm32.little”“arm64.little”“x86-64”等和四级目录“full”和“part”,其中,二级目录下的“L1”可以表示车厢服务器对应的更新子文件,“L2”可以表示中心服务器对应的更新子文件,三级目录下的“arm32.big”可以表示设备属性为arm32大端的车厢服务器对应的更新数据,四级目录下的“part”可以表示设备属性为arm32大端车厢服务器的更新数据中包括增量更新类型指示数据。
在一实施例中,该更新文件还可以根据实际需求,按照不同的vendor分开打包,从而减小单个压缩包的体积。
在一实施例中,本申请实施例可以通过对列车中多个服务器进行设备更新,以达到部署内容分发网络的目的。比如,列车中包括中心服务器和位于每节车厢的车厢服务器,可以通过设备更新,将车厢服务器作为内容分发网络中的一级缓存,将中心服务器作为内容分发网络中的二级缓存,因此车厢服务器可以称为第一服务器,中心服务器可以称为第二服务器。
其中,作为一级缓存的车厢服务器可以为对服务请求进行响应,并进行相应服务请求处理的服务器,比如,在本实施例中,通过对列车中车厢服务器进行更新,可以在列车上部署内容分发网络的一级缓存。当对列车进行内容分发网络部署完毕后,该车厢服务器可以为与用户直接发生联系的服务器,由于距离用户最近,因此可以执行为用户提供进入网络的通道、以及与其他服务器设备进行通讯的功能。
其中,作为二级缓存的中心服务器可以为内容分发网络中作为二级缓存的服务器,可以通过对中心服务器进行更新,在中心服务器中部署内容分发网络的二级缓存。当内容分发网络部署完毕后,该中心服务器可以为位于车厢服务器与源站服务器之间的缓存服务器,当用户访问车厢服务器未命中时,可以访问中心服务器,中心服务器如果命中则直接返回,如果没有命中则回源,然后返回给车厢服务器,同时中心服务器还可以将数据缓存一份。该中心服务器一方面可以收敛回源的请求,达到对源站服务器进行保护的目的,另一方面还可以做到就近回源,从而优化回源质量。
202、从本地配置文件中获取目标网络的网络载体来源信息。
其中,配置文件可以为根据实际需求,针对安装有服务器操作系统的设备配置相应设置、操作等的文件,从而实现业务活动需求。比如,在列车上部署内容分发网络时,配置文件可以放置在列车的中心服务器中,配置文件中可以包括列车的来源信息,通过配置文件可以获取列车生产厂商的来源信息。如,配置文件中可以包括通过字符表示的列车的出产厂商信息“zhongtiecheng”。
其中,网络载体来源信息可以为表征网络部署载体来源的信息,如当网络部署载体为列车时,该网络载体来源信息可以为列车的出产厂商信息。
在实际应用中,可以获取存储在中心服务器中的本地配置文件,该本地配置文件中可以包括列车的出产厂商信息,如“zhongtiecheng”,然后中心服务器即可获取到作为网络部署载体的列车的来源信息。比如,中心服务器获取到更新文件压缩包后,运维人员可以一键发布命令,中心服务器可以根据该一键发布的命令获取预先存储的本地配置文件,并获取本地配置文件中的网络载体来源信息。
203、根据网络载体来源信息,获取目标网络中网络层级上设备的当前设备属性。
在实际应用中,可以根据网络载体来源信息分别获取目标网络中网络层级上设备的当前设备属性,比如,当在列车中部署内容分发网络时,可以根据配置文件中的网络载体来源信息分别获取列车中车厢服务器的当前设备属性、以及中心服务器的当前设备属性。
在一实施例中,还可以根据网络载体来源信息与网络层级上设备对应的设备属性之间的映射关系来进行当前设备属性的获取,以提高设备属性获取的准确性。具体地,步骤“根据所述网络载体来源信息,获取所述目标网络中所述网络层级上设备的当前设备属性”,可以包括:
获取网络载体来源信息与所述网络层级上设备对应的设备属性之间的映射关系;
根据所述映射关系,获取所述目标网络的网络载体来源信息对应的所述目标网络中网络层级上设备的当前设备属性。
在实际应用中,获取网络载体来源信息与网络层级上设备对应的设备属性之间的映射关系,根据映射关系获取目标网络的网络载体来源信息对应的目标网络中网络层级上设备的当前设备属性。比如,由于每个公司仅生产一种设备类型的设备,因此,当网络载体来源信息表明该列车出厂于A公司时,可以根据映射关系,获取A公司对应设备的当前设备属性,即了解出厂于A公司的车厢服务器的当前设备类型为x86-64小端芯片的openwrt操作系统,中心服务器的当前设备属性为x86-64小端芯片的centos操作系统。
在实际应用中,比如,虽然中心服务器允许存在多种设备属性,但是在列车的生产环境下中心服务器仅存在一种设备属性。由于列车里中心服务器的设备属性都相同,因此可以确定中心服务器的当前设备属性为x86-64小端芯片的centos操作系统。
由于车厢服务器的设备属性与列车的出产厂商相关,不同公司车厢服务器的设备属性可能相同也可能不相同,如A公司车厢服务器CPU的设备属性为x86-64小端芯片,操作系统的设备属性为openwrt;B公司车厢服务器CPU的设备属性为arm64小端芯片,操作系统的设备属性为fsl;C公司车厢服务器CPU的设备属性为arm32小端芯片,操作系统的设备属性为openwrt;D公司车厢服务器CPU的设备属性为arm32小端芯片,操作系统的设备属性为openwrt等。因此,可以针对配置文件判断出列车来源于A公司,进而判断出中心服务器CPU的当前设备属性为86-64小端芯片,操作系统的当前设备属性为centos,车厢服务器CPU的当前设备属性为x86-64小端芯片,操作系统的当前设备属性为openwrt。
204、根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据。
在实际应用中,根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据。比如,当获取到列车中实际存在的车厢服务器的当前设备属性为x86-64小端芯片的openwrt操作系统,中心服务器的当前设备属性为x86-64小端芯片的centos操作系统。然后可以分别根据中心服务器的当前设备属性和车厢服务器的当前设备属性,从更新文件中查询与当前设备属性对应的更新数据。
在一实施例中,为了方便运维操作升级,更新子文件还可以包括多种设备属性对应的更新数据,因此,可以对更新文件中的多个文件层级,通过多级查询的方式进行更新数据的获取。具体地,步骤“根据所述当前设备属性从所述更新文件中查询所述网络层级上设备对应的当前更新数据”,可以包括:
根据所述目标网络中设备对应的网络层级,从所述更新文件中查询所述网络层级上设备对应的当前更新子文件;
根据所述当前设备属性,从所述当前更新子文件中查询所述网络层级上设备对应的当前更新数据。
在实际应用中,根据目标网络中设备对应的网络层级,从更新文件中查询网络层级上设备对应的当前更新子文件,根据当前设备属性,从当前更新子文件中查询网络层级上设备对应的当前更新数据。
其中,当在列车中部署内容分发网络时,可能仅需要对车厢服务器进行设备更新,或者仅需要对中心服务器进行设备更新,研发人员会根据实际需求,选择是否将车厢服务器对应的更新子文件、以及中心服务器对应的更新子文件都放置到更新文件中,因此,更新文件中可能仅包括待更新的车厢服务器对应的更新子文件,也可能仅包括待更新的中心服务器对应的更新子文件,还可能包括车厢服务器对应的更新子文件和中心服务器对应的更新子文件两者。
另外,为了方便运维操作升级,研发人员通常将多种设备属性对应的更新数据放置在更新子文件中,并通过设备属性子目录进行区分,因此,更新文件的网络层级对应的更新子文件中可能包括多种设备属性子目录对应的更新数据。
比如,如图7所示,更新文件可以包括一级目录“package”、二级目录“L1”和“L2”、三级目录“arm32.big”“arm32.little”“arm64.little”“x86-64”等和四级目录“full”和“part”。当根据本地配置文件获取到列车里车厢服务器的当前设备属性为arm32小端芯片的openwrt操作系统,中心服务器的当前设备属性为x86-64小端芯片的centos操作系统时,可以根据首先查询二级目录中是否包括“L1”和“L2”,当二级目录中包括“L1”和“L2”时,说明需要对车厢服务器和中心服务器进行更新;当二级目录中仅包括“L1”或者“L2”时,说明需要对车厢服务器和中心服务器中目录包括的一方进行更新;当二级目录中既不包括“L1”,也不包括“L2”时,可以将问题反应给研发人员,重新制作更新文件压缩包。
对二级目录查询完毕后,当查询到更新文件二级目录的“L1”和“L2”下都存放有更新子文件时,可以分别获取“L1”和“L2”对应的当前更新子文件。然后对“L1”对应的当前更新子文件中设备属性子目录进行查询,也就是对“L1”对应的三级目录进行查询,然后获取“arm32.little”对应的当前更新数据。并对“L2”对应的当前更新子文件中设备属性子目录进行查询,也就是对“L2”对应的三级目录进行查询,然后获取“x86-64”对应的当前更新数据。
在一实施例中,对更新文件进行查询时,还可能存在仅查询到部分更新子文件的情况,如查询到更新文件中二级目录仅包括“L1”,此时说明列车中仅有车厢服务器需要进行设备更新,而中心服务器不需要进行设备更新,因此,研发人员仅在更新文件中放置了车厢服务器对应的更新子文件,此时,可以获取“L1”对应的当前更新子文件,并继续进行当前设备属性的查询,获取不到“L1”对应的当前更新子文件时,可以不对中心服务器进行设备更新。
205、根据当前更新数据对网络层级上设备进行更新。
在实际应用中,当查询到与当前设备属性相同设备属性对应的当前更新数据时,可以根据当前设备属性对应的当前更新数据对网络层级上设备进行更新。比如,当在更新文件中获取到二级目录“L1”下三级目录“arm32.little”对应的当前更新数据,并且在更新文件中获取到二级目录“L2”下三级目录“x86-64”对应的当前更新数据时,此时目标服务器包括车厢服务器和中心服务器,可以根据二级目录“L1”下三级目录“arm32.little”对应的当前更新数据对车厢服务器进行设备更新,然后根据二级目录“L2”下三级目录“x86-64”对应的当前更新数据对中心服务器进行设备更新。
在一实施例中,若仅获取到“arm32.little”对应的更新数据,此时目标服务器仅包括车厢服务器,那么可以仅对车厢服务器进行设备更新,对中心服务器不进行设备更新操作。
在一实施例中,还可以根据当前更新数据中包括的更新类型指示数据对设备进行更新,从而提升了设备更新的准确性。具体地,步骤“根据所述当前更新数据对所述网络层级上设备进行更新”,可以包括:
查询所述当前更新数据对应的当前更新类型指示数据;
根据所述当前更新类型指示数据确定当前更新类型;
根据所述当前更新类型对所述网络层级上设备进行更新。
其中,更新类型指示数据可以为更新文件中与设备的更新类型相关的数据,比如,该更新类型指示数据可以为更新文件中第四级目录“full”和“part”对应的数据。
其中,更新类型可以为当根据更新类型指示数据对相应设备进行更新时,根据相应的更新方法对更新数据进行分类的类型,比如,当更新类型指示数据对应第四级目录为“full”时,说明此时“full”对应的设备属性目录下的更新数据的类型为全量包;当更新类型指示数据对应第四级目录为“part”时,说明此时“part”对应的设备属性目录下的更新数据的类型为增量包。
其中,当前更新类型为指示设备进行设备更新时所采用的更新方法。比如当前更新类型可以包括全量更新类型和增量更新类型。其中,增量更新是指在进行更新操作时,只更新需要改变的地方,不需要更新或者已经更新过的地方则不会重复更新。而全量更新是指在进行更新操作时,对所有能够进行更新的部分都进行更新。
在实际应用中,可以获取当前更新数据对应的当前更新类型指示数据,并根据当前更新类型指示数据确定当前更新类型,根据当前更新类型对所述网络层级上设备进行更新。比如,可以检测二级目录“L1”下三级目录“arm32.little”对应的当前更新数据,并且获取三级目录“arm32.little”下四级目录“full”对应的当前更新类型指示数据,并根据该当前更新类型指示数据判断出“arm32.little”对应的更新数据为全量包,进而推断出需要通过全量更新类型对应的全量更新方法对车厢服务器进行设备更新。然后对车厢服务器进行设备更新。
在一实施例中,为了提高设备更新的准确性,还可以根据当前更新类型确定出具体的更新方法。具体地,步骤“根据所述当前更新类型对所述网络层级上设备进行更新”,可以包括:
当所述当前更新类型为全量更新类型时,对所述网络层级上设备进行重启更新;
当所述当前更新类型为增量更新类型时,获取所述更新类型指示数据的更新内容数据类型;
根据所述更新内容数据类型对所述网络层级上设备进行更新。
其中,更新内容数据类型可以为根据更新类型指示数据中包括的数据内容,对更新数据进行分类得到的类型。比如,当更新类型指示数据中包括对设备软件逻辑进行更新的更新数据时,更新内容数据类型可以为逻辑更新数据类型;当更新类型指示数据中仅包括对设备配置进行更新的更新数据时,更新内容数据类型可以为配置更新数据类型。
在实际应用中,在当前更新类型为全量更新类型时,对网络层级上设备进行重启更新,在当前更新类型为增量更新类型时,获取更新类型指示数据的更新内容数据类型,根据更新内容数据类型对网络层级上设备进行更新。比如,当检测到二级目录“L1”下三级目录“arm32.little”对应的四级目录为“full”时,可以确定对车厢服务器进行设备更新的当前更新类型为全量更新类型,然后可以对车厢服务器进行重启更新,即restart。当检测到二级目录“L1”下三级目录“arm32.little”对应的四级目录为“part”时,可以确定对车厢服务器进行设备更新的当前更新类型为增量更新类型,此时可以获取四级目录“part”对应的更新类型指示数据,并判定该更新类型指示数据包括的更新内容数据类型,然后根据更新内容数据类型对网络层级上设备进行更新。
在一实施例中,还可以根据更新类型指示数据中包括的数据内容,确定更为准确的设备更新方法。具体地,步骤“根据所述更新内容数据类型对所述网络层级上设备进行更新”,可以包括:
当所述更新内容数据类型包括逻辑更新数据类型时,对所述网络层级上设备进行重启更新;
当所述更新内容数据类型不包括逻辑更新数据类型,且包括配置更新数据类型时,对所述网络层级上设备进行加载更新。
在实际应用中,当更新内容数据类型包括逻辑更新数据类型时,对网络层级上设备进行重启更新,当更新内容数据类型不包括逻辑更新数据类型,且包括配置更新数据类型时,对网络层级上设备进行加载更新。比如,当检测到二级目录“L1”下三级目录“arm32.little”对应的四级目录为“part”时,可以确定对车厢服务器进行设备更新的当前更新类型为增量更新类型,此时可以获取四级目录“part”对应的更新类型指示数据,当更新类型指示数据中包括对设备软件逻辑进行更新的更新数据时,更新内容数据类型可以包括逻辑更新数据类型,此时,可以对车厢服务器进行重启更新,即restart。当更新类型指示数据中不包括对设备软件逻辑进行更新的更新数据,但是包括对设备配置进行更新的更新数据时,更新内容数据类型中不包括逻辑更新数据类型,但包括配置更新数据类型,此时,可以对车厢服务器进行加载更新,即reload。由于reload不会中断服务,因此reload要优于restart。
在一实施例中,由于为了方便运维操作升级,可能在三级目录“arm32.little”对应的四级目录中同时查询到“full”和“part”,此时可以将“part”进行忽略,并确定对车厢服务器进行设备更新的当前更新类型为全量更新类型,然后对车厢服务器进行重启更新。
在一实施例中,还可以通过确定设备的设备数量,以提高设备更新的准确性。具体地,该设备更新方法中还可以包括:
当所述更新文件中包括预设网络层级对应的更新子文件时,确定所述目标网络中所述预设网络层级上设备的设备数量;
根据所述设备数量对所述预设网络层级上设备进行更新。
在实际应用中,当更新文件中包括预设网络层级对应的更新子文件时,确定目标网络中预设网络层级上设备的设备数量,根据设备数量对预设网络层级上设备进行更新。比如,由于列车中存在不止一个车厢,因此需要对列车中多个车厢服务器进行设备更新,当更新文件中检测到车厢服务器对应的更新子文件,即二级目录中存在“L1”对应的更新子文件时,可以首先确定列车中车厢服务器的数量,然后中心服务器可以将二级目录“L1”对应的更新子文件发送至多个车厢服务器中,并对列车中多个车厢服务器进行设备更新。
在一实施例中,可以通过对待检测设备对应的待检测鉴权标识获取设备数量,以提高设备数量获取的准确性,具体地,步骤“当所述更新文件中包括预设网络层级对应的更新子文件时,确定所述目标网络中所述预设网络层级上设备的设备数量”,可以包括:
当所述更新文件中包括预设网络层级对应的更新子文件时,确定预设网络层级上待检测设备的待检测鉴权标识;
当检测到所述目标网络中设备对应的设备鉴权标识包括所述待检测鉴权标识时,根据所述待检测鉴权标识确定所述目标网络中所述预设网络层级上设备的设备数量;
当检测到所述目标网络中设备对应的设备鉴权标识不包括所述待检测鉴权标识时,返回执行所述确定预设网络层级上待检测设备的待检测鉴权标识的步骤,直至确定所述目标网络中所述预设网络层级上设备的设备数量。
在实际应用中,当更新文件中包括预设网络层级对应的更新子文件时,确定预设网络层级上待检测设备的待检测鉴权标识,当检测到目标网络中设备对应的设备鉴权标识包括待检测鉴权标识时,根据待检测鉴权标识确定目标网络中预设网络层级上设备的设备数量,当检测到目标网络中设备对应的设备鉴权标识不包括待检测鉴权标识时,返回执行确定预设网络层级上待检测设备的待检测鉴权标识的步骤,直至确定目标网络中预设网络层级上设备的设备数量。
比如,由于列车一共包括三种类型,8节车厢的类型、16节车厢的类型和17节车厢的类型。因此,可以首先将第17节车厢作为待检测的车厢服务器,并获取第17节车厢服务器对应的待检测鉴权标识,可以通过n表示第n节车厢,那么鉴权标识m的计算公式可以为m=192.168.(n+10).1。然后可以检测列车中是否存在该待检测鉴权标识对应的第17节车厢服务器,若存在,说明该列车为17节车厢的列车,若不存在,可以将第16节车厢作为待检测的车厢服务器,并获取第16节车厢服务器对应的待检测鉴权标识,当列车中存在该待检测鉴权标识对应的第16节车厢服务器时,说明该列车为16节车厢的列车,若不存在,说明该列车为8节车厢的列车。
获取到列车中车厢服务器的设备数量后,可以对列车中所有车厢服务器进行标号,比如,可以编号为1、2、3…17。并根据各自的编号,计算出相应的鉴权标识,中心服务器即可以根据该鉴权标识将车厢服务器对应的更新子文件发送至每个车厢服务器。由于可以直接通过检测获取到列车的类型,因此无需显式的配置文件。
在一实施例中,中心服务器可以基于expect脚本和ssh(Secure Shell,安全外壳协议)通道,将车厢服务器对应的更新子文件并行地推送至多个车厢服务器中。比如,为了使得服务器之间的交互更快捷方便,中心服务器在和各个车厢服务器之间交互时,可以基于ssh通道和expect脚本完成交互,expect脚本可以完成密码自动输入等自动交互功能,从而实现全自动的交互。并且在操作时还可以给每个车厢分配一个独立的进程和ssh连接,从而实现对各节车厢操作的并行化,大幅降低执行时间。
在一实施例中,对设备进行设备更新后,还可以对设备进行安全检查,判断此次更新是否带来其他安全问题。比如,可以执行预定义的check脚本,检查各个设备都是否正常,如端口是否存在、进程是否存在、CPU是否异常彪高、磁盘或内存的占用是否在预期的范围内、拨测某个接口后是否正常返回等。若出现安全异常情况,可以及时进行处理,以解决隐患,提升设备更新的安全性。
在一实施例中,当运维人员将更新文件压缩包上传至中心服务器后,可以通过一键执行获取目标网络中设备的当前设备属性,对更新文件进行查询,并对设备进行设备更新的步骤。这种方法方便快捷并且准确性高。
由上可知,本申请实施例可以获取目标网络的更新文件,更新文件包括目标网络中网络层级对应的更新子文件,更新子文件包括多种设备属性对应的更新数据,从本地配置文件中获取目标网络的网络载体来源信息,根据网络载体来源信息,获取目标网络中网络层级上设备的当前设备属性,根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据,根据当前更新数据对网络层级上设备进行更新。该方案可以通过运维人员可以一键执行命令,确定出设备对应的设备属性、以及更新文件中存储更新数据对应的类型,并根据设备属性,从更新文件中选取相应的更新数据进行设备更新,并根据更新文件判断出更新设备所使用的更新方法,然后进行更新,使得设备更新更灵活准确,并且一键更新方便快捷准确性高。
根据前面实施例所描述的方法,以下将以该设备更新装置具体集成在网络设备举例作进一步详细说明。
参考图3,本申请实施例的设备更新方法的具体流程可以如下:
301、中心服务器获取列车的更新文件。
在实际应用中,如图10所示,部署在列车上的内容分发网络中可以包括位于不同网络层级上的第一服务器和第二服务器,其中,第一服务器可以为车厢服务器,第二服务器可以为中心服务器,车厢服务器可以部署在列车的每个车厢上。
其中,研发人员可以获取在列车上部署内容分发网络所需的数据,并根据目录的结构将所需的数据制作成更新文件,然后对更新文件进行压缩,以便更新文件在发送交互过程中的准确性。如图4所示,运维人员获取到更新文件压缩包后,可以将该更新文件压缩包发送至中心服务器,并执行一键发布,从而快速的完成对于设备的更新。
在一实施例中,中心服务器可以根据运维人员的一键发布指令,对更新文件压缩包进行解压,获取到更新文件,该更新文件中可以包括多级目录,如图7所示,更新文件中可以包括一级目录“package”、二级目录“L1”和“L2”、三级目录“arm32.big”“arm32.little”“arm64.little”“x86-64”等和四级目录“full”和“part”,其中,二级目录下的“L1”可以表示车厢服务器对应的更新子文件,“L2”可以表示中心服务器对应的更新子文件,三级目录下的“arm32.big”可以表示设备属性为arm32大端的车厢服务器对应的更新数据,四级目录下的“part”可以表示设备属性为arm32大端车厢服务器的更新数据中包括增量更新类型指示数据。
302、中心服务器从本地配置文件中获取列车来源信息。
在实际应用中,根据规范,各列车生产厂家会在列车的中心服务器中放置本地配置文件,该本地配置文件中会写明该列车的生产厂商的名字,中心服务器即可通过本地存储的本地配置文件,获取到该列车来源于哪家公司,即列车来源信息。
303、根据列车来源信息分别获取车厢服务器的当前设备属性、以及中心服务器的当前设备属性。
在实际应用中,由于每个厂家生产的列车中,仅包括一种设备属性的车厢服务器、以及一种设备属性的中心服务器,比如,当列车来源信息表明列车的生产厂家为A公司时,可以获取到A公司出厂的列车中车厢服务器的当前设备属性为arm32小端芯片的openwrt操作系统、以及中心服务器的当前设备属性为x86-64小端芯片的centos操作系统。
比如,如图6所示,当检测到列车来源信息为“zhongtiecheng”时,可以确定车厢服务器的当前设备属性为基于x86-64小端芯片的openwrt操作系统,中心服务器的当前设备属性为x86-64小端芯片的centos操作系统;当检测到列车来源信息为“sifangsuo”时,可以确定车厢服务器的当前设备属性为基于arm64小端芯片的fsl操作系统,中心服务器的当前设备属性为x86-64小端芯片的centos操作系统;当检测到列车来源信息为“rijie”时,可以确定车厢服务器的当前设备属性为基于arm32小端芯片的openwrt操作系统,中心服务器的当前设备属性为x86-64小端芯片的centos操作系统。
304、根据当前设备属性从更新文件中查询中心服务器对应的当前更新数据。
在实际应用中,如图8所示,当获取到列车里中心服务器的当前设备属性为x86-64小端芯片的centos操作系统时,可以查询更新文件的二级目录中是否包括对应中心服务器的“L2”目录。当包括对应中心服务器的“L2”目录时,可以查询二级目录“L2”下的三级目录中是否包括对应x86-64小端芯片的“x86-64”子目录。当包括三级目录“x86-64”时,可以获取三级目录“x86-64”对应的当前更新数据,该获取到的当前更新数据即为中心服务器对应的当前更新数据。当不包括对应中心服务器的“L2”目录时,说明该更新文件中不存在中心服务器更新所需的更新数据,表明此时中心服务器无需进行更新。
305、当更新文件中包括中心服务器对应的当前更新数据时,中心服务器根据当前更新数据对中心服务器进行更新。
在实际应用中,当获取到三级目录“x86-64”对应的当前更新数据时,可以获取三级目录“x86-64”下四级目录中包括的更新类型指示数据。当四级目录中包括“full”子目录时,说明该“x86-64”对应的更新数据为全量包,此时可以对中心服务器进行重启更新,也即restart。
当四级目录中包括“part”子目录时,说明该“x86-64”对应的更新数据为增量包,此时可以获取更新类型指示数据的更新内容数据类型,当该增量包中包括对软件逻辑进行更新的数据时,说明此时软件逻辑需要进行调整,因此,可以对中心服务器进行重启更新,也即restart。当该增量包中不包括对软件逻辑进行更新的数据,但包括对设备配置进行更新的数据时,说明此时软件逻辑不需要进行调整,仅需调整设备配置,此时为了不中断服务,可以仅对中心服务器进行加载更新,也即reload。
当对中心服务器更新完毕后,可以执行预定义的check脚本,检查中心服务器中各服务是否正常,比如,可以检查中心服务器中端口是否存在、进程是否存在、CPU是否异常彪高、磁盘或者内存的占用是否在预期的范围、拨测某个接口后是否正常返回等。
其中,更新后的中心服务器在内容分发网络中可以起到二级缓存的作用。
306、当更新文件中包括车厢服务器对应的当前更新数据时,中心服务器将车厢服务器对应的当前更新数据发送至车厢服务器。
在实际应用中,当获取到列车中车厢服务器的当前设备属性为arm32小端芯片的openwrt操作系统时,可以查询更新文件的二级目录中是否包括对应车厢服务器的“L1”目录。当包括对应车厢服务器的“L1”目录时,可以查询二级目录“L1”下的三级目录中是否包括对应arm32小端芯片的“arm32.little”子目录。当不包括对应车厢服务器的“L1”目录时,说明该更新文件中不存在车厢服务器更新所需的更新数据,表明此时车厢服务器无需进行更新。
当包括对应车厢服务器的“L1”目录时,说明该更新文件中存在车厢服务器更新所需的更新数据,此时,中心服务器可以基于ssh通道和expect脚本将车厢服务器对应的更新子文件发送至多个车厢服务器,其中,expect脚本可以完成密码自动输入等自动交互功能,从而完成全自动交互,并且操作时可以给每个车厢分配独立的进程和ssh连接,这样可以实现对各节车厢操作的并行化,从而大幅降低执行时间。
在一实施例中,当查询到更新文件的二级目录中包括对应车厢服务器的“L1”目录时,可以对车厢服务器的设备数量进行检测,从而方便中心服务器将更新子文件发送至每一个车厢服务器中。比如,如图5所示,可以首先将第17节车厢作为待检测的车厢服务器,并获取第17节车厢服务器对应的待检测鉴权标识,可以通过n表示第n节车厢,那么鉴权标识m的计算公式可以为m=192.168.(n+10).1。然后可以检测列车中是否存在该待检测鉴权标识对应的第17节车厢服务器,若存在,说明该列车为17节车厢的列车,若不存在,可以将第16节车厢作为待检测的车厢服务器,并获取第16节车厢服务器对应的待检测鉴权标识,当列车中存在该待检测鉴权标识对应的第16节车厢服务器时,说明该列车为16节车厢的列车,若不存在,说明该列车为8节车厢的列车。
307、车厢服务器根据当前更新数据对车厢服务器进行更新。
车厢服务器获取到二级目录“L1”对应的更新子文件后,如图9所示,可以查询该二级目录“L1”下的三级目录中是否包括对应arm32小端芯片的“arm32.little”子目录,当包括三级目录“arm32.little”时,可以获取三级目录“arm32.little”对应的更新数据,并获取三级目录“arm32.little”下四级目录中包括的更新类型指示数据。当四级目录中包括“full”子目录时,说明该“arm32.little”对应的更新数据为全量包,此时可以对车厢服务器进行重启更新,也即restart。
当四级目录中包括“part”子目录时,说明该“arm32.little”对应的更新数据为增量包,此时可以获取更新类型指示数据的更新内容数据类型,当该增量包中包括对软件逻辑进行更新的数据时,说明此时软件逻辑需要进行调整,因此,可以对车厢服务器进行重启更新,也即restart。当该增量包中不包括对软件逻辑进行更新的数据,但包括对设备配置进行更新的数据时,说明此时软件逻辑不需要进行调整,仅需调整设备配置,此时为了不中断服务,可以仅对车厢服务器进行加载更新,也即reload。
当对车厢服务器更新完毕后,可以执行预定义的check脚本,检查车厢服务器中各服务是否正常,比如,可以检查车厢服务器中端口是否存在、进程是否存在、CPU是否异常彪高、磁盘或者内存的占用是否在预期的范围、拨测某个接口后是否正常返回等。
由上可知,本申请实施例可以通过中心服务器获取列车的更新文件,从本地配置文件中获取列车来源信息,根据列车来源信息分别获取车厢服务器的当前设备属性、以及中心服务器的当前设备属性,根据当前设备属性从更新文件中查询中心服务器对应的当前更新数据,当更新文件中包括中心服务器对应的当前更新数据时,中心服务器根据当前更新数据对中心服务器进行更新,当更新文件中包括车厢服务器对应的当前更新数据时,中心服务器将车厢服务器对应的当前更新数据发送至车厢服务器,车厢服务器根据当前更新数据对车厢服务器进行更新。该方案可以通过运维人员可以一键执行命令,确定出设备对应的设备属性、以及更新文件中存储更新数据对应的类型,并根据设备属性,从更新文件中选取相应的更新数据进行设备更新,并根据更新文件判断出更新设备所使用的更新方法,然后进行更新,使得设备更新更灵活准确,并且一键更新方便快捷准确性高。
为了更好地实施以上方法,本申请实施例还可以提供一种设备更新装置,该设备更新装置具体可以集成在网络设备中,该网络设备可以包括服务器、终端等,其中,终端可以包括:手机、平板电脑、笔记本电脑或个人计算机(PC,Personal Computer)等。
例如,如图11所示,该设备更新装置可以包括文件获取模块111、信息获取模块112、属性获取模块113、查询模块114和更新模块115,如下:
文件获取模块111,用于获取目标网络的更新文件,所述更新文件包括所述目标网络中网络层级对应的更新子文件,所述更新子文件包括多种设备属性对应的更新数据;
信息获取模块112,用于从本地配置文件中获取所述目标网络的网络载体来源信息;
属性获取模块113,用于根据所述网络载体来源信息,获取所述目标网络中所述网络层级上设备的当前设备属性;
查询模块114,用于根据所述当前设备属性从所述更新文件中查询所述网络层级上设备对应的当前更新数据;
更新模块115,用于根据所述当前更新数据对所述网络层级上设备进行更新。
在一实施例中,所述更新模块115可以包括查询子模块1151、确定子模块1152和更新子单元1153,如下:
所述查询子模块1151,可以用于查询所述当前更新数据对应的当前更新类型指示数据;
所述确定子模块1152,可以用于根据所述当前更新类型指示数据确定当前更新类型;
所述更新子模块1153,可以用于根据所述当前更新类型对所述网络层级上设备进行更新。
在一实施例中,所述更新子模块1153可以包括第一更新子模块11531、类型获取子模块11532和第二更新子模块11533,如下:
所述第一更新子模块11531,可以用于当所述当前更新类型为全量更新类型时,对所述网络层级上设备进行重启更新;
所述类型获取子模块11532,可以用于当所述当前更新类型为增量更新类型时,获取所述更新类型指示数据的更新内容数据类型;
所述第二更新子模块11533,可以用于根据所述更新内容数据类型对所述网络层级上设备进行更新。
在一实施例中,所述第二更新子模块11533可以具体用于:
当所述更新内容数据类型包括逻辑更新数据类型时,对所述网络层级上设备进行重启更新;
当所述更新内容数据类型不包括逻辑更新数据类型,且包括配置更新数据类型时,对所述网络层级上设备进行加载更新。
在一实施例中,所述查询模块114可以具体用于:
根据所述目标网络中设备对应的网络层级,从所述更新文件中查询所述网络层级上设备对应的当前更新子文件;
根据所述当前设备属性,从所述当前更新子文件中查询所述网络层级上设备对应的当前更新数据。
在一实施例中,所述属性获取模块113可以具体用于:
获取网络载体来源信息与所述网络层级上设备对应的设备属性之间的映射关系;
根据所述映射关系,获取所述目标网络的网络载体来源信息对应的所述目标网络中网络层级上设备的当前设备属性。
在一实施例中,所述设备更新装置中还可以包括设备数量确定模块116和属性更新模块117,如下:
所述设备数量确定模块116,可以用于当所述更新文件中包括预设网络层级对应的更新子文件时,确定所述目标网络中所述预设网络层级上设备的设备数量;
所述属性更新模块117,可以用于根据所述设备数量对所述预设网络层级上设备进行更新。
在一实施例中,所述设备数量确定模块116可以具体用于:
当所述更新文件中包括预设网络层级对应的更新子文件时,确定预设网络层级上待检测设备的待检测鉴权标识;
当检测到所述目标网络中设备对应的设备鉴权标识包括所述待检测鉴权标识时,根据所述待检测鉴权标识确定所述目标网络中所述预设网络层级上设备的设备数量;
当检测到所述目标网络中设备对应的设备鉴权标识不包括所述待检测鉴权标识时,返回执行所述确定预设网络层级上待检测设备的待检测鉴权标识的步骤,直至确定所述目标网络中所述预设网络层级上设备的设备数量。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由上可知,本实施例的设备更新装置通过文件获取模块111获取目标网络的更新文件,更新文件包括目标网络中网络层级对应的更新子文件,更新子文件包括多种设备属性对应的更新数据,通过信息获取模块112从本地配置文件中获取目标网络的网络载体来源信息,通过属性获取模块113根据网络载体来源信息,获取目标网络中网络层级上设备的当前设备属性,通过查询模块114根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据,通过更新模块115根据当前更新数据对网络层级上设备进行更新。该方案可以通过运维人员可以一键执行命令,确定出设备对应的设备属性、以及更新文件中存储更新数据对应的类型,并根据设备属性,从更新文件中选取相应的更新数据进行设备更新,并根据更新文件判断出更新设备所使用的更新方法,然后进行更新,使得设备更新更灵活准确,并且一键更新方便快捷准确性高。
本申请实施例还提供一种网络设备,该网络设备可以集成本申请实施例所提供的任一种设备更新装置。
例如,如图12所示,其示出了本申请实施例所涉及的网络设备的结构示意图,具体来讲:
该网络设备可以包括一个或者一个以上处理核心的处理器121、一个或一个以上计算机可读存储介质的存储器122、电源123和输入单元124等部件。本领域技术人员可以理解,图12中示出的网络设备结构并不构成对网络设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器121是该网络设备的控制中心,利用各种接口和线路连接整个网络设备的各个部分,通过运行或执行存储在存储器122内的软件程序和/或模块,以及调用存储在存储器122内的数据,执行网络设备的各种功能和处理数据,从而对网络设备进行整体监控。可选的,处理器121可包括一个或多个处理核心;优选的,处理器121可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器121中。
存储器122可用于存储软件程序以及模块,处理器121通过运行存储在存储器122的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器122可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据网络设备的使用所创建的数据等。此外,存储器122可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器122还可以包括存储器控制器,以提供处理器121对存储器122的访问。
网络设备还包括给各个部件供电的电源123,优选的,电源123可以通过电源管理系统与处理器121逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源123还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该网络设备还可包括输入单元124,该输入单元124可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,网络设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,网络设备中的处理器121会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器122中,并由处理器121来运行存储在存储器122中的应用程序,从而实现各种功能,如下:
获取目标网络的更新文件,更新文件包括目标网络中网络层级对应的更新子文件,更新子文件包括多种设备属性对应的更新数据,从本地配置文件中获取目标网络的网络载体来源信息,根据网络载体来源信息,获取目标网络中网络层级上设备的当前设备属性,根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据,根据当前更新数据对网络层级上设备进行更新。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
由上可知,本申请实施例可以获取目标网络的更新文件,更新文件包括目标网络中网络层级对应的更新子文件,更新子文件包括多种设备属性对应的更新数据,从本地配置文件中获取目标网络的网络载体来源信息,根据网络载体来源信息,获取目标网络中网络层级上设备的当前设备属性,根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据,根据当前更新数据对网络层级上设备进行更新。该方案可以通过运维人员可以一键执行命令,确定出设备对应的设备属性、以及更新文件中存储更新数据对应的类型,并根据设备属性,从更新文件中选取相应的更新数据进行设备更新,并根据更新文件判断出更新设备所使用的更新方法,然后进行更新,使得设备更新更灵活准确,并且一键更新方便快捷准确性高。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种设备更新方法中的步骤。例如,该指令可以执行如下步骤:
获取目标网络的更新文件,更新文件包括目标网络中网络层级对应的更新子文件,更新子文件包括多种设备属性对应的更新数据,从本地配置文件中获取目标网络的网络载体来源信息,根据网络载体来源信息,获取目标网络中网络层级上设备的当前设备属性,根据当前设备属性从更新文件中查询网络层级上设备对应的当前更新数据,根据当前更新数据对网络层级上设备进行更新。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一种设备更新方法中的步骤,因此,可以实现本申请实施例所提供的任一种设备更新方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的设备更新方法、装置、系统、存储介质以及计算机设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (14)
1.一种设备更新方法,其特征在于,包括:
获取目标网络的更新文件,所述更新文件包括所述目标网络中网络层级对应的更新子文件,所述更新子文件包括多种设备属性对应的更新数据;
从本地配置文件中获取所述目标网络的网络载体来源信息;
根据所述网络载体来源信息,获取所述目标网络中所述网络层级上设备的当前设备属性;
根据所述当前设备属性从所述更新文件中查询所述网络层级上设备对应的当前更新数据;
根据所述当前更新数据对所述网络层级上设备进行更新。
2.根据权利要求1所述设备更新方法,其特征在于,所述更新子文件还包括更新数据对应的更新类型指示数据;
根据所述当前更新数据对所述网络层级上设备进行更新,包括:
查询所述当前更新数据对应的当前更新类型指示数据;
根据所述当前更新类型指示数据确定当前更新类型;
根据所述当前更新类型对所述网络层级上设备进行更新。
3.根据权利要求2所述设备更新方法,其特征在于,根据所述当前更新类型对所述网络层级上设备进行更新,包括:
当所述当前更新类型为全量更新类型时,对所述网络层级上设备进行重启更新;
当所述当前更新类型为增量更新类型时,获取所述更新类型指示数据的更新内容数据类型;
根据所述更新内容数据类型对所述网络层级上设备进行更新。
4.根据权利要求3所述设备更新方法,其特征在于,根据所述更新内容数据类型对所述网络层级上设备进行更新,包括:
当所述更新内容数据类型包括逻辑更新数据类型时,对所述网络层级上设备进行重启更新;
当所述更新内容数据类型不包括逻辑更新数据类型,且包括配置更新数据类型时,对所述网络层级上设备进行加载更新。
5.根据权利要求1所述设备更新方法,其特征在于,根据所述当前设备属性从所述更新文件中查询所述网络层级上设备对应的当前更新数据,包括:
根据所述目标网络中设备对应的网络层级,从所述更新文件中查询所述网络层级上设备对应的当前更新子文件;
根据所述当前设备属性,从所述当前更新子文件中查询所述网络层级上设备对应的当前更新数据。
6.根据权利要求1所述设备更新方法,其特征在于,根据所述网络载体来源信息,获取所述目标网络中所述网络层级上设备的当前设备属性,包括:
获取网络载体来源信息与所述网络层级上设备对应的设备属性之间的映射关系;
根据所述映射关系,获取所述目标网络的网络载体来源信息对应的所述目标网络中网络层级上设备的当前设备属性。
7.根据权利要求1所述设备更新方法,其特征在于,所述方法还包括:
当所述更新文件中包括预设网络层级对应的更新子文件时,确定所述目标网络中所述预设网络层级上设备的设备数量;
根据所述设备数量对所述预设网络层级上设备进行更新。
8.根据权利要求7所述设备更新方法,其特征在于,当所述更新文件中包括预设网络层级对应的更新子文件时,确定所述目标网络中所述预设网络层级上设备的设备数量,包括:
当所述更新文件中包括预设网络层级对应的更新子文件时,确定预设网络层级上待检测设备的待检测鉴权标识;
当检测到所述目标网络中设备对应的设备鉴权标识包括所述待检测鉴权标识时,根据所述待检测鉴权标识确定所述目标网络中所述预设网络层级上设备的设备数量;
当检测到所述目标网络中设备对应的设备鉴权标识不包括所述待检测鉴权标识时,返回执行所述确定预设网络层级上待检测设备的待检测鉴权标识的步骤,直至确定所述目标网络中所述预设网络层级上设备的设备数量。
9.一种设备更新装置,其特征在于,包括:
文件获取模块,用于获取目标网络的更新文件,所述更新文件包括所述目标网络中网络层级对应的更新子文件,所述更新子文件包括多种设备属性对应的更新数据;
信息获取模块,用于从本地配置文件中获取所述目标网络的网络载体来源信息;
属性获取模块,用于根据所述网络载体来源信息,获取所述目标网络中所述网络层级上设备的当前设备属性;
查询模块,用于根据所述当前设备属性从所述更新文件中查询所述网络层级上设备对应的当前更新数据;
更新模块,用于根据所述当前更新数据对所述网络层级上设备进行更新。
10.一种存储介质,其特征在于,所述存储介质存储有指令,所述指令被处理器执行时实现如权利要求1-8任一项所述方法的步骤。
11.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行如权利要求1-8任一项所述的设备更新方法中的步骤。
12.一种设备更新系统,其特征在于,包括:部署在列车上的内容分发网络,所述内容分发网络包括位于不同网络层级上的第一服务器和第二服务器,所述第一服务器部署在列车的每个车厢上;
其中,第二服务器,用于获取内容分发网络的更新文件,所述更新文件包括所述内容分发网络中网络层级对应的更新子文件,所述更新子文件包括多种设备属性对应的更新数据,从本地配置文件中获取所述内容分发网络的网络载体来源信息,根据所述网络载体来源信息,获取所述内容分发网络中所述网络层级上设备对应的当前设备属性,根据所述当前设备属性从所述更新文件中查询目标服务器对应的当前更新数据,其中所述目标服务器包括第一服务器和/或第二服务器,根据所述当前更新数据对所述目标服务器进行更新。
13.根据权利要求12所述设备更新系统,其特征在于,根据所述当前更新数据对所述目标服务器进行更新,包括:
查询所述当前更新数据对应的当前更新类型指示数据;
根据所述当前更新类型指示数据确定当前更新类型;
根据所述当前更新类型对所述目标服务器进行更新。
14.根据权利要求12所述设备更新系统,其特征在于,根据所述当前设备属性从所述更新文件中查询目标服务器对应的当前更新数据,包括:
根据所述目标网络中设备对应的网络层级,从所述更新文件中查询所述目标网络中设备对应的当前更新子文件;
根据所述当前设备属性,从所述当前更新子文件中查询所述目标服务器对应的当前更新数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910625654.6A CN110233904B (zh) | 2019-07-11 | 2019-07-11 | 设备更新方法、装置、系统、存储介质以及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910625654.6A CN110233904B (zh) | 2019-07-11 | 2019-07-11 | 设备更新方法、装置、系统、存储介质以及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110233904A true CN110233904A (zh) | 2019-09-13 |
CN110233904B CN110233904B (zh) | 2021-09-24 |
Family
ID=67855394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910625654.6A Active CN110233904B (zh) | 2019-07-11 | 2019-07-11 | 设备更新方法、装置、系统、存储介质以及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110233904B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111193787A (zh) * | 2019-12-24 | 2020-05-22 | 国铁吉讯科技有限公司 | 同步方法及装置 |
CN111475190A (zh) * | 2020-04-02 | 2020-07-31 | 深圳创维-Rgb电子有限公司 | 一种信息更新方法、装置、电子设备及可读存储介质 |
CN111865676A (zh) * | 2020-07-10 | 2020-10-30 | 深圳市欢太科技有限公司 | 配置文件的更新检查方法、装置、服务器及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160156540A1 (en) * | 2011-11-07 | 2016-06-02 | Ciena Corporation | Systems and methods for dynamic operations, administration, and management |
CN106233739A (zh) * | 2014-05-08 | 2016-12-14 | 瑞典爱立信有限公司 | 用于处理广播或多播内容的方法、装置和通信设备 |
CN108769166A (zh) * | 2018-05-17 | 2018-11-06 | 北京云端智度科技有限公司 | 一种基于元数据的cdn缓存内容管理装置 |
-
2019
- 2019-07-11 CN CN201910625654.6A patent/CN110233904B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160156540A1 (en) * | 2011-11-07 | 2016-06-02 | Ciena Corporation | Systems and methods for dynamic operations, administration, and management |
CN106233739A (zh) * | 2014-05-08 | 2016-12-14 | 瑞典爱立信有限公司 | 用于处理广播或多播内容的方法、装置和通信设备 |
CN108769166A (zh) * | 2018-05-17 | 2018-11-06 | 北京云端智度科技有限公司 | 一种基于元数据的cdn缓存内容管理装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111193787A (zh) * | 2019-12-24 | 2020-05-22 | 国铁吉讯科技有限公司 | 同步方法及装置 |
CN111475190A (zh) * | 2020-04-02 | 2020-07-31 | 深圳创维-Rgb电子有限公司 | 一种信息更新方法、装置、电子设备及可读存储介质 |
CN111865676A (zh) * | 2020-07-10 | 2020-10-30 | 深圳市欢太科技有限公司 | 配置文件的更新检查方法、装置、服务器及存储介质 |
CN111865676B (zh) * | 2020-07-10 | 2023-05-23 | 深圳市欢太科技有限公司 | 配置文件的更新检查方法、装置、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110233904B (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106020930B (zh) | 一种基于应用容器的应用管理方法及系统 | |
CN109845221A (zh) | 用于服务层的访问控制策略同步 | |
US9563673B2 (en) | Query method for a distributed database system and query apparatus | |
CN101568919B (zh) | 具有分布式存储的联网计算机系统中的单个数据视图 | |
CN104380253B (zh) | 基于云端的应用程序资源文件 | |
CN104932926B (zh) | 智能操作系统平台中实现设备与驱动动态匹配的系统及方法 | |
US9092491B2 (en) | Searching documentation across interconnected nodes in a distributed network | |
US9722879B1 (en) | Method and apparatus of an intuitive web based command line interface | |
CN110233904A (zh) | 设备更新方法、装置、系统、存储介质以及计算机设备 | |
CN107315776A (zh) | 一种基于云计算的数据管理系统 | |
US8620926B2 (en) | Using a hashing mechanism to select data entries in a directory for use with requested operations | |
CN105681477B (zh) | 一种数据访问方法和一种服务器 | |
CN105512044B (zh) | 用于关键字驱动测试的对象库的更新方法及系统 | |
US20090234880A1 (en) | Remote storage and management of binary object data | |
CN107247778A (zh) | 用于实施可扩展数据存储服务的系统和方法 | |
CN103473696A (zh) | 一种收集、分析和分发网络商业信息的方法和系统 | |
US9281992B2 (en) | Method and system for identifying storage device | |
CN106970958B (zh) | 一种流文件的查询与存储方法和装置 | |
CN109995866A (zh) | 分布式文件校验方法、装置、计算机装置及存储介质 | |
CN107908521A (zh) | 一种应用于云环境下的服务器性能以及节点上的容器性能的监控方法 | |
CN110019080A (zh) | 数据访问方法和装置 | |
JP2012531688A (ja) | メタデータに従ってファイルシステムのファイルにアクセスする方法、およびその方法を実装する装置 | |
CN109471838A (zh) | 目录文档的操作方法、装置、电子设备、可读存储介质 | |
CN110225039A (zh) | 权限模型获取、鉴权方法、网关、服务器以及存储介质 | |
CN106713469A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |