CN111580887A - 一种获取psu资产信息的方法、装置、设备及存储介质 - Google Patents
一种获取psu资产信息的方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111580887A CN111580887A CN202010402591.0A CN202010402591A CN111580887A CN 111580887 A CN111580887 A CN 111580887A CN 202010402591 A CN202010402591 A CN 202010402591A CN 111580887 A CN111580887 A CN 111580887A
- Authority
- CN
- China
- Prior art keywords
- psu
- file
- asset information
- acquiring
- information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000004806 packaging method and process Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 2
- 229920002492 poly(sulfone) Polymers 0.000 description 2
- 230000003993 interaction Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种获取PSU资产信息的方法、装置、设备及存储介质,该方法包括:根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;实时读取文件,解析所需要的资产信息并将属性值暴露到D‑BUS接口。这样有效降低了复杂度,更容易调试、维护和通用,极大地方便了相关开发工作,并且具有很强的可复制性和拓展性,适用于各类服务器。
Description
技术领域
本发明涉及服务器管理领域,特别是涉及一种获取PSU资产信息的方法、装置、设备及存储介质。
背景技术
随着云技术,虚拟化技术的不断进步,市场不断扩展,需要更多的服务器的支持,对服务器的管理也是一个极大的挑战。服务器管理中,需要获取供电电源(Power SupplyUnit,PSU)的版本,序列号,厂商等资产信息。
目前,传统的方法是通过硬编码的方式加载底层驱动的文件路径和文件名并读取,但是根据PSU的型号不同,电源管理总线(Power Manager Bus,PMBus)的driver不同,这样会导致每次都需要更新源代码,违背了代码的灵活性和易操作性,增加了复杂度,不易调试。
因此,如何更简单地获取PSU资产信息,是本领域技术人员亟待解决的技术问题。
发明内容
有鉴于此,本发明的目的在于提供一种获取PSU资产信息的方法、装置、设备及存储介质,可以有效降低复杂度,具有很强的可复制性和拓展性。其具体方案如下:
一种获取PSU资产信息的方法,包括:
根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;
实时读取所述文件,解析所需要的资产信息并将属性值暴露到D-BUS接口。
优选地,在本发明实施例提供的上述获取PSU资产信息的方法中,所述根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件,具体包括:
根据不同的PSU型号,在内核文件中使用相对应的PMBus的driver与PSU进行通信;
读取到所有的PSU基本信息,并将读取结果存储在相应的文件中。
优选地,在本发明实施例提供的上述获取PSU资产信息的方法中,在所述将读取结果存储在相应的文件中之后,还包括:
将所有的文件路径,文件名及D-BUS接口均封装为JSON配置文件。
优选地,在本发明实施例提供的上述获取PSU资产信息的方法中,所述实时读取所述文件,解析所需要的资产信息并将属性值暴露到D-BUS接口,具体包括:
启动程序并加载所述JSON配置文件;
根据所述JSON配置文件中的文件路径,实时读取所述文件,解析所需要的资产信息并获取相应的属性值;
将获取到的属性值暴露到相应的D-BUS接口。
优选地,在本发明实施例提供的上述获取PSU资产信息的方法中,还包括:
使用REST接口得到相应的属性值并将PSU的资产信息显示在WEB界面中。
本发明实施例还提供了一种获取PSU资产信息的装置,包括:
基本信息获取模块,用于根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;
资产信息解析模块,用于实时读取所述文件,解析所需要的资产信息并将属性值暴露到D-BUS接口。
优选地,在本发明实施例提供的上述获取PSU资产信息的装置中,还包括:
配置文件封装模块,用于将所有的文件路径,文件名及D-BUS接口均封装为JSON配置文件。
优选地,在本发明实施例提供的上述获取PSU资产信息的装置中,还包括:
资产信息显示模块,用于使用REST接口得到相应的属性值并将PSU的资产信息显示在WEB界面中。
本发明实施例还提供了一种获取PSU资产信息的设备,包括处理器和存储器,其中,所述处理器执行所述存储器中保存的计算机程序时实现如本发明实施例提供的上述获取PSU资产信息的方法。
本发明实施例还提供了一种计算机可读存储介质,用于存储计算机程序,其中,所述计算机程序被处理器执行时实现如本发明实施例提供的上述获取PSU资产信息的方法。
从上述技术方案可以看出,本发明所提供的一种获取PSU资产信息的方法、装置、设备及存储介质,包括:根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;实时读取文件,解析所需要的资产信息并将属性值暴露到D-BUS接口。这样有效降低了复杂度,更容易调试、维护和通用,极大地方便了相关开发工作,并且具有很强的可复制性和拓展性,适用于各类服务器。
附图说明
为了更清楚地说明本发明实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的获取PSU资产信息的方法的流程图;
图2为本发明实施例提供的获取PSU资产信息的方法的具体流程图;
图3为本发明实施例提供的获取PSU资产信息并进行展示的一个具体实例示意图;
图4为本发明实施例提供的获取PSU资产信息的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种获取PSU资产信息的方法,如图1所示,包括以下步骤:
S101、根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;
S102、实时读取文件,解析所需要的资产信息并将属性值暴露到D-BUS接口。
需要说明的是,本发明是基于Openbmc来实现PSU资产信息的获取,Openbmc是一个开源的软件架构用于构建一个完整的基板管理控制器(BMC)的Linux image。
在本发明实施例提供的上述获取PSU资产信息的方法中,首先根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;然后实时读取文件,解析所需要的资产信息并将属性值暴露到D-BUS接口。这样有效降低了复杂度,更容易调试、维护和通用,极大地方便了相关开发工作,并且具有很强的可复制性和拓展性,适用于各类服务器。
在具体实施时,在本发明实施例提供的上述获取PSU资产信息的方法中,如图2所示,步骤S101根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件,具体可以包括以下步骤:
S201、根据不同的PSU型号,在内核文件中使用相对应的PMBus的driver与PSU进行通信;
S202、读取到所有的PSU基本信息,并将读取结果存储在相应的文件中。
进一步地,在具体实施时,在本发明实施例提供的上述获取PSU资产信息的方法中,如图2所示,在执行步骤S202将读取结果存储在相应的文件中之后,还可以包括以下步骤:
S203、将所有的文件路径,文件名及D-BUS接口均封装为JSON配置文件。
需要说明的是,将所有的文件路径和文件名以及D-BUS接口都封装在JSON配置文件中,在程序加载之前,根据不同的driver,需要先读取配置文件并获取所有的文件路径和文件名等,以此获取所需要的PSU资产信息,这样的操作简单快捷,提高了工作效率。
在具体实施时,在本发明实施例提供的上述获取PSU资产信息的方法中,如图2所示,步骤S102实时读取文件,解析所需要的资产信息并将属性值暴露到D-BUS接口,具体可以包括以下步骤:
S204、启动程序并加载JSON配置文件;
S205、根据JSON配置文件中的文件路径,实时读取文件,解析所需要的资产信息并获取相应的属性值;
S206、将获取到的属性值暴露到相应的D-BUS接口。
在具体实施时,在本发明实施例提供的上述获取PSU资产信息的方法中,如图2所示,还可以包括以下步骤:
S207、使用REST接口得到相应的属性值并将PSU的资产信息显示在WEB界面中。
下面以图3为例,以一个具体实例对上述获取PSU资产信息的方法进行说明:
步骤一、根据不同的PSU型号,如inspur-ipsps和ibm-cffps,通过PMBus驱动获取这两种PSU的基本信息,并存储成文件;其中,使用内核驱动层(driver/hwmon/pmbus)与对应的PSU进行通信;
步骤二、将fruConfig显示的所有信息,包括文件路径,文件名及D-BUS接口,封装为Dbus属性对应的JSON配置文件;
步骤三、启动程序并加载JSON配置文件,根据JSON配置文件中的文件路径,实时读取文件,解析所需要的资产信息并获取相应的Dbus属性值,如inspur_ips1和ibm;
步骤四、使用REST接口得到inspur_ips1和ibm属性值,并将对应的PSU的资产信息显示在WEB界面中。
通过执行上述步骤获取所需要的PSU资产信息并显示在WEB界面中,复杂度低,简单快捷,便于调试、维护和通用,具有很强的可复制性和拓展性。
基于同一发明构思,本发明实施例还提供了一种获取PSU资产信息的装置,由于该装置解决问题的原理与前述一种获取PSU资产信息的方法相似,因此该装置的实施可以参见获取PSU资产信息的方法的实施,重复之处不再赘述。
在具体实施时,本发明实施例提供的获取PSU资产信息的装置,如图4所示,包括:
基本信息获取模块11,用于根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;
资产信息解析模块12,用于实时读取所述文件,解析所需要的资产信息并将属性值暴露到D-BUS接口。
在本发明实施例提供的上述获取PSU资产信息的装置中,可以通过上述两个模块的相互作用,有效降低了复杂度,更容易调试、维护和通用,极大地方便了相关开发工作,并且具有很强的可复制性和拓展性,适用于各类服务器。
在具体实施时,在本发明实施例提供的上述获取PSU资产信息的装置中,如图4所示,还可以包括:
配置文件封装模块13,用于将所有的文件路径,文件名及D-BUS接口均封装为JSON配置文件。
在具体实施时,在本发明实施例提供的上述获取PSU资产信息的装置中,如图4所示,还可以包括:
资产信息显示模块14,用于使用REST接口得到相应的属性值并将PSU的资产信息显示在WEB界面中。
关于上述各个模块更加具体的工作过程可以参考前述实施例公开的相应内容,在此不再进行赘述。
相应的,本发明实施例还公开了一种获取PSU资产信息的设备,包括处理器和存储器;其中,处理器执行存储器中保存的计算机程序时实现前述实施例公开的获取PSU资产信息的方法。
关于上述方法更加具体的过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
进一步地,本发明还公开了一种计算机可读存储介质,用于存储计算机程序;计算机程序被处理器执行时实现前述公开的获取PSU资产信息的方法。
关于上述方法更加具体的过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备、存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
综上,本发明实施例提供的一种获取PSU资产信息的方法、装置、设备及存储介质,包括:根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;实时读取文件,解析所需要的资产信息并将属性值暴露到D-BUS接口。这样有效降低了复杂度,更容易调试、维护和通用,极大地方便了相关开发工作,并且具有很强的可复制性和拓展性,适用于各类服务器。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的获取PSU资产信息的方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种获取PSU资产信息的方法,其特征在于,包括:
根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;
实时读取所述文件,解析所需要的资产信息并将属性值暴露到D-BUS接口。
2.根据权利要求1所述的获取PSU资产信息的方法,其特征在于,所述根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件,具体包括:
根据不同的PSU型号,在内核文件中使用相对应的PMBus的driver与PSU进行通信;
读取到所有的PSU基本信息,并将读取结果存储在相应的文件中。
3.根据权利要求2所述的获取PSU资产信息的方法,其特征在于,在所述将读取结果存储在相应的文件中之后,还包括:
将所有的文件路径,文件名及D-BUS接口均封装为JSON配置文件。
4.根据权利要求3所述的获取PSU资产信息的方法,其特征在于,所述实时读取所述文件,解析所需要的资产信息并将属性值暴露到D-BUS接口,具体包括:
启动程序并加载所述JSON配置文件;
根据所述JSON配置文件中的文件路径,实时读取所述文件,解析所需要的资产信息并获取相应的属性值;
将获取到的属性值暴露到相应的D-BUS接口。
5.根据权利要求4所述的获取PSU资产信息的方法,其特征在于,还包括:
使用REST接口得到相应的属性值并将PSU的资产信息显示在WEB界面中。
6.一种获取PSU资产信息的装置,其特征在于,包括:
基本信息获取模块,用于根据不同的PSU型号,通过PMBus驱动获取所有的PSU基本信息,并存储成文件;
资产信息解析模块,用于实时读取所述文件,解析所需要的资产信息并将属性值暴露到D-BUS接口。
7.根据权利要求6所述的获取PSU资产信息的装置,其特征在于,还包括:
配置文件封装模块,用于将所有的文件路径,文件名及D-BUS接口均封装为JSON配置文件。
8.根据权利要求7所述的获取PSU资产信息的装置,其特征在于,还包括:
资产信息显示模块,用于使用REST接口得到相应的属性值并将PSU的资产信息显示在WEB界面中。
9.一种获取PSU资产信息的设备,其特征在于,包括处理器和存储器,其中,所述处理器执行所述存储器中保存的计算机程序时实现如权利要求1至5任一项所述的获取PSU资产信息的方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的获取PSU资产信息的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010402591.0A CN111580887B (zh) | 2020-05-13 | 2020-05-13 | 一种获取psu资产信息的方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010402591.0A CN111580887B (zh) | 2020-05-13 | 2020-05-13 | 一种获取psu资产信息的方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111580887A true CN111580887A (zh) | 2020-08-25 |
CN111580887B CN111580887B (zh) | 2023-08-15 |
Family
ID=72110848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010402591.0A Active CN111580887B (zh) | 2020-05-13 | 2020-05-13 | 一种获取psu资产信息的方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111580887B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631874A (zh) * | 2020-12-30 | 2021-04-09 | 浪潮电子信息产业股份有限公司 | 一种服务器psu信息获取方法、装置、电子设备和介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960661A (zh) * | 2019-04-18 | 2019-07-02 | 苏州浪潮智能科技有限公司 | 一种资产信息管理方法、装置、设备及存储介质 |
CN110825204A (zh) * | 2019-11-06 | 2020-02-21 | 深圳宝龙达信创科技股份有限公司 | 电子设备的主板及电源信息管理方法 |
-
2020
- 2020-05-13 CN CN202010402591.0A patent/CN111580887B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960661A (zh) * | 2019-04-18 | 2019-07-02 | 苏州浪潮智能科技有限公司 | 一种资产信息管理方法、装置、设备及存储介质 |
CN110825204A (zh) * | 2019-11-06 | 2020-02-21 | 深圳宝龙达信创科技股份有限公司 | 电子设备的主板及电源信息管理方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631874A (zh) * | 2020-12-30 | 2021-04-09 | 浪潮电子信息产业股份有限公司 | 一种服务器psu信息获取方法、装置、电子设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111580887B (zh) | 2023-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10613970B1 (en) | Method and system for managing deployment of software application components based on software performance data | |
US20080098360A1 (en) | System and method for automatically determining relationships between software artifacts using multiple evidence sources | |
US20120136644A1 (en) | Predicting system performance and capacity using software module performance statistics | |
US8918762B2 (en) | Generating test plans and test cases from service-oriented architecture and process models | |
CN111290951B (zh) | 测试方法、终端、服务器、***及存储介质 | |
CN110955409B (zh) | 在云平台上创建资源的方法和装置 | |
CN111158656B (zh) | 基于因果树法的测试代码生成方法及装置 | |
US20190006042A1 (en) | A medical data management method, apparatus and medical data system | |
CN110781067A (zh) | 一种启动耗时的计算方法、装置、设备和存储介质 | |
CN115983173A (zh) | 寄存器模型生成方法、装置、计算机设备及存储介质 | |
CN111580887A (zh) | 一种获取psu资产信息的方法、装置、设备及存储介质 | |
US8813036B2 (en) | Visual representation of a difference between Cartesian product models | |
Ahmed-Nacer et al. | Model-Driven Simulation of Elastic OCCI Cloud Resources | |
CN110286990B (zh) | 用户界面展示方法、装置、设备及存储介质 | |
US20160148139A1 (en) | Infeasibility Management in E-Sourcing Systems | |
CN113595762B (zh) | 一种网卡配置的保存方法及装置 | |
US8756611B2 (en) | Delayed expansion of values in context | |
CN111124730B (zh) | 一种服务器的错误定位方法、装置及计算机存储介质 | |
CN113655846A (zh) | 一种OpenPOWER服务器时间同步方法及*** | |
CN113282631A (zh) | 一种基于用户画像数据确定目标用户的方法与设备 | |
CN111694725A (zh) | 一种web页面的稳定性测试方法及装置 | |
Akmaldinova et al. | Professional English: Fundamentals of Software Engineering | |
CN114201240B (zh) | 配置helm chart的方法和装置 | |
Carling et al. | Encouraging automated tests for code-to-container delivery | |
CN114860570A (zh) | 面向SaaS模式的开发板测评方法及装置 |
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 |