CN116700594A - Storage device, storage method, computing device, and storage medium - Google Patents

Storage device, storage method, computing device, and storage medium Download PDF

Info

Publication number
CN116700594A
CN116700594A CN202210184105.1A CN202210184105A CN116700594A CN 116700594 A CN116700594 A CN 116700594A CN 202210184105 A CN202210184105 A CN 202210184105A CN 116700594 A CN116700594 A CN 116700594A
Authority
CN
China
Prior art keywords
operating system
hardware resource
hardware
storage
resource group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210184105.1A
Other languages
Chinese (zh)
Inventor
高军
黎亮
屈欢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210184105.1A priority Critical patent/CN116700594A/en
Priority to PCT/CN2023/074779 priority patent/WO2023160378A1/en
Publication of CN116700594A publication Critical patent/CN116700594A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Abstract

The application discloses a storage device, a storage method, a computing device and a storage medium, and belongs to the technical field of computer storage. In the technical scheme provided by the embodiment of the application, a plurality of sets of mutually isolated operating systems are respectively operated based on different parts of hardware resources of the storage device, and when a first operating system operated by a first hardware resource group fails, an access task of the first operating system is migrated to a second operating system operated by a second hardware resource group to be executed. Through the technical scheme, fault isolation among a plurality of operating systems in a single node of the data storage system is ensured, and under the condition that equipment fails, access tasks can be migrated to other operating systems isolated from each other for continuous execution without triggering the controller to reset, so that the effect that the front end does not sense faults is achieved, and the reliability of the equipment is greatly improved.

Description

Storage device, storage method, computing device, and storage medium
Technical Field
The present application relates to the field of computer storage technologies, and in particular, to a storage device, a storage method, a computing device, and a storage medium.
Background
With the development of hardware production technology, precision of various types of hardware in computing equipment is also higher and higher, and accordingly, the reliability of hardware is reduced, for example, the influence of dirt residues on hardware is increased due to the reduction of the hardware production process.
Computing devices are often used as storage devices in data storage systems, and currently, a storage device commonly used in the industry is usually a set of Operating Systems (OS) running on a physical machine, where the operating systems are based on hardware resources such as a central processing unit (central processing unit, CPU) on the bottom of the physical machine, a memory, and an external device.
However, in the case of a failure caused by a reduced reliability of hardware, for example, a failure of a certain CPU core in the multi-core CPU, the storage device based on the above architecture triggers the CPU controller to reset, which results in an influence on an access task, so that the reliability of the device is greatly reduced.
Disclosure of Invention
The application provides a storage device, a storage method, a computing device and a storage medium, which can effectively improve the reliability of the device. The technical scheme is as follows:
in a first aspect, a storage device is provided, where the storage device includes a management device and hardware resources, where the hardware resources are divided into a plurality of hardware resource groups, and each of the hardware resource groups runs a set of operating systems; the management device is used for:
And when a first hardware resource group in the plurality of hardware resource groups fails, migrating an access task executed by a first operating system running in the first hardware resource group to a second hardware resource group in the plurality of hardware resource groups, and executing the access task by a second operating system running in the second hardware resource group.
The hardware resources include the memory of the storage device, such as dual in-line memory modules (dual inline memory module, DIMMs), the CPU, and external devices, such as external memory, network cards, and displays.
Through the technical scheme, fault isolation among a plurality of operating systems in a single node of the data storage system is ensured, and under the condition that equipment fails, access tasks can be migrated to other operating systems isolated from each other for continuous execution without triggering the controller to reset, so that the effect that the front end does not sense faults is achieved, and the reliability of the equipment is greatly improved.
In one possible implementation, the specifications of the first set of hardware resources and the second set of hardware resources are the same.
Through the technical scheme, the data processing capacity of each operating system is balanced, and the usability of the equipment when a fault occurs is ensured.
In one possible implementation, the management device is further configured to: the state of the plurality of hardware resource groups is monitored.
By the technical scheme, the hardware resources of the storage device can be reasonably planned by monitoring the hardware resources through the management device, faults of the hardware resource group and the operating system operated by the hardware resource group can be timely found, and the reliability of the device is further improved.
In one possible implementation manner, the storage device further includes a network card, where the network card supports a single root input output virtualized SR-IOV function, a first virtual function VF of the network card is allocated to the first hardware resource group, and a second virtual function VF of the network card is allocated to the second hardware resource group.
According to the technical scheme, the network card is virtually distributed to each hardware resource group by using the hardware sharing technology, so that reliable physical communication resources are provided for the operating systems operated by each hardware resource group, based on the reliable physical communication resources, mutual isolation of each operating system on the hardware resources is ensured, and the reliability of the equipment is effectively improved.
In one possible implementation manner, the management device is further configured to receive fault information sent by the first hardware resource group; the failure information indicates that the first operating system failed.
Through the technical scheme, the first operating system can inform the target server of the interruption condition of the access task in time through the fault information mode so as to switch the operating system, thereby realizing migration of the access task, ensuring the continuity of the service in a front-end non-perception mode and effectively improving the reliability of the equipment.
In one possible implementation manner, the management device is further configured to receive a first takeover request sent by the second operating system, where the first takeover request is used to take over an access task performed by the first operating system.
In one possible implementation manner, the second operating system is configured to determine that the first operating system fails if a heartbeat message of the first operating system is not received within a first duration.
The heartbeat message is a message sent by a sender at fixed time, and when the receiver receives the heartbeat message, the sender can be determined to be in an operating state.
Through the technical scheme, the operating systems can mutually sense each other, so that the operating system which does not fail can respond quickly under the condition that any operating system fails, take over requests are initiated actively, the continuity of services is ensured in a flexible manner, and the reliability of the equipment is improved effectively, and meanwhile, the availability of the storage equipment is improved.
In one possible implementation manner, the management device is further configured to receive a second takeover request sent after the first operating system is recovered, where the second takeover request indicates to take over the access task that has been migrated to the second operating system.
Through the technical scheme, after the first operating system is subjected to fault elimination, the access task migrated to the second operating system can be taken over again, so that the load of the second operating system is lightened, the load balance among all operating systems in the storage device is ensured, the availability of the storage device is further ensured, and the reliability of the device is effectively improved.
In one possible implementation, the management device corresponds to a target set of hardware resources, and the management device is configured to configure the multiple operating systems.
Through the technical scheme, under the condition that the management equipment fails, the hardware resource groups except the target hardware resource group are not affected, so that an operating system running by the hardware resource group can normally execute the access task, the influence of the management equipment on the service process is reduced, the decoupling of the management side and the service side is realized, and the stability and the reliability of the storage equipment are effectively improved.
In one possible implementation manner, the management device is further configured to determine that the first operating system fails if the heartbeat message of the first operating system is not received within a second duration.
In one possible implementation manner, the management device is further configured to pull up the first operating system after the first operating system is recovered from the failure.
In one possible implementation, the target set of hardware resources includes fewer hardware resources than the set of hardware resources.
In the above technical solution, the target hardware resource group corresponding to the management device includes fewer hardware resources than the hardware resource group. Therefore, the possibility that the management device providing the management and configuration functions is affected by hardware faults is greatly reduced, and the reliability of the storage device is effectively improved.
In one possible implementation, the target set of hardware resources includes a portion of memory and a portion of CPU; the hardware resource group includes a portion of a memory, a portion of a CPU, and a portion of an external device.
In a second aspect, a storage method is provided and applied to a storage device, wherein the storage device comprises a management device and hardware resources, the hardware resources are divided into a plurality of hardware resource groups, and each hardware resource group is provided with a set of operating systems;
The method comprises the following steps:
and when a first hardware resource group in the plurality of hardware resource groups fails, migrating an access task executed by a first operating system running in the first hardware resource group to a second hardware resource group in the plurality of hardware resource groups, and executing the access task by a second operating system running in the second hardware resource group.
The hardware resources include the memory of the storage device, such as dual in-line memory modules (dual inline memory module, DIMMs), the CPU, and external devices, such as external memory, network cards, and displays.
Through the technical scheme, fault isolation among a plurality of operating systems in a single node of the data storage system is ensured, and under the condition that equipment fails, access tasks can be migrated to other operating systems isolated from each other for continuous execution without triggering the controller to reset, so that the effect that the front end does not sense faults is achieved, and the reliability of the equipment is greatly improved.
In one possible implementation, the specifications of the first set of hardware resources and the second set of hardware resources are the same.
Through the technical scheme, the data processing capacity of each operating system is balanced, and the usability of the equipment when a fault occurs is ensured.
In one possible embodiment, the method further comprises: the management device monitors the status of the plurality of hardware resource groups.
By the technical scheme, the hardware resources of the storage device can be reasonably planned by monitoring the hardware resources through the management device, faults of the hardware resource group and the operating system operated by the hardware resource group can be timely found, and the reliability of the device is further improved.
In one possible implementation manner, the storage device further includes a network card, where the network card supports a single root input output virtualized SR-IOV function, a first virtual function VF of the network card is allocated to the first hardware resource group, and a second virtual function VF of the network card is allocated to the second hardware resource group.
According to the technical scheme, the network card is virtually distributed to each hardware resource group by using the hardware sharing technology, so that reliable physical communication resources are provided for the operating systems operated by each hardware resource group, based on the reliable physical communication resources, mutual isolation of each operating system on the hardware resources is ensured, and the reliability of the equipment is effectively improved.
In one possible embodiment, the method further comprises: the management equipment receives fault information sent by the first hardware resource group; the failure information indicates that the first operating system failed.
Through the technical scheme, the first operating system can inform the target server of the interruption condition of the access task in time through the fault information mode so as to switch the operating system, thereby realizing migration of the access task, ensuring the continuity of the service in a front-end non-perception mode and effectively improving the reliability of the equipment.
In one possible embodiment, the method further comprises: and the management equipment receives a first take-over request sent by the second operating system, wherein the first take-over request is used for taking over the access task executed by the first operating system.
In one possible embodiment, the method further comprises: and if the second operating system does not receive the heartbeat message of the first operating system within the first duration, determining that the first operating system fails.
The heartbeat message is a message sent by a sender at fixed time, and when the receiver receives the heartbeat message, the sender can be determined to be in an operating state.
Through the technical scheme, the operating systems can mutually sense each other, so that the operating system which does not fail can respond quickly under the condition that any operating system fails, take over requests are initiated actively, the continuity of services is ensured in a flexible manner, and the reliability of the equipment is improved effectively, and meanwhile, the availability of the storage equipment is improved.
In one possible embodiment, the method further comprises: and the management equipment receives a second take-over request sent after the first operating system is recovered from faults, and the second take-over request indicates to take over the access task which has been migrated to the second operating system.
Through the technical scheme, after the first operating system is subjected to fault elimination, the access task migrated to the second operating system can be taken over again, so that the load of the second operating system is lightened, the load balance among all operating systems in the storage device is ensured, the availability of the storage device is further ensured, and the reliability of the device is effectively improved.
In a possible implementation manner, the management device corresponds to a target hardware resource group, and the method further includes: the management device configures the plurality of hardware resource groups.
Through the technical scheme, under the condition that the management equipment fails, the hardware resource groups except the target hardware resource group are not affected, so that an operating system running by the hardware resource group can normally execute the access task, the influence of the management equipment on the service process is reduced, the decoupling of the management side and the service side is realized, and the stability and the reliability of the storage equipment are effectively improved.
In one possible embodiment, the method further comprises:
and if the management equipment does not receive the heartbeat message of the first operating system within the second time period, determining that the first operating system fails.
In one possible embodiment, the method further comprises:
and after the first operating system is recovered from faults, the management equipment pulls up the first operating system.
In one possible implementation, the target set of hardware resources includes fewer hardware resources than the set of hardware resources.
In the above technical solution, the target hardware resource group corresponding to the management device includes fewer hardware resources than the hardware resource group. Therefore, the possibility that the management device providing the management and configuration functions is affected by hardware faults is greatly reduced, and the reliability of the storage device is effectively improved.
In one possible implementation, the target set of hardware resources includes a portion of memory and a portion of CPU; the hardware resource group includes a portion of a memory, a portion of a CPU, and a portion of an external device.
In a third aspect, a computing device is provided, the computing device comprising a management device and hardware resources, the hardware resources being divided into a plurality of hardware resource groups, the hardware resources comprising a processor and a memory for storing at least one piece of program code corresponding to the management device and each of the hardware resource groups, the at least one piece of program code being loaded by the processor and executing the storage method according to the second aspect.
In a fourth aspect, a computer readable storage medium is provided for storing at least one piece of program code for performing the storage method according to the second aspect.
In a fifth aspect, there is provided a computer program product for, when run on a computer, causing the computer to perform the storage method as described in the second aspect.
Drawings
FIG. 1 is a schematic illustration of an implementation environment provided by an embodiment of the present application;
FIG. 2 is a schematic diagram of a hardware architecture of a computing device according to an embodiment of the present application;
FIG. 3 is a schematic diagram of a memory device according to an embodiment of the present application;
FIG. 4 is a schematic diagram of a hardware sharing provided by an embodiment of the present application;
FIG. 5 is a flow chart of a storage method provided by an embodiment of the present application;
FIG. 6 is a schematic diagram of an operating system switching process according to an embodiment of the present application;
fig. 7 is a flowchart of a storage method according to an embodiment of the present application.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present application more apparent, the embodiments of the present application will be described in further detail with reference to the accompanying drawings.
Fig. 1 is a schematic diagram of an implementation environment provided in an embodiment of the present application, and referring to fig. 1, the implementation environment includes a storage device 110, a storage unit 120, and a target server 130. The storage device 110 is used to provide a data storage service for the target server 130, and the storage device 110 writes data into the storage unit 120 or reads data from the storage unit 120 and returns the data to the target server 130 based on an access task received from the target server 130.
The storage device 110 includes a management device and hardware resources, where the hardware resources are divided into a plurality of hardware resource groups, and each hardware resource group has a set of operating systems running thereon. In some embodiments, the storage device 110 provides data storage services for multiple target servers 130 in parallel by issuing access tasks for the multiple target servers 130, respectively, to be executed in multiple sets of operating systems running on multiple sets of hardware resources. In some embodiments, the access task includes data read and write instructions for data stored in the storage unit 120.
In some embodiments, the hardware resources include a CPU, a memory, and an external device. In some embodiments, the external device includes a network interface card (network interface card, NIC). The network interface card is called a network card for short, and is an expansion card inserted in an expansion slot of a computing device (such as a server) for accessing the computing device to a network. Optionally, the network card is coupled to a physical transmission medium (e.g., twisted wire pair, coaxial cable, or fiber optics), and exchanges data with the network via the network transmission medium. In some embodiments, the network card may be a wireless network card capable of wirelessly connecting to a network within the coverage of a wireless local area network. The network is typically the Internet, but can be any network including, but not limited to, a local area network (local area network, LAN), metropolitan area network (metropolitan area network, MAN), wide area network (wide area network, WAN), mobile, wired or wireless network, private network, or any combination of virtual private networks, to which the present embodiments are not limited.
Optionally, the network interface card is a PCIE card supporting a high-speed serial computer expansion bus standard (peripheral component interconnect express, PCIE). The PCIE card supports high-speed serial point-to-point dual-channel high-bandwidth transmission, and each device connected to the PCIE card is allocated with independent channel bandwidth to perform data transmission without sharing bus bandwidth.
In some embodiments, the storage device 110 and the storage unit 120, and the storage device 110 and the target server 130 can be communicatively connected via a wired network or a wireless network, where the wireless network or the wired network uses standard communication techniques and/or protocols. For example, the storage device 110 receives an access task from the target server 130 via the first network card, and reads and writes data from and to the storage unit 120 via the second network card according to a data read/write command indicated by the access task.
In some embodiments, the storage unit 120 is a distributed storage device formed by a plurality of scattered storage resources, that is, a virtual storage device constructed by integrating storage resources on a plurality of physical machines through a network connection. Alternatively, the storage unit 120 may include a solid state disk, a mechanical hard disk, or other types of storage media, which are not limited in this embodiment of the present application.
On the basis of introducing the implementation environment and the equipment architecture, the application scenario of the embodiment of the application is described next.
The storage device provided by the embodiment of the application can be used as a node for connecting the target server and the storage unit in the data storage system, for example, the storage server is used for managing and controlling storage resources, and the storage server can manage the connected disk array (namely the storage unit), so that reliable data storage service is provided for a client host (namely the target server) efficiently.
Fig. 2 is a schematic hardware structure of a computing device according to an embodiment of the present application, and referring to fig. 2, the computing device 200 can be used as a storage device, a storage unit, and a target server in the data storage system. Among other things, the computing device 200 may vary considerably in configuration or performance, and may include one or more processors (central processing units, CPU) 201 and one or more memories 202, the processors 201 and memories 202 being collectively referred to as hardware resources.
The processor 201 may be a network processor (network processor, NP), a central processing unit (central processing unit, CPU), an application-specific integrated circuit (ASIC) or an integrated circuit for controlling the execution of the program according to the present application. The processor 201 may be a single-core (single-CPU) processor or may be a multi-core (multi-CPU) processor. The memory 202 may be, but is not limited to, read-only memory (ROM) or other type of static storage device that can store static information and instructions, random access memory (random access memory, RAM) or other type of dynamic storage device that can store information and instructions, but may also be electrically erasable programmable read-only memory (EEPROM), compact disc-read only memory (compact disc read-only memory) or other optical disk storage, optical disk storage (including compact disc, laser disc, optical disc, digital versatile disc, blu-ray disc, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. The processor 201 and the memory 202 may be separately provided or may be integrated. Of course, the computing device 200 may also have a wired or wireless network interface, a keyboard, and an input/output interface, so as to perform input/output, and the computing device 200 may also include other components for implementing the device functions, which are not described herein.
In an exemplary embodiment, a computer readable storage medium, such as a memory comprising instructions executable by a processor in a computing device to perform the storage method in the embodiments described below, is also provided. For example, the computer readable storage medium may be a read-only memory (ROM), a random access memory (random access memory, RAM), a compact disc-read only memory (CD-ROM), a magnetic tape, a floppy disk, an optical data storage device, and the like.
The storage device provided by the embodiment of the application is described next.
Fig. 3 is a schematic architecture diagram of a storage device according to an embodiment of the present application, referring to fig. 3, where a storage device 300 includes a management device and hardware resources, and the hardware resources are divided into a plurality of hardware resource groups, and each hardware resource group runs a set of operating systems.
The hardware resources include the memory of the storage device 300, the CPU, and the external devices. In some embodiments, the memory of the memory device 300 may be a dual in-line memory module (dual inline memory module, DIMM), and signals are independently transmitted between signal paths of the DIMM, so that the transmission requirements of multiple data signals in complex scenarios may be satisfied. In some embodiments, the external devices of the storage device 300 include external memory, a network card, and a display.
Referring to fig. 3, the hardware resource includes a plurality of hardware resource groups, each of which includes a part of the hardware resources. Wherein one set of operating systems is running on each set of hardware resources, and therefore, the plurality of sets of hardware resources corresponds to a plurality of sets of operating systems. The multiple sets of operating systems include a first operating system 320 running on a first set of hardware resources 310 and a second operating system 340 running on a second set of hardware resources 330. Wherein the management device 350 corresponds to a target hardware resource group 360 included in the hardware resources, and the target hardware resource group 360 includes a portion of the memory and a portion of the CPU in the hardware resources of the storage device 300.
The first hardware resource group 310 corresponding to the first operating system 320 includes: a portion of memory, such as memory bank 311 occupied by first operating system 320; a portion of the CPU, e.g., CPU core 312 occupied by first operating system 320 in a multi-core CPU; a portion of the external device, such as the external memory 313 occupied by the first operating system 320. In some embodiments, the plurality of hardware resource groups include the same specification of hardware resources, e.g., each hardware resource group includes the same number of CPU cores, the same size of memory space, and the same amount of external memory. Based on the data processing capacity of each operating system is balanced, and the usability of the equipment when the fault occurs is ensured.
Of course, according to different service processing requirements and actual conditions of hardware resources, the actual hardware resources included in each hardware resource group can be adjusted accordingly, for example, in order to improve the data processing capability of a certain operating system, the memory included in the corresponding hardware resource group is increased, while the memories included in the other hardware resource groups remain the same.
In some embodiments, kernel-mode processes of each operating system are respectively run in independent kernel spaces based on mutually isolated hardware resource groups, and user-mode processes, such as a data operation process, a control process and the like, are run in respective corresponding upper-layer user spaces, see fig. 3.
It will be appreciated that the target set of hardware resources corresponding to the management device includes fewer hardware resources than the set of hardware resources described above. Based on the above, the possibility that the management device providing the management and configuration functions is affected by the hardware fault is greatly reduced, so that the reliability of the storage device is effectively improved.
In some embodiments, the management device 350 is used to configure the multiple sets of operating systems. The initial configuration process comprises the following steps: dividing hardware resources of the storage device 300 according to service processing requirements to obtain a plurality of hardware resource groups; the hardware resource groups are configured to the respective operating systems. Optionally, after each operating system is initially configured, the configuration information of each operating system is persisted to a corresponding memory, so that the operating system can be directly read after restarting.
In some embodiments, the management device 350 is further configured to monitor the status of the plurality of hardware resource groups. The management device can timely find out whether the hardware resource group reaches the performance bottleneck or fails by monitoring the use condition of the hardware resources such as the CPU, the memory, the external device and the like. In other embodiments, the management device monitors how the process consumes hardware resources and knows in time the operating state of the operating system on which each set of hardware resources is running, e.g., whether a failure has occurred. By the technical scheme, the hardware resources of the storage device can be reasonably planned by monitoring the hardware resources through the management device, faults of the hardware resource group and the operating system operated by the hardware resource group can be timely found, and the reliability of the device is further improved.
In some embodiments, the configuration process of the management device 350 further includes an allocation of external devices, for example, the external devices include a network card, and in the example of driving the network card by the management device, the management device allocates physical communication resources provided by the network card to the above-described multiple sets of operating systems based on a hardware sharing technology. In some embodiments, the network card is a PCIE device supporting single root I/O virtualization technology (SR-IOV), and through an SR-IOV management driver running in the management device, multiple available virtual functions (Virtualization Function, VF) can be virtualized based on the PCIE device, and the virtual functions are allocated to corresponding hardware resource groups, so that an operating system running in the corresponding hardware resource groups can directly access the PCIE device without driving by the management device, so as to receive an access task. Optionally, the manner in which the virtual functions are assigned to the operating system includes: establishing a mapping relation between the number of the virtual function and the information of the operating system; and storing the mapping relation in a memory corresponding to the operating system in a mode of configuration information. In some embodiments, the information of the operating system may be a serial number of the operating system, which is not limited by the embodiment of the present application. According to the technical scheme, the network card is virtually distributed to each hardware resource group by using the hardware sharing technology, so that reliable physical communication resources are respectively provided for the operating systems operated by each hardware resource group, based on the reliable physical communication resources, mutual isolation of each operating system on the hardware resources is ensured, and the reliability of the equipment is effectively improved.
For ease of understanding, embodiments of the present application provide a schematic diagram of hardware sharing, referring to fig. 4, a PCIE device supporting SR-IOV is driven by a management device. The SR-IOV management driver running in the management device is used for virtualizing the physical functions (physical functions, PF) provided by the PCIE device into N VFs and assigning the N to the operating systems running by each hardware resource group in a mapping mode, wherein N is a positive integer. Referring to fig. 4, an operating system 1 can use VF0 to access PCIE devices, an operating system 2 can use VF1 to access PCIE devices, and a device management process is running in both the operating system 1 and the operating system 2 to manage PCIE devices accessed through the VF.
Through the configuration process, the operating system can receive and execute the access task, and in the case that the management device fails, the hardware resource groups except the target hardware resource group are not affected, so that the operating system running by the hardware resource group can normally execute the access task, the influence of the management device on the service process is reduced, the decoupling of the management side and the service side is realized, and the stability and the reliability of the storage device are effectively improved.
In some embodiments, the management device, after configuring multiple sets of operating systems based on multiple sets of hardware resources, pulls up, i.e., sets, each operating system to a run state such that each operating system is able to receive and perform access tasks.
In order to facilitate understanding of the above-mentioned process of executing the access task by the storage device, the storage method provided by the embodiment of the present application will be described below by taking an interaction process among the storage device 110, the storage unit 120, and the target server 130 as an example based on the implementation environment provided in fig. 1 and the architecture of the storage device provided in fig. 3. Fig. 5 is a flowchart of a storage method according to an embodiment of the present application, referring to fig. 5, the method includes:
501. and the network card of the storage device sends the access task from the target server to a first operating system operated by the first hardware resource group.
The storage device in the embodiment of the present application refers to the architecture provided in fig. 3, and is not described herein.
In some embodiments, the received access task is forwarded by the network card of the storage device to the operating system specified by the target server. For example, the network card of the storage device reads information of the operating system from the received access task, and queries a mapping relationship between a virtual function of the network card and the information of the operating system based on the information of the operating system, so that the access task is forwarded to the first operating system designated by the target server through the corresponding virtual function. In some embodiments, the information of the operating system is a serial number of the operating system, which is not limited by embodiments of the present application.
In some embodiments, when the target server establishes a connection with the storage device, the two parties exchange related information for subsequent data reading and writing processes. For example, the target server obtains serial numbers of the respective operating systems from the storage device. Of course, the target server can also store the serial numbers of the respective operating systems in advance, which is not limited by the embodiment of the present application.
502. The first operating system reads and writes the storage unit based on the access task.
In some embodiments, the access task carries information such as an identifier of the target server and a task identifier, and the information can be used to determine a storage location of data in the access task in the storage unit. For example, a logical unit number (logical unit number, LUN) of a storage unit in which data to be read is located, a positional offset of the data to be read in the storage unit, and the like.
Optionally, the first operating system performs the access task based on a plurality of processes. In some embodiments, the management and control process in the first operating system queries the storage location information of the data to be read of the access task in the storage unit based on the information such as the identifier of the target server and the task identifier in the access task; and the data processing process in the first operating system reads the data to be read from the corresponding storage position in the storage unit according to the storage position information inquired by the management and control process.
503. And the first operating system sends fault information to the target server under the condition of fault, wherein the fault information indicates that the first operating system has fault.
In some embodiments, the fault may include, but is not limited to, any of the following: 1. the CPU kernel of the operating system fails, and the access task is interrupted; 2. the memory of the operating system is provided with an error (uncorrected error, UCE) which can not be corrected by the memory error checking and correcting function, and the access task is interrupted; 3. kernel security holes or software holes (bugs) of the operating system, access task interrupts.
In the embodiment of the application, the first operating system indicates that the first operating system fails by sending the failure information to the target server under the condition of failure, so that the access task is interrupted. In some embodiments, the fault information indicates that the access task failed to execute and carries an error code to indicate information of the fault that occurred. The embodiment of the application does not limit the form of the fault information.
The above process is described by taking as an example that the first operating system fails in the process of executing the access task, and in other embodiments, if the first operating system fails without executing the access task, the first operating system can send failure information to the node that is in communication with the first operating system to indicate that the first operating system fails. And if the node which is in communication with the first operating system receives the fault information, the access task is not sent to the first operating system until the first operating system recovers from the fault.
504. And the target server responds to the received fault information and sends the access task to a second operating system running on a second hardware resource group.
The architecture of the storage device provided in fig. 3 is referred to as the second hardware resource group, and will not be described herein.
In some embodiments, the failure information includes information of the second operating system. Based on this, the target server receives the failure information, and may determine to send the access task of the first operating system to the second operating system. In this example, the target server, in response to receiving the failure information, updates information of the operating system in the access task to information of the second operating system to instruct a network card of the storage device to forward the access task to the second operating system for execution.
In some embodiments, the target server stores information of each operating system, and when the target server receives the fault information, information of other operating systems except the first operating system is read, and a second operating system for taking over the access task is determined from the information. In some embodiments, the target server has stored therein a take over relationship between the operating systems that indicates which operating system takes over its access tasks when the operating system fails. For example, if the first operating system and the second operating system have a takeover relationship, the target server determines to migrate the access task to the second operating system for execution based on the takeover relationship when receiving the failure information of the first operating system.
It should be noted that, the above process of replacing the information of the operating system in the access task with the information of the second operating system in the target server occurs in the data link layer, and the application program in the upper application layer does not receive the fault information, and thus cannot perceive that the first operating system has a fault, so that by the above technical scheme, the effect that the front end does not perceive the fault is achieved, and the reliability of the device is effectively improved.
Steps 503 to 504 are described by taking the target server receiving the failure information and switching the operating system executing the access task as an example. In some embodiments, the data storage system further comprises a forwarding node operable to receive the failure information and switch the operating system to effect migration of the access tasks. Optionally, the forwarding node is a switch in a data storage system. In this example, the forwarding node updates information of the operating system in the access task received from the target server based on the failure information received from the storage device to forward the access task of the first operating system to the second operating system of the storage device for execution. Optionally, the forwarding node can sense whether the operating system of the storage device has a fault through a mode such as a connectivity test, so as to switch the operating system timely and quickly. Through the technical scheme, the forwarding node is used for sensing the faults of the operating system and switching the operating system, so that the flexibility of switching the operating system in a fault scene is improved, the migration of the access task is effectively realized, and the reliability of the equipment is effectively improved.
In other embodiments, the network card of the storage device receives the fault information returned by the first operating system, and switches the operating system performing the access task based on the fault information. In this example, when the network card receives the failure information, the front end can continue to receive the access task from the target server (or forwarding node) to maintain continuity of service, and based on the failure information, the back end switches the interface for forwarding the access task to forward the access task to the second operating system for execution. By the technical scheme, the service continuity can be further maintained, so that the reliability of the equipment is improved.
505. The second operating system receives the access task from the target server, and reads and writes the storage unit based on the access task.
This step is referred to steps 501 to 502, and will not be described in detail herein.
In some embodiments, the operating system switching process described in the foregoing steps 503 to 504 can reduce the service interruption time caused by the fault from 2 to 10 minutes to 1 to 3 seconds, so as to implement second level switching, thereby eliminating the fault in a short time when the front end cannot sense the occurrence of the fault, maintaining the continuity of the service, and significantly improving the reliability of the device.
Through the technical scheme, fault isolation among a plurality of operating systems in a single node of the data storage system is ensured, and under the condition that equipment fails, access tasks can be migrated to other operating systems isolated from each other for continuous execution without triggering the controller to reset, so that the effect that the front end does not sense faults is achieved, and the reliability of the equipment is greatly improved.
Through the technical scheme, the first operating system can inform the target server of the interruption condition of the access task in time in a fault information mode, and the switching of the operating system is realized at the data link layer, so that the migration of the access task is realized, the continuity of the service is ensured in a front-end non-perception mode, and the reliability of the equipment is effectively improved.
In order to facilitate understanding the above-mentioned process of switching from the first operating system to the second operating system, an embodiment of the present application provides a schematic diagram of an operating system switching process, referring to fig. 6, where an access task a and an access task B sent by the target server are distributed to the first operating system 620 and the second operating system 630 through the front-end network card 610, and the first operating system 620 and the second operating system 630 respectively read and write the storage unit through the back-end network card 650 based on the received access task. In the event of a failure of the first operating system 620, the front-end network card 610 sends the access task a to the second operating system 630 for execution. The storage unit is read from and written to by the second operating system 630 based on the access task a and the access task B. Wherein the first operating system and the second operating system have a management process and a data processing process running therein (see description in step 502).
506. If the failure recovers, the first operating system sends a second take-over request to the target server, the second take-over request indicating to take over the access task that has been migrated to the second operating system.
In some embodiments, the second takeover request carries information of the first operating system and information of the second operating system to instruct the target server to resend the access task of the first operating system to the first operating system for execution. For example, the second takeover request carries an operating system serial number of the first operating system and an operating system serial number of the second operating system.
In some embodiments, the manner in which the first operating system performs the troubleshooting may include any of the following: 1. manually replacing the faulty component; 2. resetting and restarting in a fault domain; 3. memory error checking and correcting functions. It can be understood that the hardware resource group of the first operating system is isolated from the hardware resource groups of other operating systems, so that the first operating system only performs in the fault domain of the first operating system in the fault removal process, and the normal operation of the other operating systems is not affected. For example, in the case where the CPU core of the first operating system fails, since the CPU cores occupied by the respective operating systems are different, replacement of the failed CPU core of the first operating system does not affect cores of other operating systems. For another example, the UCE occurs in the memory of the first operating system, and since the memories occupied by the operating systems are different, the process of isolating the UCE from the occupied memory to perform fault removal in the first operating system does not affect the normal use of the corresponding memories of other operating systems.
In some embodiments, after troubleshooting, the first operating system sends a resume message to the management device. And under the condition that the management device receives the recovery message of the first operating system, determining that the first operating system is recovered from faults, and restarting the first operating system, namely, resetting the operating system to the running state. In other embodiments, after the failure is removed, the first operating system restores to the running state by reading the persistent configuration information from the memory, and sends a restoration message to the management device to inform the management device of the self-failure restoration. Based on this, the first operating system sends a second take over request to the target server after resuming to the running state.
Through the technical scheme, the faults of the operating systems are mutually isolated, so that the second operating system taking over the access task can normally operate in the process of fault removal of the first operating system, and the reliability of the equipment is effectively improved.
507. The target server sends the access task of the first operating system to the first operating system in response to receiving the second take-over request.
This step is referred to step 504, and will not be described in detail herein.
508. The first operating system receives the access task from the target server, and reads and writes the storage unit based on the access task.
This step refers to step 505 and will not be described in detail herein.
Through the technical scheme, after the first operating system is subjected to fault elimination, the access task migrated to the second operating system can be taken over again, so that the load of the second operating system is lightened, the load balance among all operating systems in the storage device is ensured, the availability of the storage device is further ensured, and the reliability of the device is effectively improved.
Through the technical scheme, fault isolation among a plurality of operating systems in a single node of the data storage system is ensured, and under the condition that equipment fails, access tasks can be migrated to other operating systems isolated from each other for continuous execution without triggering the controller to reset, so that the effect that the front end does not sense faults is achieved, and the reliability of the equipment is greatly improved.
Further, through the technical scheme, based on different parts of hardware resources of the storage device, a plurality of sets of mutually isolated operating systems are respectively operated, so that the fault domain of the device is reduced to a single operating system, the time required for fault removal is greatly shortened while the fault isolation among the operating systems is ensured, the fault removal efficiency is improved, and the reliability of the device is effectively improved.
In the embodiment corresponding to fig. 5, the process from step 503 to step 505 is to describe a switching manner in which the first operating system that has failed actively reports the failure to the target server, and the target server switches the operating system that performs the access task. In some embodiments, the multiple operating systems sense each other by sending heartbeat messages at regular time, so that in case any one of the operating systems fails, the other operating systems can actively initiate take over to switch the operating systems, so as to realize migration of the access task, that is, the steps 503 to 505 can be replaced by the following steps 701 to 704. Fig. 7 is a flowchart of a storage method according to an embodiment of the present application, referring to fig. 7, the method includes:
701. and if the second operating system does not receive the heartbeat message of the first operating system within the first duration, determining that the first operating system fails.
In the embodiment of the application, the heartbeat message refers to a message sent by a sender at fixed time, and the receiver can determine that the sender is in an operation state when receiving the heartbeat message.
In step 701, the first operating system and the second operating system can mutually sense whether the other party is in an operating state by sending and receiving a heartbeat message. In some embodiments, the management device is also capable of determining the running status of each operating system by sending and receiving heartbeat messages, so that it is capable of determining that the first operating system is malfunctioning if no heartbeat message of the first operating system is received within the second time period.
702. And the second operating system sends a first take-over request to the target server under the condition that the first operating system fails, wherein the first take-over request indicates to take over the access task of the first operating system.
In some embodiments, the first takeover request carries information of the first operating system and information of the second operating system to instruct the target server to send the access task of the first operating system to the second operating system for execution. For example, the first takeover request carries an operating system serial number of the first operating system and an operating system serial number of the second operating system.
In some embodiments, an arbitration unit is provided in the storage device, where the plurality of second operating systems initiate a take-over request for the first operating system, the arbitration unit is capable of determining, according to a preset rule, a target second operating system of the access task taken over from the plurality of second operating systems. The process of determining the target second operating system according to the preset rule may be: according to the hardware resource configuration or the current running condition of each operating system, the second operating system with the optimal resource configuration or the most stable running condition is determined as the target second operating system.
It will be appreciated that each operating system communicates with the target server via the network card, and therefore, before the network card forwards the request of each operating system, the arbitration unit can process the takeover request of each operating system to resolve the possible conflict. Based on the above, the arbitration unit selects a proper operating system to receive the access task, so that the reliability of the equipment can be further ensured.
703. The target server sends the access task of the first operating system to the second operating system in response to receiving the first take-over request.
This step is referred to step 504, and will not be described in detail herein.
704. The second operating system receives and executes the access task from the target server.
This step refers to step 505 and will not be described in detail herein.
In some embodiments, the first operating system sends heartbeat messages to other operating systems and management devices after troubleshooting. And under the condition that the heartbeat message of the first operating system is received again, the management device determines that the first operating system is in fault recovery, and the first operating system is pulled up again, namely, the operating system is set to be in a running state again. In other embodiments, after the failure is removed, the first operating system restores to the running state by reading the persistent configuration information from the memory, and sends a heartbeat message to other operating systems and the management device to inform the receiving party of the self-failure restoration.
Through the technical scheme, fault isolation among a plurality of operating systems in a single node of the data storage system is ensured, and under the condition that equipment fails, access tasks can be migrated to other operating systems isolated from each other for continuous execution without triggering the controller to reset, so that the effect that the front end does not sense faults is achieved, and the reliability of the equipment is greatly improved.
Further, through the technical scheme, all the operating systems can be mutually perceived, so that the operating system which does not fail can quickly respond under the condition that any operating system fails, take over requests are actively initiated, the continuity of the service is ensured in a flexible manner, and the reliability of the equipment is effectively improved, and meanwhile, the availability of the equipment is improved.
It should be noted that, the information (including but not limited to user equipment information, user personal information, etc.), data (including but not limited to data for analysis, stored data, presented data, etc.), and signals related to the present application are all authorized by the user or are fully authorized by the parties, and the collection, use, and processing of the related data is required to comply with the relevant laws and regulations and standards of the relevant countries and regions. For example, the data related to the access task in the application is acquired under the condition of full authorization.
The terms "first," "second," and the like in this disclosure are used for distinguishing between similar elements or items having substantially the same function and function, and it should be understood that there is no logical or chronological dependency between the terms "first," "second," and "n," and that there is no limitation on the amount and order of execution. It will be further understood that, although the following description uses the terms first, second, etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another element. For example, a first operating system may be referred to as a second operating system, and similarly, a second operating system may be referred to as a first operating system, without departing from the scope of the various described examples. The first operating system and the second operating system may both be operating systems, and in some cases may be separate and distinct operating systems.
The term "at least one" in the present application means one or more, the term "plurality" in the present application means two or more, for example, a plurality of operating systems means two or more operating systems.
The foregoing description is merely illustrative of the present application, and the scope of the present application is not limited thereto, and any equivalent modifications or substitutions will be apparent to those skilled in the art within the scope of the present application, and are intended to be included within the scope of the present application. Therefore, the protection scope of the application is subject to the protection scope of the claims.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a program product. The program product includes one or more program instructions. When loaded and executed on a computing device, produces a flow or functionality in accordance with embodiments of the application, in whole or in part.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program for instructing relevant hardware, where the program may be stored in a computer readable storage medium, and the above storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above embodiments are only for illustrating the technical solution of the present application, and not for limiting the same; although the application has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit of the application.

Claims (19)

1. The storage device is characterized by comprising a management device and hardware resources, wherein the hardware resources are divided into a plurality of hardware resource groups, and each hardware resource group is provided with an operating system; the management device is used for:
and when a first hardware resource group in the plurality of hardware resource groups fails, migrating an access task executed by a first operating system running in the first hardware resource group to a second hardware resource group in the plurality of hardware resource groups, and executing the access task by a second operating system running in the second hardware resource group.
2. The apparatus of claim 1, wherein the first set of hardware resources and the second set of hardware resources are identical in specification.
3. The device according to claim 1 or 2, wherein the management device is further configured to: the state of the plurality of hardware resource groups is monitored.
4. The device of claim 1 or 2, wherein the storage device further comprises a network card supporting single root input output virtualized SR-IOV functionality, a first virtual function VF of the network card being assigned to the first set of hardware resources, a second virtual function VF of the network card being assigned to the second set of hardware resources.
5. The apparatus of claim 1, wherein the management apparatus is further configured to receive failure information sent by the first hardware resource group; the failure information indicates that the first operating system failed.
6. The device of claim 1, wherein the management device is further configured to receive a first takeover request sent by the second operating system, the first takeover request being configured to take over an access task performed by the first operating system.
7. The apparatus of claim 6, wherein the second operating system is configured to determine that the first operating system is malfunctioning if a heartbeat message for the first operating system is not received within a first time period.
8. The device of claim 1, wherein the management device is further configured to receive a second take-over request sent after the first operating system has failed back, the second take-over request indicating to take over the access task that has migrated to the second operating system.
9. The storage method is characterized by being applied to storage equipment, wherein the storage equipment comprises management equipment and hardware resources, the hardware resources are divided into a plurality of hardware resource groups, and each hardware resource group is provided with an operating system in a running mode; the method comprises the following steps:
And when a first hardware resource group in the plurality of hardware resource groups fails, migrating an access task executed by a first operating system running in the first hardware resource group to a second hardware resource group in the plurality of hardware resource groups, and executing the access task by a second operating system running in the second hardware resource group.
10. The method of claim 9, wherein the first set of hardware resources and the second set of hardware resources are identical in specification.
11. The method according to claim 9 or 10, characterized in that the method further comprises:
the management device monitors the status of the plurality of hardware resource groups.
12. The method of claim 9 or 10, wherein the storage device further comprises a network card supporting single root input output virtualized SR-IOV functionality, a first virtual function VF of the network card being assigned to the first set of hardware resources and a second virtual function VF of the network card being assigned to the second set of hardware resources.
13. The method according to claim 9, wherein the method further comprises:
the management equipment receives fault information sent by the first hardware resource group; the failure information indicates that the first operating system failed.
14. The method according to claim 9, wherein the method further comprises:
and the management equipment receives a first take-over request sent by the second operating system, wherein the first take-over request is used for taking over the access task executed by the first operating system.
15. The method of claim 14, wherein the method further comprises:
and if the second operating system does not receive the heartbeat message of the first operating system within the first duration, determining that the first operating system fails.
16. The method according to claim 9, wherein the method further comprises:
and the management equipment receives a second take-over request sent after the first operating system is recovered from faults, and the second take-over request indicates to take over the access task which has been migrated to the second operating system.
17. A computing device comprising a management device and hardware resources, the hardware resources comprising a plurality of hardware resource groups, the hardware resources comprising a processor and a memory for storing the management device and at least one piece of program code corresponding to each of the hardware resource groups, the at least one piece of program code loaded by the processor and executing the storage method of any one of claims 9 to 16.
18. A computer readable storage medium for storing at least one piece of program code for performing the storing method of any one of claims 9 to 16.
19. A computer program product, characterized in that the computer program product, when run on a computer, causes the computer to perform the storage method of any one of claims 9 to 16.
CN202210184105.1A 2022-02-24 2022-02-24 Storage device, storage method, computing device, and storage medium Pending CN116700594A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210184105.1A CN116700594A (en) 2022-02-24 2022-02-24 Storage device, storage method, computing device, and storage medium
PCT/CN2023/074779 WO2023160378A1 (en) 2022-02-24 2023-02-07 Storage device, storage method, computing device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210184105.1A CN116700594A (en) 2022-02-24 2022-02-24 Storage device, storage method, computing device, and storage medium

Publications (1)

Publication Number Publication Date
CN116700594A true CN116700594A (en) 2023-09-05

Family

ID=87764820

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210184105.1A Pending CN116700594A (en) 2022-02-24 2022-02-24 Storage device, storage method, computing device, and storage medium

Country Status (2)

Country Link
CN (1) CN116700594A (en)
WO (1) WO2023160378A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104850787B (en) * 2015-02-11 2018-06-05 数据通信科学技术研究所 Based on the high mobile terminal operating system and its implementation for ensureing kernel module
US9817735B2 (en) * 2015-08-11 2017-11-14 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Repairing a hardware component of a computing system while workload continues to execute on the computing system
EP3273314B1 (en) * 2016-07-19 2023-08-30 ABB Schweiz AG Programmable logic controller with management system
US11663036B2 (en) * 2019-09-05 2023-05-30 Nvidia Corporation Techniques for configuring a processor to function as multiple, separate processors

Also Published As

Publication number Publication date
WO2023160378A1 (en) 2023-08-31

Similar Documents

Publication Publication Date Title
CN108923992B (en) High-availability method and system for NAS cluster, electronic equipment and storage medium
EP2951963B1 (en) Failover in response to failure of a port
US7925817B2 (en) Computer system and method for monitoring an access path
US8041987B2 (en) Dynamic physical and virtual multipath I/O
US5784617A (en) Resource-capability-based method and system for handling service processor requests
US7930511B2 (en) Method and apparatus for management between virtualized machines and virtualized storage systems
US10423332B2 (en) Fibre channel storage array having standby controller with ALUA standby mode for forwarding SCSI commands
US9298566B2 (en) Automatic cluster-based failover handling
US20150149822A1 (en) Event handling in storage area networks
JP4920248B2 (en) Server failure recovery method and database system
JP2014106587A (en) Control method for i/o device and virtual computer system
US11573737B2 (en) Method and apparatus for performing disk management of all flash array server
CN111147274B (en) System and method for creating a highly available arbitration set for a cluster solution
US10884878B2 (en) Managing a pool of virtual functions
CN108512753A (en) The method and device that message is transmitted in a kind of cluster file system
EP3974989A1 (en) Link state setting method and device for virtual network interface card, and storage medium
EP3167372B1 (en) Methods for facilitating high availability storage services and corresponding devices
US20190124145A1 (en) Method and apparatus for availability management
JP6134720B2 (en) Connection method
CN116700594A (en) Storage device, storage method, computing device, and storage medium
US11210034B2 (en) Method and apparatus for performing high availability management of all flash array server
US11093301B2 (en) Input output adapter error recovery concurrent diagnostics
JP5511546B2 (en) Fault tolerant computer system, switch device connected to multiple physical servers and storage device, and server synchronization control method
CN115202803A (en) Fault processing method and device
US9143410B1 (en) Techniques for monitoring guest domains configured with alternate I/O domains

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination