Equipment management method and device, equipment and readable storage medium

By dynamically selecting master-slave BMC devices in a two-node management system, the problem of nodes not being able to independently control and single point of failure under centralized management is solved, efficient management permission allocation and task execution are achieved, and the system's management efficiency and stability are improved.

CN120075024APending Publication Date: 2025-05-30XINHUASAN INFORMATION TECH CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510216203.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-26
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

In a two-node management system, since the hardware resources are centrally controlled by a BMC module and a Main CPLD, the nodes cannot be controlled independently, the maintenance time is extended, the risk of business interruption increases, and a single point of failure reduces system reliability and stability.

Method used

In the two-node management system, in response to the event where the two BMC devices apply for management permissions separately, one of the BMC devices is dynamically selected as the master BMC device and the other BMC device is the slave BMC device. The main BMC device is responsible for configuring the management flags and performing management tasks. The slave BMC device stops applying for permissions until the main BMC device releases the management permissions.

Benefits of technology

It realizes efficient allocation of management permissions in the dual-node management system, avoids permission conflicts, ensures orderly execution of management tasks, and improves system management efficiency and stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120075024A_ABST
    Figure CN120075024A_ABST
Patent Text Reader

Abstract

The invention provides an equipment management method and device, equipment and a readable storage medium, and the method comprises the steps: responding to an event that two pieces of BMC equipment respectively apply for management authority, and selecting one piece of BMC equipment as master BMC equipment and the other piece of BMC equipment as slave BMC equipment according to a current management task; informing the standby BMC equipment that the standby BMC equipment does not obtain the management authority; informing the master BMC equipment of obtaining the management authority; corresponding managed operation is completed according to the management task executed by the main BMC equipment, and the standby BMC equipment is notified to recover the enabling application management authority in response to an event that the main BMC equipment releases the management authority. Through the technical scheme of the invention, the management authority is efficiently allocated in the double-node management system, the authority conflict is avoided, and the orderly execution of the management task is ensured. And the master BMC device is responsible for configuring the management flag bit and executing the task, and the slave BMC device stops applying for the permission, so that the system management efficiency and stability are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of communication technologies, and in particular, to a device management method, apparatus, device, and readable storage medium. Background Art

[0002] The dual-node management solution is usually based on the Intel CRB design. Its core feature is that only one BMC (Baseboard Management Controller) module and one Main CPLD (Complex Programmable Logic Device) are provided on the server motherboard. This design enables the central control of hardware common resources, including sub-board firmware upgrade management, thermal management, and power operation mode management, etc., by this single BMC. Specifically, the power-on and power-off logic of the two CPUs is also uniformly controlled by the Main CPLD. This centralized management architecture simplifies the system design to a certain extent, but exposes many problems in practical applications.

[0003] After AC power is applied, the two nodes cannot be independently controlled. Since the hardware resources are centrally controlled by one BMC module and one Main CPLD, when maintenance needs to be performed on one of the nodes, both nodes must be powered off simultaneously. This not only prolongs the maintenance time but also may cause service interruption, bringing inconvenience to users.

[0004] Since the hardware resources are only controlled by one BMC, once this BMC fails, the entire machine will crash. At this time, the machine status cannot be obtained, and the sub-board firmware cannot be upgraded, seriously affecting the normal operation and maintenance of the server. This single-point failure risk greatly reduces the reliability and stability of the system.

[0005] Although the two nodes share hardware resources, due to the limitations of the management method, the efficiency of resource sharing is not high. For example, when monitoring and managing common components, flexible resource scheduling and efficient management cannot be achieved, resulting in a low reuse rate of hardware resources and increasing the material cost. Summary of the Invention

[0006] In view of this, this specification provides a device management method, apparatus, electronic device, and readable storage medium to improve one of the above technical problems.

[0007] Specific technical solutions are as follows:

[0008] This specification provides a device management method, which is applied to the managed device in a dual-node management system. The dual-node management system includes two BMC devices. The method includes: in response to the events that the two BMC devices respectively apply for management permissions, according to the current management task, by selecting one of the BMC devices as the primary BMC device and the other BMC device as the secondary BMC device; notifying the secondary BMC device that it has not obtained the management permission, so that the secondary BMC device stops enabling the application for management permission; notifying the primary BMC device that it has obtained the management permission, so that the primary BMC configures the management flag bit of the managed device and executes the management task; completing the corresponding managed operation according to the management task executed by the primary BMC device, and in response to the event that the primary BMC device releases the management permission, notifying the secondary BMC device to resume enabling the application for management permission.

[0009] As a technical solution, the management task is a firmware upgrade task; the notifying the primary BMC device that it has obtained the management permission, so that the primary BMC configures the management flag bit of the managed device and executes the management task includes: notifying the primary BMC device that it has obtained the firmware upgrade management permission, so that the primary BMC configures the firmware upgrade management flag of the managed device to be associated with the primary BMC device, enables the firmware upgrade flag, then executes the firmware upgrade program, and polls the firmware upgrade status of the managed device.

[0010] As a technical solution, the managed device includes an arbitration unit. The in response to the events that the two BMC devices respectively apply for management permissions, according to the current management task, by selecting one of the BMC devices as the primary BMC device and the other BMC device as the secondary BMC device includes: according to the arbitration of the arbitration unit, it is determined that in this management task, one of the two BMC devices is the primary BMC device and the other BMC device is the secondary BMC device.

[0011] As a technical solution, the notifying the secondary BMC device that it has not obtained the management permission, so that the secondary BMC device stops enabling the application for management permission includes: notifying the secondary BMC device that it has not obtained the management permission, so that the secondary BMC device sets the non-management flag associated with the secondary BMC device through the I2C link of the managed device and stops applying for management permission to the arbitration unit of the managed device.

[0012] This specification also provides a device management apparatus, which is applied to a managed device in a dual-node management system. The dual-node management system includes two BMC devices. The apparatus includes: a first module, configured to, in response to events that the two BMC devices respectively apply for management permissions, select one of the BMC devices as the primary BMC device and the other BMC device as the secondary BMC device according to the current management task; a second module, configured to notify the secondary BMC device that it has not obtained the management permission, so that the secondary BMC device stops enabling the application for management permission. The second module is further configured to notify the primary BMC device that it has obtained the management permission, so that the primary BMC configures the management flag bit of the managed device and executes the management task; a third module, configured to perform corresponding managed operations according to the management task executed by the primary BMC device, and in response to the event that the primary BMC device releases the management permission, notify the secondary BMC device to resume enabling the application for management permission.

[0013] As a technical solution, the management task is a firmware upgrade task. The step of notifying the primary BMC device that it has obtained the management permission, so that the primary BMC configures the management flag bit of the managed device and executes the management task includes: notifying the primary BMC device that it has obtained the firmware upgrade management permission, so that the primary BMC configures the firmware upgrade management flag of the managed device to be associated with the primary BMC device, enables the firmware upgrade flag, then executes the firmware upgrade program, and polls the firmware upgrade status of the managed device.

[0014] As a technical solution, the managed device includes an arbitration unit. The step of, in response to events that the two BMC devices respectively apply for management permissions, selecting one of the BMC devices as the primary BMC device and the other BMC device as the secondary BMC device according to the current management task includes: according to the arbitration of the arbitration unit, determining that one of the two BMC devices is the primary BMC device and the other BMC device is the secondary BMC device in this management task.

[0015] As a technical solution, the step of notifying the secondary BMC device that it has not obtained the management permission, so that the secondary BMC device stops enabling the application for management permission includes: notifying the secondary BMC device that it has not obtained the management permission, so that the secondary BMC device sets a non-management flag associated with the secondary BMC device through the I2C link of the managed device and stops applying for management permission to the arbitration unit of the managed device.

[0016] This specification also provides an electronic device, including a processor and a readable storage medium. The readable storage medium stores machine-executable instructions that can be executed by the processor, and the processor executes the machine-executable instructions to implement the foregoing device management method.

[0017] This specification also provides a readable storage medium storing machine-executable instructions, which, when called and executed by a processor, cause the processor to implement the aforementioned device management method.

[0018] The above technical solutions provided in this specification bring at least the following beneficial effects:

[0019] In a dual-node management system, management permissions are efficiently allocated, avoiding permission conflicts and ensuring the orderly execution of management tasks. The main BMC device is responsible for configuring management flag bits and executing tasks, while the slave BMC device stops applying for permissions, thereby improving the system management efficiency and stability. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the embodiments of this specification or the technical solutions in the prior art, the following will briefly introduce the drawings required for describing the embodiments of this specification or the prior art. Obviously, the drawings described below are only some embodiments recorded in this specification. For those of ordinary skill in the art, other drawings can also be obtained based on these drawings of the embodiments of this specification.

[0021] Figure 1 is a flowchart of the device management method in an embodiment of this specification;

[0022] Figure 2 is a structural diagram of the device management device in an embodiment of this specification;

[0023] Figure 3 is a hardware structural diagram of an electronic device in an embodiment of this specification.

[0024] Reference numerals: first module 21, second module 22, third module 23. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0025] The terms used in the embodiments of this specification are only for the purpose of describing specific embodiments, and do not limit this specification. The singular forms "a", "the" and "said" used in this specification and the claims are also intended to include the plural forms, unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used herein refers to any or all possible combinations including one or more of the associated listed items.

[0026] It should be understood that although the terms first, second, third, etc. may be used in the embodiments of this specification to describe various information, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other. For example, without departing from the scope of this specification, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, in addition, the word "if" used may be interpreted as "when" or "while" or "in response to a determination".

[0027] This specification provides a device management method, apparatus, electronic device, and readable storage medium to at least improve one of the above technical problems.

[0028] The specific technical solution is as follows.

[0029] In one embodiment, this specification provides a device management method applied to a managed device in a dual-node management system. The dual-node management system includes two BMC devices. The method includes: in response to events that the two BMC devices respectively apply for management permissions, according to the current management task, by selecting one of the BMC devices as the primary BMC device and the other BMC device as the secondary BMC device; notifying the secondary BMC device that it has not obtained the management permission so that the secondary BMC device stops enabling the application for management permission; notifying the primary BMC device that it has obtained the management permission so that the primary BMC configures the management flag bit of the managed device and executes the management task; performing corresponding managed operations according to the management task executed by the primary BMC device, and in response to the event that the primary BMC device releases the management permission, notifying the secondary BMC device to resume enabling the application for management permission.

[0030] Specifically, as Figure 1 , includes the following steps:

[0031] Step S11, in response to events that the two BMC devices respectively apply for management permissions, according to the current management task, by selecting one of the BMC devices as the primary BMC device and the other BMC device as the secondary BMC device.

[0032] In a dual-node server system, each node is equipped with its own BMC and CPLD. When it is necessary to access common resources such as fans, power supply units (PSUs), sensors, etc. or perform firmware upgrades, the two BMCs will simultaneously attempt to obtain management permissions. At this time, the system will decide which BMC should be the primary BMC responsible for performing specific operations based on the current task requirements and possible priority rules. For example, when adjusting the fan speed, if the BMC of node 0 initiates a request first, it may be selected as the primary BMC; while the BMC of node 1 automatically becomes the secondary BMC.

[0033] Step S12: Notify the standby BMC device that it has not obtained the management authority, and notify the primary BMC device that it has obtained the management authority.

[0034] Once the primary BMC is determined, the system immediately notifies the secondary BMC that it has failed to obtain the current management authority and instructs the secondary BMC to temporarily stop attempting to obtain the management authority. This process is usually completed through the PCA9641 chip on the I2C bus, ensuring efficient utilization of the bus and avoiding conflicts. At the same time, the primary BMC is assigned a corresponding management flag bit, allowing it to start performing specific management tasks. For example, during the firmware upgrade of the fan board CPLD, the primary BMC can pull down a specific GPIO signal to start the upgrade process and monitor the upgrade status in real time.

[0035] Step S13: Complete the corresponding managed operations according to the management tasks executed by the primary BMC device. In response to the event that the primary BMC device releases the management authority, notify the standby BMC device to resume enabling the application for the management authority.

[0036] After the primary BMC successfully executes the specified management tasks, such as completing the firmware update of the fan board CPLD, it releases the management authority and notifies the secondary BMC to reactivate the ability to apply for the management authority through an interrupt mechanism or other communication methods. This means that if new management requirements arise next, the secondary BMC has the opportunity to compete to become the primary BMC again, thus ensuring the balanced use and efficient collaboration of the two in the dual-node system.

[0037] Suppose in a dual-node server system, both nodes need to perform firmware upgrades on the fan board. Initially, the two BMCs almost simultaneously sent upgrade requests. The system selected the BMC of node 0 as the primary BMC according to the preset rules. Subsequently, the BMC of node 1 received the unauthorized notification and suspended further actions. The BMC of node 0 started the firmware upgrade process of the fan board CPLD, including setting the necessary register values, sending upgrade instructions, etc. Throughout the process, the BMC of node 0 maintained close communication with the fan board CPLD until it confirmed that the firmware had been successfully updated. After completion, the BMC of node 0 released the management authority and notified the BMC of node 1 that it could participate in the next round of management authority competition again. This not only ensured the smooth completion of the task but also maintained the high availability and flexibility of the system.

[0038] In one implementation, in a dual-node management system, the two nodes are respectively equipped with independent BMC devices for managing and maintaining the hardware resources of the server. These hardware resources include firmware upgrade, hardware monitoring, heat dissipation management, and power mode control, etc.

[0039] This embodiment introduces a dynamic permission allocation mechanism to solve this problem. When two BMC devices apply for management permissions simultaneously, the system will dynamically select one of the BMC devices as the primary BMC device and the other as the secondary BMC device based on factors such as the type and priority of the current management task and the operating status of the node. For example, during a firmware upgrade task, the system will evaluate the load conditions and network connection status of the two BMC devices and preferentially select the BMC device with lower load and more stable network connection as the primary BMC device. This dynamic allocation mechanism not only improves the efficiency of task execution but also avoids resource waste caused by a fixed primary-secondary relationship.

[0040] After determining the primary BMC device and the secondary BMC device, the system will send notifications to the two BMC devices respectively. For the secondary BMC device that does not obtain management permissions, the system will notify it that it has not obtained management permissions through methods such as GPIO interrupt or I2C communication. At this time, the secondary BMC device will stop applying for management permissions and enter a standby state, waiting for the primary BMC device to release permissions after completing the task.

[0041] Meanwhile, the system will send a notification to the primary BMC device to obtain management permissions. After receiving the notification, the primary BMC device will configure the management flag bit of the device to be managed to indicate that it has obtained management permissions. For example, during a firmware upgrade task, the primary BMC device will set a certain flag bit in the register of the device to be managed (such as the fan board CPLD) to "1", indicating that the device has entered the upgrade mode. Subsequently, the primary BMC device will start executing management tasks, such as reading the firmware package, verifying the firmware integrity, and writing the firmware to the target device.

[0042] During the process of the primary BMC device executing management tasks, the device to be managed will complete corresponding operations according to the instructions of the primary BMC device. Taking firmware upgrade as an example, the device to be managed (such as the fan board CPLD) will receive the firmware data sent by the primary BMC device and update the firmware according to the preset upgrade process. During the upgrade process, the primary BMC device will continuously monitor the upgrade progress and communicate with the device to be managed through polling or interrupt mechanisms to ensure the smooth progress of the upgrade task.

[0043] When the primary BMC device completes the management task, it will release the management permissions. At this time, the system will notify the secondary BMC device through methods such as GPIO interrupt or I2C communication that it can resume applying for management permissions. After receiving the notification, the secondary BMC device will re-enter the management permission application state and wait for the next task assignment. This dynamic permission release and re-application mechanism not only improves the flexibility of the system but also ensures the efficient collaborative work of the two BMC devices in different tasks.

[0044] In one implementation, when the dual BMC devices (BMC0 / BMC1) simultaneously initiate management authority requests, the managed device (such as the fan board CPLD) realizes arbitration through the cooperation of hardware signal triggering and register status. BMC0 / BMC1 respectively pull down the level signal through GPIO pins (such as GPIO23) to send upgrade requests (FanUpgrade_Req0 and FanUpgrade_Req1) to the CPLD. The CPLD built-in edge detection circuit captures the falling edge signal and then triggers the arbitration logic.

[0045] The CPLD firmware maintains a dynamic priority table and dynamically adjusts the weights according to the task type. For the firmware upgrade task, the BMC with a lower CPU load rate is selected (the real-time load can be obtained through the IPMI instruction ipmitool sensor get "CPU Usage"). For the hardware diagnosis task, the BMC with a closer physical distance is selected (judged based on the SMBus topology).

[0046] The main BMC realizes exclusive control of the I2C bus through register locks and hardware multiplexers. The multiplexer control is realized through PCA9641. The main node sends the I2C instruction 0x70 0x01 to switch the channel to the target device. The CPLD automatically masks the access of the standby node to the 0x70 address through the I2C filter.

[0047] After the main node writes VfanUpdateFlag = 0x01, the CPLD locks the isFanCpldUpdate flag bit to prohibit the standby node from modifying it.

[0048] In one implementation, when the dual BMC nodes (BMC0 / BMC1) simultaneously initiate management authority requests, the managed device (such as the fan board CPLD) realizes arbitration through the cooperation of hardware signal triggering and register status. Hardware signal layer: The GPIO interrupt mechanism (such as pulling down the upgrade request signal line) is used as the arbitration trigger source to ensure low-latency response. The CPLD internally maintains an arbitration status register (such as VfanUpdateFlag) and selects the main node according to a preset priority algorithm (such as dynamic weight allocation based on task urgency). When performing the firmware upgrade task, the BMC node with a lower CPU load is preferentially selected as the main node. When performing the hardware diagnosis task, the BMC node with a closer physical distance to the target device is preferentially selected.

[0049] The CPLD writes the isFanCpldUpdate = true flag bit to the primary BMC via the I2C bus and starts the Watchdog timer. It sends a GPIO interrupt signal to the standby BMC, triggering it to perform the register write operation of NVfanUpdateFlag = 0x02 (slave) and stop the I2C bus request. For example, in a MySQL NDB Cluster dual-node deployment, when the management node needs to upgrade the data node firmware, the CPLD dynamically selects BMC0 as the primary node based on the CPU idle rate of BMC0 (80%) being higher than that of BMC1 (45%), and notifies BMC1 to enter the standby mode via an interrupt.

[0050] The primary BMC achieves exclusive access to the I2C bus through a register lock and a hardware multiplexer. After setting VfanUpdateFlag = 0x01 (master), the CPLD automatically closes the access permission of the standby node to the PCA9641 multiplexer. If the standby node fails to complete the status switch before the Watchdog times out (e.g., the register write fails due to network latency), the primary node directly takes over the bus.

[0051] When the primary BMC executes a task, it ensures the reliability of the operation through a hierarchical verification mechanism. It reads the firmware version register of the CPLD, compares the CRC check value of the upgrade package, and adopts a block-by-block burning strategy. After writing 128 bytes each time, it reads the Flash status register to confirm the success of the operation. After restarting the CPLD, it polls the isFanCpldUpdate flag bit until it becomes false.

[0052] After the primary BMC completes the task, it sends a GPIO rising-edge interrupt to the standby node via the CPLD, triggering it to read the VfanUpdateFlag register. The primary node uses an I2C atomic write operation to clear both VfanUpdateFlag and isFanCpldUpdate simultaneously to prevent inconsistent states.

[0053] After receiving the interrupt, the standby BMC re-applies for control of the PCA9641, resumes listening on the I2C link, pulls the operation log from the primary BMC and writes it to the local NVRAM. After the primary BMC completes the PSU firmware upgrade, the standby BMC automatically synchronizes the power management policy file to ensure policy consistency between the two nodes.

[0054] In one embodiment, the management task is a firmware upgrade task; notifying the main BMC device that it has obtained management authority so that the main BMC configures the management flag of the device to be managed and executes the management task, including: notifying the main BMC device that it has obtained firmware upgrade management authority so that the main BMC configures the firmware upgrade management flag of the device to be managed to be associated with the main BMC device, enables the firmware upgrade flag, then executes the firmware upgrade program, and polls the firmware upgrade status of the device to be managed.

[0055] In one embodiment, the device to be managed includes an arbitration unit. In response to events where two BMC devices respectively apply for management authority, according to the current management task, by selecting one of the BMC devices as the main BMC device and the other BMC device as the slave BMC device, it includes: according to the arbitration of the arbitration unit, it is determined that one of the two BMC devices is the main BMC device and the other BMC device is the slave BMC device in this management task.

[0056] In one embodiment, notifying the standby BMC device that it has not obtained management authority so that the standby BMC device stops enabling the application for management authority, including: notifying the standby BMC device that it has not obtained management authority so that the standby BMC device sets a non-management flag associated with the standby BMC device through the I2C link of the device to be managed and stops applying for management authority to the arbitration unit of the device to be managed.

[0057] In one embodiment, each node has its own BMC and CPLD, achieving decoupling of the power-on and power-off control of the two nodes. The two nodes can operate and maintain independently. At the same time, a fan board is added as a common module to serve as a common node for the dual-node co-management of shared resources, implementing dual-node I2C arbitration. Each node can achieve control in three aspects: information reading, function control, and firmware upgrade.

[0058] In terms of information reading and function control in the dual-node management solution, for the access to common resources, the PCA9641 chip is used for competition and conflict management. The PCA9641 supports two methods, polling and interrupt, to obtain bus control rights, and the interrupt method is recommended. The BMCs of the two nodes use the same I2C bus and address to monitor common resources; the BMCs of the two nodes access the fan board and the 1+1 backplane CPLD through the PCA9641. The CPLD provides the same SLAVE address and register address without offset; the PCA9641 cannot process commands that require a combination of multiple commands, and single commands should be issued for arbitration; the BMCs of the two nodes use the I2C arbitration function of the PCA964 on the fan board, 1+1 backplane, and DPU Riser to achieve the competition of the two nodes to access the FRU, Sensor, and PSU. The self-arbitration mechanism of the PCA9641 will not be elaborated here.

