软件中心系统的制作方法

文档序号:9870330阅读:1043来源:国知局
软件中心系统的制作方法
【技术领域】
[0001]本发明涉及计算机技术领域,特别是涉及一种软件中心系统。
【背景技术】
[0002]在现有技术中,为了减少网管开局和运维的工作量,在设备开通阶段,逐步推荐使用软件中心驱动网管服务器一键安装承载网管软件的操作系统、数据库、双机软件和网管软件;在日常运维阶段,逐步推荐使用软件中心驱动一键升级网管软件及其他软件。这些趋势都极大地减少了用服的运维工作,软件中心逐步成长为网管软件的另一分支。
[0003]但随之而来的问题是,有的软件中心没有与网管服务器剥离,安全框架过于依赖网管系统,软件中心与网管服务器耦合严重,接口混乱;另外,软件中心的设计过于简单,软件准入要求不高,软件版本混乱,依赖关系不明晰,软件中心职能单一,只提供分发软件的低效职能;另外,现场网络环境复杂,简单的软件中心无法满足用户的可靠性要求,例如:上传软件过程中出现网络异常只能重传,分发软件过程中网络异常,几兆的软件分发到进度大半时出现异常,无法续传,在网络环境中拥塞大量数据包时,仍不顾网络压力分发软件等等问题。
[0004]从研发角度上看,由于软件中心展现的低效职能,绝大部分网管研发人员对软件中心的重要性认识不足,投入力量也不大。只有构建出高可用性和高可靠性的软件中心系统,实现稳定安全的上传和分发软件,并提供可靠的安装和升级服务,软件中心才会成为开局和运维必备的利器。

【发明内容】

