Cluster storage system, upgrading method, computer device and storage medium

By establishing primary and backup system spaces in the clustered storage system and dynamically switching nodes, the problems of low upgrade efficiency and insufficient stability of the clustered storage system are solved, and an efficient and stable operating system upgrade process is achieved.

CN115576492BActive Publication Date: 2026-02-17INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211318662.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-26
Publication Date
2026-02-17
Estimated Expiration
2042-10-26

AI Technical Summary

Technical Problem

Existing cluster storage systems suffer from low upgrade efficiency and insufficient stability when upgrading node operating systems, especially when upgrading multiple nodes in parallel, which may lead to business interruption and system instability.

Method used

A primary system space and a backup system space are established in the disk array. All nodes share the operating system and dynamically switch to the primary and backup system spaces by booting the system. Combined with parallel upgrade methods, a healthy node is selected as the new primary node to ensure business continuity and stability.

Benefits of technology

It improves the stability of the cluster storage system and the efficiency of operating system upgrades, ensuring uninterrupted operation of storage services during the upgrade process and reducing upgrade time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115576492B_ABST
    Figure CN115576492B_ABST
Patent Text Reader

Abstract

This application relates to a clustered storage system, an upgrade method, a computer device, and a storage medium. The clustered storage system includes a file system and multiple nodes. The file system includes a disk array and redundant disks. A primary system space and a backup system space are established in the disk array. Both the primary system space and the backup system space store an operating system. Each node is a storage controller. All storage controllers share the operating system of the primary system space or the operating system of the backup system space. The storage controller includes a boot system. The boot system is used to boot the storage controllers of one or more nodes to the operating system of the primary system space or the operating system of the backup system space. The primary system space and backup system space based on the disk array improve the stability of the clustered storage system. The operating system upgrade method using the clustered storage system improves the upgrade efficiency of the operating system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of clustered storage, and in particular to a clustered storage system, upgrade method, computer equipment, and storage medium. Background Technology

[0002] In the current multi-node framework of clustered storage systems, each node is a storage controller, and each storage controller has its own dedicated storage space to store the operating system code of the storage controller.

[0003] For clustered storage systems with this kind of framework structure, there are usually two solutions when it is necessary to upgrade the operating system of the storage controller of the node. The first solution is to upgrade multiple nodes serially and upgrade one node at a time. The advantage of this method is that only one node is upgraded at a time, and the number of nodes online at the same time is N-1. After each node is upgraded, the system running status can be checked. If there is an anomaly in the upgraded node, it can be rolled back in time. However, the disadvantage of this method is that the upgrade time is too long and is strongly related to the number of nodes. For example, if the upgrade of a single node takes about 30 minutes, then the upgrade of 4 nodes will take 120 minutes. The second approach is to upgrade multiple nodes in parallel. First, upgrade all backup nodes simultaneously, leaving only one primary node online. After upgrading all backup nodes, check the system's operating status. If it is normal, then upgrade the last primary node. If it is abnormal, all backup nodes need to be rolled back. The advantage of this method is that simultaneous upgrades save time; upgrading a cluster of 4 nodes takes about 60 minutes (2 x 30 minutes). The disadvantage is that when upgrading all backup nodes simultaneously, only the primary node is online. If the primary node fails at this time, the service will be interrupted. Also, after upgrading all backup nodes, if an abnormality is detected in the system, all backup nodes need to be rolled back. At this time, only the primary node is still online, which is not stable enough.

[0004] Therefore, the above-mentioned problems lead to low upgrade efficiency and insufficient stability of the storage cluster system. Summary of the Invention

[0005] Based on this, this application provides a clustered storage system, an upgrade method, a computer device, and a storage medium to improve the stability of the clustered storage system and the efficiency of operating system upgrades.

[0006] On one hand, a clustered storage system is provided, comprising a file system and multiple nodes. The file system includes a disk array and redundant disks. A primary system space and a backup system space are established in the disk array. Both the primary system space and the backup system space store operating systems. Each node is a storage controller. All storage controllers share the operating system of the primary system space or the operating system of the backup system space. The storage controller includes a boot system, which is used to boot the storage controllers of one or more nodes to the operating system of the primary system space or the operating system of the backup system space.

[0007] In one embodiment, two independent storage paths are established in the disk array, one of which forms the primary system space and the other forms the backup system space.

[0008] On the other hand, an operating system upgrade method is provided, the method comprising:

[0009] Receive an upgrade instruction for the storage controller operating system to install the installation package into the backup system space, thereby generating a new operating system in the backup system space;

[0010] Enable some standby nodes and boot those standby nodes into the new operating system;

[0011] Select one of the standby nodes that has been booted to the new operating system as the new master node;

[0012] Enable the remaining standby nodes and the original master node, and boot the remaining standby nodes and the original master node to the new operating system.

[0013] In one embodiment, before receiving the upgrade instruction for the storage controller operating system, the method further includes:

[0014] The master node performs storage services normally through the operating system in the main system space;

[0015] After selecting one of the standby nodes that has been booted to the new operating system as the new master node, the process further includes:

[0016] Switch the storage service to the new master node so that the storage service can be executed normally through the new master node that has been booted to the new operating system.

[0017] In one embodiment, installing the installation package to the backup system space includes:

[0018] The installation package is installed into the backup system space, thereby generating a new operating system within the backup system space;

[0019] An integrity check is performed on the new operating system, and the backup nodes are activated after the integrity check passes.

[0020] In one embodiment, before selecting one of the standby nodes already booted to the new operating system as the new master node, the method further includes:

[0021] Perform system health checks on the new operating system running on the aforementioned spare nodes;

[0022] If the detection result of the new operating system running on the aforementioned backup nodes is healthy, then one of the backup nodes that has been booted to the new operating system will be selected as the new master node.

[0023] If the detection result of the new operating system running on the backup nodes is unhealthy, the backup nodes that have been booted to the new operating system will be rolled back to the operating system in the main system space.

[0024] In one embodiment, before activating the remaining backup node and the original primary node, the method further includes:

[0025] Perform a system health check on the new operating system running on the new master node;

[0026] If the detection result of the new operating system running on the new master node is healthy, then the remaining standby nodes and the original master node are enabled;

[0027] If the detection result of the new operating system running on the new master node is unhealthy, then the new master node will be switched back to the original master node, and the standby node that has been booted to the new operating system will be rolled back to the operating system in the main system space.

[0028] In one embodiment, after bootsting the remaining spare node and the original master node to the new operating system, the method further includes:

[0029] Perform system health checks on the new operating systems running on the remaining standby nodes and the original master node;

[0030] If the detection results of the new operating system running on the remaining standby node and the original primary node are healthy, then the standby system space where the new operating system is located will be switched to the primary system space, and the original primary system space will be switched to the standby system space.

[0031] If the detection results of the new operating system running on the remaining standby nodes and the original primary node are unhealthy, then the remaining standby nodes and the original primary node will be rolled back to the operating system in the original primary system space, and the storage services will be switched back to the original primary node. The remaining standby nodes will also be rolled back to the operating system in the original primary system space.

[0032] In another aspect, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that the processor, when executing the computer program, performs the following steps:

[0033] Receive an upgrade instruction for the storage controller operating system to install the installation package into the backup system space, thereby generating a new operating system in the backup system space;

[0034] Enable some standby nodes and boot those standby nodes into the new operating system;

[0035] Select one of the standby nodes that has been booted to the new operating system as the new master node;

[0036] Enable the remaining standby nodes and the original master node, and boot the remaining standby nodes and the original master node to the new operating system.

[0037] In another aspect, a computer-readable storage medium is provided, the computer-readable storage medium storing a program that, when executed by a processor, causes the processor to perform the following steps:

[0038] Receive an upgrade instruction for the storage controller operating system to install the installation package into the backup system space, thereby generating a new operating system in the backup system space;

[0039] Enable some standby nodes and boot those standby nodes into the new operating system;

[0040] Select one of the standby nodes that has been booted to the new operating system as the new master node;

[0041] Enable the remaining standby nodes and the original master node, and boot the remaining standby nodes and the original master node to the new operating system.

[0042] The technical solution described in this application has the following advantages over the prior art:

[0043] The aforementioned clustered storage system, upgrade method, computer equipment, and storage media establish a primary system space and a backup system space within the disk array. Both the primary and backup system spaces store the operating system. The primary and backup system spaces, based on the disk array, improve the stability of the clustered storage system. Each node acts as a storage controller, and all node storage controllers share the operating system stored in the primary and backup system spaces. Each node's storage controller is equipped with a boot system, which can boot each node's storage controller to the operating system stored in the primary and backup system spaces. This not only improves the stability of the clustered storage system but also enhances the efficiency of subsequent operating system upgrades. Attached Figure Description

[0044] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying 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.

[0045] Figure 1 This is a system architecture diagram of the clustered storage system provided in the embodiments of this application;

[0046] Figure 2 This is a flowchart of the first method of the operating system upgrade method provided in the embodiments of this application;

[0047] Figure 3 This is a flowchart of the second method of the operating system upgrade method provided in the embodiments of this application;

[0048] Figure 4 This is a device structure diagram of the computer device provided in the embodiments of this application. Detailed Implementation

[0049] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0050] Example 1:

[0051] Reference Figure 1 As shown, Figure 1 This is a system architecture diagram of the clustered storage system provided in the embodiments of this application.

[0052] The clustered storage system includes a file system and multiple nodes. The file system includes a disk array and redundant disks. The disk array establishes a primary system space and a backup system space. Both the primary system space and the backup system space store operating systems. Each node is a storage controller. All storage controllers share the operating system of the primary system space or the operating system of the backup system space. The storage controller includes a boot system, which is used to boot the storage controllers of one or more nodes to the operating system of the primary system space or the operating system of the backup system space.

[0053] In existing clustered storage systems, each node is a storage controller, and each storage controller uses its own hard drive to store its operating system files. When the hard drive storing the operating system fails, the storage controller becomes inoperable. This application proposes a clustered storage system comprising a file system and multiple nodes. The file system includes a Redundant Array of Independent Disks (RAID) and redundant disks. Therefore, the file system of this application's clustered storage system is based on a RAID array, which provides redundancy for the operating system files, thus improving the stability of the entire clustered storage system. For example, the RAID array can be RAID5, which includes at least three hard drives. Two redundant disks are set up independently of the RAID5 array. When one hard drive in the RAID5 array fails, the data stored on the failed drive can be retrieved using parity information and transferred to one of the redundant disks, thus restoring the operating system files and allowing the storage controller to resume normal storage operations. Other RAID levels can also be used besides RAID5. Furthermore, a primary system space and a backup system space are established within the disk array, both storing the operating system. This disk array-based primary and backup system space enhances the stability of the clustered storage system. Each node acts as a storage controller, and all node storage controllers share the operating system stored in the primary and backup system spaces. Each node's storage controller has a boot system containing a bootloader. This boot system guides each node's storage controller to the operating system stored in the primary and backup system spaces, improving both the stability of the clustered storage system and the efficiency of subsequent operating system upgrades. The boot system can also dynamically specify the system space to boot from when a node starts.

[0054] In one embodiment, two independent storage paths are established in the disk array, one of which forms the primary system space and the other forms the backup system space.

[0055] Two independent storage paths are established in the disk array, which means two file directories are created. One file directory forms the primary system space, and the other file directory forms the backup system space. Both the primary system space and the backup system space are used to store operating system files. The operating system files in the two system spaces are independent of each other and do not interfere with each other.

[0056] In one implementation, the node also includes a data space.

[0057] A node includes not only a boot system but also a data space, which is used to support the node's storage operations.

[0058] Example 2:

[0059] Reference Figure 2 As shown, Figure 2 A flowchart of the first method of the operating system upgrade method provided in the embodiments of this application.

[0060] Existing clustered storage systems employ either serial or parallel multi-node upgrades when upgrading the operating system of their storage controllers. Both methods are inefficient and unstable. Therefore, this application proposes an operating system upgrade method based on the clustered storage system described herein.

[0061] The node includes a primary node and a backup node, characterized in that the upgrade method includes:

[0062] S101, Receive an upgrade instruction for the storage controller operating system to install the installation package into the backup system space, thereby generating a new operating system in the backup system space;

[0063] Specifically, when it is necessary to upgrade the operating system of the storage controller, an operating system upgrade command is sent to the cluster storage system. After receiving the operating system upgrade command for the storage controller, the operating system installs the upgrade package into the standby system space. Therefore, the standby system space contains the upgraded operating system, which is called the new operating system.

[0064] S102, activate some standby nodes and boot the standby nodes to the new operating system;

[0065] Specifically, the nodes in a clustered storage system include primary nodes and standby nodes. After a new operating system is generated in the standby system space, a portion of the standby nodes are activated, referred to as partial standby nodes. Preferably, half of the standby nodes are selected as partial standby nodes. These partial standby nodes are then booted into the new operating system in the standby system space via a boot system. During normal storage operations, the primary node executes storage services normally using the operating system in the primary system space, while the remaining standby nodes are in a dormant state. When a node switch is needed, the node to be switched is activated first to conserve resources.

[0066] S103, Select one of the standby nodes that has been booted to the new operating system as the new master node;

[0067] Specifically, after some standby nodes are booted to the new operating system, the standby nodes can run on the new operating system. Once the standby nodes are running normally on the new operating system, in order to boot the primary node to the new operating system and check the compatibility between the primary node and the new operating system, the storage services running on the primary node need to be transferred to the other nodes. Therefore, one of the standby nodes running normally on the new operating system needs to be selected as the new primary node so that the storage services of the original primary node can be transferred to the new primary node to ensure the normal operation of the storage services.

[0068] S104, enable the remaining standby node and the original master node, and boot the remaining standby node and the original master node to the new operating system.

[0069] Specifically, after selecting one of the standby nodes that has been booted to the new operating system as the new primary node to continue running the storage service, there are still remaining standby nodes and the original primary node that have not been booted to the new operating system. To check the compatibility of the remaining standby nodes, the original primary node and the new operating system, it is necessary to boot the remaining standby nodes and the original primary node to the new operating system through the boot system. After the compatibility check is passed, the upgrade of the storage controller operating system is completed.

[0070] By using the above-described operating system upgrade method with a clustered storage system, we can achieve parallel upgrade efficiency, effectively save upgrade time, improve the stability of the clustered storage system, and ensure uninterrupted operation of storage services.

[0071] In one embodiment, before receiving the upgrade instruction for the storage controller operating system, the method further includes:

[0072] The master node performs storage services normally through the operating system in the main system space;

[0073] Specifically, when the storage controller operating system is not upgraded, storage services normally run on the master node, and the master node executes storage services normally through the operating system in the main system space.

[0074] After selecting one of the standby nodes that has been booted to the new operating system as the new master node, the process further includes:

[0075] Switch the storage service to the new master node so that the storage service can be executed normally through the new master node that has been booted to the new operating system.

[0076] Specifically, if an operating system upgrade is performed, one of the standby nodes that has been booted to the new operating system is selected as the new master node. After passing the health check, in order to ensure the normal operation of the storage service, the storage service needs to be switched to the new master node so that the storage service can be executed normally through the new master node that has been booted to the new operating system.

[0077] In one embodiment, installing the installation package to the backup system space includes:

[0078] The installation package is installed into the backup system space, thereby generating a new operating system within the backup system space;

[0079] Specifically, after receiving an operating system upgrade instruction for the storage controller, the cluster storage system installs the operating system upgrade package into the standby system space, thereby upgrading the operating system in the standby system space and generating a new operating system.

[0080] An integrity check is performed on the new operating system, and the backup nodes are activated after the integrity check passes.

[0081] Specifically, after upgrading the operating system in the backup system space and generating a new operating system, an integrity check needs to be performed on the new operating system. This involves verifying the integrity of the new operating system files to determine if they are complete and if any files are missing. Missing files will affect the normal operation of the storage controller. If the new operating system passes the integrity check, some backup nodes can be activated and booted with the new operating system to test their compatibility.

[0082] In one implementation, before selecting one of the standby nodes already booted to the new operating system as the new master node, the method further includes:

[0083] Perform system health checks on the new operating system running on the aforementioned spare nodes;

[0084] Specifically, booting some standby nodes to the new operating system requires testing the compatibility between the standby nodes and the new operating system, which means performing a health check on the new operating system running on the standby nodes.

[0085] If the detection result of the new operating system running on the aforementioned backup nodes is healthy, then one of the backup nodes that has been booted to the new operating system will be selected as the new master node.

[0086] Specifically, a system health check is performed on the new operating system running on some of the standby nodes. If the test result of the new operating system running on some of the standby nodes is healthy, it means that some of the standby nodes are compatible with the new operating system and can run normally on the new operating system. Therefore, the next step of operating system upgrade can be carried out, that is, one of the standby nodes that has been booted to the new operating system is selected as the new master node.

[0087] If the detection result of the new operating system running on some of the backup nodes is unhealthy, the backup nodes that have been booted to the new operating system will be rolled back to the operating system in the main system space.