[0059] Through the PCA9641 I2C arbitration link, two nodes can read the asset information, FRU data, temperature sensor data, power consumption sensor data, PSU sensor data, and fan sensor data on the PDB board, PSU, fan board, and 1+1U.2 / E3.S backplane. At the same time, the two nodes can access the PSU power black box log, modify the PSU working mode, and implement PSU fan control.

[0060] The fan speed control issues speed control commands to the fan board CPLD through the I2C link controlled by the fan board CPLD. For fan monitoring, there is no need to consider the I2C bus competition problem. Hardware-wise, the fan board CPLD outputs two identical I2C slave addresses, which are respectively connected to the BMCs of the dual nodes. The BMC issues speed regulation data to the CPLD of the fan board through the CPLD-controlled I2C link. The BMCs of the two nodes write data to two independent address spaces of the CPLD of the fan board respectively. The CPLD of the fan board determines the final speed regulation strategy (taking the one with the higher speed requirement as the criterion), and at the same time writes back the fan speed to these two segments of registers.

[0061] In terms of the firmware upgrade of the dual-node management solution, different firmware upgrade requirements are sent by BMC0 or BMC1 to the CPLD of the fan board as corresponding upgrade request signals. Taking the firmware upgrade of the fan board CPLD as an example, BMC sends a firmware upgrade signal for the fan board CPLD, pulling down the upgrade request signal of the fan board. The logic program in the fan board CPLD arbitrates which BMC has obtained the upgrade permission. Suppose BMC0 arbitrates to obtain the upgrade permission and BMC1 does not obtain the upgrade permission. The CPLD notifies BMC1 that it has not obtained the upgrade permission through a GPIO interrupt. BMC0 arbitrates to obtain the upgrade permission. In the CPLD register of the corresponding node, VfanUpdateFlag == 0x01 (master), isFanCpldUpdate == true, indicating that the firmware upgrade of the fan board CPLD of this node has started, and BMC polls the register to obtain the upgrade flag bit. After receiving the GPIO interrupt, BMC1 controls the I2C link through the fan board CPLD and sets the CPLD register NVfanUpdateFlag == 0x02 (slave), indicating that BMC1 has become a slave device and stops applying for PCA9641 resources. BMC0 polls NVfanUpdateFlag, and the watchdog starts. If the watchdog does not time out and BMC0 obtains the NVfanUpdateFlag == 0x02 (slave) of BMC1, then BMC0 preempts 9641 and executes the upgrade process; if the watchdog times out and BMC0 does not obtain the NVfanUpdateFlag == 0x02 (slave) of BMC1, if BMC1 does not respond, BMC0 preempts the bus.

[0062] BMC0 executes the upgrade program, polls the CPLD register of the fan board, and checks whether the CPLD is effective. If the CPLD firmware is effective, BMC0 releases the upgrade request signal of the fan board to inform the fan board CPLD that the upgrade is completed, clears the VfanUpdateFlag and isFanCpldUpdate flag bits, and the fan board CPLD sends a GPIO interrupt to notify BMC1 of the upgrade status; if the CPLD firmware is not effective, BMC0 continues to poll.

[0063] BMC1 receives the GPIO interrupt, reads the CPLD register of the fan board, obtains the upgrade FLAG, sets isFanCpldUpdate = false, NVfanUpdateFlag = 0x00 (idle), and resumes the application for PA9641 resources. The BMCs of the two nodes can re-send the upgrade request signals for the fan board, PSU, and 1+1 backplane to the fan board CPLD for arbitration.

[0064] The BMCs of two nodes can also control the I2C link through the fan board CPLD, replace the physical signal of the upgrade request signal by modifying the register status. The internal logic code of the fan board CPLD arbitrates through the register status, and can be compatible with the firmware upgrade requirements of more single boards.

[0065] In one implementation, as Figure 2 , this specification also provides a device management device, which is applied to the managed device in the dual-node management system. The dual-node management system includes two BMC devices. The device includes: a first module, configured to respond to the events that the two BMC devices respectively apply for management permissions, and according to the current management task, select one of the BMC devices as the main BMC device and the other BMC device as the standby BMC device; a second module, configured to notify the standby BMC device that it has not obtained the management permission, so that the standby BMC device stops enabling the application for management permission; the second module is further configured to notify the main BMC device that it has obtained the management permission, so that the main BMC configures the management flag bit of the managed device and executes the management task; a third module, configured to complete the corresponding managed operation according to the management task executed by the main BMC device, and in response to the event that the main BMC device releases the management permission, notify the standby BMC device to resume enabling the application for management permission.

[0066] In one implementation, the management task is a firmware upgrade task; the step of notifying the main BMC device that it has obtained the management permission, so that the main BMC configures the management flag bit of the managed device and executes the management task includes: notifying the main BMC device that it has obtained the firmware upgrade management permission, so that the main BMC configures the firmware upgrade management flag of the managed device to be associated with the main BMC device, enables the firmware upgrade flag, then executes the firmware upgrade program, and polls the firmware upgrade status of the managed device.

[0067] In one implementation, the managed device includes an arbitration unit. The step of responding to the events that the two BMC devices respectively apply for management permissions, and according to the current management task, selecting one of the BMC devices as the main BMC device and the other BMC device as the standby BMC device includes: according to the arbitration of the arbitration unit, it is determined that in this management task, one of the two BMC devices is the main BMC device and the other BMC device is the standby BMC device.

[0068] In one implementation, the step of notifying the standby BMC device that it has not obtained the management permission, so that the standby BMC device stops enabling the application for management permission includes: notifying the standby BMC device that it has not obtained the management permission, so that the standby BMC device sets the non-management flag associated with the standby BMC device through the I2C link of the managed device and stops applying for management permission to the arbitration unit of the managed device.

[0069] The device embodiments are the same as or similar to the corresponding method embodiments, and will not be elaborated herein.

[0070] In one embodiment, this specification provides an electronic device, including a processor and a readable storage medium. The readable storage medium stores machine-executable instructions that can be executed by the processor. The processor executes the machine-executable instructions to implement the aforementioned device management method. In terms of the hardware level, the schematic diagram of the hardware architecture can be seen Figure 3 as shown.

[0071] In one embodiment, this specification provides a readable storage medium. The readable storage medium stores machine-executable instructions. When the machine-executable instructions are called and executed by a processor, the machine-executable instructions cause the processor to implement the aforementioned device management method.

[0072] Here, the readable storage medium can be any electronic, magnetic, optical or other physical storage device that can contain or store information, such as executable instructions, data, etc. For example, the readable storage medium can be: RAM (Random Access Memory), volatile memory, non-volatile memory, flash memory, storage drives (such as hard disk drives), solid state drives, any type of storage disk (such as optical discs, DVDs, etc.), or similar storage media, or a combination thereof.

[0073] The systems, devices, modules or units illustrated in the above embodiments can be specifically implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer, and the specific form of the computer can be a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email transceiver device, a game console, a tablet computer, a wearable device, or a combination of any several of these devices.

[0074] For convenience of description, when describing the above devices, they are described separately as various units according to functions. Of course, when implementing this specification, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0075] Those skilled in the art should understand that the embodiments of this specification can be provided as a method, a system, or a computer program product. Therefore, this specification can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments of this specification can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer-usable program codes.

[0076] This specification is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the specification. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of flows and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices generate means for implementing the functions specified in one Figure 1 flow or multiple flows and / or blocks Figure 1 or multiple blocks.

[0077] Moreover, these computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing devices to work in a specific manner, such that the instructions stored in the computer-readable memory generate a manufactured article including instruction means that implement the functions specified in one Figure 1 flow or multiple flows and / or blocks Figure 1 or multiple blocks.

[0078] These computer program instructions can also be loaded onto a computer or other programmable data processing devices, such that a series of operation steps are executed on the computer or other programmable devices to generate a computer-implemented process, so that the instructions executed on the computer or other programmable devices provide steps for implementing the functions specified in one Figure 1 flow or multiple flows and / or blocks Figure 1 or multiple blocks.

[0079] Those skilled in the art should understand that the embodiments of the specification can be provided as a method, a system, or a computer program product. Therefore, the specification can be implemented in the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the specification can be implemented in the form of a computer program product implemented on one or more computer-usable storage media (which can include, but are not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0080] The above are only the embodiments of the specification and are not used to limit the specification. For those skilled in the art, various changes and modifications can be made to the specification. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the specification shall be included within the scope of the claims of the specification.

Claims

