WO2021238579A1 - 存储系统管理sata硬盘的方法及存储系统 - Google Patents

存储系统管理sata硬盘的方法及存储系统 Download PDF

Info

Publication number
WO2021238579A1
WO2021238579A1 PCT/CN2021/091286 CN2021091286W WO2021238579A1 WO 2021238579 A1 WO2021238579 A1 WO 2021238579A1 CN 2021091286 W CN2021091286 W CN 2021091286W WO 2021238579 A1 WO2021238579 A1 WO 2021238579A1
Authority
WO
WIPO (PCT)
Prior art keywords
hard disk
controller
expansion board
disk expansion
sata
Prior art date
Application number
PCT/CN2021/091286
Other languages
English (en)
French (fr)
Inventor
谢仁峰
戚龙江
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2021238579A1 publication Critical patent/WO2021238579A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component

Definitions

  • This application relates to the storage field, and in particular to a method and storage system for a storage system to manage SATA hard disks.
  • Serial Advanced Technology Attachment (SATA) hard drives are one of the mainstream data storage devices.
  • the host connects multiple SATA hard drives through a hard drive expansion board (expander), and accesses multiple SATA hard drives.
  • a hard drive expansion board expansion board
  • the system supports a failover mechanism, that is, a backup device is used to run the host's business and access multiple SATA hard disks.
  • the controller 101 is the main control device, and the controller 102 is the standby device.
  • the controller 101 is connected to the hard disk expansion board 103, the controller 102 is connected to the hard disk expansion board 104, the hard disk expansion board 103 is connected to the port selector 105 and the port selector 106, and the hard disk expansion board 104 is connected to the port selector 105 and the port selector.
  • the port selector 105 is connected to the SATA hard disk 107, and the port selector 106 is connected to the SATA hard disk 108.
  • the port selector 105 and the port selector 106 are respectively gated with the ports between the hard disk expansion board 103, and the port selector 105 and the port selector 106 are disconnected from the ports between the hard disk expansion board 104, respectively.
  • the SATA hard disk 107 and the SATA hard disk 108 are connected to the controller 101, and the controller 101 runs services. It accesses the SATA hard disk 107 through the hard disk expansion board 103 and the port selector 105, and accesses it through the hard disk expansion board 103 and the port selector 106.
  • SATA hard disk 108 SATA hard disk 108.
  • the controller 102 controls the port selection between the port selector 105 and the port selector 106 and the hard disk expansion board 104, respectively.
  • the SATA hard disk 107 and the SATA hard disk 108 are connected to the controller 102, and the controller 102 runs services. It accesses the SATA hard disk 107 through the hard disk expansion board 104 and the port selector 105, and accesses it through the hard disk expansion board 104 and the port selector 106.
  • SATA hard disk 108 SATA hard disk 108.
  • each SATA hard disk is connected to the main control device and the backup device through a port selector, which leads to an increase in system cost. Therefore, in the case of failover, how to implement backup devices to access SATA hard disks without using a port selector is an urgent problem to be solved.
  • the present application provides a method and a storage system for a storage system to manage SATA hard disks, which solves the problem that a backup device does not use a port selector to access the SATA hard disk in the case of failover.
  • the present application provides a method for managing SATA hard disks in a storage system.
  • the storage system includes a first controller, a second controller, a first hard disk expansion board, and a SATA hard disk.
  • the first controller is connected to the first hard disk.
  • Expansion board, the first hard drive expansion board is connected to the SATA hard drive, and the first hard drive expansion board is connected to the second controller; the method includes: when the second controller monitors that the first controller fails, the second controller
  • the first hard disk expansion board connected to the controller sends a first control message to instruct the first hard disk expansion board to disconnect the path from the first controller.
  • the second controller is connected to the first hard disk expansion board and the SATA hard disk, so that the second controller runs the services of the first controller and accesses the SATA hard disk.
  • the hard disk performs read and write operations. It should be noted that before the first hard disk expansion board and the SATA hard disk are connected to the second controller, the first hard disk expansion board and the SATA hard disk are connected to the first controller. It is understandable that when the first controller is running services, the first controller can access the SATA hard disk through the first hard disk expansion board.
  • the second controller uses the first hard disk expansion board to control the disconnection and failure of the first hard disk expansion board without using the port selector. Connect the first hard disk expansion board and the SATA hard disk to the second controller, so that when the first controller fails, the second controller takes over the work of the first controller and runs the services of the first controller. Access the SATA hard disk that belongs to the first controller by default, thereby effectively reducing the system cost.
  • the second controller sends the first control message through the out-of-band channel, and the first control message is an out-of-band message, thereby instructing the first hard disk expansion board to disconnect and fail the first control through the out-of-band message
  • the path of the controller isolates the first hard disk expansion board and the first controller, so as to prevent the second controller from accessing the SATA hard disk connected to the first hard disk expansion board and conflict with the first controller.
  • the storage system also includes a second hard disk expansion board, the second controller is connected to the second hard disk expansion board, the second hard disk expansion board is connected to the first hard disk expansion board, and the second controller runs the first control The business of the device accesses the SATA hard disk through the second hard disk expansion board.
  • first hard disk expansion board and SATA hard disk connected to the second controller may be pre-configured by the second controller; or, it may also be indicated by the second controller receiving a response message from the first hard disk expansion board .
  • the second controller monitors that the failure of the first controller is recovered, the second controller revokes the access authority to the first hard disk expansion board and the SATA hard disk, and sends a second control message to the first hard disk expansion board, and the second control The message is used to indicate the path between the first hard disk expansion board and the first controller.
  • the second controller sends the second control message through the out-of-band channel, and the second control message is an out-of-band message.
  • an out-of-band message is used to instruct the first hard disk expansion board to gate and fail back the path of the first controller, so that when the first controller runs services, it can access the SATA hard disk connected to the first hard disk expansion board.
  • the second controller receives a notification message from the first controller, and the notification message indicates that the first controller has recovered from a failure, so that the second controller instructs the first hard disk expansion board to pass through the path between the first controller.
  • the present application provides a method for managing SATA hard disks in a storage system.
  • the storage system includes a first controller, a second controller, a first hard disk expansion board, and a SATA hard disk.
  • the first controller is connected to the first hard disk.
  • Expansion board, the first hard drive expansion board is connected to the SATA hard drive, and the first hard drive expansion board is connected to the second controller; the method includes: when the first controller fails, the first hard drive expansion board receives the first hard drive from the second controller. Control message, the first hard disk expansion board disconnects the path from the first controller. The first control message is used to instruct the first hard disk expansion board to disconnect the path from the first controller.
  • the first hard disk expansion board receives the control instruction from the second controller and disconnects the path with the failed first controller without using the port selector.
  • the second controller connects the first hard disk expansion board and the SATA hard disk to the second controller, so that when the first controller fails, the second controller takes over the work of the first controller and runs the services of the first controller.
  • the SATA hard disk belonging to the first controller effectively reduces the system cost.
  • the method further includes: the first hard disk expansion board sends a response message to the second controller, and the response message includes the The number of ports and the number of SATA hard disks connected to the first hard disk expansion board.
  • the first hard disk expansion board receives the second control message from the second controller and gates the path with the first controller. Among them, the second control message is used to instruct the first hard disk expansion board to connect to the first controller
  • the present application also provides a storage system, and the beneficial effects can be referred to the description of the first aspect and will not be repeated here.
  • the storage system has the function of realizing the behavior of the second controller in the method example of the first aspect described above.
  • the functions can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • the storage system includes a first controller, a second controller, a first hard disk expansion board and a SATA hard disk, wherein the first controller is connected to the first hard disk expansion board, and the first hard disk expansion board is connected to SATA hard disk, the first hard disk expansion board and SATA hard disk are connected to the first controller, and the first hard disk expansion board is connected to the second controller; among them, when the second controller monitors the failure of the first controller, the second controller is used for Send a first control message to the first hard disk expansion board, the first control message is used to instruct the first hard disk expansion board to disconnect from the first controller; the second controller is also used to connect to the first hard disk expansion board and SATA The hard disk, and the business that runs the first controller, accesses the SATA hard disk.
  • These units can perform the corresponding functions in the above-mentioned method example of the first aspect. For details, please refer to the detailed description in the method example, which will not be repeated here.
  • the present application also provides a storage system, and the beneficial effects can be referred to the description of the second aspect and will not be repeated here.
  • the storage system has the function of realizing the behavior of the first hard disk expansion board in the method example of the second aspect described above.
  • the functions can be realized by hardware, or by hardware executing corresponding software.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions.
  • the storage system includes a first controller, a second controller, a first hard disk expansion board and a SATA hard disk, the first controller is connected to the first hard disk expansion board, and the first hard disk expansion board is connected to the SATA hard disk , The first hard disk expansion board and the SATA hard disk are connected to the first controller, and the first hard disk expansion board is connected to the second controller; where, when the first controller fails, the first hard disk expansion board is used to receive data from the second controller
  • the first control message is used to instruct the first hard disk expansion board to disconnect the path from the first controller; the first hard disk expansion board is also used to disconnect the path from the first controller.
  • the present application also provides a terminal device, including a storage system, the storage system is used to store computer programs and instructions, and the second controller in the storage system is used to call the computer programs and execute instructions such as
  • the first hard disk expansion board in the storage system is used to invoke the computer program and instructions to execute the method described in the second aspect above.
  • the present application also provides a computer program product, the computer program product comprising: computer program code, when the computer program code is executed, the method executed by the second controller in the first aspect is Be executed.
  • the present application also provides a computer program product, the computer program product comprising: computer program code, when the computer program code is executed, the above-mentioned second aspect is executed by the first hard disk expansion board The method is executed.
  • the present application provides a chip system including a processor for implementing the function of the second controller in the method of the first aspect.
  • the chip system further includes a memory for storing program instructions and/or data.
  • the chip system can be composed of chips, and can also include chips and other discrete devices.
  • the present application provides a chip system including a processor for implementing the function of the first hard disk expansion board in the method of the second aspect.
  • the chip system further includes a memory for storing program instructions and/or data.
  • the chip system can be composed of chips, and can also include chips and other discrete devices.
  • the present application provides a computer-readable storage medium that stores a computer program, and when the computer program is executed, the method executed by the second controller in the first aspect described above is implemented.
  • the present application provides a computer-readable storage medium that stores a computer program, and when the computer program is run, it implements the execution of the first hard disk expansion board in the second aspect. method.
  • the names of the controller, the hard disk expansion board terminal device, and the storage system do not constitute a limitation on the device itself. In actual implementation, these devices may appear under other names. As long as the function of each device is similar to that of this application, it falls within the scope of the claims of this application and its equivalent technologies.
  • FIG. 1 is a schematic diagram of the architecture of a storage system provided by the prior art
  • Figure 2 is a schematic diagram of the architecture of a storage system provided in the prior art
  • FIG. 3 is a schematic diagram of the architecture of a storage system provided by an embodiment of the application.
  • 4 to 6 are schematic diagrams of the process of managing SATA hard disks by the storage system according to an embodiment of the application;
  • FIG. 7 is a flowchart of a method for managing SATA hard disks by a storage system according to an embodiment of the application
  • FIG. 8 is a schematic diagram of the composition of a controller provided by an embodiment of the application.
  • FIG. 9 is a schematic diagram of the composition of a hard disk expansion board provided by an embodiment of the application.
  • words such as “exemplary” or “for example” are used as examples, illustrations, or illustrations. Any embodiment or design solution described as “exemplary” or “for example” in the embodiments of the present application should not be construed as being more preferable or advantageous than other embodiments or design solutions. To be precise, words such as “exemplary” or “for example” are used to present related concepts in a specific manner.
  • failover can refer to the rapid activation of redundant or backup servers, systems, hardware, or networks to take over the work of failed devices when an active service or application terminates unexpectedly, and continue to run the service or The application.
  • automatic failover usually uses a "heartbeat" line to connect two servers. As long as the pulse or "heartbeat" between the primary server and the backup server is not interrupted, the backup server will not be activated. In order to hot switch and prevent service interruption, there may also be a third server running standby components on standby. After detecting the "heartbeat" alarm of the primary server, the backup server will take over the service.
  • Failure recovery is to restore the server, system, hardware or network to the configuration before the failure.
  • an embodiment of the present application provides a method for a storage system to manage SATA hard disks.
  • the storage system includes a first controller, a second controller, a first hard disk expansion board and a SATA hard disk, wherein the first controller is connected to the first hard disk expansion board, the first hard disk expansion board is connected to the SATA hard disk, and the first hard disk expansion board Connect the second controller.
  • the method includes: when the second controller monitors that the first controller is faulty, the second controller sends a first control message to the first hard disk expansion board connected to the first controller to instruct the first hard disk expansion board to disconnect and Access to the first controller.
  • the second controller is connected to the first hard disk expansion board and the SATA hard disk connected to the first hard disk expansion board, so that the second controller runs the services of the first controller and accesses the SATA hard disk. It should be noted that before the first hard disk expansion board and the SATA hard disk are connected to the second controller, the first hard disk expansion board and the SATA hard disk are connected to the first controller. It is understandable that when the first controller is running services, the first controller can access the SATA hard disk through the first hard disk expansion board.
  • the second controller uses the first hard disk expansion board to control the disconnection and failure of the first hard disk expansion board through the control command without using the port selector.
  • a channel of the controller, and the first hard disk expansion board and SATA hard disk are connected to the second controller, so that when the first controller fails, the second controller takes over the work of the first controller and runs the services of the first controller When accessing the SATA hard disk that belongs to the first controller by default, the system cost is effectively reduced.
  • FIG. 3 is a schematic diagram of the architecture of a storage system provided by an embodiment of the application.
  • the storage system 300 includes a first controller 301 and a second controller 302.
  • the first controller 301 is connected to the first hard disk expansion board 303, and the first hard disk expansion board 303 is connected to the SATA hard disk 305.
  • the second controller 302 is connected to the second hard disk expansion board 304, and the second hard disk expansion board 304 is connected to the SATA hard disk 306.
  • the first hard disk expansion board 303 is connected to the second hard disk expansion board 304.
  • the first controller 301 is connected to the second hard disk expansion board 304.
  • the second controller 302 is connected to the first hard disk expansion board 303.
  • the first controller 301, the first hard disk expansion board 303 and the SATA hard disk 305 transmit data according to the SATA protocol.
  • the second controller 302, the second hard disk expansion board 304 and the SATA hard disk 306 transmit data according to the SATA protocol.
  • the first hard disk expansion board 303 and the second hard disk expansion board 304 transmit data through the SATA protocol.
  • Data is transmitted between the first controller 301 and the second hard disk expansion board 304 through an out-of-band channel.
  • Data is transmitted between the second controller 302 and the first hard disk expansion board 303 through an out-of-band channel.
  • FIG. 3 is only a schematic diagram, and the embodiment of the present application does not limit the number of hard disk expansion boards and SATA hard disks included in the storage system 300. In practical applications, the system can also include more hard disk expansion boards and SATA hard disks, which are not shown in Figure 3.
  • the two hard disk expansion boards are connected to the same SATA hard disk.
  • the hard disk expansion board does not need to be connected to the SATA hard disk through the port selector, and the hard disk expansion
  • the board connection connects different numbers of SATA hard disks according to requirements. With the same number of hard disk expansion boards, more SATA hard disks can be connected in the system, thereby increasing the storage capacity of the system.
  • controller in the storage system 300 After the controller in the storage system 300 is powered on, the controller enters the initial state, and each controller sends a message according to the Serial Attached Small Computer System Interface (SAS) protocol to scan the system All hard drive expansion boards and SATA hard drives. Then, a handshake is performed between the controllers, and the controller recognizes that the current state is the initial state, connects the default hard disk expansion board and the SATA hard disk, and enters the running state.
  • SAS Serial Attached Small Computer System Interface
  • the device performs a handshake before the start of information transmission. Handshaking is used to reach parameters, such as information transmission rate, alphabet, parity, interrupt process and other protocol features.
  • handshaking In telecommunications and microprocessor systems, handshaking is also called handshaking.
  • data communication the sequence of events managed by hardware or software, before the exchange of information, mutually agree on the status of the operating mode.
  • the controller accesses the SATA hard disk connected to the hard disk expansion board through the hard disk expansion board connected to the controller.
  • the fault state connect the hard disk expansion board and SATA hard disk connected to the controller to other controllers connected to the hard disk expansion board to realize the access and fault control of other devices in the case of controller failover SATA hard drive connected to the device.
  • the first controller 301 and the second controller 302 may be two independent devices.
  • the second controller 302 takes over the work of the first controller 301, runs the services of the first controller 301, and accesses the SATA hard disk 305.
  • the second controller 302 fails, the first controller 301 takes over the work of the second controller 302, runs the services of the second controller 302, and accesses the SATA hard disk 306.
  • the first controller 301 After the first controller 301 is powered on, the first controller 301 enters the initial state.
  • the first controller 301 sends a message according to the SAS protocol, and scans the first hard disk expansion board 303 and SATA hard disk 305 related to the first controller 301, and the second hard disk expansion board 304 and SATA hard disk related to the second controller 302 306.
  • the second controller 302 After the second controller 302 is powered on, the second controller 302 enters the initial state.
  • the second controller 302 sends a message according to the SAS protocol, and scans the second hard disk expansion board 304 and SATA hard disk 306 related to the second controller 302, and the first hard disk expansion board 303 and SATA hard disk related to the first controller 301 305.
  • the first controller 301 and the second controller 302 do not access the scanned hard disk expansion board and SATA hard disk.
  • the first controller 301 and the second controller 302 first perform a handshake and recognize that the current state is the initial state.
  • the first controller 301 is connected to the default first hard disk expansion board 303 and the SATA hard disk 305, and enters the running state.
  • the second controller 302 is connected to the default second hard disk expansion board 304 and the SATA hard disk 306, and enters the running state.
  • the application layer of the first controller 301 calls an Application Programming Interface (API) to register the SATA hard disk 305 on the default first hard disk expansion board 303 to the block device.
  • API Application Programming Interface
  • registration may mean that the first controller 301 controls the SATA hard disk 305 on the first hard disk expansion board 303 to connect to the operating system (OS) of the first controller 301, so that the first controller 301 can
  • OS operating system
  • the processor accesses the SATA hard disk 305 through the first hard disk expansion board 303.
  • the application layer of the second controller 302 calls the API to register the SATA hard disk 306 on the default second hard disk expansion board 304 to the block device.
  • registration may mean that the second controller 302 controls the SATA hard disk 306 on the second hard disk expansion board 304 to connect to the OS of the second controller 302, so that the processor in the second controller 302 can pass through the second hard disk.
  • the expansion board 304 accesses the SATA hard disk 306.
  • both the first controller 301 and the second controller 302 are configured with a hard disk expansion board and a SATA hard disk connected by default.
  • the relationship between the hard disk expansion board connected to the controller by default and the SATA hard disk and the controller can be presented in the form of a table.
  • the default information table includes the relationship between the controller and the hard disk expansion board and SATA hard disks connected by default.
  • first hard disk expansion board 303 and the SATA hard disk 305 are connected to the first controller 301 by default.
  • the second hard disk expansion board 304 and the SATA hard disk 306 are connected to the second controller 302 by default.
  • the first controller 301 can query Table 1 to access the first hard disk expansion board 303 and the SATA hard disk 305.
  • the second controller 302 can query Table 1 to access the second hard disk expansion board 304 and the SATA hard disk 306.
  • Table 1 only shows the storage form in the storage device of the relationship between the controller and the default connected hard disk expansion board and SATA hard disk in the form of a table, and does not limit the storage form of the foregoing relationship in the storage device.
  • the storage form of the foregoing relationship in the storage device may also be stored in other forms, which is not limited in the embodiment of the present application.
  • both the first controller 301 and the second controller 302 periodically send data packets to each other through the "heartbeat line" to monitor each other's "heartbeat".
  • both the first controller 301 and the second controller 302 are configured with a fault detection network card (commonly known as a "heartbeat line"), and the first controller 301 and the second controller 302 send data packets to each other through the fault detection network card , To monitor the "heartbeat" of the other party.
  • the "heartbeat" of the first controller 301 is not interrupted, it is determined that the first controller 301 is in the running state and the first controller 301 has not failed. If the "heartbeat" of the second controller 302 is not interrupted, it is determined that the second controller 302 is in the running state and the second controller 302 has not failed.
  • the first controller 301 fails, the first controller 301 stops sending data packets to the second controller 302, and the second controller 302 does not receive the data packets from the first controller 301 within a preset period of time.
  • the controller 302 determines that the "heartbeat" of the first controller 301 is interrupted. It is understandable that the interruption of the "heartbeat" of the first controller 301 indicates that the first controller 301 is faulty, and the first controller 301 enters a fault state.
  • the second controller 302 monitors that the first controller 301 is faulty
  • the second controller 302 sends a first control message to the first hard disk expansion board 303, instructing the first hard disk expansion board 303 to disconnect and The path of the first controller 301.
  • the first hard disk expansion board 303 receives the first control message from the second controller 302, and disconnects from the first controller 301.
  • the first control message is used to instruct the first hard disk expansion board 303 to disconnect from the first controller 301.
  • the second controller 302 sends the first control message through the out-of-band channel, and the first control message is an out-of-band message. Instruct the first hard disk expansion board 303 to disconnect from the failed first controller 301 through an out-of-band message, isolate the first hard disk expansion board 303 and the first controller 301, and prevent the second controller 302 from accessing the SATA hard disk 305, and The first controller 301 generates a conflict.
  • the out-of-band channel uses a separate control link, and control information and data transmission are controlled by different processes.
  • the second controller 302 is connected to the first hard disk expansion board 303 and the SATA hard disk 305. It is understandable that the second controller 302 controls the first hard disk expansion board 303 and the SATA hard disk 305 to connect to the operating system of the second controller 302, so that the processor in the second controller 302 passes through the second hard disk expansion board 304 And the first hard disk expansion board 303 accesses the SATA hard disk 305.
  • the second controller 302 scans the first hard disk expansion board 303 and the SATA hard disk 305 in advance. After the second controller 302 determines that the first controller 301 is faulty, the query table 1 accesses the first hard disk expansion board 303 and the SATA hard disk 305. It is understandable that the first hard disk expansion board 303 and the SATA hard disk 305 are pre-configured, that is, the first controller 301 is connected to the first hard disk expansion board 303 and the SATA hard disk 305 by default.
  • the first hard disk expansion board 303 sends a response message to the second controller 302, and the response message includes the first hard disk expansion board The number of ports of 303 and the number of SATA hard disks 305 connected to the first hard disk expansion board 303.
  • the second controller 302 accesses the number of ports of the first hard disk expansion board 303 and the number of SATA hard disks 305 connected to the first hard disk expansion board 303 indicated by the response message.
  • the number of ports of the first hard disk expansion board 303 and the number of SATA hard disks 305 connected to the first hard disk expansion board 303 indicated in the response message are real-time data, which may be larger or smaller than the default first hard disk expansion board 303.
  • the number of ports and the number of SATA hard disks 305 connected to the first hard disk expansion board 303 are real-time data, which may be larger or smaller than the default first hard disk expansion board 303.
  • the second controller 302 runs the services of the first controller 301 and accesses the SATA hard disk 305, that is, performs read and write operations on the SATA hard disk 305.
  • the second controller 302 performs data interaction with the SATA hard disk 305 on the first hard disk expansion board 305 through the second hard disk expansion board 304 according to the SATA protocol, and performs read and write operations on the SATA hard disk 305.
  • the second controller 302 runs the services of the second controller 302 and accesses the SATA hard disk 306, that is, performs read operations and write operations on the SATA hard disk 306.
  • the second controller 302 monitors that the first controller 301 has recovered from the failure, it revokes the access rights to the first hard disk expansion board 303 and the SATA hard disk 305. Understandably, the first hard disk expansion board 303 And the registration information of the SATA hard disk 305 is deleted from the operating system of the second controller 302. Furthermore, the second controller 302 sends a second control message to the first hard disk expansion board 303, instructing the first hard disk expansion board 303 to gate a path with the first controller 301.
  • the second controller 302 sends the second control message through the out-of-band channel, and the first control message is an out-of-band message.
  • an out-of-band message is used to instruct the first hard disk expansion board 303 to gate and fail to recover the path of the first controller 301, so that the first controller 301 can access the SATA hard disk 305 connected to the first hard disk expansion board 303 when the first controller 301 runs services. .
  • the first hard disk expansion board 303 receives the second control message from the second controller 302 and gates the path with the first controller 301. After the failure of the first controller 301 is restored, the first controller 301 is not connected to any hard disk expansion board and SATA hard disk. At this time, the first controller 301 looks up the table 1 to access the first hard disk expansion board 303 and the SATA hard disk 305. The first controller 301 runs the services of the first controller 301 and accesses the SATA hard disk 305, that is, performs read operations and write operations on the SATA hard disk 305.
  • the second controller 302 after receiving the notification message from the first controller 301, the second controller 302 sends a second control message to the first hard disk expansion board 303, instructing the first hard disk expansion board 303 to connect to the first controller 301 path.
  • the notification message indicates that the first controller 301 has recovered from the failure.
  • the first controller 301 may refer to the method of the prior art to notify the second controller 302 of the related information of the running service, and specifically refer to the description of the prior art, which is not limited in the embodiment of the present application.
  • FIG. 7 is a flowchart of a method for a storage system to manage a SATA hard disk provided by an embodiment of the application.
  • the first controller 301, the second controller 302, and the first hard disk expansion board 303 in the storage system 300 are taken as an example for description. Assume that the first controller 301 fails.
  • the method includes the following steps.
  • the second controller 302 sends a first control message to the first hard disk expansion board 303.
  • the first control message is used to instruct the first hard disk expansion board 303 to disconnect from the first controller 301.
  • the first hard disk expansion board 303 receives the first control message from the second controller 302.
  • the first hard disk expansion board 303 disconnects the path from the first controller 301.
  • the second controller 302 is connected to the first hard disk expansion board 303 and the SATA hard disk 305.
  • the second controller 302 runs the service of the first controller 301 and accesses the SATA hard disk 305.
  • the controller and the hard disk expansion board include hardware structures and/or software modules corresponding to each function.
  • the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is executed by hardware or computer software-driven hardware depends on the specific application scenarios and design constraints of the technical solution.
  • FIG. 8 is a schematic diagram of the composition of a controller provided by an embodiment of the application.
  • the controller can be used to implement the function of the second controller in the foregoing method embodiment, and therefore can also achieve the beneficial effects of the foregoing method embodiment.
  • the controller may be the second controller 302 as shown in FIGS. 3 to 6.
  • the controller 800 includes a first processing unit 810 and a second processing unit 820.
  • the first processing unit 810 runs a state monitoring program and an underlying protocol program.
  • the second processing unit 820 runs the substrate management program.
  • the second processing unit 820 may be a baseboard management controller (Baseboard Management Controller, BMC).
  • BMC Baseboard Management Controller
  • the first processing unit 810 adopts an in-band management method.
  • the second processing unit 820 adopts an out-of-band management method.
  • the core concept of the so-called in-band management is that management control information and data information are transmitted using a unified physical channel.
  • the core concept of out-of-band management is to transmit management control information and data information through different physical channels, which are completely independent and do not affect each other. For example, through a dedicated management channel independent of the data network, centralized and integrated management of computer room network equipment (routers, switches, firewalls, etc.), server equipment (minicomputers, servers, workstations), and computer room power supply systems.
  • the controller 800 is used to implement the function of the second controller 302 in the method embodiment shown in FIG. 7.
  • the controller 800 When the controller 800 is used to implement the function of the second controller 302 in the method embodiment shown in FIG. 7: the first processing unit 810 is used to perform S704 and S705; the second processing unit 820 is used to perform S701.
  • the controller 800 may further include a memory 830 for storing instructions executed by the first processing unit 810 and the second processing unit 820, or storing inputs required by the first processing unit 810 and the second processing unit 820 to execute instructions Data, or store data generated after the first processing unit 810 and the second processing unit 820 execute instructions.
  • a memory 830 for storing instructions executed by the first processing unit 810 and the second processing unit 820, or storing inputs required by the first processing unit 810 and the second processing unit 820 to execute instructions Data, or store data generated after the first processing unit 810 and the second processing unit 820 execute instructions.
  • first processing unit 810 and second processing unit 820 can be obtained directly with reference to the related descriptions of the second controller 302 in FIG. 3 to FIG. 6, and will not be repeated here.
  • the hard disk expansion board 900 includes a processor 910 and an interface circuit 920.
  • the processor 910 and the interface circuit 920 are coupled to each other. It can be understood that the interface circuit 920 may be an input/output interface.
  • the hard disk expansion board 900 can be connected to the SATA hard disk through the interface circuit 920.
  • the hard disk expansion board 900 may further include a memory 930 for storing instructions executed by the processor 910 or storing input data required by the processor 910 to run the instructions or storing data generated after the processor 910 runs the instructions.
  • the processor 910 is used to execute S703; the interface circuit 920 is used to execute S702.
  • processor 910 and interface circuit 920 can be obtained directly with reference to the relevant description of the first hard disk expansion board 303 in FIG. 3 to FIG. 6, and will not be repeated here.
  • the processor in the embodiments of the present application may be a central processing unit (Central Processing Unit, CPU), or may be other general-purpose processors, digital signal processors (Digital Signal Processors, DSPs), or application specific integrated circuits. (Application Specific Integrated Circuit, ASIC), Field Programmable Gate Array (Field Programmable Gate Array, FPGA) or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
  • the general-purpose processor may be a microprocessor or any conventional processor.
  • the method steps in the embodiments of the present application can be implemented by hardware, and can also be implemented by a processor executing software instructions.
  • Software instructions can be composed of corresponding software modules, which can be stored in Random Access Memory (RAM), Flash memory, Read-Only Memory (ROM), Programmable ROM (Programmable ROM) , PROM), Erasable Programmable Read-Only Memory (Erasable PROM, EPROM), Electrically Erasable Programmable Read-Only Memory (Electrically EPROM, EEPROM), register, hard disk, mobile hard disk, CD-ROM or well-known in the art Any other form of storage medium.
  • An exemplary storage medium is coupled to the processor, so that the processor can read information from the storage medium and can write information to the storage medium.
  • the storage medium may also be an integral part of the processor.
  • the processor and the storage medium may be located in the ASIC.
  • the ASIC can be located in a network device or a terminal device.
  • the processor and the storage medium may also exist as discrete components in the network device or the terminal device.
  • the above-mentioned embodiments it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof.
  • software it can be implemented in the form of a computer program product in whole or in part.
  • the computer program product includes one or more computer programs or instructions.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, network equipment, user equipment, or other programmable devices.
  • the computer program or instruction may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
  • the computer program or instruction may be downloaded from a website, computer, The server or data center transmits to another website site, computer, server or data center through wired or wireless means.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or a data center that integrates one or more available media.
  • the usable medium may be a magnetic medium, such as a floppy disk, a hard disk, and a magnetic tape; it may also be an optical medium, such as a digital video disc (digital video disc, DVD); and it may also be a semiconductor medium, such as a solid state drive (solid state drive). , SSD).
  • “at least one” refers to one or more, and “multiple” refers to two or more.
  • “And/or” describes the association relationship of the associated object, indicating that there can be three relationships, for example, A and/or B, which can mean: A alone exists, A and B exist at the same time, and B exists alone, where A, B can be singular or plural.
  • the character “/” generally indicates that the associated objects before and after are an “or” relationship; in the formula of this application, the character “/” indicates that the associated objects before and after are a kind of "division” Relationship.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)

Abstract

一种存储系统管理SATA硬盘的方法及存储系统,涉及存储领域,解决了在故障转移的情况下,不使用端口选择器实现备用设备访问SATA硬盘的问题。当第二控制器(302)监控到第一控制器(301)故障时,第二控制器(302)向与第一控制器(301)连接的第一硬盘扩展板(303)发送第一控制消息,指示第一硬盘扩展板(303)断开与第一控制器(301)的通路。此时,第二控制器(302)接入第一硬盘扩展板(303)和与第一硬盘扩展板(303)连接的SATA硬盘(305),使第二控制器(302)运行第一控制器(301)的业务,访问与第一硬盘扩展板(303)连接的SATA硬盘(305)。在第一硬盘扩展板(303)和与第一硬盘扩展板(303)连接的SATA硬盘(305)接入第二控制器(302)之前,第一硬盘扩展板(303)和与第一硬盘扩展板(303)连接的SATA硬盘(305)接入第一控制器(301)。

Description

存储系统管理SATA硬盘的方法及存储系统 技术领域
本申请涉及存储领域,尤其涉及一种存储系统管理SATA硬盘的方法及存储系统。
背景技术
目前,串行高技术附件(Serial Advanced Technology Attachment,SATA)硬盘是主流的数据存储设备之一。主机通过硬盘扩展板(expander)连接多个SATA硬盘,访问多个SATA硬盘。在主机出现故障,为了确保业务不受影响,系统支持故障转移(failover)机制,即采用备用设备运行主机的业务,访问多个SATA硬盘。
如图1所示,控制器101为主控设备,控制器102为备用设备。控制器101连接硬盘扩展板103,控制器102连接硬盘扩展板104,硬盘扩展板103连接端口选择器(port selector)105和端口选择器106,硬盘扩展板104连接端口选择器105和端口选择器106,端口选择器105连接SATA硬盘107,端口选择器106连接SATA硬盘108。通常,端口选择器105和端口选择器106分别与硬盘扩展板103之间的端口选通,端口选择器105和端口选择器106分别与硬盘扩展板104之间的端口断开。此时,SATA硬盘107和SATA硬盘108接入到控制器101,控制器101运行业务,通过硬盘扩展板103和端口选择器105访问SATA硬盘107,以及通过硬盘扩展板103和端口选择器106访问SATA硬盘108。
如图2所示,当控制器101故障,控制器102控制端口选择器105和端口选择器106分别与硬盘扩展板104之间的端口选通。此时,SATA硬盘107和SATA硬盘108接入到控制器102,控制器102运行业务,通过硬盘扩展板104和端口选择器105访问SATA硬盘107,以及通过硬盘扩展板104和端口选择器106访问SATA硬盘108。
可见,为了支持故障转移机制,每个SATA硬盘均通过端口选择器与主控设备和备用设备相连,导致系统成本增加。因此,在故障转移的情况下,不使用端口选择器如何实现备用设备访问SATA硬盘是一个亟待解决的问题。
发明内容
本申请提供一种存储系统管理SATA硬盘的方法及存储系统,解决了在故障转移的情况下,不使用端口选择器实现备用设备访问SATA硬盘的问题。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供了一种存储系统管理SATA硬盘的方法,存储系统包括第一控制器、第二控制器、第一硬盘扩展板和SATA硬盘,其中,第一控制器连接第一硬盘扩展板,第一硬盘扩展板连接SATA硬盘,第一硬盘扩展板连接第二控制器;所述方法包括:当第二控制器监控到第一控制器故障时,第二控制器向与第一控制器连接的第一硬盘扩展板发送第一控制消息,指示第一硬盘扩展板断开与第一控制器的通路。此时,第二控制器接入第一硬盘扩展板和SATA硬盘,使第二控制器运行第一控制器的业务,访问SATA硬盘,即第二控制器对与第一硬盘扩展板连接的SATA硬盘 进行读操作和写操作。需要说明的是,在第一硬盘扩展板和SATA硬盘接入第二控制器之前,第一硬盘扩展板和SATA硬盘接入第一控制器。可理解的,在第一控制器运行业务时,第一控制器可以通过第一硬盘扩展板访问SATA硬盘。
本申请提供的存储系统管理SATA硬盘的方法,在不使用端口选择器的情况下,第二控制器通过第一硬盘扩展板,利用控制指令控制第一硬盘扩展板断开与故障的第一控制器的通路,并将第一硬盘扩展板以及SATA硬盘接入第二控制器,实现在第一控制器故障,第二控制器接替第一控制器的工作,运行第一控制器的业务时,访问默认归属第一控制器的SATA硬盘,从而有效地减少了系统成本。
在一种可能的设计中,第二控制器通过带外通道发送第一控制消息,第一控制消息是带外消息,从而通过带外消息指示第一硬盘扩展板断开与故障的第一控制器的通路,隔离第一硬盘扩展板和第一控制器,避免第二控制器访问与第一硬盘扩展板连接的SATA硬盘,与第一控制器产生冲突。
在另一种可能的设计中,存储系统还包括第二硬盘扩展板,第二控制器连接第二硬盘扩展板,第二硬盘扩展板连接第一硬盘扩展板,第二控制器运行第一控制器的业务,通过第二硬盘扩展板,访问SATA硬盘。
此外,第二控制器接入的第一硬盘扩展板和SATA硬盘,可以是第二控制器预先配置的;或者,还可以是第二控制器接收到来自第一硬盘扩展板的响应消息指示的。
进而,当第二控制器监控到第一控制器故障恢复时,第二控制器撤销对第一硬盘扩展板和SATA硬盘的访问权限,向第一硬盘扩展板发送第二控制消息,第二控制消息用于指示第一硬盘扩展板选通与第一控制器的通路。
在一种可能的设计中,第二控制器通过带外通道发送第二控制消息,第二控制消息是带外消息。从而通过带外消息指示第一硬盘扩展板选通与故障恢复的第一控制器的通路,以便于第一控制器运行业务时,访问与第一硬盘扩展板连接的SATA硬盘。
可选的,第二控制器接收来自第一控制器的通知消息,通知消息指示第一控制器故障恢复,使得第二控制器指示第一硬盘扩展板选通与第一控制器的通路。
第二方面,本申请提供了一种存储系统管理SATA硬盘的方法,存储系统包括第一控制器、第二控制器、第一硬盘扩展板和SATA硬盘,其中,第一控制器连接第一硬盘扩展板,第一硬盘扩展板连接SATA硬盘,第一硬盘扩展板连接第二控制器;所述方法包括:当第一控制器故障时,第一硬盘扩展板接收来自第二控制器的第一控制消息,第一硬盘扩展板断开与第一控制器的通路。其中,第一控制消息用于指示第一硬盘扩展板断开与第一控制器的通路。
本申请提供的存储系统管理SATA硬盘的方法,在不使用端口选择器的情况下,第一硬盘扩展板接收来自第二控制器的控制指令,断开与故障的第一控制器的通路,第二控制器将第一硬盘扩展板以及SATA硬盘接入第二控制器,实现在第一控制器故障,第二控制器接替第一控制器的工作,运行第一控制器的业务时,访问默认归属第一控制器的SATA硬盘,从而有效地减少了系统成本。
可选的,在第一硬盘扩展板接收来自第二控制器的第一控制消息之后,方法还包括:第一硬盘扩展板向第二控制器发送响应消息,响应消息包括第一硬盘扩展板的端口数和第一硬盘扩展板连接的SATA硬盘的个数。
进而,当第一控制器故障恢复时,第一硬盘扩展板接收来自第二控制器的第二控制消息,选通与第一控制器的通路。其中,第二控制消息用于指示第一硬盘扩展板选通与第一控制器的通路
第三方面,本申请还提供了一种存储系统,有益效果可以参见第一方面的描述此处不再赘述。所述存储系统具有实现上述第一方面的方法实例中第二控制器的行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述存储系统包括第一控制器、第二控制器、第一硬盘扩展板和SATA硬盘,其中,第一控制器连接第一硬盘扩展板,第一硬盘扩展板连接SATA硬盘,第一硬盘扩展板和SATA硬盘接入第一控制器,第一硬盘扩展板连接第二控制器;其中,当第二控制器监控到第一控制器故障时,第二控制器用于向第一硬盘扩展板发送第一控制消息,第一控制消息用于指示第一硬盘扩展板断开与第一控制器的通路;第二控制器还用于接入第一硬盘扩展板和SATA硬盘,以及运行第一控制器的业务,访问SATA硬盘。这些单元可以执行上述第一方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。
第四方面,本申请还提供了一种存储系统,有益效果可以参见第二方面的描述此处不再赘述。所述存储系统具有实现上述第二方面的方法实例中第一硬盘扩展板的行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一个可能的设计中,所述存储系统包括第一控制器、第二控制器、第一硬盘扩展板和SATA硬盘,第一控制器连接第一硬盘扩展板,第一硬盘扩展板连接SATA硬盘,第一硬盘扩展板和SATA硬盘接入第一控制器,第一硬盘扩展板连接第二控制器;其中,当第一控制器故障时,第一硬盘扩展板用于接收来自第二控制器的第一控制消息,第一控制消息用于指示第一硬盘扩展板断开与第一控制器的通路;第一硬盘扩展板还用于断开与第一控制器的通路。这些单元可以执行上述第一方面方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。
第五方面,本申请还提供了一种终端设备,包括存储系统,所述存储系统用于存储计算机程序和指令,所述存储系统中的第二控制器用于调用所述计算机程序和指令执行如上述第一方面所述的方法,所述存储系统中的第一硬盘扩展板用于调用所述计算机程序和指令执行如上述第二方面所述的方法。
第六方面,本申请还提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被运行时,使得上述第一方面中由第二控制器执行的方法被执行。
第七方面,本申请还提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被运行时,使得上述第二方面中由第一硬盘扩展板执行的方法被执行。
第八方面,本申请提供了一种芯片系统,该芯片系统包括处理器,用于实现上述第一方面的方法中第二控制器的功能。在一种可能的设计中,所述芯片系统还包括存储器,用于保存程序指令和/或数据。该芯片系统,可以由芯片构成,也可以包括芯片 和其他分立器件。
第九方面,本申请提供了一种芯片系统,该芯片系统包括处理器,用于实现上述第二方面的方法中第一硬盘扩展板的功能。在一种可能的设计中,所述芯片系统还包括存储器,用于保存程序指令和/或数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
第十方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,当该计算机程序被运行时,实现上述第一方面中由第二控制器执行的方法。
第十一方面,本申请提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,当该计算机程序被运行时,实现上述第二方面中由第一硬盘扩展板执行的方法。
本申请中,控制器、硬盘扩展板终端设备和存储系统的名字对设备本身不构成限定,在实际实现中,这些设备可以以其他名称出现。只要各个设备的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
附图说明
图1为现有技术提供的一种存储系统的架构示意图;
图2为现有技术提供的一种存储系统的架构示意图;
图3为本申请一实施例提供的存储系统的架构示意图;
图4-图6为本申请一实施例提供的存储系统管理SATA硬盘的过程示意图;
图7为本申请一实施例提供的存储系统管理SATA硬盘方法的流程图;
图8为本申请一实施例提供的控制器的组成示意图;
图9为本申请一实施例提供的硬盘扩展板的组成示意图。
具体实施方式
本申请说明书和权利要求书及上述附图中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍:
在计算机术语中,故障转移(failover)可以是指当活动的服务或应用意外终止时,快速启用冗余或备用的服务器、系统、硬件或者网络接替故障的设备的工作,继续运行所述服务或所述应用。
对于要求高可用和高稳定性的服务器、系统、硬件或者网络,系统设计者通常会设计故障转移功能。
在服务器级别,自动故障转移通常使用一个“心跳”线连接两台服务器。只要主服务器与备用服务器间脉冲或“心跳”没有中断,备用服务器就不会启用。为了热切换和防止服务中断,也可能会有第三台服务器运行备用组件待命。检测到主服务器“心跳”报警后,备用服务器会接管服务。
故障恢复(failback)是将服务器、系统、硬件或者网络恢复到故障之前的组态。
由于SATA硬盘不支持多主机访问,为了支持故障转移机制,传统技术中通过端口选择器与主控制器和备用控制器连接,当主控制器故障时,选通端口选择器与备用控制器的通路,使备用控制器接替主控控制器的工作。具体的参考图1和图2的阐述。
由于每个SATA硬盘连接端口选择器,控制器通过硬盘扩展板和端口选择器访问SATA硬盘,增加了系统成本,为了解决该问题,本申请实施例提供了一种存储系统管理SATA硬盘的方法。该存储系统包括第一控制器、第二控制器、第一硬盘扩展板和SATA硬盘,其中,第一控制器连接第一硬盘扩展板,第一硬盘扩展板连接SATA硬盘,第一硬盘扩展板连接第二控制器。该方法包括:当第二控制器监控到第一控制器故障时,第二控制器向与第一控制器连接的第一硬盘扩展板发送第一控制消息,指示第一硬盘扩展板断开与第一控制器的通路。此时,第二控制器接入第一硬盘扩展板,以及与第一硬盘扩展板连接的SATA硬盘,使第二控制器运行第一控制器的业务,访问SATA硬盘。需要说明的是,在第一硬盘扩展板和SATA硬盘接入第二控制器之前,第一硬盘扩展板和SATA硬盘接入第一控制器。可理解的,在第一控制器运行业务时,第一控制器可以通过第一硬盘扩展板访问SATA硬盘。
本申请实施例提供的存储系统管理SATA硬盘的方法,在不使用端口选择器的情况下,第二控制器通过第一硬盘扩展板,利用控制指令控制第一硬盘扩展板断开与故障的第一控制器的通路,并将第一硬盘扩展板以及SATA硬盘接入第二控制器,实现在第一控制器故障,第二控制器接替第一控制器的工作,运行第一控制器的业务时,访问默认归属第一控制器的SATA硬盘,从而有效地减少了系统成本。
下面将结合附图对本申请实施例的实施方式进行详细描述。
图3为本申请一实施例提供的存储系统的架构示意图。其中,该存储系统300包括第一控制器301和第二控制器302。第一控制器301连接第一硬盘扩展板303,第一硬盘扩展板303连接SATA硬盘305。第二控制器302连接第二硬盘扩展板304,第二硬盘扩展板304连接SATA硬盘306。第一硬盘扩展板303与第二硬盘扩展板304连接。第一控制器301与第二硬盘扩展板304连接。第二控制器302与第一硬盘扩展板303连接。
第一控制器301、第一硬盘扩展板303和SATA硬盘305之间根据SATA协议传输数据。
第二控制器302、第二硬盘扩展板304和SATA硬盘306之间根据SATA协议传输数据。
第一硬盘扩展板303与第二硬盘扩展板304之间通过SATA协议传输数据。
第一控制器301与第二硬盘扩展板304之间通过带外通道传输数据。第二控制器302与第一硬盘扩展板303之间通过带外通道传输数据。
图3只是示意图,本申请的实施例对该存储系统300包括的硬盘扩展板和SATA硬盘的数量不做限定。实际应用中,该系统还可以包括更多的硬盘扩展板和SATA硬盘,在图3中未画出。
相对于传统技术硬盘扩展板通过端口选择器连接SATA硬盘,两个硬盘扩展板连接相同的SATA硬盘,本申请实施例提供的存储系统中,硬盘扩展板无需通过端口选 择器连接SATA硬盘,硬盘扩展板连接根据需求连接不同个数的SATA硬盘,在使用相同数量的硬盘扩展板的情况下,系统内可以连接更多的SATA硬盘,从而提高系统的存储容量。
可理解的,在存储系统300中的控制器上电后,控制器进入初始状态,各控制器依据串行连接小型计算机系统接口(Serial Attached Small Computer System Interface,SAS)协议发送消息,扫描系统中所有的硬盘扩展板和SATA硬盘。然后,控制器之间进行握手(handshake),控制器识别到当前状态为初始状态,接入默认的硬盘扩展板和SATA硬盘,进入运行状态。
通常,在通信电路建立之后,信息传输开始之前设备进行握手。握手用于达成参数,如信息传输率、字母表、奇偶校验、中断过程和其他协议特性。
在电信和微处理器系统中,握手亦称为交握。在数据通信中,由硬件或软件管理的事件序列,在进行信息交换之前,对操作模式的状态互相达成协定。
在运行状态下,控制器通过与该控制器连接的硬盘扩展板,访问与该硬盘扩展板连接的SATA硬盘。在故障状态下,将与该控制器连接的硬盘扩展板和SATA硬盘,接入到与该硬盘扩展板连接的其他控制器中,实现在控制器故障转移的情况下,其他设备访问与故障控制器连接的SATA硬盘。例如,在第一控制器301和第二控制器302均运行正常的状态下,第一控制器301和第二控制器302可以是两个独立的设备。当第一控制器301故障时,由第二控制器302接替第一控制器301的工作,运行第一控制器301的业务,访问SATA硬盘305。当第二控制器302故障时,由第一控制器301接替第二控制器302的工作,运行第二控制器302的业务,访问SATA硬盘306。
接下来,结合图4至图6,以第一控制器301故障为例,对存储系统管理SATA硬盘的过程进行说明。
如图4所示,第一控制器301上电后,第一控制器301进入初始状态。第一控制器301依据SAS协议发送消息,扫描到与第一控制器301相关的第一硬盘扩展板303和SATA硬盘305,以及与第二控制器302相关的第二硬盘扩展板304和SATA硬盘306。
同理,第二控制器302上电后,第二控制器302进入初始状态。第二控制器302依据SAS协议发送消息,扫描到与第二控制器302相关的第二硬盘扩展板304和SATA硬盘306,以及与第一控制器301相关的第一硬盘扩展板303和SATA硬盘305。
此时,第一控制器301和第二控制器302不接入扫描到的硬盘扩展板和SATA硬盘。第一控制器301和第二控制器302先进行握手,识别到当前状态为初始状态。第一控制器301接入默认的第一硬盘扩展板303和SATA硬盘305,进入运行状态。第二控制器302接入默认的第二硬盘扩展板304和SATA硬盘306,进入运行状态。
在一些实施例中,第一控制器301的应用层调用应用程序接口(Application Programming Interface,API),将默认的第一硬盘扩展板303上SATA硬盘305注册到块设备。在本文中,注册可以是指第一控制器301控制第一硬盘扩展板303上SATA硬盘305接入到第一控制器301的操作系统(Operating System,OS)中,以便第一控制器301中的处理器通过第一硬盘扩展板303访问SATA硬盘305。
同理,第二控制器302的应用层调用API,将默认的第二硬盘扩展板304上SATA 硬盘306注册到块设备。在本文中,注册可以是指第二控制器302控制第二硬盘扩展板304上SATA硬盘306接入到第二控制器302的OS中,以便第二控制器302中的处理器通过第二硬盘扩展板304访问SATA硬盘306。
可选的,第一控制器301和第二控制器302均配置有默认连接的硬盘扩展板和SATA硬盘。控制器默认连接的硬盘扩展板和SATA硬盘与控制器的关系可以以表格的形式呈现。示例的,如表1所示,默认信息表包括控制器与默认连接的硬盘扩展板和SATA硬盘的关系。
表1
Figure PCTCN2021091286-appb-000001
由表1可知,第一控制器301默认连接的第一硬盘扩展板303和SATA硬盘305。第二控制器302默认连接的第二硬盘扩展板304和SATA硬盘306。第一控制器301可以查询表1接入第一硬盘扩展板303和SATA硬盘305。第二控制器302可以查询表1接入第二硬盘扩展板304和SATA硬盘306。
需要说明的是,表1只是以表格的形式示意控制器与默认连接的硬盘扩展板和SATA硬盘的关系在存储设备中的存储形式,并不是对上述关系在存储设备中的存储形式的限定,当然,上述关系在存储设备中的存储形式还可以以其他的形式存储,本申请实施例对此不做限定。
在运行状态下,第一控制器301和第二控制器302通过“心跳线”周期性地互相发送数据包,监测对方的“心跳”。在一些实施例中,第一控制器301和第二控制器302均配置有故障检测网卡(俗称“心跳线”),第一控制器301和第二控制器302通过故障检测网卡互相发送数据包,监测对方的“心跳”。
若第一控制器301的“心跳”没有中断,确定第一控制器301处于运行状态,第一控制器301未发生故障。若第二控制器302的“心跳”没有中断,确定第二控制器302处于运行状态,第二控制器302未发生故障。
若第一控制器301故障,第一控制器301停止向第二控制器302发送数据包,进而第二控制器302在预设时段内未接收到来自第一控制器301的数据包,第二控制器302确定第一控制器301的“心跳”中断。可理解的,第一控制器301的“心跳”中断表示第一控制器301故障,第一控制器301进入故障状态。
如图5所示,当第二控制器302监控到第一控制器301故障时,第二控制器302向第一硬盘扩展板303发送第一控制消息,指示第一硬盘扩展板303断开与第一控制器301的通路。第一硬盘扩展板303接收到来自第二控制器302的第一控制消息,断开与第一控制器301的连接。第一控制消息用于指示第一硬盘扩展板303断开与第一控制器301的通路。
在一种可能的设计中,第二控制器302通过带外通道发送第一控制消息,第一控 制消息是带外消息。通过带外消息指示第一硬盘扩展板303断开与故障的第一控制器301的通路,隔离第一硬盘扩展板303和第一控制器301,避免第二控制器302访问SATA硬盘305,与第一控制器301产生冲突。带外通道也就是使用一个分离的控制链接,控制信息和数据传输由不同的进程控制。
进一步的,第二控制器302接入第一硬盘扩展板303和SATA硬盘305。可理解的,第二控制器302控制第一硬盘扩展板303和SATA硬盘305接入到第二控制器302的操作系统中,以便第二控制器302中的处理器通过第二硬盘扩展板304和第一硬盘扩展板303访问SATA硬盘305。
在一些实施例中,在初始状态,第二控制器302预先扫描到第一硬盘扩展板303和SATA硬盘305。第二控制器302确定第一控制器301故障后,查询表1接入第一硬盘扩展板303和SATA硬盘305。可理解的,第一硬盘扩展板303和SATA硬盘305是预先配置的,即第一控制器301默认连接第一硬盘扩展板303和SATA硬盘305。
在另一些实施例中,第二控制器302向第一硬盘扩展板303发送第一控制消息后,第一硬盘扩展板303向第二控制器302发送响应消息,响应消息包括第一硬盘扩展板303的端口数和第一硬盘扩展板303连接的SATA硬盘305的个数。第二控制器302接收来自第一硬盘扩展板303的响应消息后,接入响应消息指示的第一硬盘扩展板303的端口数和第一硬盘扩展板303连接的SATA硬盘305的个数。需要说明的是,响应消息指示的第一硬盘扩展板303的端口数和第一硬盘扩展板303连接的SATA硬盘305的个数是实时数据,可能大于或小于默认的第一硬盘扩展板303的端口数和第一硬盘扩展板303连接的SATA硬盘305的个数。
进而,第二控制器302运行第一控制器301的业务,访问SATA硬盘305,即对SATA硬盘305进行读操作和写操作。
具体的,第二控制器302根据SATA协议通过第二硬盘扩展板304,与第一硬盘扩展板305上的SATA硬盘305进行数据交互,对SATA硬盘305进行读操作和写操作。
可选的,第二控制器302运行第二控制器302的业务,访问SATA硬盘306,即对SATA硬盘306进行读操作和写操作。
如图6所示,当第二控制器302监控到第一控制器301故障恢复时,撤销对第一硬盘扩展板303和SATA硬盘305的访问权限,可理解的,将第一硬盘扩展板303和SATA硬盘305的注册信息从第二控制器302的操作系统中删除。进而,第二控制器302向第一硬盘扩展板303发送第二控制消息,指示第一硬盘扩展板303选通与第一控制器301的通路。
在一种可能的设计中,第二控制器302通过带外通道发送第二控制消息,第一控制消息是带外消息。从而通过带外消息指示第一硬盘扩展板303选通与故障恢复的第一控制器301的通路,以便于第一控制器301运行业务时,访问与第一硬盘扩展板303连接的SATA硬盘305。
第一硬盘扩展板303接收到来自第二控制器302的第二控制消息,选通与第一控制器301的通路。第一控制器301故障恢复后,第一控制器301未接入任何硬盘扩展板和SATA硬盘。此时,第一控制器301查询表1接入第一硬盘扩展板303和SATA 硬盘305。第一控制器301运行第一控制器301的业务,访问SATA硬盘305,即对SATA硬盘305进行读操作和写操作。
可选的,第二控制器302接收来自第一控制器301的通知消息后,向第一硬盘扩展板303发送第二控制消息,指示第一硬盘扩展板303选通与第一控制器301的通路。其中,通知消息指示第一控制器301故障恢复。
需要说明的是,第一控制器301可以参考现有技术的方法将运行的业务的相关信息通知给第二控制器302,具体的参考现有技术的阐述,本申请实施例不予限定。
图7为本申请一实施例提供的存储系统管理SATA硬盘的方法流程图。在这里,以存储系统300中的第一控制器301、第二控制器302和第一硬盘扩展板303为例进行说明。假设第一控制器301故障。所述方法包括以下步骤。
当第二控制器监控到第一控制器故障时,执行S701。
S701、第二控制器302向第一硬盘扩展板303发送第一控制消息。
第一控制消息用于指示第一硬盘扩展板303断开与第一控制器301的通路。
S702、第一硬盘扩展板303接收来自第二控制器302的第一控制消息。
S703、第一硬盘扩展板303断开与第一控制器301的通路。
S704、第二控制器302接入第一硬盘扩展板303和SATA硬盘305。
S705、第二控制器302运行第一控制器301的业务,访问SATA硬盘305。
关于S701至S705的具体实现方式参考上述实施例的阐述,不予赘述。
可以理解的是,为了实现上述实施例中功能,控制器和硬盘扩展板包括了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的单元及方法步骤,本申请能够以硬件或硬件和计算机软件相结合的形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用场景和设计约束条件。
图8为本申请一实施例提供的控制器的组成示意图。控制器可以用于实现上述方法实施例中第二控制器的功能,因此也能实现上述方法实施例所具备的有益效果。在本申请的实施例中,该控制器可以是如图3至图6所示的第二控制器302。
如图8所示,控制器800包括第一处理单元810和第二处理单元820。第一处理单元810运行状态监控程序和底层协议程序。第二处理单元820运行基板管理程序。第二处理单元820可以是一个基板管理控制器(Baseboard Management Controller,BMC)。第一处理单元810采用带内(in-band)管理方式。第二处理单元820采用带外(out-of-band)管理方式。
所谓带内管理的核心理念在于管理控制信息与数据信息使用统一物理通道进行传送。带外管理的核心理念在于通过不同的物理通道传送管理控制信息和数据信息,两者完全独立,互不影响。例如,通过独立于数据网络之外专用管理通道对机房网络设备(路由器、交换机、防火墙等),服务器设备(小型机、服务器、工作站)以及机房电源系统进行集中化整合管理。
控制器800用于实现上述图7中所示的方法实施例中第二控制器302的功能。
当控制器800用于实现图7所示的方法实施例中第二控制器302的功能时:第一处理单元810用于执行S704和S705;第二处理单元820用于执行S701。
可选的,控制器800还可以包括存储器830,用于存储第一处理单元810和第二处理单元820执行的指令,或存储第一处理单元810和第二处理单元820运行指令所需要的输入数据,或存储第一处理单元810和第二处理单元820运行指令后产生的数据。
有关上述第一处理单元810和第二处理单元820更详细的描述可以参考图3至图6中第二控制器302的相关描述直接得到,这里不加赘述。
如图9所示,硬盘扩展板900包括处理器910和接口电路920。处理器910和接口电路920之间相互耦合。可以理解的是,接口电路920可以为输入输出接口。硬盘扩展板900可以通过接口电路920连接SATA硬盘。可选的,硬盘扩展板900还可以包括存储器930,用于存储处理器910执行的指令或存储处理器910运行指令所需要的输入数据或存储处理器910运行指令后产生的数据。
当硬盘扩展板900用于实现图7所示的方法实施例中第一硬盘扩展板303的功能时:处理器910用于执行S703;接口电路920用于执行S702。
有关上述处理器910和接口电路920更详细的描述可以参考图3至图6中第一硬盘扩展板303的相关描述直接得到,这里不加赘述。
可以理解的是,本申请的实施例中的处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其它可编程逻辑器件、晶体管逻辑器件,硬件部件或者其任意组合。通用处理器可以是微处理器,也可以是任何常规的处理器。
本申请的实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(Random Access Memory,RAM)、闪存、只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于网络设备或终端设备中。当然,处理器和存储介质也可以作为分立组件存在于网络设备或终端设备中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其它可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序或指令可以从一个 网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,数字视频光盘(digital video disc,DVD);还可以是半导体介质,例如,固态硬盘(solid state drive,SSD)。
在本申请的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。在本申请的文字描述中,字符“/”,一般表示前后关联对象是一种“或”的关系;在本申请的公式中,字符“/”,表示前后关联对象是一种“相除”的关系。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定。

Claims (25)

  1. 一种存储系统管理串行高技术附件SATA硬盘的方法,其特征在于,所述存储系统包括第一控制器、第二控制器、第一硬盘扩展板和SATA硬盘,其中,所述第一控制器连接所述第一硬盘扩展板,所述第一硬盘扩展板连接所述SATA硬盘,所述第一硬盘扩展板和所述SATA硬盘接入所述第一控制器,所述第一硬盘扩展板连接所述第二控制器;所述方法包括:
    当所述第二控制器监控到所述第一控制器故障时,所述第二控制器向所述第一硬盘扩展板发送第一控制消息,所述第一控制消息用于指示所述第一硬盘扩展板断开与所述第一控制器的通路;
    所述第二控制器接入所述第一硬盘扩展板和所述SATA硬盘;
    所述第二控制器运行所述第一控制器的业务,访问所述SATA硬盘。
  2. 根据权利要求1所述的方法,其特征在于,所述存储系统还包括第二硬盘扩展板,所述第二控制器连接所述第二硬盘扩展板,所述第二硬盘扩展板连接所述第一硬盘扩展板,所述第二控制器运行所述第一控制器的业务,访问所述SATA硬盘,包括:
    所述第二控制器通过所述第二硬盘扩展板,访问所述SATA硬盘。
  3. 根据权利要求1或2所述的方法,其特征在于,所述第二控制器接入所述第一硬盘扩展板和所述SATA硬盘,包括:
    所述第二控制器接入所述第二控制器预先配置的所述第一硬盘扩展板和所述SATA硬盘。
  4. 根据权利要求1或2所述的方法,其特征在于,在所述第二控制器向所述第一硬盘扩展板发送第一控制消息之后,所述方法还包括:
    所述第二控制器接收来自所述第一硬盘扩展板的响应消息,所述响应消息包括所述第一硬盘扩展板的端口数和所述第一硬盘扩展板连接的SATA硬盘的个数。
  5. 根据权利要求1-4中任一项所述的方法,其特征在于,所述第一控制消息是带外消息。
  6. 根据权利要求1-5中任一项所述的方法,其特征在于,所述方法还包括:
    当所述第二控制器监控到所述第一控制器故障恢复时,所述第二控制器撤销对所述第一硬盘扩展板和所述SATA硬盘的访问权限;
    所述第二控制器向所述第一硬盘扩展板发送第二控制消息,所述第二控制消息用于指示所述第一硬盘扩展板选通与所述第一控制器的通路。
  7. 根据权利要求6所述的方法,其特征在于,所述方法还包括:
    所述第二控制器接收来自所述第一控制器的通知消息,所述通知消息指示所述第一控制器故障恢复。
  8. 根据权利要求6或7所述的方法,其特征在于,所述第二控制消息是带外消息。
  9. 一种存储系统管理串行高技术附件SATA硬盘的方法,其特征在于,所述存储系统包括第一控制器、第二控制器、第一硬盘扩展板和SATA硬盘,其中,所述第一控制器连接所述第一硬盘扩展板,所述第一硬盘扩展板连接所述SATA硬盘,所述第一硬盘扩展板和所述SATA硬盘接入所述第一控制器,所述第一硬盘扩展板连接所述第二控制器;所述方法包括:
    当所述第一控制器故障时,所述第一硬盘扩展板接收来自所述第二控制器的第一控制消息,所述第一控制消息用于指示所述第一硬盘扩展板断开与所述第一控制器的通路;
    所述第一硬盘扩展板断开与所述第一控制器的通路。
  10. 根据权利要求9所述的方法,其特征在于,在所述第一硬盘扩展板接收来自所述第二控制器的第一控制消息之后,所述方法还包括:
    所述第一硬盘扩展板向所述第二控制器发送响应消息,所述响应消息包括所述第一硬盘扩展板的端口数和所述第一硬盘扩展板连接的SATA硬盘的个数。
  11. 根据权利要求9或10所述的方法,其特征在于,所述方法还包括:
    当所述第一控制器故障恢复时,所述第一硬盘扩展板接收来自所述第二控制器的第二控制消息,所述第二控制消息用于指示所述第一硬盘扩展板选通与所述第一控制器的通路;
    所述第一硬盘扩展板选通与所述第一控制器的通路。
  12. 一种存储系统,其特征在于,所述存储系统包括第一控制器、第二控制器、第一硬盘扩展板和串行高技术附件SATA硬盘,其中,所述第一控制器连接所述第一硬盘扩展板,所述第一硬盘扩展板连接所述SATA硬盘,所述第一硬盘扩展板和所述SATA硬盘接入所述第一控制器,所述第一硬盘扩展板连接所述第二控制器;其中,
    当所述第二控制器监控到所述第一控制器故障时,所述第二控制器用于向所述第一硬盘扩展板发送第一控制消息,所述第一控制消息用于指示所述第一硬盘扩展板断开与所述第一控制器的通路;
    所述第二控制器还用于接入所述第一硬盘扩展板和所述SATA硬盘;
    所述第二控制器还用于运行所述第一控制器的业务,访问所述SATA硬盘。
  13. 根据权利要求12所述的存储系统,其特征在于,所述存储系统还包括第二硬盘扩展板,所述第二控制器连接所述第二硬盘扩展板,所述第二硬盘扩展板连接所述第一硬盘扩展板,
    所述第二控制器具体用于通过所述第二硬盘扩展板,访问所述SATA硬盘。
  14. 根据权利要求12或13所述的存储系统,其特征在于,
    所述第二控制器具体用于接入所述第二控制器预先配置的所述第一硬盘扩展板和所述SATA硬盘。
  15. 根据权利要求12或13所述的存储系统,其特征在于,
    所述第二控制器还用于接收来自所述第一硬盘扩展板的响应消息,所述响应消息包括所述第一硬盘扩展板的端口数和所述第一硬盘扩展板连接的SATA硬盘的个数。
  16. 根据权利要求12-15中任一项所述的存储系统,其特征在于,所述第一控制消息是带外消息。
  17. 根据权利要求12-16中任一项所述的存储系统,其特征在于,
    当所述第二控制器监控到所述第一控制器故障恢复时,所述第二控制器还用于撤销对所述第一硬盘扩展板和所述SATA硬盘的访问权限;
    所述第二控制器还用于向所述第一硬盘扩展板发送第二控制消息,所述第二控制消息用于指示所述第一硬盘扩展板选通与所述第一控制器的通路。
  18. 根据权利要求17所述的存储系统,其特征在于,
    所述第二控制器还用于接收来自所述第一控制器的通知消息,所述通知消息指示所述第一控制器故障恢复。
  19. 根据权利要求17或18所述的存储系统,其特征在于,所述第二控制消息是带外消息。
  20. 一种存储系统,其特征在于,所述存储系统包括第一控制器、第二控制器、第一硬盘扩展板和串行高技术附件SATA硬盘,所述第一控制器连接所述第一硬盘扩展板,所述第一硬盘扩展板连接所述SATA硬盘,所述第一硬盘扩展板和所述SATA硬盘接入所述第一控制器,所述第一硬盘扩展板连接所述第二控制器;其中,
    当所述第一控制器故障时,所述第一硬盘扩展板用于接收来自所述第二控制器的第一控制消息,所述第一控制消息用于指示所述第一硬盘扩展板断开与所述第一控制器的通路;
    所述第一硬盘扩展板还用于断开与所述第一控制器的通路。
  21. 根据权利要求20所述的存储系统,其特征在于,
    所述第一硬盘扩展板还用于向所述第二控制器发送响应消息,所述响应消息包括所述第一硬盘扩展板的端口数和所述第一硬盘扩展板连接的SATA硬盘的个数。
  22. 根据权利要求20或21所述的存储系统,其特征在于,
    当所述第一控制器故障恢复时,所述第一硬盘扩展板还用于接收来自所述第二控制器的第二控制消息,所述第二控制消息用于指示所述第一硬盘扩展板选通与所述第一控制器的通路;
    所述第一硬盘扩展板还用于选通与所述第一控制器的通路。
  23. 一种终端设备,其特征在于,包括存储系统,所述存储系统用于存储计算机程序和指令,所述存储系统中的第二控制器用于调用所述计算机程序和指令执行如权利要求1-8中任一项所述的方法,所述存储系统中的第一硬盘扩展板用于调用所述计算机程序和指令执行如权利要求9-11中任一项所述的方法。
  24. 一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序或指令,当所述计算机程序或指令被存储系统执行时,实现如权利要求1至8中任一项所述的方法。
  25. 一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序或指令,当所述计算机程序或指令被存储系统执行时,实现如权利要求9至11中任一项所述的方法。
PCT/CN2021/091286 2020-05-27 2021-04-30 存储系统管理sata硬盘的方法及存储系统 WO2021238579A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010464053.4A CN113742142B (zh) 2020-05-27 2020-05-27 存储系统管理sata硬盘的方法及存储系统
CN202010464053.4 2020-05-27

Publications (1)

Publication Number Publication Date
WO2021238579A1 true WO2021238579A1 (zh) 2021-12-02

Family

ID=78723926

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/091286 WO2021238579A1 (zh) 2020-05-27 2021-04-30 存储系统管理sata硬盘的方法及存储系统

Country Status (2)

Country Link
CN (1) CN113742142B (zh)
WO (1) WO2021238579A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114115753B (zh) * 2022-01-28 2022-04-26 苏州浪潮智能科技有限公司 一种存储设备、基于存储设备的请求处理方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101382872A (zh) * 2008-10-21 2009-03-11 浪潮电子信息产业股份有限公司 一种通过检测心跳对sas与sata信号进行双控存储切换控制方法
CN102187324A (zh) * 2008-11-13 2011-09-14 Lsi公司 用于直接附连存储系统的活动-活动故障转移
CN102983989A (zh) * 2012-11-07 2013-03-20 华为技术有限公司 一种服务器虚拟地址的迁移方法、装置和设备
CN103475695A (zh) * 2013-08-21 2013-12-25 华为数字技术(成都)有限公司 存储系统互联方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201423582A (zh) * 2012-12-06 2014-06-16 Hon Hai Prec Ind Co Ltd Sas擴展卡自動切換系統及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101382872A (zh) * 2008-10-21 2009-03-11 浪潮电子信息产业股份有限公司 一种通过检测心跳对sas与sata信号进行双控存储切换控制方法
CN102187324A (zh) * 2008-11-13 2011-09-14 Lsi公司 用于直接附连存储系统的活动-活动故障转移
CN102983989A (zh) * 2012-11-07 2013-03-20 华为技术有限公司 一种服务器虚拟地址的迁移方法、装置和设备
CN103475695A (zh) * 2013-08-21 2013-12-25 华为数字技术(成都)有限公司 存储系统互联方法及装置

Also Published As

Publication number Publication date
CN113742142A (zh) 2021-12-03
CN113742142B (zh) 2024-03-26

Similar Documents

Publication Publication Date Title
WO2018036148A1 (zh) 一种服务器集群系统
US8850141B2 (en) System and method for mirroring data
WO2016202051A1 (zh) 一种通信系统中管理主备节点的方法和装置及高可用集群
JP2006293863A (ja) ディスクアレイ装置及びその制御方法
CN101594383B (zh) 一种双控制器存储系统的服务和控制器状态监控方法
US20080307254A1 (en) Information-processing equipment and system therefor
CN111767244A (zh) 基于国产龙芯平台的双冗余计算机设备
JP2006127201A (ja) ストレージシステムおよび導通確認方法
JP2004094774A (ja) ループ状インタフェースの障害解析方法及び障害解析機能を有するシステム
WO2024113818A1 (zh) 交换机的复位系统及方法、非易失性可读存储介质、电子设备
WO2006005251A1 (fr) Procede et systeme de realisation de la fonction de commutation dans un systeme de communication
CN111585835B (zh) 一种带外管理系统的控制方法、装置和存储介质
CN113342261A (zh) 伺服器与应用于伺服器的控制方法
WO2021238579A1 (zh) 存储系统管理sata硬盘的方法及存储系统
WO2018157605A1 (zh) 一种集群文件系统中消息传输的方法及装置
JP2004088570A (ja) ネットワーク計算機システムおよび管理装置
WO2009052741A1 (fr) Système de microarchitecture informatique pour les télécommunications et procédé pour sa gestion de fiabilité
WO2021012169A1 (zh) 一种提高存储系统可靠性的方法和相关装置
CN212541329U (zh) 基于国产龙芯平台的双冗余计算机设备
TWI677247B (zh) 多節點裝置及其備援通訊方法
CN111262745A (zh) 信息处理平台冗余系统设计
US11860719B2 (en) Method for implementing storage service continuity in storage system, front-end interface card, and storage system
CN101145955A (zh) 网管软件热备份的方法、网管及网管系统
WO2022218346A1 (zh) 一种故障处理方法及装置
WO2021249173A1 (zh) 一种分布式存储系统及其异常处理方法和相关装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21813260

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21813260

Country of ref document: EP

Kind code of ref document: A1