[0088] Specifically, a system health check is performed on the new operating system running on some of the standby nodes. If the check result for the new operating system running on some of the standby nodes is unhealthy, it means that some of the standby nodes are incompatible with the new operating system and cannot run normally on the new operating system. Therefore, it is necessary to roll back the standby nodes that have been booted to the new operating system to the operating system in the main system space. The operating system in the main system space is an unupgraded operating system so that these standby nodes can still run normally on the unupgraded operating system in the main system space.

[0089] In one implementation, before activating the remaining backup node and the original primary node, the method further includes:

[0090] Perform a system health check on the new operating system running on the new master node;

[0091] Specifically, after selecting one of the standby nodes that has been booted to the new operating system as the new master node, it is necessary to test the compatibility between the new master node and the new operating system, that is, to perform a health check on the new operating system running on the new master node.

[0092] If the detection result of the new operating system running on the new master node is healthy, then the remaining standby nodes and the original master node are enabled;

[0093] Specifically, a system health check is performed on the new operating system running on the new master node. If the check result of the new operating system running on the new master node is healthy, it means that the new master node is compatible with the new operating system and can run normally on the new operating system. Therefore, the next step of operating system upgrade can be performed, namely, enabling the remaining standby nodes and the original master node.

[0094] If the detection result of the new operating system running on the new master node is unhealthy, then the new master node will be switched back to the original master node, and the standby node that has been booted to the new operating system will be rolled back to the operating system in the main system space.

[0095] Specifically, a system health check is performed on the new operating system running on the new master node. If the check result of the new operating system running on the new master node is unhealthy, it means that the new master node and the new operating system are incompatible and the new master node cannot run normally on the new operating system. Therefore, the storage service needs to be switched back to the original master node, and the standby node that has been booted to the new operating system is rolled back to the master system space. The operating system in the master system space is the un-upgraded operating system so that the standby node can still run normally through the un-upgraded operating system in the master system space.

[0096] In one embodiment, after bootsting the remaining spare nodes and the original master node to the new operating system, the process further includes:

[0097] Perform system health checks on the new operating systems running on the remaining standby nodes and the original master node;

[0098] Specifically, after booting the remaining standby nodes and the original primary node to the new operating system, it is necessary to test the compatibility of the remaining standby nodes, the original primary node and the new operating system, which means performing a health check on the systems running on the remaining standby nodes and the original primary node.

[0099] If the detection results of the new operating system running on the remaining standby node and the original primary node are healthy, then the standby system space where the new operating system is located will be switched to the primary system space, and the original primary system space will be switched to the standby system space.

[0100] Specifically, a system health check is performed on the new operating system running on the remaining standby nodes and the original primary node. If the test results of the new operating system running on the remaining standby nodes and the original primary node are healthy, it means that the remaining standby nodes and the original primary node are compatible with the new operating system and can run normally on the new operating system. Therefore, the operating system upgrade is completed and the upgrade process can be ended.

[0101] If the detection results of the new operating system running on the remaining standby nodes and the original primary node are unhealthy, then the remaining standby nodes and the original primary node will be rolled back to the operating system in the original primary system space, and the storage services will be switched back to the original primary node. The remaining standby nodes will also be rolled back to the operating system in the original primary system space.

[0102] Specifically, a system health check is performed on the new operating system running on the remaining standby nodes and the original primary node. If the check result of the new operating system running on the remaining standby nodes and the original primary node is unhealthy, it means that the remaining standby nodes and the original primary node are incompatible with the new operating system and cannot run normally on the new operating system. Therefore, the remaining standby nodes and the original primary node need to be rolled back to the primary system space, and then the storage services are switched back to the original primary node. Finally, the standby nodes that have been rolled back to the new operating system are rolled back to the primary system space. The operating system in the primary system space is the un-upgraded operating system so that all nodes can still run normally through the un-upgraded operating system in the primary system space.

[0103] Example 3:

[0104] Reference Figure 3 As shown, Figure 3 A flowchart of the second method for upgrading the operating system provided in this application embodiment, wherein, Figure 3 In the method shown, with Figure 2 For content that is the same or similar to the method shown, please refer to... Figure 2 The method description will not be repeated here.

[0105] The operating system upgrade method in this embodiment includes:

[0106] S201, the master node normally executes storage services through the operating system in the main system space;

[0107] Before the storage controller operating system is upgraded, storage services normally run on the master node, and the master node executes storage services normally through the operating system in the main system space.

[0108] S202, Receives operating system upgrade instructions for the storage controller;

[0109] When an operating system upgrade is required for the storage controller, an operating system upgrade command is sent to the cluster storage system. The operating system then receives the operating system upgrade command for the storage controller and installs the operating system upgrade package into the spare system space.

[0110] S203, Install the installation package into the backup system space, so that a new operating system is generated in the backup system space;

[0111] After receiving an operating system upgrade instruction for the storage controller, the clustered storage system installs the operating system upgrade package into the standby system space, thereby upgrading the operating system in the standby system space and generating a new operating system.

[0112] S204, Perform an integrity check on the new operating system, and activate the partial backup nodes after the integrity check is passed;

[0113] After upgrading the operating system in the standby system space and generating a new operating system, an integrity check needs to be performed on the new operating system. This check verifies the integrity of the new operating system files to determine if they are complete and if any files are missing. Missing files will affect the normal operation of the storage controller. If the new operating system passes the integrity check, some standby nodes can be activated and booted with the new operating system to test their compatibility.

[0114] S205, activate some standby nodes and boot the standby nodes to the new operating system;

[0115] A clustered storage system consists of primary and standby nodes. After a new operating system is generated in the standby system space, a subset of the standby nodes are activated, referred to as partial standby nodes. Preferably, half of the standby nodes are selected as partial standby nodes. These partial standby nodes are then booted into the new operating system in the standby system space via a boot system. During normal storage operations, the primary node executes storage services normally using the operating system in the primary system space, while the remaining standby nodes remain in a dormant state. When a node switch is needed, the node to be switched is activated first to conserve resources.

[0116] S206, Perform system health checks on the new operating system running on the aforementioned spare nodes;

[0117] To boot some of the standby nodes to the new operating system, it is necessary to test the compatibility between the standby nodes and the new operating system, which means performing a health check on the new operating system running on the standby nodes.

[0118] S207, if the detection result of the new operating system running on the partial standby nodes is healthy, then select one of the standby nodes that has been booted to the new operating system as the new master node;

[0119] Perform a system health check on the new operating system running on some of the standby nodes. If the test result of the new operating system running on some of the standby nodes is healthy, it means that some of the standby nodes are compatible with the new operating system and can run normally on the new operating system. Therefore, the next step of operating system upgrade can be carried out, that is, select one of the standby nodes that has been booted to the new operating system as the new master node.

[0120] S208, if the detection result of the new operating system running on the backup nodes is unhealthy, then the backup nodes that have been booted to the new operating system will be rolled back to the main system space;

[0121] Perform system health checks on the new operating system running on some of the standby nodes. If the check result for the new operating system running on some of the standby nodes is unhealthy, it means that some standby nodes are incompatible with the new operating system and cannot run normally on the new operating system. Therefore, it is necessary to roll back the standby nodes that have been booted to the new operating system to the operating system in the main system space. The operating system in the main system space is an unupgraded operating system so that these standby nodes can still run normally on the unupgraded operating system in the main system space.

[0122] S209, Perform a system health check on the new operating system running on the new master node;

[0123] After selecting one of the standby nodes that has been booted to the new operating system as the new master node, it is necessary to test the compatibility between the new master node and the new operating system, which means performing a health check on the new operating system running on the new master node.

[0124] S210, if the detection result of the new operating system running on the new master node is healthy, then the storage service is switched to the new master node so that the storage service can be executed normally through the new master node that has been booted to the new operating system;

[0125] Perform a system health check on the new operating system running on the new master node. If the check result of the new operating system running on the new master node is healthy, it means that the new master node is compatible with the new operating system and can run normally on the new operating system. Therefore, the next step of operating system upgrade can be performed, that is, switch the storage service to the new master node so that the storage service can be performed normally on the new master node that has been booted to the new operating system.

[0126] S211, if the detection result of the new operating system running on the new master node is unhealthy, then switch the new master node back to the original master node, and execute step S208 to roll back the backup node that has been guided to the new operating system to the operating system in the main system space;

[0127] Perform a system health check on the new operating system running on the new primary node. If the check result for the new operating system running on the new primary node is unhealthy, it means that the new primary node and the new operating system are incompatible and the new primary node cannot run normally on the new operating system. Therefore, the storage service needs to be switched back to the original primary node, and the standby node that has been booted to the new operating system should be rolled back to the primary system space. The operating system in the primary system space is the unupgraded operating system so that the standby node can still run normally on the unupgraded operating system in the primary system space.

[0128] S212, enable the remaining standby node and the original master node, and boot the remaining standby node and the original master node to the new operating system;

[0129] After selecting one of the standby nodes that has been booted to the new operating system as the new primary node to continue running the storage service, there are still remaining standby nodes and the original primary node that have not been booted to the new operating system. To check the compatibility of the remaining standby nodes, the original primary node and the new operating system, it is necessary to boot the remaining standby nodes and the original primary node to the new operating system through the boot system. After the compatibility check is passed, the upgrade of the storage controller operating system is completed.

[0130] S213, Perform system health checks on the new operating systems running on the remaining standby nodes and the original master node;

[0131] After booting the remaining standby nodes and the original primary node to the new operating system, it is necessary to test the compatibility of the remaining standby nodes, the original primary node and the new operating system, which means performing a health check on the systems running on the remaining standby nodes and the original primary node.

[0132] S214, if the detection results of the new operating system running on the remaining standby node and the original master node are healthy, then the standby system space where the new operating system is located is switched to the master system space, and the original master system space is switched to the standby system space.

[0133] Perform a system health check on the new operating system running on the remaining standby nodes and the original primary node. If the test result of the new operating system running on the remaining standby nodes and the original primary node is healthy, it means that the remaining standby nodes and the original primary node are compatible with the new operating system and can run normally on the new operating system. Therefore, the operating system upgrade in step S217 is completed and the upgrade process ends.

[0134] S215, if the detection result of the new operating system running on the remaining standby node and the original primary node is unhealthy, then the remaining standby node and the original primary node will be rolled back to the operating system in the original primary system space, and step 211 will be executed to switch the storage service back to the original primary node, and step S208 will be executed to roll back the operating system of the partial standby node to the original primary system space.

[0135] Perform system health checks on the new operating systems running on the remaining standby nodes and the original primary node. If the check results for the new operating systems running on the remaining standby nodes and the original primary node are unhealthy, it means that the remaining standby nodes and the original primary node are incompatible with the new operating system and cannot run normally on the new operating system. Therefore, the remaining standby nodes and the original primary node need to be rolled back to the primary system space, and then the storage services are switched back to the original primary node. Finally, roll back the standby nodes that have been rolled to the new operating system to the primary system space. The operating system in the primary system space is the un-upgraded operating system so that all nodes can still run normally through the un-upgraded operating system in the primary system space.

[0136] S216, The storage service is run on the operating system of the main system space through the original master node.

[0137] If the detection results of the new operating system running on the remaining standby nodes and the original primary node are unhealthy, then the remaining standby nodes and the original primary node will be rolled back to the operating system in the original primary system space, and the storage services will be switched back to the original primary node. Some standby nodes will be rolled back to the operating system in the original primary system space, and then the storage services will be run on the operating system in the primary system space through the original primary node.

[0138] S217, the operating system upgrade has been completed, and the upgrade process has ended.

[0139] All backup nodes and the original primary node are compatible with the new operating system, their health monitoring results are satisfactory, and the operating system upgrade is complete.

[0140] In addition, the operating system versions in the primary system space and the backup system space are always adjacent version numbers. For example, if the operating system in the primary system space is version V1.0 and is upgraded to version V1.1, then the operating system version in the backup system space will be V1.0. This ensures that there is always a new version and an old version of the operating system. The old version of the operating system generally does not have problems, thus improving the stability of the cluster storage system.

[0141] It should be understood that, although Figures 2-3The steps in the flowchart are shown sequentially as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order in which these steps are executed, and they can be performed in other orders. Furthermore, Figures 2-3 At least some of the steps in the process may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least some of the sub-steps or stages of other steps.

[0142] Example 4:

[0143] This embodiment provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that the processor executes the computer program to implement the steps of an operating system upgrade method.

[0144] This computer device can be a terminal, and its internal structure diagram can be as follows: Figure 4 As shown, the computer device includes a processor, memory, network interface, display screen, and input devices connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The network interface is used to communicate with external terminals via a network connection. When the computer program is executed by the processor, it implements an operating system upgrade method. The display screen can be an LCD screen or an e-ink screen. The input devices can be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the computer device casing, or an external keyboard, touchpad, or mouse.

[0145] Those skilled in the art should understand that Figure 4 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0146] In one embodiment, a computer device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to perform the following steps:

[0147] Receive an upgrade instruction for the storage controller operating system to install the installation package into the backup system space, thereby generating a new operating system in the backup system space;

[0148] Enable some standby nodes and boot those standby nodes into the new operating system;

[0149] Select one of the standby nodes that has been booted to the new operating system as the new master node;

[0150] Enable the remaining standby nodes and the original master node, and boot the remaining standby nodes and the original master node to the new operating system.

[0151] Example 5:

[0152] This embodiment provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, it performs the following steps:

[0153] Receive an upgrade instruction for the storage controller operating system to install the installation package into the backup system space, thereby generating a new operating system in the backup system space;

[0154] Enable some standby nodes and boot those standby nodes into the new operating system;

[0155] Select one of the standby nodes that has been booted to the new operating system as the new master node;

[0156] Enable the remaining standby nodes and the original master node, and boot the remaining standby nodes and the original master node to the new operating system.

[0157] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0158] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0159] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims

1. An operating system upgrade method, characterized in that, This invention is applied to a clustered storage system, which includes a file system and multiple nodes. The file system includes a disk array and redundant disks. A primary system space and a backup system space are established in the disk array. Both the primary system space and the backup system space store an operating system. Each node is a storage controller. All storage controllers share the operating system of the primary system space or the operating system of the backup system space. The storage controller includes a boot system, which is used to boot the storage controllers of one or more nodes to the operating system of the primary system space or the operating system of the backup system space. The nodes include primary nodes and backup nodes. The upgrade method includes: Receive an upgrade instruction for the storage controller operating system to install the installation package into the backup system space, thereby generating a new operating system in the backup system space; Enable some standby nodes and boot those standby nodes into the new operating system; Select one of the standby nodes that has been booted to the new operating system as the new master node; Enable the remaining standby nodes and the original master node, and boot the remaining standby nodes and the original master node to the new operating system.

2. The operating system upgrade method according to claim 1, characterized in that, The disk array establishes two independent storage paths, one of which forms the main system space and the other forms the backup system space.

3. The operating system upgrade method according to claim 1, characterized in that, Before receiving the upgrade instruction for the storage controller operating system, the method further includes: The master node performs storage services normally through the operating system in the main system space; After selecting one of the standby nodes that has been booted to the new operating system as the new master node, the process further includes: Switch the storage service to the new master node so that the storage service can be executed normally through the new master node that has been booted to the new operating system.

4. The operating system upgrade method according to claim 1, characterized in that, The step of installing the installation package to the backup system space includes: The installation package is installed into the backup system space, thereby generating a new operating system within the backup system space; An integrity check is performed on the new operating system, and the backup nodes are activated after the integrity check passes.

5. The operating system upgrade method according to claim 1, characterized in that, Before selecting one of the standby nodes that has been booted to the new operating system as the new master node, the process also includes: Perform system health checks on the new operating system running on the aforementioned spare nodes; If the detection result of the new operating system running on the aforementioned backup nodes is healthy, then one of the backup nodes that has been booted to the new operating system will be selected as the new master node. If the detection result of the new operating system running on the backup nodes is unhealthy, the backup nodes that have been booted to the new operating system will be rolled back to the operating system in the main system space.

6. The operating system upgrade method according to claim 1, characterized in that, Before activating the remaining backup nodes and the original primary node, the process also includes: Perform a system health check on the new operating system running on the new master node; If the detection result of the new operating system running on the new master node is healthy, then the remaining standby nodes and the original master node are enabled; If the detection result of the new operating system running on the new master node is unhealthy, then the new master node will be switched back to the original master node, and the standby node that has been booted to the new operating system will be rolled back to the operating system in the main system space.

7. The operating system upgrade method according to claim 1, characterized in that, After bootsting the remaining spare nodes and the original primary node to the new operating system, the process further includes: Perform system health checks on the new operating systems running on the remaining standby nodes and the original master node; If the detection results of the new operating system running on the remaining standby node and the original primary node are healthy, then the standby system space where the new operating system is located will be switched to the primary system space, and the original primary system space will be switched to the standby system space. If the detection results of the new operating system running on the remaining standby nodes and the original primary node are unhealthy, then the remaining standby nodes and the original primary node will be rolled back to the operating system in the original primary system space, and the storage services will be switched back to the original primary node. The remaining standby nodes will also be rolled back to the operating system in the original primary system space.

8. A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 7.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a program that, when executed by a processor, causes the processor to perform the steps of the method as described in any one of claims 1 to 7.

Citation Information

Patent Citations

  • Operating system update and boot failure recovery

    US20040153724A1