[0005]鉴于现有技术中软件中心低效的问题,提出了本发明以便提供一种软件中心系统。
[0006]本发明提供了一种软件中心系统,该系统与网管服务器分离部署,该系统具体包括:
[0007]软件管理模块,用于根据预先设置的软件服务规范,通过服务接口为设置了代理模块的实体服务器提供软件服务;
[0008]服务接口,用于为代理模块提供与软件管理模块进行交互的接口 ;
[0009]代理模块,部署于与系统交互的实体服务器中,用于通过服务接口与软件管理模块进行交互,从软件管理模块为实体服务器获取软件服务。
[0010]优选地,软件管理模块具体包括:
[0011]软件准入单元,用于根据软件服务规范中的软件准入规范,对待上传的软件进行校验,在校验成功后,允许上传相应软件;
[0012]实体服务器特性发现单元,用于根据软件服务规范中的特性规范,通过服务接口中的特性发现接口,与代理模块进行交互,进行实体服务器特性的注册和发现;
[0013]软件冗余传输单元,用于在采用主备两台服务器同时部署软件中心系统时,对主备两台服务器进行软件冗余上传和软件冗余分发;
[0014]拥塞控制单元,用于在将软件分发到实体服务器时,通过服务接口中的拥塞控制接口,根据已经发送的数据包的延时计算数据传输链路的拥塞状态,并根据拥塞状态调整后续传输数据包的大小;在不存在待分发的软件时,对流入本地的数据速度进行控制。
[0015]优选地,软件管理模块还包括:
[0016]软件安装单元,用于根据软件服务规范中的静默安装规范,通过服务接口中的静默安装接口,通过代理模块驱动实体服务器进行软件安装;
[0017]软件升级单元,用于根据软件服务规范中的远程升级规范,通过服务接口中的远程升级接口,通过代理模块驱动实体服务器进行软件升级;
[0018]代理下载单元,用于根据软件服务规范中的代理下载规范,并通过服务接口中的代理下载接口,通过代理模块代理实体服务器对未在本地存储软件的软件服务请求,和/或代理另一个软件中心系统的分发软件服务。
[0019]优选地,软件准入单元具体包括:
[0020]软件安全认证子模块,用于在接收到客户端上传的软件时,对客户端的操作权限进行认证,在客户端具备软件上传权限和软件注册权限时,存储或接收客户端上传该软件,在客户端仅具备软件上传权限,不具备软件注册权限时,在等待具备软件注册权限的用户审核通过后,存储或接收客户端上传该软件;在实体服务器请求提供软件服务时,对实体服务器提供的安全信息进行审核,在实体服务器无法提供安全信息或者提供的安全信息没有相应权限时,拒绝为实体服务器提供软件服务,其中,安全信息设置于实体服务器的代理模块中;
[0021]日志审计子模块,用于对接受软件服务或拒绝软件服务的操作进行审计日志的记录;
[0022]校验子模块,用于对待上传的软件进行基本信息准入和/或业务规则准入和/或软件依赖准入的软件准入规范检查,并通过软件校验后,存储或接收该软件。
[0023]优选地,校验子模块具体用于:
[0024]从待上传的软件上获取软件坐标信息,判断软件坐标信息是否符合软件类型、软件功能类型和软件版本号的基本信息准入规范,如果不符合,则拒绝上传该软件;其中,软件坐标信息具体包括:软件类型、软件功能类型、以及软件版本号;或者,
[0025]根据软件提供方提出的业务需求制定的业务规则检验待上传的软件是否具备准入资格,如果不具备,则拒绝上传该软件;其中,业务规则配置于待上传的软件的软件标识文件中;或者,
[0026]在待上传的软件的软件标识文件中配置了软件依赖规则且配置了强制检测软件依赖时,计算待上传的软件的依赖关系,查找该软件依赖的其他软件,在其依赖的其他软件都存在时,存储或接收该软件。
[0027]优选地,校验子模块具体用于:从待上传的软件的包头中解析出软件坐标信息;或者,从待上传的软件的软件标识文件中解析出软件坐标信息。
[0028]优选地,实体服务器特性发现单元具体包括:
[0029]实体服务器特性注册子模块,用于在实体服务器请求安装服务并安装软件成功之后,根据软件服务规范中的特性规范,通过服务接口中的特性发现接口,接收部署于实体服务器上的代理模块的实体服务器特性注册请求,将实体服务器特性清单保存在代理模块中;
[0030]实体服务器特性发现子模块,用于在实体服务器请求软件安装服务或升级服务时,检查相应软件的最低特性需求清单,如果没有特性要求则直接响应;如果有特性要求则请求实体服务器的代理模块提供实体服务器特性清单,并检查实体服务器特性清单是否符合该软件的特性要求,如果符合,则响应服务,否则拒绝服务。
[0031]优选地,代理模块具体用于:
[0032]在实体服务器请求安装服务并安装软件成功后,如果安装的软件中包含特性要求,则根据特性规范通过特性注册接口直接注册该实体服务器的特性,并保存实体服务器特性清单;在某些特性是需要探测才能确定的情况下,在实体服务器按特性探测方法进行探测,探测出特性后再通过特性注册接口注册该实体服务器的特性,并保存实体服务器特性清单。
[0033]优选地,软件冗余传输单元具体包括:
[0034]软件冗余上传子模块,用于在主备两台服务器同时部署软件中心系统时,当客户端将某个软件上传后,并发向主用服务器和备用服务器上传该软件,并通过服务接口中的同步控制接口对主用服务器与备用服务器进行软件同步;
[0035]软件冗余分发子模块,用于在主备服务器上都存在待分发软件时,通过服务接口中的分发控制接口分发软件包时,将主用服务器中的待分发软件发送到实体服务器的主用服务器,将备用服务器中的待分发软件发送到实体服务器的备用服务器,并创建主用服务器到实体服务器的备用服务器的数据链路、以及备用服务器到实体服务器的主用服务器的数据链路;检测四条数据链路的连接和占用情况,任何一条被占用的数据链路出现问题时,选择已创建未占用的数据链路承担问题数据链路的职责,在软件分发到实体服务器的主用服务器后,接收实体服务器的代理模块发送的分发结束消息,断开其他数据链;
[0036]软件校验子模块,用于在从客户端上传软件后,校验软件的第一消息摘要算法第五版MD5码与从软件标识文件或软件包头的标识信息中解析出的第二 MD5码是否一致,如果一致,则提示用户上传成功,否则,则提示用户上传失败;在分发软件到实体服务器后,请求实体服务器通过控制链路传回其本地服务器中软件的第一 MD5码,校验其与从软件标识文件或软件包头的标识信息中解析出的第二 MD5码是否一致,如果一致,则确认分发成功,并通知实体服务器分发结束,否则,通知实体服务器分发失败。
[0037]优选地,软件冗余上传子模块具体用于:
[0038]在软件上传到主用服务器过程中发生传输中断时,保持软件上传到备用服务器,待上传到备用服务器成功后,检测到该软件并通过同步控制接口同步到主用服务器上,在软件上传到备用服务器过程中发生传输中断时,保持软件上传到主用服务器,待上传到主用服务器成功后,检测到该软件并通过同步控制接口同步到备用服务器上,在软件上传到主备服务器都发生传输中断时,通知客户端网络异常,无法上传软件。
[0039]优选地,拥塞控制单元具体用于:
[0040]当实体服务器请求分发软件时,与实体服务器上的代理模块建立两条链路,其中一条为控制链路,另一条为数据传输链路;
[0041]在准备向实体服务器传送第一包数据时,向控制链路申请本次传送的数据大小,根据数据大小通过数据传输链路传送第一包数据的包体,通过控制链路传送控制数据;
[0042]在实体服务器收到第一包数据的包体和控制数据后,接收实体服务器通过控制链路发送的第一包数据的发送时延及其他链路传输数据,并进行缓存;
[0043]在传送第N包数据到实体服务器前,根据前N-1包数据的发送时延的平均值和其他链路传输数据的平均值估计当前网络拥塞值,将网络拥塞值与预先设置的阈值进行比较,如果大于或等于阈值,则减小第N包数据的大小;如果小于阈值,则增大第N包数据的大小,其中,N为大于或等于I的整数;
[0044]在待分发的软件不存在时,对流入本地的数据速度进行控制,将流入本地的数据加入预先设置的流入队列,根据流入流入队列和网络拥塞值计算发送数据包的大小。
[0045]优选地,软件安装单元具体用于:
[0046]在收到实体服务器的安装软件请求后,检验实体服务器提供的用户信息是否具备足够权限,在具备足够权限的情况下,检查待安装软件是否存在,以及待安装软件的依赖软件是否存在,在判断均存在的情况下,准备待安装软件,并向实体服务器请求特性发现,在获取到实体服务器的身份和实体服务器特性清单后,根据实体服务器的身份和实体服务器特性清单进行最低安装特性要求的检查,在检查通过后,请求实体服务器提供静默安装配置,根据实体服务器的安装软件请求选择一种分发软件的方式进行软件分发,并根据静默安装配置驱动实体服务器进行软件安装。
[0047]优选地,软件升级单元具体用于:
[0048]收到实体服务器发送的升级软件请求后,检验实体服务器提供的用户信息是否具备足够权限,在具备足够权限的情况下,检查待升级软件的升级包是否存在,在存在的情况下,向
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1