Storage cluster system upgrade methods, devices, electronic equipment, media and products
By receiving and inspecting upgrade packages, determining the target upgrade mode, and performing phased upgrades on storage cluster group nodes, the problem of business interruption and time consumption caused by controller restarts during storage cluster system upgrades was solved, achieving uninterrupted and efficient upgrades.
Patent Information
- Application Number
- CN202511055317.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-30
- Publication Date
- 2025-10-31
- Estimated Expiration
- 2045-07-30
AI Technical Summary
The existing storage cluster system upgrade process suffers from issues such as service interruption, lengthy processing time, and reduced reliability due to forced controller restarts.
By receiving the upgrade package and obtaining the current status of the fast upgrade function, a pre-check condition is performed, the upgrade package is decompressed and a pre-upgrade check is performed, the target upgrade mode is determined based on the check results and status, and the group nodes of the storage cluster are upgraded in stages to avoid controller restart.
It enables uninterrupted upgrades of the storage system, improving business continuity and upgrade efficiency, and ensuring system consistency.
Smart Images

Figure CN120560693B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a method, apparatus, electronic device, medium and product for upgrading a storage cluster system. Background Technology
[0002] With the acceleration of digital transformation across industries, the demand for data storage is increasing. More and more customers are using large-scale storage as their core data storage medium. Customers have increasingly stringent requirements for the performance, stability, and reliability of storage systems, and their efficient and stable operation has become a prerequisite for the stable operation of customer businesses.
[0003] As a complex distributed software system, storage cluster systems involve not only underlying firmware (such as BMC (Baseboard Management Controller), BIOS (Basic Input / Output System), and CPLD (Complex Programmable Logic Device), but also firmware and driver management for various external cards, as well as diverse high-level functions. Therefore, introducing new storage features, fixing bugs, improving performance, and patching security vulnerabilities inevitably triggers system software upgrades. Since storage clusters directly support critical business operations, users and system administrators generally expect upgrades to be completed quickly and seamlessly, minimizing disruption to business operations and achieving zero-impact on the business.
[0004] However, as a cluster system, storage cluster software typically employs a dual-controller or multi-controller architecture. To ensure the effectiveness of upgrades and product consistency, current storage system upgrade mechanisms generally use a controller restart strategy. This results in a lengthy and inefficient upgrade process, with only one controller operating during the upgrade, reducing controller redundancy and significantly lowering the overall system reliability, making it difficult to meet users' requirements for high reliability and business continuity. Therefore, how to shorten upgrade time and minimize controller restarts has become a critical technical challenge that urgently needs to be addressed in this field. Summary of the Invention
[0005] This application provides a storage cluster system upgrade method, apparatus, electronic device, medium, and product to solve the problems of business interruption, lengthy time consumption, and reduced reliability caused by forced controller restart during existing storage cluster upgrades. It realizes uninterrupted upgrade of storage systems, avoids controller restart while ensuring system consistency, and significantly improves business continuity and upgrade efficiency.
[0006] To achieve the above objectives, the first aspect of this application proposes a method for upgrading a storage cluster system, comprising the following steps:
[0007] Receive the current upgrade package and obtain the current status of the fast upgrade function;
[0008] If the current upgrade package meets the pre-inspection conditions, the current upgrade package is decompressed, and a pre-upgrade check is performed on the decompressed upgrade package to obtain the pre-upgrade check results;
[0009] Based on the pre-upgrade check results and the current status of the fast upgrade function, the target upgrade mode of the current storage cluster system is determined, and the group nodes of the storage cluster are upgraded in stages based on the target upgrade mode to complete the upgrade of the current storage cluster system.
[0010] Through the above technical means, the problems of business interruption, long time consumption and reduced reliability caused by forced controller restart during the upgrade of existing storage clusters are solved. The upgrade of storage systems is achieved without interruption, which avoids controller restart while ensuring system consistency and significantly improves business continuity and upgrade efficiency.
[0011] According to the storage cluster system upgrade method proposed in this application, if the current upgrade package meets the pre-inspection conditions, the current upgrade package is decompressed and a pre-upgrade check is performed. Based on the pre-upgrade check results and the current status of the fast upgrade function, the target upgrade mode of the current storage cluster system is determined, and the group nodes of the storage cluster are upgraded in stages to complete the upgrade of the current storage cluster system. This solves the problems of business interruption, lengthy processing time, and reduced reliability caused by forced controller restarts in existing storage cluster upgrades, achieving uninterrupted upgrades of the storage system. It avoids controller restarts while ensuring system consistency, significantly improving business continuity and upgrade efficiency.
[0012] To achieve the above objectives, a second aspect of this application provides a storage cluster system upgrade apparatus, comprising:
[0013] The acquisition module is used to receive the current upgrade package and obtain the current status of the fast upgrade function;
[0014] The processing module is used to decompress the current upgrade package when the current upgrade package meets the pre-inspection conditions, and to perform a pre-upgrade check on the decompressed upgrade package to obtain the pre-upgrade check result;
[0015] The upgrade module is used to determine the target upgrade mode of the current storage cluster system based on the pre-upgrade check results and the current status of the fast upgrade function, and to perform phased upgrades on the group nodes of the storage cluster based on the target upgrade mode to complete the upgrade of the current storage cluster system.
[0016] According to the storage cluster system upgrade apparatus proposed in this application, when the current upgrade package meets the pre-inspection conditions, the current upgrade package is decompressed and a pre-upgrade check is performed. Based on the pre-upgrade check results and the current status of the fast upgrade function, the target upgrade mode of the current storage cluster system is determined, and the group nodes of the storage cluster are upgraded in stages to complete the upgrade of the current storage cluster system. This solves the problems of service interruption, lengthy processing time, and reduced reliability caused by forced controller restarts in existing storage cluster upgrades, achieving uninterrupted upgrades of the storage system. It avoids controller restarts while ensuring system consistency, significantly improving business continuity and upgrade efficiency.
[0017] To achieve the above objectives, a third aspect of this application provides an electronic device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the storage cluster system upgrade method as described in the above embodiments.
[0018] To achieve the above objectives, a fourth aspect of this application provides a non-volatile computer-readable storage medium storing a computer program thereon, which is executed by a processor to implement the storage cluster system upgrade method as described in the above embodiments.
[0019] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description
[0020] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0021] Figure 1 This is a flowchart illustrating a storage cluster system upgrade method according to an embodiment of this application;
[0022] Figure 2 This is a flowchart of a storage system pre-upgrade inspection and configuration decision-making process according to an embodiment of this application;
[0023] Figure 3 This is a flowchart illustrating the execution of a storage cluster rolling upgrade and controller restart strategy according to an embodiment of this application.
[0024] Figure 4 This is a block diagram of a storage cluster system upgrade method apparatus according to an embodiment of this application;
[0025] Figure 5 This is a schematic diagram of the structure of an electronic device provided according to an embodiment of this application. Detailed Implementation
[0026] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.
[0027] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0028] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0029] Those skilled in the art will understand that although the prior art takes into account rapid upgrades by considering inter-module compatibility, whether patch packages need to be remade, and narrowing the scope of repeated uninstallation and reloading, it cannot flexibly select the upgrade scope according to the actual scenario for complex storage cluster system software with high coupling between modules. This results in the need to restart the controller after the upgrade, and cannot effectively solve the problem of long upgrade time caused by controller restart during the upgrade.
[0030] Based on the problems existing in the prior art, this application flexibly selects the upgrade scope and upgrade waiting time when upgrading the storage cluster system software according to the use scenario, minimizes the upgrade time, and flexibly controls whether the controller restarts during the upgrade process. This not only improves customer satisfaction and product reliability, but also ensures that the equipment and services obtain critical security protection more quickly, reducing the risks caused by vulnerability exposure or product defects.
[0031] The following description, with reference to the accompanying drawings, outlines a storage cluster system upgrade method, apparatus, electronic device, medium, and product based on embodiments of this application.
[0032] Specifically, Figure 1 This is a flowchart of an embodiment of the early warning method based on ensemble learning in this application.
[0033] For example, such as Figure 1As shown, the upgrade method for this storage cluster system includes the following steps:
[0034] In step S101, the current upgrade package is received, and the current status of the fast upgrade function is obtained.
[0035] The current status of the fast upgrade function refers to the identifier that the user explicitly sets through the configuration interface or API to determine the upgrade mode selection. The current status of the fast upgrade function includes the enabled and disabled states.
[0036] Specifically, in this embodiment of the application, the upgrade package file can be uploaded through the configuration node of the storage cluster, and the current status of the fast upgrade function can be obtained through the user configuration interface. No specific limitations are made here.
[0037] For example, customers can choose whether they need to upgrade the firmware of BMC, BIOS, CPLD, and external cards. If they do not need to upgrade the firmware of BMC, BIOS, CPLD, and external cards, they can enable fast upgrade, meaning the current status of the fast upgrade function is enabled. If they need to upgrade the firmware of BMC, BIOS, CPLD, and external cards, they will not enable fast upgrade, meaning the current status of the fast upgrade function is disabled.
[0038] Furthermore, in some embodiments, after receiving the current upgrade package, the method further includes: determining whether the storage cluster is configured with Network Attached Storage (NAS); if the storage cluster is configured with NAS, then the current waiting time is configured to a first preset time; otherwise, the current waiting time is configured to a second preset time; wherein the first preset time is longer than the second preset time.
[0039] Optionally, the first preset duration can be 30 minutes, and the second preset duration can be 1 minute; no specific limitation is made here.
[0040] Specifically, after receiving the current upgrade package, this embodiment of the application needs to perform storage cluster service type detection and wait time configuration. By determining whether the storage cluster is configured with network attached storage service, a differentiated upgrade waiting strategy is dynamically adapted. If NAS service is detected, the upgrade waiting time is set to a first preset time (30 minutes); if NAS service is not configured, a second preset time (1 minute) is used, thereby shortening the overall upgrade time.
[0041] It should be noted that NAS services have stringent requirements for the continuity of input / output and session maintenance of the storage system. Through the differentiated latency strategies described above, the upgrade process ensures data security while reducing overall time to an acceptable range for business operations, achieving a balance between storage cluster reliability and timeliness.
[0042] In step S102, if the current upgrade package meets the pre-inspection conditions, the current upgrade package is decompressed, and a pre-upgrade check is performed on the decompressed upgrade package to obtain the pre-upgrade check result.
[0043] Furthermore, in some embodiments, if the current upgrade package meets the pre-check conditions, the method further includes: if the current fast upgrade function is enabled, determining whether the current storage cluster system version supports fast upgrade to the target upgrade version corresponding to the current upgrade package; if the current storage cluster system version does not support fast upgrade to the target upgrade version corresponding to the current upgrade package, generating a reminder message and providing a reminder that fast upgrade is not supported based on the reminder message.
[0044] In this embodiment of the application, the pre-inspection condition can be to determine whether the current upgrade package meets the requirements of integrity and legality by checking the current upgrade package.
[0045] Specifically, in the fast upgrade process, when the user has actively enabled the fast upgrade switch before the upgrade (i.e., the fast upgrade function is currently enabled), the upgrade package is first checked for integrity and legality. A bidirectional compatibility analysis is then performed between the current storage cluster system's running version and the target version carried in the upgrade package to determine if there is a technical path that can directly complete the fast upgrade. If the analysis results show that there are firmware differences (including but not limited to BMC, BIOS, CPLD, and external card firmware), interface changes, or dependencies between the current system version and the target version that do not meet the fast upgrade requirements—meaning the current version does not support a fast upgrade to the target version—a structured reminder message is immediately generated, prompting the user that the current running version does not support a fast upgrade to the target version and reminding the user to pay attention to the results of subsequent pre-upgrade checks.
[0046] Furthermore, if the user has not enabled the fast upgrade switch, that is, the current fast upgrade function is in the off state, the above compatibility determination step will be skipped directly, and the subsequent upgrade process will proceed.
[0047] Therefore, by performing version compatibility verification in advance, the risk of system inconsistency caused by forced rapid upgrades can be effectively avoided, while ensuring the efficiency of process execution in non-rapid upgrade scenarios.
[0048] Furthermore, configure the nodes to decompress the upgrade package and perform pre-upgrade checks to check whether the cluster meets the upgrade requirements, such as whether the nodes in the cluster are redundant, and whether there are serious fault alarms that hinder the upgrade, and obtain the pre-upgrade check results.
[0049] In step S103, the target upgrade mode of the current storage cluster system is determined based on the pre-upgrade inspection results and the current status of the fast upgrade function. Based on the target upgrade mode, the group nodes of the storage cluster are upgraded in stages to complete the upgrade of the current storage cluster system.
[0050] Furthermore, in some embodiments, determining the target upgrade mode of the current storage cluster system based on the pre-upgrade check results and the current status of the fast upgrade function includes: if the current fast upgrade function is enabled and the pre-upgrade check result is "check passed", then the target upgrade mode is determined to be the preset fast upgrade mode; if the current fast upgrade function is enabled and the pre-upgrade check result is "check failed", then a user confirmation instruction is obtained; if the user confirmation instruction is to confirm the fast upgrade, then the target upgrade mode is determined to be the preset fast upgrade mode; if the user confirmation instruction is to cancel the fast upgrade, then the target upgrade mode is determined to be the preset normal upgrade mode.
[0051] Specifically, in this application embodiment, the target upgrade mode is determined by checking whether the conditions for rapid upgrade are met and whether the target version to be upgraded from the current version involves firmware upgrade.
[0052] When the fast upgrade switch is on, the results of the previously completed upgrade package check are reused first: if the result shows that there are no firmware-level differences between the current running version and the target version and all dependency conditions are met, then the target upgrade mode is directly determined to be the preset fast upgrade mode, and a fast upgrade identifier is written into the decompressed upgrade file set, and the next stage of distribution and upgrade process is entered without repeating any additional pre-checks.
[0053] Furthermore, when the fast upgrade switch is enabled, if the upgrade package check indicates issues such as firmware version inconsistencies, interface changes, or missing critical dependencies hindering the fast upgrade (i.e., the upgrade package check fails), a detailed risk report is immediately generated based on the actual check results. The report lists all firmware components that must be upgraded simultaneously and their corresponding version numbers, and quantifies the compatibility, stability, and security risks that may arise from not performing the firmware upgrade. This report can be presented synchronously through the management interface and the log system, triggering a secondary confirmation interaction. If the user explicitly chooses to continue the fast upgrade, a fast upgrade identifier is added to the unzipped upgrade file, and subsequent steps are performed in fast upgrade mode. If the user chooses to cancel the fast upgrade, the target upgrade mode is automatically switched to normal upgrade mode for the next upgrade step.
[0054] This approach ensures both flexibility in upgrades and prudence in critical operations through mandatory risk assessment steps, thus balancing operational efficiency with system reliability.
[0055] Furthermore, in some embodiments, determining the target upgrade mode of the current storage cluster system based on the pre-upgrade check results and the current status of the fast upgrade function further includes: if the current status of the fast upgrade function is off, determining whether the decompressed upgrade package involves firmware upgrade based on the pre-upgrade check results; if the decompressed upgrade package does not involve firmware upgrade, determining the target upgrade mode as the preset fast upgrade mode; otherwise, determining the target upgrade mode as the preset normal upgrade mode.
[0056] Specifically, when the fast upgrade function is disabled, a pre-upgrade check is performed immediately after the upgrade package is decompressed to determine whether the change involves any firmware-level content. If the check results indicate that the upgrade package does not contain version updates for the Baseboard Management Controller (BMC), Basic Input / Output System (BIOS), Complex Programmable Logic Device (CPLD), or external card firmware, the target upgrade mode is re-evaluated and automatically adjusted to the preset fast upgrade mode. Simultaneously, a fast upgrade identifier is added to the decompressed upgrade file so that subsequent scripts can use this identifier to execute an incremental upgrade process that does not require a controller restart.
[0057] Conversely, if the inspection finds that the upgrade package contains any of the above firmware version changes, the default decision is maintained, the target upgrade mode is set to normal upgrade mode, and the complete upgrade path including firmware burning, service shutdown, controller restart and integrity verification is entered to ensure the consistency and reliability of the firmware and the upper software stack.
[0058] Therefore, by using the above-mentioned technical means, we can both meet users' needs for upgrade flexibility and avoid system reliability risks caused by improper mode selection.
[0059] Furthermore, in some embodiments, the storage cluster nodes are upgraded in stages based on a target upgrade mode to complete the upgrade of the current storage cluster system. This includes: dividing the storage cluster nodes into a first group of nodes and a second group of nodes; when performing an upgrade operation on the first group of nodes, if the target upgrade mode is a preset fast upgrade mode, then no restart operation is performed on the current controller; otherwise, a restart operation is performed on the current controller; when the first group of nodes completes the upgrade operation, an upgrade operation is performed on the second group of nodes; if the target upgrade mode is a preset fast upgrade mode, then no restart operation is performed on the current controller; otherwise, a restart operation is performed on the current controller; when the second group of nodes completes the upgrade operation, the upgrade of the current storage cluster system is determined to be complete.
[0060] Specifically, the configuration node first distributes the upgrade package that has passed the integrity verification to all nodes in the cluster that are to be upgraded in parallel, and divides all nodes into a first group of nodes and a second group of nodes in order to achieve rolling upgrades and maintain business continuity.
[0061] For the upgrade process of the first group of nodes, the fast upgrade flag in the upgrade file is read first. Based on the fast upgrade flag, the actions to be executed by the upgrade script are determined. If the fast upgrade flag exists and is valid, the script only performs the overwrite and replacement of service-level files, without performing firmware upgrade-related checks or file replacements, and without restarting the controller. If the fast upgrade flag does not exist, i.e., the upgrade mode is a normal upgrade, the script sequentially executes the following steps: service stop, all file replacement, permission modification, symbolic link reconstruction, service restart, and controller restart, ultimately starting all relevant services to ensure the new version environment is ready.
[0062] After the first group of nodes completes its upgrade, status stability monitoring is performed based on a pre-configured waiting time. Once the upgraded nodes have stabilized, the second group of nodes is upgraded using the same strategy. In fast upgrade mode, the controller is not restarted, while in normal upgrade mode, the complete restart process is executed. Once the second group of nodes has also completed its upgrade and passed status verification, all nodes in the cluster are running the new version. At this point, the cluster-level components on each node begin a consistent switch, indicating that the upgrade process for the entire storage cluster system is complete.
[0063] Therefore, the above technical solutions allow for flexible selection of whether the controller needs to be restarted during storage cluster system upgrades, thereby enabling rapid upgrades, shortening upgrade time, and improving user satisfaction.
[0064] To facilitate a clearer understanding of the implementation process of the rapid upgrade method for storage cluster system software in the embodiments of this application, the following is a detailed explanation. Figure 2 and Figure 3 Please provide a detailed explanation.
[0065] The rapid upgrade scheme in this embodiment involves seven stages: uploading the upgrade package and selecting whether to upgrade quickly and the waiting time, upgrading the upgrade package, distributing the upgrade package, upgrading the first group of nodes, waiting for the upgraded nodes to check, upgrading the second group of nodes, and upgrading the cluster system.
[0066] For ease of understanding, the rapid upgrade solution is divided into a storage system pre-upgrade inspection and configuration decision process and a storage cluster rolling upgrade and controller restart strategy execution process.
[0067] First, combined Figure 2 This section introduces the pre-upgrade inspection and configuration decision-making process for storage systems.
[0068] Specifically, such as Figure 2As shown, the process first involves uploading the upgrade package and configuring a waiting time, which can be set by the user or the system. Next, the system configures whether to enable fast upgrades to determine if a fast upgrade strategy will be enabled subsequently. After configuration, upgrade package integrity and validity checks are performed; if the check fails, the process terminates directly; if the check passes, the system proceeds to determine whether to configure fast upgrade nodes.
[0069] In the configuration check for fast upgrade nodes, the system determines whether fast upgrade is enabled based on the user's previous selection. If enabled, it further checks whether the current version supports fast upgrade to the target version; if not, a warning is generated indicating that fast upgrade is not supported, and the user is prompted to pay attention to the results of subsequent pre-upgrade checks. Regardless of support, the system proceeds to the unzipping upgrade package stage. If fast upgrade was not previously configured, the support check is skipped, and the system directly proceeds to unzipping the upgrade package.
[0070] After decompression, determine if the cluster environment supports the upgrade and verify the feasibility of upgrading the entire cluster environment. If the verification result is not supported, the process ends; if supported, determine whether to configure fast upgrade. If fast upgrade is not configured at this point, continue to determine if firmware upgrade is involved. If fast upgrade is configured, determine whether the upgrade package check passes. If the upgrade package check fails, check the firmware upgrade status involved in the upgrade package, report the firmware that needs to be upgraded and the main risks of not upgrading, and determine whether the user confirms fast upgrade. If fast upgrade is confirmed, add a fast upgrade flag and continue with subsequent upgrade package distribution; otherwise, directly distribute the upgrade package.
[0071] In addition, after determining whether a firmware upgrade is involved, the following steps are also taken: if a firmware upgrade is involved, the upgrade package is distributed directly; if no firmware upgrade is involved, a fast upgrade flag is added and subsequent upgrade packages are distributed.
[0072] Secondly, combining Figure 3 This section describes the execution process of storage cluster rolling upgrade and controller restart strategies.
[0073] First, the upgrade package is distributed. After the configuration node pushes the upgrade package to all nodes in the cluster in parallel, the nodes are divided into two groups and rolled upgrades are performed sequentially. During the upgrade phase of the first group of nodes, the upgrade script first reads the fast upgrade flag in the upgrade file: if the flag exists, the script only performs service-level file replacement and hot reload, exempting the controller from restarting; if the flag does not exist, the complete restart process is executed.
[0074] After the first group of nodes completes its upgrade, the system waits for the upgraded nodes to stabilize and monitors their status until they are fully integrated into the cluster and providing services. The same logic is then applied to the second group of nodes, skipping the controller restart if a fast upgrade flag is present; otherwise, a restart is performed. Once the second group of nodes has also completed its upgrade and passed stability verification, the cluster component upgrade process is triggered, and the new version of the cluster module on each node completes a consistent switch, ending the upgrade process.
[0075] To help those skilled in the art to understand more clearly and intuitively the rapid upgrade method for storage cluster system software in the embodiments of this application, a detailed description is provided below with specific examples.
[0076] In this embodiment, the dual-controller cluster system software is upgraded from version 1 to version 2. This does not involve firmware upgrades for the BMC, BIOS, CPLD, etc. However, because the contents of the upgrade package cannot be predicted before the upgrade, the fast upgrade parameter was not selected out of caution. The specific implementation process is as follows:
[0077] Step 1: Log in to the storage cluster system. Through the graphical interface of the login device, upload the upgrade check file (update_check) and the version 2 upgrade file in the system update interface. Since the customer's environment is not configured with NAS services, select a waiting time of 1 minute during the upgrade. Do not select fast upgrade, and then start the upgrade.
[0078] Step 2: After the upgrade package is uploaded, the upgrade package check will start automatically and pass the check.
[0079] Step 3: Configure the node to decompress the upgrade package, and perform an upgrade environment test. Since the target version supports fast upgrade, a fast upgrade indicator is added here.
[0080] Step 4: Configure the node to start distributing the upgrade package to other nodes.
[0081] Step 5: The first group of nodes begins the upgrade. In this example, the upgrade begins on a non-configured node. The upgrade script completes the service stop, file replacement, permission modification, soft link reconstruction, service restart, and revives all related services, without restarting the controller.
[0082] Step 6: Wait for the first group of nodes to upgrade, join the cluster, and stabilize.
[0083] Step 7: Start the upgrade of the second group of nodes. The upgrade process is the same as in Step 5, but the controller is not restarted.
[0084] Step 8: Wait for the node to join the cluster and for its state to stabilize.
[0085] Step 9: Cluster components begin upgrading.
[0086] Therefore, this invention proposes a method for rapid upgrade of storage cluster system software. Users can flexibly choose whether to upgrade quickly and the waiting time after upgrading between nodes based on their business situation and the actual changes in the upgrade package. The upgrade program flexibly controls whether to upgrade quickly based on customer configuration and the actual scope of changes in the upgrade package, which greatly improves the flexibility of storage cluster system software upgrades. Upgrades can be completed quickly without restarting the controller according to the actual situation, greatly shortening the upgrade time and improving customer satisfaction.
[0087] According to the storage cluster system upgrade method proposed in this application, if the current upgrade package meets the pre-inspection conditions, the current upgrade package is decompressed and a pre-upgrade check is performed. Based on the pre-upgrade check results and the current status of the fast upgrade function, the target upgrade mode of the current storage cluster system is determined, and the group nodes of the storage cluster are upgraded in stages to complete the upgrade of the current storage cluster system. This solves the problems of service interruption, lengthy processing time, and reduced reliability caused by forced controller restarts in existing storage cluster upgrades. Customers can customize the upgrade method according to their actual scenarios. It also integrates the ability to independently determine whether a fast upgrade is possible. Even if users use the default upgrade strategy, an optimized upgrade solution can be achieved. This method enables a comprehensive judgment on whether a fast upgrade is possible based on the actual upgrade scenario, greatly optimizing the upgrade process and improving the flexibility of storage cluster upgrades.
[0088] Next, the storage cluster system upgrade apparatus proposed according to the embodiments of this application is described with reference to the accompanying drawings.
[0089] Figure 4 This is a block diagram of a storage cluster system upgrade device according to an embodiment of this application.
[0090] like Figure 4 As shown, the storage cluster system upgrade 10 includes: an acquisition module 100, a processing module 200, and an upgrade module 300.
[0091] The module includes an acquisition module 100, which receives the current upgrade package and obtains the status of the current fast upgrade function; a processing module 200, which decompresses the current upgrade package if it meets the pre-inspection conditions, performs a pre-upgrade check on the decompressed upgrade package, and obtains the pre-upgrade check result; and an upgrade module 300, which determines the target upgrade mode of the current storage cluster system based on the pre-upgrade check result and the status of the current fast upgrade function, and performs a phased upgrade on the group nodes of the storage cluster based on the target upgrade mode to complete the upgrade of the current storage cluster system.
[0092] Furthermore, in some embodiments, the upgrade module 300 is configured to: determine the target upgrade mode as the preset fast upgrade mode when the current fast upgrade function is enabled and the pre-upgrade check result is "check passed"; and obtain a user confirmation instruction when the current fast upgrade function is enabled and the pre-upgrade check result is "check failed". If the user confirmation instruction is "confirm fast upgrade", the target upgrade mode is determined to be the preset fast upgrade mode; if the user confirmation instruction is "cancel fast upgrade", the target upgrade mode is determined to be the preset normal upgrade mode.
[0093] Furthermore, in some embodiments, the upgrade module 300 is also configured to: if the current fast upgrade function is in a closed state, determine whether the decompressed upgrade package involves firmware upgrade based on the pre-upgrade check results; if the decompressed upgrade package does not involve firmware upgrade, determine the target upgrade mode as the preset fast upgrade mode; otherwise, determine the target upgrade mode as the preset normal upgrade mode.
[0094] Furthermore, in some embodiments, the upgrade module 300 is configured to: divide the storage cluster nodes into a first group of nodes and a second group of nodes; when performing an upgrade operation on the first group of nodes, if the target upgrade mode is a preset fast upgrade mode, then no restart operation is performed on the current controller; otherwise, a restart operation is performed on the current controller; when the first group of nodes completes the upgrade operation, perform an upgrade operation on the second group of nodes; if the target upgrade mode is a preset fast upgrade mode, then no restart operation is performed on the current controller; otherwise, a restart operation is performed on the current controller; when the second group of nodes completes the upgrade operation, determine that the upgrade of the current storage cluster system is complete.
[0095] Furthermore, in some embodiments, after receiving the current upgrade package, the acquisition module 100 is further configured to: determine whether the storage cluster is configured with network-attached storage service; if the storage cluster is configured with network-attached storage service, configure the current waiting time to a first preset time; otherwise, configure the current waiting time to a second preset time; wherein the first preset time is longer than the second preset time.
[0096] Furthermore, in some embodiments, when the current upgrade package meets the pre-inspection conditions, the processing module 200 is further configured to: if the current fast upgrade function is enabled, determine whether the system version of the current storage cluster system supports fast upgrade to the target upgrade version corresponding to the current upgrade package; if the system version of the current storage cluster system does not support fast upgrade to the target upgrade version corresponding to the current upgrade package, generate a reminder message and provide a reminder that fast upgrade is not supported based on the reminder message.
[0097] It should be noted that the foregoing explanation of the storage cluster system upgrade method embodiment also applies to the storage cluster system upgrade device of this embodiment, and will not be repeated here.
[0098] According to the storage cluster system upgrade apparatus proposed in this application, when the current upgrade package meets the pre-inspection conditions, the current upgrade package is decompressed and a pre-upgrade check is performed. Based on the pre-upgrade check results and the current status of the fast upgrade function, the target upgrade mode of the current storage cluster system is determined, and the group nodes of the storage cluster are upgraded in stages to complete the upgrade of the current storage cluster system. This solves the problems of service interruption, lengthy processing time, and reduced reliability caused by forced controller restarts in existing storage cluster upgrades, achieving uninterrupted upgrades of the storage system. It avoids controller restarts while ensuring system consistency, significantly improving business continuity and upgrade efficiency.
[0099] Figure 5 A schematic diagram of the structure of an electronic device provided in an embodiment of this application. The electronic device may include:
[0100] The memory 501, the processor 502, and the computer program stored on the memory 501 and capable of running on the processor 502.
[0101] When processor 502 executes the program, it implements the server security authentication method provided in the above embodiments.
[0102] Furthermore, electronic devices also include:
[0103] Communication interface 503 is used for communication between memory 501 and processor 502.
[0104] The memory 501 is used to store computer programs that can run on the processor 502.
[0105] The memory 501 may include high-speed RAM (Random Access Memory) memory, and may also include non-volatile memory, such as at least one disk storage.
[0106] If the memory 501, processor 502, and communication interface 503 are implemented independently, then the communication interface 503, memory 501, and processor 502 can be interconnected via a bus to complete communication between them. The bus can be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus, etc. The bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 5 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.
[0107] Optionally, in a specific implementation, if the memory 501, processor 502, and communication interface 503 are integrated on a single chip, then the memory 501, processor 502, and communication interface 503 can communicate with each other through an internal interface.
[0108] The processor 502 may be a CPU (Central Processing Unit), an ASIC (Application Specific Integrated Circuit), or one or more integrated circuits configured to implement the embodiments of this application.
[0109] This application also provides a non-volatile computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the server security authentication method described above.
[0110] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0111] The above provides a detailed description of a server security authentication method provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are merely for the purpose of helping to understand the method and its core ideas. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A method for upgrading a storage cluster system, characterized in that, Includes the following steps: Receive the current upgrade package and obtain the status of the current fast upgrade function, wherein the current fast upgrade function is used to prevent the controller from being restarted during the current storage cluster system upgrade process; If the current upgrade package meets the pre-inspection conditions, the current upgrade package is decompressed, and a pre-upgrade check is performed on the decompressed upgrade package to obtain the pre-upgrade check results; Based on the pre-upgrade check results and the current status of the fast upgrade function, the target upgrade mode of the current storage cluster system is determined, and the group nodes of the storage cluster are upgraded in stages based on the target upgrade mode to complete the upgrade of the current storage cluster system.
2. The method according to claim 1, characterized in that, Determining the target upgrade mode for the current storage cluster system based on the pre-upgrade check results and the current status of the fast upgrade function includes: If the current fast upgrade function is enabled and the pre-upgrade check result is passed, then the target upgrade mode is determined to be the preset fast upgrade mode. If the current fast upgrade function is enabled and the pre-upgrade check result is "check failed", then a user confirmation command is obtained. If the user confirmation command confirms fast upgrade, then the target upgrade mode is determined to be the preset fast upgrade mode. If the user confirmation command cancels fast upgrade, then the target upgrade mode is determined to be the preset normal upgrade mode.
3. The method according to claim 1, characterized in that, The step of determining the target upgrade mode for the current storage cluster system based on the pre-upgrade check results and the current status of the fast upgrade function further includes: If the current fast upgrade function is in the off state, then determine whether the decompressed upgrade package involves firmware upgrade based on the pre-upgrade check results; If the decompressed upgrade package does not involve firmware upgrade, then the target upgrade mode is determined to be the preset fast upgrade mode; otherwise, the target upgrade mode is determined to be the preset normal upgrade mode.
4. The method according to claim 1, characterized in that, The phased upgrade of the group nodes of the storage cluster based on the target upgrade mode to complete the upgrade of the current storage cluster system includes: The storage cluster nodes are divided into a first group of nodes and a second group of nodes; When performing an upgrade operation on the first group of nodes, if the target upgrade mode is a preset fast upgrade mode, then the current controller will not be restarted; otherwise, the current controller will be restarted. If the first group of nodes completes the upgrade operation, the second group of nodes will be upgraded. If the target upgrade mode is the preset fast upgrade mode, the current controller will not be restarted; otherwise, the current controller will be restarted. Once the second group of nodes completes the upgrade operation, the upgrade of the current storage cluster system is deemed complete.
5. The method according to claim 1, characterized in that, After receiving the current upgrade package, it also includes: Determine whether the storage cluster is configured with network-attached storage service; If the storage cluster is configured with the network-attached storage service, the current waiting time is configured to a first preset time; otherwise, the current waiting time is configured to a second preset time. Wherein, the first preset duration is longer than the second preset duration.
6. The method according to claim 1, characterized in that, If the current upgrade package meets the pre-check conditions, it also includes: If the current fast upgrade function is enabled, then determine whether the current storage cluster system version supports fast upgrade to the target upgrade version corresponding to the current upgrade package; If the current storage cluster system version does not support a fast upgrade to the target upgrade version corresponding to the current upgrade package, a reminder message is generated, and a reminder is issued based on the reminder message indicating that a fast upgrade is not supported.
7. A storage cluster system upgrade device, characterized in that, include: The acquisition module is used to receive the current upgrade package and obtain the status of the current fast upgrade function, wherein the current fast upgrade function is used to prevent the controller from being restarted during the current storage cluster system upgrade process; The processing module is used to decompress the current upgrade package when the current upgrade package meets the pre-inspection conditions, and to perform a pre-upgrade check on the decompressed upgrade package to obtain the pre-upgrade check result; The upgrade module is used to determine the target upgrade mode of the current storage cluster system based on the pre-upgrade check results and the current status of the fast upgrade function, and to perform phased upgrades on the group nodes of the storage cluster based on the target upgrade mode to complete the upgrade of the current storage cluster system.
8. An electronic device, characterized in that, include: A memory, a processor, and a computer program stored on the memory and executable on the processor, the processor executing the computer program to implement the storage cluster system upgrade method as described in any one of claims 1-6.
9. A non-volatile computer-readable storage medium having a computer program stored thereon, characterized in that, The computer program is executed by a processor to implement the storage cluster system upgrade method as described in any one of claims 1-6.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the storage cluster system upgrade method as described in any one of claims 1-6.
Citation Information
Patent Citations
Software upgrading method for automobile instrument system and automobile instrument system
CN113900685A
Storage system upgrading method, device and equipment and computer readable storage medium
CN118631656A