1. A device management method, characterized in that: A managed device applied to a dual-node management system, wherein the dual-node management system includes two BMC devices, and the method includes: In response to the event that two BMC devices respectively apply for management authority, one of the BMC devices is selected as the master BMC device and the other BMC device is selected as the slave BMC device according to the current management task; Notify the standby BMC device that it has not obtained the management authority, so that the standby BMC device stops enabling the application for management authority; Notify the master BMC device of the management authority so that the master BMC can configure the management flag of the managed device and perform management tasks; The corresponding managed operation is completed according to the management task executed by the master BMC device, and in response to the event that the master BMC device releases the management authority, the standby BMC device is notified to restore the application for the management authority.

2. The method according to claim 1, characterized in that The management task is a firmware upgrade task; The notifying the master BMC device of obtaining the management authority so that the master BMC configures the management flag of the managed device and performs the management task includes: The master BMC device is notified of the firmware upgrade management authority, so that the master BMC configures the firmware upgrade management flag of the managed device to be associated with the master BMC device, enables the firmware upgrade flag, executes the firmware upgrade program, and polls the firmware upgrade status of the managed device.

3. The method according to claim 1, characterized in that The managed device includes an arbitration unit, and in response to an event that two BMC devices respectively apply for management authority, according to a current management task, one of the BMC devices is selected as a master BMC device and the other BMC device is selected as a slave BMC device, including: According to the arbitration of the arbitration unit, it is determined that in this management task, one of the two BMC devices is the master BMC device, and the other BMC device is the slave BMC device.

4. The method according to claim 3, characterized in that The notifying the standby BMC device that it has not obtained the management authority so that the standby BMC device stops enabling the application for the management authority includes: The standby BMC device is notified that it has not obtained the management authority, so that the standby BMC device sets a non-management flag associated with the standby BMC device through the I2C link of the managed device, and stops applying for the management authority from the arbitration unit of the managed device.

5. A device management device, characterized in that: A managed device applied to a dual-node management system, wherein the dual-node management system includes two BMC devices, and the apparatus includes: The first module is used for responding to the event that two BMC devices respectively apply for management authority, and selecting one of the BMC devices as the master BMC device and the other BMC device as the slave BMC device according to the current management task; The second module is used to notify the standby BMC device that it has not obtained the management authority, so that the standby BMC device stops enabling the application for the management authority; The second module is also used to notify the master BMC device that it has obtained the management authority, so that the master BMC configures the management flag of the managed device and performs the management task; The third module is used to complete the corresponding managed operation according to the management task executed by the master BMC device, and in response to the event that the master BMC device releases the management authority, notify the standby BMC device to restore the application for management authority.

6. The device according to claim 5, characterized in that The management task is a firmware upgrade task; The notifying the master BMC device of obtaining the management authority so that the master BMC configures the management flag of the managed device and performs the management task includes: The master BMC device is notified of the firmware upgrade management authority, so that the master BMC configures the firmware upgrade management flag of the managed device to be associated with the master BMC device, enables the firmware upgrade flag, executes the firmware upgrade program, and polls the firmware upgrade status of the managed device.

7. The device according to claim 5, characterized in that The managed device includes an arbitration unit, and in response to an event that two BMC devices respectively apply for management authority, according to a current management task, one of the BMC devices is selected as a master BMC device and the other BMC device is selected as a slave BMC device, including: According to the arbitration of the arbitration unit, it is determined that in this management task, one of the two BMC devices is the master BMC device, and the other BMC device is the slave BMC device.

8. The device according to claim 7, characterized in that The notifying the standby BMC device that it has not obtained the management authority so that the standby BMC device stops enabling the application for the management authority includes: The standby BMC device is notified that it has not obtained the management authority, so that the standby BMC device sets a non-management flag associated with the standby BMC device through the I2C link of the managed device, and stops applying for the management authority from the arbitration unit of the managed device.

9. An electronic device, characterized in that: include: A processor and a readable storage medium, wherein the readable storage medium stores machine executable instructions that can be executed by the processor, and the processor executes the machine executable instructions to implement the method described in any one of claims 1 to 4.

10. A readable storage medium, characterized in that: The readable storage medium stores machine executable instructions, and when the machine executable instructions are called and executed by a processor, the machine executable instructions prompt the processor to implement any one of the methods of claims 1-4.

Citation Information

Cited By

  • Processing system and access control method of processing system

    CN121255687A

  • Processing system and access control method for processing system

    CN121255687B