一种接口调用方法、装置、设备及机器可读存储介质制造方法及图纸

技术编号:38680318 阅读:28 留言:0更新日期:2023-09-02 22:53
本公开提供一种接口调用方法、装置、设备及机器可读存储介质,该方法包括:初始化Redfish资源,并加载标准Redfish接口;加载预先定制的动态库,根据动态库记载的定制化接口信息,加载定制Redfish接口;监听Redfish请求,跳转至定制Redfish接口的业务模块。通过本公开的技术方案,通过加载可定制化的动态库的方式加载定制Redfish接口,从而实现通过预先定制不同的动态库构建不同的定制Redfish接口,解绑了Redfish框架和接口,便于Redfish模块定制化,且以更新增删动态库的方式更改定制Redfish接口,避免了Redfish模块臃肿。避免了Redfish模块臃肿。避免了Redfish模块臃肿。

【技术实现步骤摘要】
一种接口调用方法、装置、设备及机器可读存储介质


[0001]本公开涉及通信
,尤其是涉及一种接口调用方法、装置、设备及机器可读存储介质。

技术介绍

[0002]当前对BMC实现带外管理的常见接口为IPMI和Redfish,其中Redfish因其更良好的数据可读性而受到更多青睐。但面对不同用户对Redfish接口的定制需求,服务器供应商的传统方式多为在Redfish标准接口之上累加开发,并在框架层面对不同用户加以区分。这种传统的Redfish框架与接口实现“捆绑”开发的方式,对服务器固件开发来说,Redfish模块会随着其接口的增加而变得臃肿,难以维护;对定制用户而言,每一次定制需求的满足都需要对BMC固件进行版本更新,影响用户产品体验。

技术实现思路

[0003]有鉴于此,本公开提供一种接口调用方法、装置及电子设备、机器可读存储介质,以改善上述Redfish模块定制化困难、容易臃肿的问题。
[0004]具体地技术方案如下:
[0005]本公开提供了一种接口调用方法,应用于BMC设备,所述方法包括:初始化Redfish资源,并加载标准Redfish接口;加载预先定制的动态库,根据动态库记载的定制化接口信息,加载定制Redfish接口;监听Redfish请求,跳转至定制Redfish接口的业务模块以处理监听到的关联于定制Redfish接口的Redfish请求的业务。
[0006]作为一种技术方案,所述预先定制的动态库,包括:随固件打包,更新BMC固件后生效的动态库;和/或,通过带外接口导入,重启BMC后生效的动态库。
[0007]作为一种技术方案,所述加载预先定制的动态库,根据动态库记载的定制化接口信息,加载定制Redfish接口,包括:加载预先定制的动态库,根据动态库声明的包括定制Redfish接口的属性参数及业务处理模块信息,加载定制Redfish接口。
[0008]作为一种技术方案,接收动态库补丁包,根据动态库补丁包更换或删除或增加保存的动态库,根据更新后的动态库,更新生效中的定制Redfish接口。
[0009]本公开同时提供了一种接口调用装置,应用于BMC设备,所述装置包括:第一模块,用于初始化Redfish资源,并加载标准Redfish接口;第二模块,用于加载预先定制的动态库,根据动态库记载的定制化接口信息,加载定制Redfish接口;第三模块,用于监听Redfish请求,跳转至定制Redfish接口的业务模块以处理监听到的关联于定制Redfish接口的Redfish请求的业务。
[0010]作为一种技术方案,所述预先定制的动态库,包括:随固件打包,更新BMC固件后生效的动态库;和/或,通过带外接口导入,重启BMC后生效的动态库。
[0011]作为一种技术方案,所述加载预先定制的动态库,根据动态库记载的定制化接口信息,加载定制Redfish接口,包括:加载预先定制的动态库,根据动态库声明的包括定制
Redfish接口的属性参数及业务处理模块信息,加载定制Redfish接口。
[0012]作为一种技术方案,所述第二模块还用于,接收动态库补丁包,根据动态库补丁包更换或删除或增加保存的动态库,根据更新后的动态库,更新生效中的定制Redfish接口。
[0013]本公开同时提供了一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,处理器执行所述机器可执行指令以实现前述的接口调用方法。
[0014]本公开同时提供了一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现前述的接口调用方法。
[0015]本公开提供的上述技术方案至少带来了以下有益效果:
[0016]通过加载可定制化的动态库的方式加载定制Redfish接口,从而实现通过预先定制不同的动态库构建不同的定制Redfish接口,解绑了Redfish框架和接口,便于Redfish模块定制化,且以更新增删动态库的方式更改定制Redfish接口,避免了Redfish模块臃肿。
附图说明
[0017]为了更加清楚地说明本公开实施方式或者现有技术中的技术方案,下面将对本公开实施方式或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开中记载的一些实施方式,对于本领域普通技术人员来讲,还可以根据本公开实施方式的这些附图获得其他的附图。
[0018]图1是本公开一种实施方式中的接口调用方法的流程图;
[0019]图2是本公开一种实施方式中的接口调用装置的结构图;
[0020]图3是本公开一种实施方式中的电子设备的硬件结构图。
[0021]附图标记:第一模块21,第二模块22,第三模块23。
具体实施方式
[0022]在本公开实施方式使用的术语仅仅是出于描述特定实施方式的目的,而非限制本公开。本公开和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
[0023]应当理解,尽管在本公开实施方式可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
[0024]在一种技术方案中,定制Redfish接口时,先在Redfish模块框架中新增相关接口实现,然后根据厂商加载注册对应定制接口,再编译生成BMC固件,随固件版本一起交付。该种方案Redfish接口与框架绑定在一起实现,若在仅满足标准接口或少量用户的情况下,开发维护较为容易,但对于用户数量较多、定制需求繁杂的情况,这种实现则会使得Redfish模块因接口数量的扩展而变得臃肿难以维护,在一定程度上会造成BMC性能的消耗。每一次
需求的变动就意味着BMC固件版本的更新,既增加了服务器固件供应商的开发成本,又增加了用户对产品的使用难度。对满足多用户的多样定制需求,灵活性不足,投入成本较大。另外对于固件供应商在保留代码版权的前提下,将固件版本提供给用户自行开发定制接口,该技术方案几乎无法满足。
[0025]有鉴于此,本公开提供一种接口调用方法、装置及电子设备、机器可读存储介质,以至少改善上述技术问题之一。
[0026]具体地技术方案如后述。
[0027]在一种实施方式中,本公开提供了一种接口调用方法,应用于BMC设备,所述方法包括:初始化Redfish资源,并加载标准Redfish接口;加载预先定制的动态库,根据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种接口调用方法,其特征在于,应用于BMC设备,所述方法包括:初始化Redfish资源,并加载标准Redfish接口;加载预先定制的动态库,根据动态库记载的定制化接口信息,加载定制Redfish接口;监听Redfish请求,跳转至定制Redfish接口的业务模块以处理监听到的关联于定制Redfish接口的Redfish请求的业务。2.根据权利要求1所述的方法,其特征在于,所述预先定制的动态库,包括:随固件打包,更新BMC固件后生效的动态库;和/或,通过带外接口导入,重启BMC后生效的动态库。3.根据权利要求1所述的方法,其特征在于,所述加载预先定制的动态库,根据动态库记载的定制化接口信息,加载定制Redfish接口,包括:加载预先定制的动态库,根据动态库声明的包括定制Redfish接口的属性参数及业务处理模块信息,加载定制Redfish接口。4.根据权利要求1所述的方法,其特征在于,接收动态库补丁包,根据动态库补丁包更换或删除或增加保存的动态库,根据更新后的动态库,更新生效中的定制Redfish接口。5.一种接口调用装置,其特征在于,应用于BMC设备,所述装置包括:第一模块,用于初始化Redfish资源,并加载标准Redfish接口;第二模块,用于加载预先定制的动态库,根据动态库记载的定制化接口信息,加载定制Redfish接口;第三模块,用于监听Redf...

【专利技术属性】
技术研发人员:冯栋营方全
申请(专利权)人:新华三信息技术有限公司
类型:发明
国别省市:

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

1