CN118245292A - Server restarting method and device, storage medium and server - Google Patents
Server restarting method and device, storage medium and server Download PDFInfo
- Publication number
- CN118245292A CN118245292A CN202410671166.XA CN202410671166A CN118245292A CN 118245292 A CN118245292 A CN 118245292A CN 202410671166 A CN202410671166 A CN 202410671166A CN 118245292 A CN118245292 A CN 118245292A
- Authority
- CN
- China
- Prior art keywords
- target
- restart
- server
- type
- flag bit
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 110
- 230000008569 process Effects 0.000 claims abstract description 30
- 238000004590 computer program Methods 0.000 claims abstract description 26
- 239000003550 marker Substances 0.000 claims description 17
- 239000000758 substrate Substances 0.000 claims 9
- 239000000523 sample Substances 0.000 claims 3
- 230000000694 effects Effects 0.000 abstract description 6
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000009530 blood pressure measurement Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 20
- 230000009471 action Effects 0.000 description 18
- 238000012360 testing method Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Retry When Errors Occur (AREA)
Abstract
The embodiment of the application provides a restarting method and device of a server, a storage medium, the server and a computer program product, wherein the method comprises the following steps: in the process of starting a server, under the condition that a basic input/output system enters an initialization stage of a target channel, comparing a current initialization state and a historical initialization state of the target channel to obtain a comparison result; setting a target restart flag bit under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state; and under the condition that the initialization of the target channel is completed and the server needs to be restarted, executing a restarting operation on the server based on the target type of the target restarting zone bit and the value of the target restarting zone bit. The application solves the problem that the connection bus between the fault reporting processors fails due to restarting of the server in the related technology, and achieves the effect of reducing the fault reporting error rate of the connection bus.
Description
Technical Field
Embodiments of the present application relate to the field of computers, and in particular, to a method and apparatus for restarting a server, a storage medium, a server, and a computer program product.
Background
The core of the server supporting the number of processors is the use of an interconnection bus between processors, and two or more processor servers relate to the bus interconnection of the processors. The problems of failure of the interconnection bus, such as rate reduction, bandwidth reduction, link training failure and the like, can lead to unstable servers, and the problems of processor loss, abnormal downtime and the like can occur. To precisely locate fault information, the BIOS typically communicates each possible fault information to the BMC for recording via the IPMI protocol. However, when the IPMI tool is frequently used for power restart and voltage, the initialization of the interconnect channel is usually abnormal, so that the BISO considers that the interconnect bus fails and reports the failure to the BMC, but the actual result is a non-real interconnect channel problem.
Disclosure of Invention
The embodiment of the application provides a restarting method and device of a server, a storage medium, the server and a computer program product, which at least solve the problem that the connecting bus between misinformation processors fails due to restarting of the server in the related technology.
According to an embodiment of the present application, there is provided a method for restarting a server, including: the server comprises at least two processors and a basic input/output system, wherein a target channel is established between the processors through a target bus, and the target processors contained in the at least two processors are connected with the basic input/output system, and the server comprises: comparing the current initialization state of the target channel with a historical initialization state to obtain a comparison result under the condition that the basic input output system enters an initialization stage of the target channel in the process of starting the server, wherein the historical initialization state is the initialization state of the target channel in the process of starting the server last time; setting a target restart flag bit under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state; and under the condition that the initialization of the target channel is completed and the server needs to be restarted, executing a restarting operation on the server based on the target type of the target restarting zone bit and the numerical value of the target restarting zone bit.
In an exemplary embodiment, in a case that the target type of the target restart flag bit is a cold start type, comparing the current initialization state and the historical initialization state of the target channel includes: determining whether the starting type of the server at the last starting is a cold starting type; and comparing the current initialization state of the target channel with the historical initialization state under the condition that the starting type of the server at the last starting is not the cold starting type.
In an exemplary embodiment, the method further comprises: and initializing the target channel under the condition that the starting type of the server at the last starting is a cold starting type.
In an exemplary embodiment, the performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes: and executing a cold restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is a first value, wherein the restart operation comprises the cold restart operation.
In one exemplary embodiment, after performing the cold restart operation, the method further comprises: and setting the value of the target restart marker bit to a second value, wherein the second value is different from the first value.
In an exemplary embodiment, the performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes: and executing a hot restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is other than a first value, wherein the restart operation comprises the hot restart operation.
In an exemplary embodiment, after setting the target restart flag bit, the method further includes: and initializing other functional modules except the target channel in the server under the condition that the initialization of the target channel is completed and the server does not need to be restarted, so as to enter an operating system of the server after the initialization of the other functional modules is completed.
In an exemplary embodiment, in a case where the target type of the target restart flag bit is a hot start type, before the bios enters the initialization phase of the target channel, the method further includes: and sending a first instruction for prohibiting responding to the power restart to the baseboard management controller through a target protocol so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction.
In an exemplary embodiment, in case the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, the method further comprises: and sending error reporting information of the target channel with errors to a baseboard management controller of the server so as to instruct the baseboard management controller to execute alarm operation.
In an exemplary embodiment, the performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes: and executing a hot restart operation under the condition that the target type is a hot start type and the value of the target restart identification bit is a first value, wherein the restart operation comprises the hot restart operation.
In an exemplary embodiment, when the target type of the target restart flag bit is a hot start type, the target channel initialization is completed, and the server does not need to restart, a second instruction which allows responding to power restart is sent to a baseboard management controller of the server through a target protocol, so as to instruct the baseboard management controller to execute the power restart instruction when receiving the power restart instruction.
In an exemplary embodiment, in a case where the target type of the target restart flag bit is a cold start type, before the bios enters the initialization phase of the target channel, the method further includes: and sending a first instruction for prohibiting responding to the power restart to the baseboard management controller through a target protocol so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction.
In an exemplary embodiment, the performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes: and executing a cold restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is a first value, wherein the restart operation comprises the cold restart operation.
In an exemplary embodiment, when the initialization of the target channel is completed and the server does not need to be restarted, a second instruction which allows responding to the power restart is sent to the baseboard management controller of the server through a target protocol, so as to instruct the baseboard management controller to execute the power restart instruction when receiving the power restart instruction.
In an exemplary embodiment, in case the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, the method further comprises: and sending error reporting information of the target channel with errors to a baseboard management controller of the server so as to instruct the baseboard management controller to execute alarm operation.
Before performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit, the method further includes at least one of: determining that the server needs to be restarted under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state; and under the condition that the value of the target restart flag bit is a first value, determining that the server needs to be restarted.
In one exemplary embodiment, the target channel includes one of: the super interconnection channel is used for caching the consistency interconnection protocol channel and is based on a Gen-Z standard channel.
In an exemplary embodiment, the setting the target restart flag bit includes: setting the target type of the target restart marker bit and the numerical value of the target restart marker bit.
According to another embodiment of the present application, there is provided a restarting device of a server, where the server includes at least two processors and a basic input/output system, a target channel is established between the processors through a target bus, and a target processor included in the at least two processors is connected with the basic input/output system, including: the comparison module is used for comparing the current initialization state and the historical initialization state of the target channel to obtain a comparison result when the basic input output system enters the initialization stage of the target channel in the process of starting the server, wherein the historical initialization state is the initialization state of the target channel in the process of starting the server last time; the setting module is used for setting a target restart marker bit under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state; and the restarting module is used for executing restarting operation on the server based on the target type of the target restarting zone bit and the numerical value of the target restarting zone bit under the condition that the initialization of the target channel is completed and the server needs to restart.
According to a further embodiment of the application, there is also provided a computer readable storage medium having stored therein a computer program, wherein the computer program is arranged to perform the steps of any of the method embodiments described above when run.
According to a further embodiment of the application, there is also provided a server comprising a memory having stored therein a computer program and a processor arranged to run the computer program to perform the steps of any of the method embodiments described above.
According to a further embodiment of the application, there is also provided a computer program product comprising a computer program which, when executed by a processor, implements the steps of any of the method embodiments described above.
According to the application, the server comprises at least two processors and a basic input/output system, a target channel is established between the processors through a target bus, the target processors in the at least two processors are connected with the basic input/output system, and in the process of starting the server, under the condition that the basic input/output system enters an initialization stage of the target channel, the current initialization state and the historical initialization state of the target channel are compared to obtain a comparison result, wherein the historical initialization state is the initialization state of the target channel in the process of starting the server last time; setting a target restart flag bit under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state; and under the condition that the initialization of the target channel is completed and the server needs to be restarted, executing a restarting operation on the server based on the target type of the target restarting zone bit and the value of the target restarting zone bit. In the process of starting the server, under the condition that the basic input and output system enters the initialization stage of the target channel, the current initialization state and the historical initialization state of the target channel can be compared to obtain a comparison result, when the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, an error is not reported, a target restarting identification bit is set, the initialization of the target channel is continued, and when the initialization of the target channel is completed and the server needs to be restarted, restarting operation is executed on the server based on the target type and the data of the target restarting identification bit, and the situation that the fault of a connecting bus is reported by mistake due to restarting of the server is avoided. Therefore, the problem that the connection bus between the fault reporting processors fails due to restarting of the server in the related technology can be solved, and the effect of reducing the fault reporting error rate of the connection bus is achieved.
Drawings
Fig. 1 is a hardware block diagram of a server device of a restarting method of a server according to an embodiment of the present application;
FIG. 2 is a flow chart of a method of restarting a server according to an embodiment of the present application;
FIG. 3 is a diagram of a server motherboard design according to an embodiment of the present application;
FIG. 4 is a flowchart of a method for restarting a server according to an embodiment of the present invention;
FIG. 5 is a lane diagram of a server reboot method according to an embodiment of the invention;
FIG. 6 is a flowchart II of a method for restarting a server according to an embodiment of the present invention;
FIG. 7 is a second embodiment of a server reboot method swim lane;
fig. 8 is a block diagram of a restarting device of a server according to an embodiment of the present application.
Detailed Description
Embodiments of the present application will be described in detail below with reference to the accompanying drawings in conjunction with the embodiments.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present application and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order.
The method embodiments provided in the embodiments of the present application may be executed in a server apparatus or similar computing device. Taking the example of running on a server device, fig. 1 is a hardware block diagram of a server device of a method for restarting a server according to an embodiment of the present application. As shown in fig. 1, the server device may include one or more (only one is shown in fig. 1) processors 102 (the processor 102 may include, but is not limited to, a microprocessor MCU, a programmable logic device FPGA, or the like processing means) and a memory 104 for storing data, wherein the server device may further include a transmission device 106 for communication functions and an input-output device 108. It will be appreciated by those of ordinary skill in the art that the architecture shown in fig. 1 is merely illustrative and is not intended to limit the architecture of the server apparatus described above. For example, the server device may also include more or fewer components than shown in FIG. 1, or have a different configuration than shown in FIG. 1.
The memory 104 may be used to store a computer program, for example, a software program of application software and a module, such as a computer program corresponding to a method for restarting a server in an embodiment of the present application, and the processor 102 executes the computer program stored in the memory 104, thereby performing various functional applications and data processing, that is, implementing the method described above. Memory 104 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 104 may further include memory remotely located with respect to the processor 102, which may be connected to the server device via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission device 106 is used to receive or transmit data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider of a server device. In one example, the transmission device 106 includes a network adapter (Network Interface Controller, simply referred to as a NIC) that can connect to other network devices through a base station to communicate with the internet. In one example, the transmission device 106 may be a Radio Frequency (RF) module, which is configured to communicate with the internet wirelessly.
In this embodiment, a method for restarting a server is provided, where the server includes at least two processors and a basic input/output system, a target channel is established between the processors through a target bus, and a target processor included in the at least two processors is connected to the basic input/output system, and fig. 2 is a flowchart of a method for restarting a server according to an embodiment of the present application, as shown in fig. 2, where the flowchart includes the following steps:
Step S202, comparing a current initialization state and a historical initialization state of the target channel to obtain a comparison result when the basic input output system enters an initialization stage of the target channel in the process of starting the server, wherein the historical initialization state is an initialization state of the target channel in the process of starting the server last time;
step S204, setting a target restart flag bit under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state;
Step S206, when the initialization of the target channel is completed and the server needs to be restarted, executing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit.
In the above embodiment, the server may include at least two processors, for example, two processors, four processors, eight processors, and the like, and the processors may be connected by a target bus. The target buses may include a UPI (Ultra Path Interconnect, super interconnect channel) bus, a XGMI (based on Gen-Z standards) bus, a CCIX (Cache Coherent Interconnect for Accelerators, cache coherence interconnect protocol) bus, and the like. I.e., the target channel may be a UPI channel, XGMI channels, CCIX channels, etc. The target processor of the at least two processors may be connected to a basic input output system BIOS, and the target processor may also be connected to a baseboard management controller BMC. The design of the server motherboard may be shown in fig. 3, and as shown in fig. 3, the server includes two processors, CPU0 and CPU1, where the CPU0 and the CPU1 may be connected by a UPI bus, XGMI bus, or CCIX bus. The CPU0 may be connected to the BIOS as a target processor, and the CPU0 may also be connected to the BMC.
In the above embodiment, the above method may be applied to a power restart pressure test of a server, where the power restart pressure test of the server may be performed by an IPMI (INTELLIGENT PLATFORM MANAGEMENT INTERFACE ) tool. When the IPMI tool is used for power restart and pressing, particularly when the server is just started and the time period is not more than 7 seconds, the BIOS checks the last started linking state of the UPI with the current started UPI linking state in the starting process when the power restart and pressing is triggered, and if the last started linking state of the UPI is consistent with the current started UPI linking state, no processing is performed to continue starting. If the error information is inconsistent, the BIOS transmits the error information to the BMC end through the IPMI protocol, and the BMC end records the received fault error and alarms the UPI link failure fault information. However, after the power restart and voltage measurement function of the IPMI tool is executed in the UPI link initialization stage, since the UPI link initialization is not completed and the related topology information of the UPI after the restart is not frequent, the result of the UPI re-initialization after the restart is inconsistent with the result of the UPI link restarted last time, thereby causing reporting of fault information and misuse of serious problems. Therefore, in the process of starting the server, under the condition that the basic input/output system enters the initialization stage of the target channel, comparing the current initialization state and the historical initialization state of the target channel to obtain a comparison result, and under the condition that the comparison result indicates that the current initialization state and the historical initialization state are inconsistent, firstly, not reporting a fault, but setting a target restarting zone bit, and continuously initializing the target channel. After initialization is completed, under the condition that the server is determined to need to be restarted, restarting operation is carried out on the server according to the target type and the data of the target restarting zone bit. Namely, after the UPI link is initialized and reported to be wrong, a global variable is added for recording, the BIOS continues the initialization flow, and the restarting operation is carried out after the initialization is completed. The target type of the target restart flag bit may include a cold start type and a hot start type. The cold start type is used for indicating the server to execute cold start, and the hot start type is used for indicating the server to execute hot start. Wherein a cold start may be a process of restarting the server and loading the operating system and other necessary software. In the cold start process, the server performs self-checking, hardware initialization, system booting and other operations, and after the final loading is completed, the server is restored to a normal running state, and in the process, the value of a register in the server is cleared. A warm boot refers to restarting the server software or operating system without shutting down the server to effect new configuration or updates without affecting existing services and connections, during which the values of registers in the server are saved. The update and maintenance of the server are carried out under the condition that the user experience is not affected.
In the above embodiment, the value of the target restart flag bit may be 0 or 1, and of course, may be other values, which is not limited by the present invention, and the value of the target flag bit may be used to indicate whether the server needs to be restarted, and the type of restart. Therefore, the mapping relation between the value of the target restart flag bit and whether the restart is needed or not and the type of the restart can be preset. For example, when the value of the target restart flag bit is 1, it indicates that a restart is required, and when the value of the target restart flag bit is 0, it indicates that a restart is not required.
In the above embodiment, setting the target restart flag bit may include setting a value of the target restart flag bit and a target type. Whether the server needs to be restarted may be determined based on the comparison, for example, when the comparison indicates that the current initialization state is inconsistent with the historical initialization state. Whether the server needs to be restarted or not can also be determined according to the value of the target restart flag bit, for example, when the value of the target restart flag bit is 1, the server needs to be restarted.
According to the application, the server comprises at least two processors and a basic input/output system, a target channel is established between the processors through a target bus, the target processors in the at least two processors are connected with the basic input/output system, and in the process of starting the server, under the condition that the basic input/output system enters an initialization stage of the target channel, the current initialization state and the historical initialization state of the target channel are compared to obtain a comparison result, wherein the historical initialization state is the initialization state of the target channel in the process of starting the server last time; setting a target restart flag bit under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state; and under the condition that the initialization of the target channel is completed and the server needs to be restarted, executing a restarting operation on the server based on the target type of the target restarting zone bit and the value of the target restarting zone bit. In the process of starting the server, under the condition that the basic input and output system enters the initialization stage of the target channel, the current initialization state and the historical initialization state of the target channel can be compared to obtain a comparison result, when the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, an error is not reported, a target restarting identification bit is set, the initialization of the target channel is continued, and when the initialization of the target channel is completed and the server needs to be restarted, restarting operation is executed on the server based on the target type and the data of the target restarting identification bit, and the situation that the fault of a connecting bus is reported by mistake due to restarting of the server is avoided. Therefore, the problem that the connection bus between the fault reporting processors fails due to restarting of the server in the related technology can be solved, and the effect of reducing the fault reporting error rate of the connection bus is achieved.
The main execution body of the steps may be a server, such as a BIOS in the server, but is not limited thereto.
In an exemplary embodiment, in a case that the target type of the target restart flag bit is a cold start type, comparing the current initialization state and the historical initialization state of the target channel includes: determining whether the starting type of the server at the last starting is a cold starting type; and comparing the current initialization state of the target channel with the historical initialization state under the condition that the starting type of the server at the last starting is not the cold starting type. In the present embodiment, it may be determined whether the startup type at the time of the last startup of the server is a cold startup type. If the last boot is a cold boot, i.e., the server is started from a shutdown state, the BIOS may continue with a UPI initialization action until completion. This is because a cold start may result in a loss of system interrupt status, requiring re-initialization of various hardware devices and system parameters to ensure that the system is functioning properly. Thus, the BIOS will check and perform UPI initialization actions at cold start to ensure that the system is able to start and run properly. If the last start is not of the cold start type, the value in the register is not cleared, so that it can be further determined whether the current initialization state is consistent with the historical initialization state. If the target restart flag bit is consistent, the initialization is continued, and if the target restart flag bit is inconsistent, the target restart flag bit is set.
In the above embodiment, when the target channel is a UPI channel, the BIOS checks whether the last startup is a cold startup in the UPI initialization phase when the server starts up; if the starting is cold, continuing the UPI initialization action until the UPI initialization is completed; if the UPI initialization link is not the cold start, whether the UPI initialization link is consistent with the UPI initialization link before restarting is started, if so, continuing the UPI initialization action until the UPI initialization is completed; if the two variable cold start flags are inconsistent, the global variable cold start flag is set to be 1, and UPI initialization actions are continued.
In the above embodiment, by determining whether the startup type of the server at the last startup is a cold startup type, comparing the current initialization state with the historical initialization state again when the startup type is determined not to be the cold startup type, and continuing the initialization of the target channel when the startup type is determined to be the cold startup type, the integrity of the data at the startup of the server is ensured.
In an exemplary embodiment, the method further comprises: and initializing the target channel under the condition that the starting type of the server at the last starting is a cold starting type. In this embodiment, when it is determined that the last startup type of the server is a cold startup type, the value of the register in the server needs to be cleared, so that the target channel needs to be continuously initialized, so that the server can reinitialize various hardware devices and system parameters, and the system can be ensured to operate normally.
In an exemplary embodiment, the performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes: and executing a cold restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is a first value, wherein the restart operation comprises the cold restart operation. In this embodiment, in the case where the server needs to restart, the target restart flag bit may be further determined, and when the target type of the target restart flag bit is the cold restart type and the value of the target restart flag bit is the first value, the cold restart operation is performed. The first value may be a value indicating a cold restart operation, and may be 1, although the first value may be other values, which is not limited in this aspect of the invention. The value indicating the cold restart operation may be a preset value.
In the above embodiment, when the target type of the target restart flag bit is the cold restart type and the value of the target restart flag bit is the first value, the cold restart operation is performed, which can help the server to reinitialize, further verify whether the target channel fails again, and reduce the false alarm rate of the failure of the target channel.
In one exemplary embodiment, after performing the cold restart operation, the method further comprises: and setting the value of the target restart marker bit to a second value, wherein the second value is different from the first value. In this embodiment, after the cold restart operation is performed, the value of the target restart flag bit may be set to a second value, which may be a different value from the first value, for example, when the first value is 1, the second value may be 0. By setting the target restart flag bit to the second value, during the initialization of the server, the BIOS can determine that the last startup of the server is a cold startup in the initialization stage of the target channel, so that the initialization of the target channel can be continuously completed, after the initialization is completed, the target server can be determined to be not restarted according to the target restart flag bit as the second value, other functional modules can be continuously initialized, and after the initialization of the other functional modules is completed, the operating system is performed to complete the startup of the server.
In the above embodiment, after the cold restart operation is performed, the value of the target restart flag bit is set to the second value, so that it is not necessary to determine whether the current initialization state is consistent with the historical initialization state when the server is started next time, and the test efficiency of the power restart voltage test of the server is improved.
In an exemplary embodiment, the performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes: and executing a hot restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is other than a first value, wherein the restart operation comprises the hot restart operation. In this embodiment, when the target restart flag bit is of the cold start type and the value of the target restart flag bit is other than the first value, for example, when the target restart flag bit is 0, the server may be instructed to execute the hot restart operation.
In the above embodiment, when the value of the target restart flag bit is not the first value, it is indicated that the current initialization state is consistent with the historical initialization state, so that cold restart is not required, and only hot restart is performed, so that downtime of the server can be reduced, service can be recovered more quickly, and the hot restart does not interrupt running processes and services, stability of the system can be maintained, and unstable factors possibly caused by restarting are avoided. The hot restart only reloads necessary components and configuration information, so that extra system resources and time are not wasted, and the efficiency is higher.
In an exemplary embodiment, after setting the target restart flag bit, the method further includes: and initializing other functional modules except the target channel in the server under the condition that the initialization of the target channel is completed and the server does not need to be restarted, so as to enter an operating system of the server after the initialization of the other functional modules is completed. In this embodiment, if the server does not need to be restarted, other functional modules may be continuously initialized, and after the initialization of the other functional modules is completed, the operating system of the server is entered.
In the above embodiment, when the target channel is a UPI channel, after completing UPI initialization, it may be determined whether a restart is required, and if not, other functional modules are continuously initialized; if the restart is needed, judging a target restart marker bit, if the value of the target cold restart marker bit is set to be 1, executing cold restart operation, and setting the value of the target restart marker bit to be 0; if the global cold restart flag bit is not set to 1, a hot restart may be performed.
Fig. 4 is a flowchart of a method for restarting a server according to an embodiment of the present invention, as shown in fig. 4, the flowchart includes:
in step S402, the server is powered on.
In step S404, the BIOS enters the UPI initialization phase.
Step S406, determining whether the server was last cold-started, if yes, executing step S408, and if no, executing step S410.
In step S408, UPI initialization continues until UPI is complete.
Step S410, determining whether the current UPI initialization link is consistent with the last UPI initialization link, if yes, executing step S408, and if no, executing step S412.
In step S412, the global variable cold start flag (corresponding to the target restart flag) is set to 1.
Step S414, continuing the UPI initialization action until the UPI initialization is completed.
Step S416, a determination is made as to whether or not a restart is necessary, and if yes, step S418 is executed, and if no, step S424 is executed.
Step S418 determines whether the global variable cold start flag is 1, and if yes, step S420 is executed, and if no, step S422 is executed.
Step S420, a cold start action is performed, and the cold start flag bit is set to 0.
In step S422, if the global cold start flag bit is not set to 1, a hot restart is performed.
In step S424, the BIOS continues to initialize other functional modules.
Step S426, the boot-up enters the operating system.
Fig. 5 is a lane diagram of a restarting method of a server according to an embodiment of the present invention, as shown in fig. 5, steps S404 to S422 are operations performed by the BIOS, step S402 is an operation performed by the server, and step S424 is an operation performed by the OS.
In an exemplary embodiment, in a case where the target type of the target restart flag bit is a hot start type, before the bios enters the initialization phase of the target channel, the method further includes: and sending a first instruction for prohibiting responding to the power restart to the baseboard management controller through a target protocol so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction. In this embodiment, before the target channel is initialized, the BIOS may send a command through the IPMI protocol to inform the BMC that the power restart pressure measurement command is not required to be executed, and after the target channel is initialized, the BIOS sends the information that the target channel is initialized through the IPMI protocol to inform the BMC that the power restart pressure measurement function is executed.
In the above embodiment, before the BIOS enters the initialization stage of the target channel, the first instruction for prohibiting the response to the power restart may be sent to the BMC through the target protocol, so that the server does not execute the power restart operation when receiving the instruction for executing the power restart, so that the target channel can have enough time to complete the initialization operation, thereby avoiding the problem of false alarm of UPI fault information when executing the power restart, and reducing the false alarm rate.
In an exemplary embodiment, in case the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, the method further comprises: and sending error reporting information of the target channel with errors to a baseboard management controller of the server so as to instruct the baseboard management controller to execute alarm operation. In this embodiment, when the target type of the target restart flag bit is a hot restart type, before the BIOS enters the target channel initialization action, the BIOS may notify the BMC management firmware through the IPMI protocol, without responding to the IPMI command power supply restart pressure measurement function at this time; the BIOS continues to start and enters a target channel initialization function stage, and whether the link initialization of the target channel is consistent with the link initialization link of the target channel started last time is checked; if the target type of the target restart flag bit is not consistent with the target type of the target restart flag bit, the target type of the target restart flag bit is set to be a hot start type, and error reporting information is reported to the BMC end. The error reporting information may be used to indicate that the target channel has an error or a failure.
In the above embodiment, when the server is started, before the BIOS enters the target channel initialization action, the BIOS notifies the BMC management firmware through the IPMI protocol that the power supply restart pressure measurement function is not required to be responded at this time, after entering the target channel initialization, if the comparison result shows that the current initialization state is inconsistent with the historical initialization state, the server does not execute the power supply restart operation at this time, so that the target channel is considered to be faulty, and therefore, error reporting information is sent to the baseboard management controller BMC, so as to achieve the effect of error reporting.
In an exemplary embodiment, the performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes: and executing a hot restart operation under the condition that the target type is a hot start type and the value of the target restart identification bit is a first value, wherein the restart operation comprises the hot restart operation. In this embodiment, after the initialization of the target channel is completed, it may be determined whether the server needs to be restarted. Determining whether the server needs to be restarted may include determining whether the server needs to be restarted according to a comparison result, determining that the server needs to be restarted when the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, and not needing to be restarted when the comparison result indicates that the current initialization state is consistent with the historical initialization state. When the server is determined to need restarting, the target type and the value of the target restart flag bit can be determined, and under the condition that the target type is a hot start type and the value is a first value, hot restart operation can be executed. After the server performs the hot restart, a first instruction for prohibiting the response to the power restart may be sent to the baseboard management controller through the target protocol before the BIOS enters the target channel for initialization, so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction. The BIOS continues to start and enters a target channel initializing function stage, and checks whether the current initializing state is consistent with the last started target channel link initializing link, namely a history initializing turntable; if the two values are consistent, the initialization is continued, if the two values are inconsistent, the hot restart flag bit is set to be a first value, for example, 1, and error reporting information is reported to the BMC end. After the initial completion, judging whether a restarting action is needed; if the hot restart flag bit is set to 1, the hot restart operation is performed and the above steps are continuously executed.
In the above embodiment, when the target type of the target restart flag bit is a hot start type and the value is a first value, the hot restart operation may be performed, so that the downtime of the server may be reduced, the service may be recovered more quickly, and the hot restart may not interrupt the running process and service, so that the stability of the system may be maintained, and unstable factors possibly caused by the restart may be avoided. The hot restart only reloads necessary components and configuration information, so that extra system resources and time are not wasted, and the efficiency is higher.
In an exemplary embodiment, when the target type of the target restart flag bit is a hot start type, the target channel initialization is completed, and the server does not need to restart, a second instruction which allows responding to power restart is sent to a baseboard management controller of the server through a target protocol, so as to instruct the baseboard management controller to execute the power restart instruction when receiving the power restart instruction. In this embodiment, when the target type of the target restart flag bit is a hot restart type, before the BIOS enters the target channel initialization action, the BIOS may notify the BMC management firmware through the IPMI protocol, without responding to the IPMI command power supply restart pressure measurement function at this time; the BIOS continues to start and enters a target channel initialization function stage, and whether the link initialization of the target channel is consistent with the link initialization link of the target channel started last time is checked; if the target restart flag bit is consistent, the initialization is continued, and if the target restart flag bit is inconsistent, the target restart flag bit is set. And judging whether the server needs to be restarted or not under the condition that the target type of the target restart flag bit is a hot start type, and when the server does not need to be restarted, sending information to the BMC end through an IPMI protocol by the BIOS to inform the BMC that the power restart pressure measurement command can be executed, wherein the problem of UPI fault reporting caused by the power restart pressure measurement function does not exist at the moment.
In the above embodiment, when it is determined that the server does not need to be restarted, the baseboard management controller BMC may be timely notified to perform the power restart pressure measurement, so that the test efficiency of the power restart pressure measurement of the server is improved.
In an exemplary embodiment, in a case where the target type of the target restart flag bit is a cold start type, before the bios enters the initialization phase of the target channel, the method further includes: and sending a first instruction for prohibiting responding to the power restart to the baseboard management controller through a target protocol so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction. In this embodiment, when the server is started, before the BIOS enters the target channel initialization action, the BIOS may notify the BMC management firmware through the IPMI protocol, and at this time, need not respond to the IPMI command to restart the voltage measurement function; the BIOS continues to start and enters a target channel initialization function stage, and whether the link initialization of the target channel is consistent with the link initialization link of the target channel started last time is checked; if the target type of the target restart flag bit is not consistent with the cold start type, and reporting error information to the BMC terminal.
In an exemplary embodiment, the performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes: and executing a cold restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is a first value, wherein the restart operation comprises the cold restart operation. After the initialization of the target channel is completed, it can be determined whether the server needs to be restarted. Determining whether the server needs to be restarted may include determining whether the server needs to be restarted according to a comparison result, determining that the server needs to be restarted when the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, and not needing to be restarted when the comparison result indicates that the current initialization state is consistent with the historical initialization state. When it is determined that the server needs to be restarted, a target type and a value of a target restart flag bit may be determined, and a cold restart operation may be performed if the target type is a cold start type and the value is a first value. After the server performs cold restart, a first instruction for prohibiting responding to the power restart may be sent to the baseboard management controller through the target protocol before the BIOS enters the target channel for initialization, so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction. The BIOS continues to start and enters a target channel initializing function stage, and checks whether the current initializing state is consistent with the last started target channel link initializing link, namely a history initializing turntable; if the two values are consistent, the initialization is continued, if the two values are inconsistent, the cold restart flag bit is set to be a first value, for example, 1, and error reporting information is reported to the BMC end. After the initial completion, judging whether a restarting action is needed; if the cold restart flag bit is set to 1, the cold restart operation is performed and the above steps are continued.
In the above embodiment, when the target type of the target restart flag bit is the cold start type and the value is the first value, the cold restart operation may be performed, so as to help the server to reinitialize, further verify whether the target channel fails again, and reduce the false alarm rate of the failure of the target channel.
In an exemplary embodiment, when the initialization of the target channel is completed and the server does not need to be restarted, a second instruction which allows responding to the power restart is sent to the baseboard management controller of the server through a target protocol, so as to instruct the baseboard management controller to execute the power restart instruction when receiving the power restart instruction. In this embodiment, when the target type of the target restart flag bit is a cold restart type, before the BIOS enters the target channel initialization action, the BIOS may notify the BMC management firmware through the IPMI protocol, without responding to the IPMI command power supply restart pressure measurement function at this time; the BIOS continues to start and enters a target channel initialization function stage, and whether the link initialization of the target channel is consistent with the link initialization link of the target channel started last time is checked; if the target restart flag bit is consistent, the initialization is continued, and if the target restart flag bit is inconsistent, the target restart flag bit is set. And judging whether the server needs to be restarted or not under the condition that the target type of the target restart flag bit is a cold start type, and when the server does not need to be restarted, sending information to the BMC end through an IPMI protocol by the BIOS to inform the BMC that the power restart pressure measurement command can be executed, wherein the problem of UPI fault reporting caused by the power restart pressure measurement function does not exist at the moment.
In the above embodiment, when it is determined that the server does not need to be restarted, the baseboard management controller BMC may be timely notified to perform the power restart pressure measurement, so that the test efficiency of the power restart pressure measurement of the server is improved.
In an exemplary embodiment, in case the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, the method further comprises: and sending error reporting information of the target channel with errors to a baseboard management controller of the server so as to instruct the baseboard management controller to execute alarm operation. In this embodiment, when the target type of the target restart flag bit is a cold restart type, before the BIOS enters the target channel initialization action, the BIOS may notify the BMC management firmware through the IPMI protocol, without responding to the IPMI command power supply restart pressure measurement function at this time; the BIOS continues to start and enters a target channel initialization function stage, and whether the link initialization of the target channel is consistent with the link initialization link of the target channel started last time is checked; if the target type of the target restart flag bit is not consistent with the cold start type, and reporting error information to the BMC terminal. The error reporting information may be used to indicate that the target channel has an error or a failure.
In the above embodiment, when the server is started, before the BIOS enters the target channel initialization action, the BIOS notifies the BMC management firmware through the IPMI protocol that the power supply restart pressure measurement function is not required to be responded at this time, after entering the target channel initialization, if the comparison result shows that the current initialization state is inconsistent with the historical initialization state, the server does not execute the power supply restart operation at this time, so that the target channel is considered to be faulty, and therefore, error reporting information is sent to the baseboard management controller BMC, so as to achieve the effect of error reporting.
Before performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit, the method further includes at least one of: determining that the server needs to be restarted under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state; and under the condition that the value of the target restart flag bit is a first value, determining that the server needs to be restarted. In this embodiment, whether the server needs to be restarted may be determined according to the comparison result, and whether the server needs to be restarted may also be determined according to the value of the target restart flag bit. When the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, the server needs to be restarted, and the server can be determined to need to be restarted when the value of the target restart marker bit indicates the value needing to be restarted. The first value may be a predetermined value indicating that the server needs to be restarted. Conversely, the second value may be a predetermined value indicating that the server does not need to be restarted.
In one exemplary embodiment, the target channel includes one of: the super interconnection channel is used for caching the consistency interconnection protocol channel and is based on a Gen-Z standard channel. In this embodiment, the restarting method of the server may be applied to different types of servers, and thus, the target channel may be a channel supported by different types of services. Such as UPI (Ultra Path Interconnect) channels, CCIX (Cache Coherent Interconnect for Accelerators) channels, XGMI (eXplicit Gen-Z Memory Interconnect) channels, and the like.
In an exemplary embodiment, the setting the target restart flag bit includes: setting the target type of the target restart marker bit and the numerical value of the target restart marker bit. In this embodiment, the target type of the target restart flag bit may include a cold start type and a hot start type. The value of the target restart flag bit may include a first value and a second value, the first value may be used to indicate that the server needs to be restarted.
In an exemplary embodiment, in the process of starting the server, under the condition that the bios enters an initialization stage of the target channel, comparing a current initialization state of the target channel with a historical initialization state to obtain a comparison result, where the historical initialization state is an initialization state of the target channel in the process of starting the server last time; and sending suspected fault information of suspected target channel sending faults to a baseboard management controller under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state. The baseboard management controller may store the suspected fault information after receiving the suspected fault information. After the baseboard management controller keeps the suspicious fault-like information, the baseboard management controller can acquire the log information of the server, determine whether the server is executing a task which may cause the occurrence of the target channel fault according to the log information, for example, whether the server is executing the power restart pressure test, and delete the suspicious fault information if the server is determined to be executing the task which may cause the occurrence of the target channel fault according to the log information. And under the condition that the server does not execute the task which possibly causes the target channel fault according to the log information, executing an alarm operation to prompt the occurrence of the target channel fault in the server.
In the above embodiment, when the baseboard management controller receives the suspected fault information, the suspected fault information is not directly reported, but is stored, log information is obtained, whether the server is executing a task that may cause the fault of the target channel is determined, if yes, the suspected fault information is deleted, and if not, the report is made. Therefore, the occurrence of false alarm caused by executing the task which possibly causes the fault of the target channel can be effectively eliminated, and the false alarm rate of the fault of the target channel is effectively reduced.
Fig. 6 is a flowchart second of a method for restarting a server according to an embodiment of the present invention, as shown in fig. 6, the flowchart includes:
in step S602, the server is powered on.
In step S604, the BIOS enters the UPI initialization phase.
In step S606, the BIOS informs the BMC not to execute the power restart pressure measurement command action through the IPMI protocol.
In step S608, the BIOS enters the UPI initialization phase.
Step S610, it is determined whether the current UPI initialization link is identical to the last UPI initialization link, if yes, step S612 is executed, and if no, step S614 is executed.
Step S612, the UPI initialization continues until the UPI initialization is completed.
In step S614, the BIOS transmits the error message to the BMC via IPMI protocol by setting the restart flag bit to 1.
Step S616, the UPI initialization is continued until the UPI initialization is completed.
Step S618 determines whether a restart is required, and if yes, step S620 is executed, and if no, step S624 is executed.
Step S620, it is determined whether the restart flag is 1, and if the determination result is 1, step S622 is executed, and if the determination result is no, step S624 is executed.
In step S622, a restart operation is performed, and the restart flag bit is set to 0.
In step S624, the BIOS informs the BMC to execute the power restart pressure test instruction action through the IPMI protocol.
FIG. 7 is a second embodiment of a server reboot method lane diagram, as shown in FIG. 7, wherein steps S604-S622 are performed by BIOS.
In the foregoing embodiment, when the server is started, when the BIOS enters the UPI initialization phase, the BIOS checks the current UPI link state and the UPI link state started last time, and reports the error information according to the check result, but because the restart phase is exactly located in the UPI initialization check UPI link state phase when the BMC executes the power restart compression through the IPMI protocol, the restart command is not executed at the UPI phase, so that the next occurrence of the UPI fault alarm information is transmitted to the BMC. For the problems, a global cold restart flag bit can be introduced, whether the UPI link is consistent or not is checked according to the starting time, if not, the cold restart flag bit is set to 1, whether the restart is performed or not is judged in a restarting stage, and the UPI initialization is performed again in a cold restarting mode so as to solve the problem that the UPI fault is wrongly reported because the BMC executes the power restart voltage measurement through the IPMI protocol. The BMC terminal can be informed of the instruction that the power supply restarting pressure measurement is not needed to be executed at the moment through an IPMI interactive protocol of the BIOS and the BMC before the BIOS enters the UPI initialization stage, and the BIOS continues to execute the UPI link verification mechanism after the BIOS enters the UPI initialization stage. And confirming whether restarting is needed according to the verification result, simultaneously transmitting real UPI fault information to the BMC end until whether restarting is carried out according to the confirmed result after the initialization of the UPI link is completed, and if the restarting flag bit is 0 and restarting is not needed, informing the BMC through the IPMI protocol at the moment to execute the power restarting pressure measurement command instruction of the IPMI protocol sent by the BMC end.
In the foregoing embodiment, before the UPI initialization stage, the BIOS may send the IPMI protocol to notify the BMC that the power restart pressure measurement instruction received by the BMC end is not executed at this time, and after the UPI initialization stage is finished and when the restart is not needed, the BIOS sends the IPMI protocol to notify the BMC end to execute the power restart pressure measurement instruction received by the BMC end, so as to solve the technical problem of misreporting of the UPI fault caused by the power restart pressure measurement. Or BIOS can confirm whether the UPI link needs to be reinitialized by setting a global variable cold restart flag bit through the actual result of UPI link verification in the UPI initialization stage process so as to solve the technical problem that the BMC end executes a power restart pressure measurement instruction received by the BMC end so as to solve the UPI fault false report caused by power restart pressure measurement. The accuracy of the test result of the UPI link is effectively ensured, the accuracy of the data information of the UPI link in the starting process is ensured, and the interconnection stability and reliability of the multiprocessor system are improved.
From the description of the above embodiments, it will be clear to a person skilled in the art that the method according to the above embodiments may be implemented by means of software plus the necessary general hardware platform, but of course also by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (e.g. ROM/RAM, magnetic disk, optical disk) comprising instructions for causing a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to perform the method according to the embodiments of the present application.
In this embodiment, a restarting device of a server is further provided, where the server includes at least two processors and a basic input/output system, a target channel is established between the processors through a target bus, and target processors included in the at least two processors are connected to the basic input/output system. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. While the means described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and contemplated.
Fig. 8 is a block diagram of a restarting device of a server according to an embodiment of the present application, and as shown in fig. 8, the device includes:
The comparison module 82 is configured to compare a current initialization state of the target channel with a historical initialization state of the target channel in the case that the bios enters an initialization stage of the target channel in the process of starting the server, so as to obtain a comparison result, where the historical initialization state is an initialization state of the target channel in the process of starting the server last time;
A setting module 84, configured to set a target restart flag bit when the comparison result indicates that the current initialization state is inconsistent with the historical initialization state;
and a restart module 86, configured to execute a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit when the target channel initialization is completed and the server needs to be restarted.
In an exemplary embodiment, in the case that the target type of the target restart flag bit is a cold start type, the comparison module 82 may implement the comparison of the current initialization state and the historical initialization state of the target channel as follows: determining whether the starting type of the server at the last starting is a cold starting type; and comparing the current initialization state of the target channel with the historical initialization state under the condition that the starting type of the server at the last starting is not the cold starting type.
In an exemplary embodiment, the apparatus may be further configured to initialize the target channel if a start type of the server at a last start is a cold start type.
In one exemplary embodiment, the restart module 86 may implement the restart operation performed on the server based on the target type of the target restart flag bit and the value of the target restart flag bit by: and executing a cold restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is a first value, wherein the restart operation comprises the cold restart operation.
In an exemplary embodiment, the apparatus may be further configured to set a value of the target restart flag bit to a second value after performing the cold restart operation, wherein the second value is different from the first value.
In one exemplary embodiment, the restart module 86 may implement the restart operation performed on the server based on the target type of the target restart flag bit and the value of the target restart flag bit by: and executing a hot restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is other than a first value, wherein the restart operation comprises the hot restart operation.
In an exemplary embodiment, the apparatus may be further configured to, after setting the target restart flag bit: and initializing other functional modules except the target channel in the server under the condition that the initialization of the target channel is completed and the server does not need to be restarted, so as to enter an operating system of the server after the initialization of the other functional modules is completed.
In an exemplary embodiment, in a case that the target type of the target restart flag bit is a hot start type, the apparatus may be further configured to, before the bios enters an initialization phase of the target channel: and sending a first instruction for prohibiting responding to the power restart to the baseboard management controller through a target protocol so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction.
In an exemplary embodiment, in case the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, the apparatus may further be configured to: and sending error reporting information of the target channel with errors to a baseboard management controller of the server so as to instruct the baseboard management controller to execute alarm operation.
In one exemplary embodiment, the restart module 86 may implement the restart operation performed on the server based on the target type of the target restart flag bit and the value of the target restart flag bit by: and executing a hot restart operation under the condition that the target type is a hot start type and the value of the target restart identification bit is a first value, wherein the restart operation comprises the hot restart operation.
In an exemplary embodiment, the apparatus may be further configured to send, when the target type of the target restart flag bit is a hot start type, a second instruction that allows a response to a power restart to a baseboard management controller of the server through a target protocol to instruct the baseboard management controller to execute the power restart instruction when the power restart instruction is received, where the target channel initialization is completed and the server does not need to restart.
In an exemplary embodiment, in a case that the target type of the target restart flag bit is a cold start type, the apparatus may be further configured to, before the bios enters an initialization phase of the target channel: and sending a first instruction for prohibiting responding to the power restart to the baseboard management controller through a target protocol so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction.
In one exemplary embodiment, the restart module 86 may implement the restart operation performed on the server based on the target type of the target restart flag bit and the value of the target restart flag bit by: and executing a cold restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is a first value, wherein the restart operation comprises the cold restart operation.
In an exemplary embodiment, the apparatus may be further configured to send, to a baseboard management controller of the server, a second instruction that allows responding to a power restart through a target protocol to instruct the baseboard management controller to execute the power restart instruction when the power restart instruction is received, where the initialization of the target channel is completed and the server does not need to restart.
In an exemplary embodiment, in case the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, the apparatus may further be configured to: and sending error reporting information of the target channel with errors to a baseboard management controller of the server so as to instruct the baseboard management controller to execute alarm operation.
The apparatus may be further configured to, prior to performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit, perform at least one of: determining that the server needs to be restarted under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state; and under the condition that the value of the target restart flag bit is a first value, determining that the server needs to be restarted.
In one exemplary embodiment, the target channel includes one of: the super interconnection channel is used for caching the consistency interconnection protocol channel and is based on a Gen-Z standard channel.
In an exemplary embodiment, the setting module 84 may implement setting the target restart flag bit by: setting the target type of the target restart marker bit and the numerical value of the target restart marker bit.
It should be noted that each of the above modules may be implemented by software or hardware, and for the latter, it may be implemented by, but not limited to: the modules are all located in the same processor; or the above modules may be located in different processors in any combination.
Embodiments of the present application also provide a computer readable storage medium having a computer program stored therein, wherein the computer program is arranged to perform the steps of any of the method embodiments described above when run.
In one exemplary embodiment, the computer readable storage medium may include, but is not limited to: a usb disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory RAM), a removable hard disk, a magnetic disk, or an optical disk, or other various media capable of storing a computer program.
Embodiments of the application also provide a server comprising a memory having a computer program stored therein and a processor arranged to run the computer program to perform the steps of any of the method embodiments described above.
In an exemplary embodiment, the electronic device may further include a transmission device connected to the processor, and an input/output device connected to the processor.
Embodiments of the application also provide a computer program product comprising a computer program which, when executed by a processor, implements the steps of any of the method embodiments described above.
Specific examples in this embodiment may refer to the examples described in the foregoing embodiments and the exemplary implementation, and this embodiment is not described herein.
It will be appreciated by those skilled in the art that the modules or steps of the application described above may be implemented in a general purpose computing device, they may be concentrated on a single computing device, or distributed across a network of computing devices, they may be implemented in program code executable by computing devices, so that they may be stored in a storage device for execution by computing devices, and in some cases, the steps shown or described may be performed in a different order than that shown or described herein, or they may be separately fabricated into individual integrated circuit modules, or multiple modules or steps of them may be fabricated into a single integrated circuit module. Thus, the present application is not limited to any specific combination of hardware and software.
The above description is only of the preferred embodiments of the present application and is not intended to limit the present application, but various modifications and variations can be made to the present application by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the principle of the present application should be included in the protection scope of the present application.
Claims (22)
1. A restarting method of server is characterized by comprising at least two processors and a basic input/output system, wherein a target channel is established between the processors through a target bus, the target processors in the at least two processors are connected with the basic input/output system,
Comprising the following steps:
Comparing the current initialization state of the target channel with a historical initialization state to obtain a comparison result under the condition that the basic input output system enters an initialization stage of the target channel in the process of starting the server, wherein the historical initialization state is the initialization state of the target channel in the process of starting the server last time;
Setting a target restart flag bit under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state;
And under the condition that the initialization of the target channel is completed and the server needs to be restarted, executing a restarting operation on the server based on the target type of the target restarting zone bit and the numerical value of the target restarting zone bit.
2. The method of claim 1, wherein the step of determining the position of the substrate comprises,
And comparing the current initialization state and the historical initialization state of the target channel under the condition that the target type of the target restart flag bit is a cold start type, wherein the method comprises the following steps:
Determining whether the starting type of the server at the last starting is a cold starting type;
And comparing the current initialization state of the target channel with the historical initialization state under the condition that the starting type of the server at the last starting is not the cold starting type.
3. The method of claim 2, wherein the step of determining the position of the substrate comprises,
The method further comprises the steps of:
and initializing the target channel under the condition that the starting type of the server at the last starting is a cold starting type.
4. The method of claim 1, wherein the step of determining the position of the substrate comprises,
The performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes:
And executing a cold restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is a first value, wherein the restart operation comprises the cold restart operation.
5. The method of claim 4, wherein the step of determining the position of the first electrode is performed,
After performing the cold restart operation, the method further comprises:
And setting the value of the target restart marker bit to a second value, wherein the second value is different from the first value.
6. The method of claim 1, wherein the step of determining the position of the substrate comprises,
The performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes:
and executing a hot restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is other than a first value, wherein the restart operation comprises the hot restart operation.
7. The method of claim 1, wherein the step of determining the position of the substrate comprises,
After setting the target restart flag bit, the method further includes:
And initializing other functional modules except the target channel in the server under the condition that the initialization of the target channel is completed and the server does not need to be restarted, so as to enter an operating system of the server after the initialization of the other functional modules is completed.
8. The method of claim 1, wherein the step of determining the position of the substrate comprises,
In the case that the target type of the target restart flag bit is a hot start type, before the bios enters the initialization phase of the target channel, the method further includes:
And sending a first instruction for prohibiting responding to the power restart to the baseboard management controller through a target protocol so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction.
9. The method of claim 8, wherein the step of determining the position of the first electrode is performed,
In the case that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, the method further comprises:
And sending error reporting information of the target channel with errors to a baseboard management controller of the server so as to instruct the baseboard management controller to execute alarm operation.
10. The method of claim 8, wherein the step of determining the position of the first electrode is performed,
The performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes:
and executing a hot restart operation under the condition that the target type is a hot start type and the value of the target restart identification bit is a first value, wherein the restart operation comprises the hot restart operation.
11. The method of claim 8, wherein the step of determining the position of the first electrode is performed,
And when the target type of the target restart flag bit is a hot start type, the target channel is initialized, and the server does not need to be restarted, a second instruction which allows responding to power restart is sent to a baseboard management controller of the server through a target protocol, so that the baseboard management controller is instructed to execute the power restart instruction when receiving the power restart instruction.
12. The method of claim 1, wherein the step of determining the position of the substrate comprises,
In the case that the target type of the target restart flag bit is a cold start type, before the bios enters the initialization phase of the target channel, the method further includes:
And sending a first instruction for prohibiting responding to the power restart to the baseboard management controller through a target protocol so as to instruct the baseboard management controller not to execute the power restart instruction when receiving the power restart instruction.
13. The method of claim 12, wherein the step of determining the position of the probe is performed,
The performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit includes:
And executing a cold restart operation under the condition that the target type is a cold start type and the value of the target restart flag bit is a first value, wherein the restart operation comprises the cold restart operation.
14. The method of claim 12, wherein the step of determining the position of the probe is performed,
In the case that the initialization of the target channel is completed and the server does not need to be restarted, the method further comprises: and sending a second instruction which allows responding to the power supply restart to the baseboard management controller of the server through a target protocol so as to instruct the baseboard management controller to execute the power supply restart instruction when receiving the power supply restart instruction.
15. The method of claim 12, wherein the step of determining the position of the probe is performed,
In the case that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state, the method further comprises:
And sending error reporting information of the target channel with errors to a baseboard management controller of the server so as to instruct the baseboard management controller to execute alarm operation.
16. The method of claim 1, wherein the step of determining the position of the substrate comprises,
Before performing a restart operation on the server based on the target type of the target restart flag bit and the value of the target restart flag bit, the method further includes at least one of:
Determining that the server needs to be restarted under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state;
And under the condition that the value of the target restart flag bit is a first value, determining that the server needs to be restarted.
17. The method according to any one of claims 1 to 16, wherein,
The target channel includes one of: the super interconnection channel is used for caching the consistency interconnection protocol channel and is based on a Gen-Z standard channel.
18. The method of claim 1, wherein the step of determining the position of the substrate comprises,
The setting the target restart flag bit includes:
setting the target type of the target restart marker bit and the numerical value of the target restart marker bit.
19. A restarting device of a server is characterized in that the server comprises at least two processors and a basic input/output system, a target channel is established between the processors through a target bus, the target processors of the at least two processors are connected with the basic input/output system,
Comprising the following steps:
The comparison module is used for comparing the current initialization state and the historical initialization state of the target channel to obtain a comparison result when the basic input output system enters the initialization stage of the target channel in the process of starting the server, wherein the historical initialization state is the initialization state of the target channel in the process of starting the server last time;
the setting module is used for setting a target restart marker bit under the condition that the comparison result indicates that the current initialization state is inconsistent with the historical initialization state;
And the restarting module is used for executing restarting operation on the server based on the target type of the target restarting zone bit and the numerical value of the target restarting zone bit under the condition that the initialization of the target channel is completed and the server needs to restart.
20. A computer-readable storage medium comprising,
The computer readable storage medium has stored therein a computer program, wherein the computer program when executed by a processor realizes the steps of the method as claimed in any of claims 1 to 17.
21. A server comprising a memory, a processor and a computer program stored on said memory and executable on said processor, characterized in that,
The processor, when executing the computer program, implements the steps of the method as claimed in any one of claims 1 to 17.
22. A computer program product comprising a computer program, characterized in that,
Which computer program, when being executed by a processor, carries out the steps of the method as claimed in any one of claims 1 to 17.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410671166.XA CN118245292A (en) | 2024-05-28 | 2024-05-28 | Server restarting method and device, storage medium and server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410671166.XA CN118245292A (en) | 2024-05-28 | 2024-05-28 | Server restarting method and device, storage medium and server |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118245292A true CN118245292A (en) | 2024-06-25 |
Family
ID=91552984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410671166.XA Pending CN118245292A (en) | 2024-05-28 | 2024-05-28 | Server restarting method and device, storage medium and server |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118245292A (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110633110A (en) * | 2019-08-30 | 2019-12-31 | 苏州浪潮智能科技有限公司 | Server starting method, equipment and storage medium |
CN114138527A (en) * | 2021-11-12 | 2022-03-04 | 浪潮电子信息产业股份有限公司 | Method, device and medium for improving performance of server |
US20230393944A1 (en) * | 2020-11-11 | 2023-12-07 | Inspur Suzhou Intelligent Technology Co., Ltd. | Method and apparatus for data interaction between server bios and bmc, and device |
CN117573435A (en) * | 2023-11-23 | 2024-02-20 | 苏州元脑智能科技有限公司 | Server restarting method and device, storage medium and electronic equipment |
CN117729092A (en) * | 2023-08-02 | 2024-03-19 | 荣耀终端有限公司 | Method for determining restart reason and electronic equipment |
CN117827294A (en) * | 2024-02-29 | 2024-04-05 | 苏州元脑智能科技有限公司 | Memory starting processing method and device |
-
2024
- 2024-05-28 CN CN202410671166.XA patent/CN118245292A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110633110A (en) * | 2019-08-30 | 2019-12-31 | 苏州浪潮智能科技有限公司 | Server starting method, equipment and storage medium |
US20230393944A1 (en) * | 2020-11-11 | 2023-12-07 | Inspur Suzhou Intelligent Technology Co., Ltd. | Method and apparatus for data interaction between server bios and bmc, and device |
CN114138527A (en) * | 2021-11-12 | 2022-03-04 | 浪潮电子信息产业股份有限公司 | Method, device and medium for improving performance of server |
CN117729092A (en) * | 2023-08-02 | 2024-03-19 | 荣耀终端有限公司 | Method for determining restart reason and electronic equipment |
CN117573435A (en) * | 2023-11-23 | 2024-02-20 | 苏州元脑智能科技有限公司 | Server restarting method and device, storage medium and electronic equipment |
CN117827294A (en) * | 2024-02-29 | 2024-04-05 | 苏州元脑智能科技有限公司 | Memory starting processing method and device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7783877B2 (en) | Boot-switching apparatus and method for multiprocessor and multi-memory system | |
CN111488233A (en) | Method and system for processing bandwidth loss problem of PCIe device | |
US7953831B2 (en) | Method for setting up failure recovery environment | |
CN108228374B (en) | Equipment fault processing method, device and system | |
WO2018095107A1 (en) | Bios program abnormal processing method and apparatus | |
CN114116280B (en) | Interactive BMC self-recovery method, system, terminal and storage medium | |
US7194614B2 (en) | Boot swap method for multiple processor computer systems | |
US20200151048A1 (en) | System for configurable error handling | |
CN111966380A (en) | BMC (baseboard management controller) firmware upgrading method, system, terminal and storage medium | |
CN115658113A (en) | Server self-starting method and device, readable storage medium and electronic equipment | |
WO2000079390A1 (en) | Updating microprocessor boot software | |
CN111506331A (en) | Server BMC refreshing method, system, terminal and storage medium | |
CN106411643B (en) | BMC detection method and device | |
CN111221683A (en) | Double-flash hot backup method, system, terminal and storage medium for data center switch | |
CN118245292A (en) | Server restarting method and device, storage medium and server | |
CN116185510A (en) | Partition switch starting method, array server and computer readable storage medium | |
CN107179911B (en) | Method and equipment for restarting management engine | |
CN112052024A (en) | Upgrading method, device, equipment and medium for BIOS of mega-core server | |
TWI554876B (en) | Method for processing node replacement and server system using the same | |
KR102262942B1 (en) | Gateway self recovery method by the wireless bridge of wireless network system system | |
TWI715005B (en) | Monitor method for demand of a bmc | |
CN113687843B (en) | Method for automatically recovering firmware of baseboard management controller | |
CN118227389A (en) | Management method, system, computer device and storage medium for server smart card | |
CN117349062A (en) | BIOS fault processing method, system, device, equipment and medium | |
CN114189305B (en) | Time synchronization method, device, equipment and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |