CN111352574B - Path switching method, device and computer readable storage medium - Google Patents

Path switching method, device and computer readable storage medium Download PDF

Info

Publication number
CN111352574B
CN111352574B CN201811573445.3A CN201811573445A CN111352574B CN 111352574 B CN111352574 B CN 111352574B CN 201811573445 A CN201811573445 A CN 201811573445A CN 111352574 B CN111352574 B CN 111352574B
Authority
CN
China
Prior art keywords
port
controller
virtual
path switching
storage system
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.)
Active
Application number
CN201811573445.3A
Other languages
Chinese (zh)
Other versions
CN111352574A (en
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.)
Macrosan Technologies Co Ltd
Original Assignee
Macrosan 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 Macrosan Technologies Co Ltd filed Critical Macrosan Technologies Co Ltd
Priority to CN201811573445.3A priority Critical patent/CN111352574B/en
Publication of CN111352574A publication Critical patent/CN111352574A/en
Application granted granted Critical
Publication of CN111352574B publication Critical patent/CN111352574B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0604Improving or facilitating administration, e.g. storage management
    • 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
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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/0662Virtualisation aspects
    • 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]

Abstract

The application provides a method, a device and a computer readable storage medium for path switching, wherein the method comprises the following steps: the first controller disconnects the physical links corresponding to all the first ports and sends the own controller identification to the second controller; wherein the first port is a port on the first controller; the second controller determines a second port corresponding to each first port based on the controller identification of the first controller and a preset port binding relation, and creates a virtual first port on the second port; wherein the second port is a port on the second controller; and the second controller accesses the virtual first port to a storage area network where the multi-control storage system is located. The technical scheme of the method and the device can switch paths more quickly, and reduce the influence of path switching on the service side.

Description

Path switching method, device and computer readable storage medium
Technical Field
The present invention relates to the field of storage, and in particular, to a method, an apparatus, and a computer readable storage medium for path switching.
Background
In a SAN (Storage Area Network ) network, multiple controllers of a multi-control storage system may typically access the SAN network through different ports, where the ports on the controllers may be referred to as target ports. A server, such as a traffic server, may also access the SAN network through a number of different ports, where the ports on the server may be referred to as initiator ports.
The initial port on the server and the target port on the controller can form various connection relations. Referring to fig. 1, a schematic architecture diagram of a SAN network is shown in the present application, where, as shown in fig. 1, a server (service server) has two start ports, a controller 1 has two target ports, and a controller 2 has two target ports. The connection relationship between the initial port and the target port in the network architecture of fig. 1 is as follows: P1-P9, P1-P11, P2-P12 and P2-P10.
Further, the LUNs (Logical Unit Number, logical unit numbers) on the starting port, target port and multi-control storage system constitute paths for multiple servers to access the LUNs.
If any controller is abnormal, the server cannot access the LUN through the path of the target port on the controller, and the server needs to reselect the available path.
However, the switching path in the prior art is too long, which may have a significant impact on service stability and continuity on the server side.
Disclosure of Invention
In view of this, the present application provides a method, an apparatus and a computer readable storage medium for path switching, which are used to switch paths more quickly, so as to reduce the influence of path switching on the service on the server side.
Specifically, the application is realized by the following technical scheme:
the first aspect of the present application provides a path switching method, which is applied to a multi-control storage system, wherein the multi-control storage system comprises a first controller and a second controller, and the method comprises the following steps:
the first controller disconnects the physical links corresponding to all the first ports and sends the own controller identification to the second controller; wherein the first port is a port on the first controller;
the second controller determines a second port corresponding to each first port based on the controller identification of the first controller and a preset port binding relation, and creates a virtual first port on the second port; wherein the second port is a port on the second controller;
and the second controller accesses the virtual first port to a storage area network where the multi-control storage system is located.
In the path switching method, the method further includes:
if the first controller is re-started, the second controller removes the virtual first port on the second port and sends the own controller identification to the first controller;
the first controller determines a first port corresponding to the second port based on the controller identification of the second controller and the port binding relation, and enables the first port corresponding to the second port;
the first controller accesses the first port to the storage area network.
A second aspect of the present application provides a method for path switching, applied to a first controller of a multi-control storage system, where the multi-control storage system further includes a second controller, and includes:
disconnecting the physical links corresponding to all the first ports;
transmitting a controller identifier of the controller to the second controller, creating a virtual first port on a second port corresponding to each first port by the second controller, and accessing the virtual first port into a storage area network where the multi-control storage system is located; the first port is a port on the first controller, the second port is a port on the second controller, and the second port is determined by the second controller through a controller identifier of the first controller and a preset port binding relationship.
In the path switching method, the method further includes:
if the physical link corresponding to the first port is re-started, receiving a controller identifier of the second controller sent by the second controller;
determining a first port corresponding to the second port based on the controller identification of the second controller and the port binding relation, and enabling the first port;
and accessing the first port into the storage area network.
A third aspect of the present application provides a method for path switching, applied to a second storage device of a multi-control storage system, where the multi-control storage system further includes a first controller, including:
receiving a controller identifier sent by the first controller after the physical link corresponding to the first port is disconnected; wherein the first port is a port on the first controller;
determining a second port corresponding to each first port based on the controller identification of the first controller and a preset port binding relation, and creating a virtual first port on the second port; wherein the second port is a port on the second controller;
and accessing the virtual first port into a storage area network where the multi-control storage system is located.
A fourth aspect of the present application provides a path switching apparatus, applied to a first controller of a multi-control storage system, where the multi-control storage system further includes a second controller, and includes:
the processing unit is used for disconnecting the physical links corresponding to all the first ports;
the sending unit is used for sending the own controller identifier to the second controller, creating a virtual first port on a second port corresponding to each first port by the second controller, and accessing the virtual first port into a storage area network where the multi-control storage system is located; the first port is a port on the first controller, the second port is a port on the second controller, and the second port is determined by the second controller through a controller identifier of the first controller and a preset port binding relationship.
In the path switching apparatus, the processing unit is further configured to:
if the physical link corresponding to the first port is re-started, receiving a controller identifier of the second controller sent by the second controller;
determining a first port corresponding to the second port based on the controller identification of the second controller and the port binding relation, and enabling the first port;
and accessing the first port into the storage area network.
A fifth aspect of the present application provides an apparatus for path switching, applied to a second storage device of a multi-control storage system, where the multi-control storage system further includes a first controller, and includes:
the receiving unit is used for receiving the controller identification sent by the first controller after the physical link corresponding to the first port is disconnected; wherein the first port is a port on the first controller;
the creation unit is used for determining a second port corresponding to each first port based on the controller identification of the first controller and a preset port binding relation, and creating a virtual first port on the second port; wherein the second port is a port on the second controller;
and the access unit is used for accessing the virtual first port to a storage area network where the multi-control storage system is located.
A computer readable storage medium having stored therein a computer program which when executed by a processor implements the method of path switching provided in the second aspect of the present application.
A computer readable storage medium having stored therein a computer program which when executed by a processor provides the method of path switching of the third aspect of the present application.
In the technical scheme of the application, when the first controller determines that the first controller is dead halt, a service module is failed, a system is upgraded or overhauled, the first controller can disconnect the physical links corresponding to the local first port firstly, and then send the controller identification of the first controller to the second controller; the second controller can determine a second port corresponding to each first port based on the controller identifier and a preset port binding relationship, and create a virtual first port on the second port; wherein the second port is a port on the second controller; further, the virtual first port is accessed to a storage area network where the multi-control storage system is located;
after the first controller cuts off the physical link corresponding to the local first port, the second controller can quickly create a virtual first port on the second port corresponding to the first port, and the virtual first port is accessed to the storage area network, so that the path corresponding to the first port is only flashed for the service end, the service end does not need to switch paths, the LUN can be accessed by using the paths as usual, delay caused by path switching is greatly reduced, and the influence on the service is avoided.
Drawings
FIG. 1 is a schematic diagram of an architecture of a SAN network as illustrated herein;
FIG. 2 is a flow chart of a method of path switching shown in the present application;
FIG. 3 is a schematic diagram of an architecture of another SAN network as illustrated herein;
FIG. 4 is a schematic diagram of the architecture of yet another SAN network as illustrated herein;
FIG. 5 is a block diagram of an embodiment of an apparatus for path switching shown in the present application;
FIG. 6 is a hardware configuration diagram of a path switching device shown in the present application;
FIG. 7 is a block diagram of an embodiment of another path switching apparatus shown in the present application;
fig. 8 is a hardware configuration diagram of another path switching device shown in the present application.
Detailed Description
In order to better understand the technical solutions in the embodiments of the present invention and make the above objects, features and advantages of the embodiments of the present invention more comprehensible, the following describes the technical solutions in the prior art and the embodiments of the present invention in further detail with reference to the accompanying drawings.
The connection relationship between the initial port on the server and the target port on the controller can form a plurality of paths for the server to access the LUN.
Referring to FIG. 1, for LUN1, a service server may access LUN1 through 4 paths, P1-P3-P5-P9, P1-P3-P6-P11, P2-P4-P7-P10, P2-P4-P8-P12.
Typically, for a given LUN, the paths that are brought out on one of the controllers of the multi-control storage system are optimized paths, and the paths that are brought out on the other controllers are non-optimized paths. To maximize the efficiency of the SAN network, the server typically accesses the specified LUN via an optimized path.
When the controller crashes (e.g., the kernel of the controller crashes) or the service module fails, the optimized path is not available, and in this case, the server accesses the specified LUN according to the non-optimized path. The service modules may include an FC Target (Fibre Channel Target, fibre channel protocol Target) module, a LUN module, a RAID (Redundant Arrays of Independent Disks, redundant array of independent disks) module, a disk module, a cache module, and the like.
Such as: if, in FIG. 1, for LUN1, the P1-P3-P5-P9 and P2-P4-P7-P10 that are exported on the controller 1 are optimized paths, then the traffic server will typically access LUN1 according to the optimized paths. When the controller 1 crashes or any service module of the controller 1 fails, the optimized path is not available, and the service server can access the LUN1 according to the non-optimized path led out from the controller 2.
The server may send heartbeat messages to each destination port of the controller to detect whether each path is available.
In the related art, when the controller fails, the controller can actively connect all the physical link ports corresponding to all the local target ports. The server timely senses that the path is not available, so that the multi-control storage system is accessed by switching to the available path through an MPIO (multi-path I/O) module.
However, in the above related art, the time for the server to switch paths still takes several seconds, depending on the operating system of the server and the performance of the HBA (Host Bus Adapter) that provides the start port at the bottom layer. In practical applications, the server may cause traffic jam during the path switching process, and even affect the normal processing of the traffic.
In order to solve the above problems, the present application proposes a method for path switching, which completes path switching more rapidly, and avoids the influence on the service on the server.
Referring to fig. 2, a flowchart of a method for path switching is shown in the present application, and as shown in fig. 1, the method includes the following steps:
step 201: the first controller disconnects the physical links corresponding to all the first ports and sends the own controller identification to the second controller; wherein the first port is a port on the first controller.
The method is applied to a multi-control storage system, and the multi-control storage system comprises a first controller and a second controller; the first controller and the second controller refer to any controller on the multi-control storage system, which is named for convenience of description, and does not limit the application. It should be noted that a multi-control memory system may include two or more controllers.
The system kernel (standard kernel) of each controller of the multi-control storage system is preset with a corresponding capture kernel (capture kernel), and the capture kernel can be started after the system kernel crashes based on a kdump mechanism. The capturing kernel is a second kernel running after the system kernel crashes, and bypasses a BIOS (Basic Input Output System ) setting stage in the process of starting the capturing kernel, so that the capturing kernel can be started quickly. The specific configuration process may refer to the prior art, and will not be described herein.
For convenience in describing the technical solution of the present application, the target ports on the first controller are all referred to as first ports, and the target ports on the second controller are all referred to as second ports. A binding relation is pre-established between a first port on a first controller and a second port on a second controller. Taking fig. 1 as an example, the destination port P9 of the controller 1 may establish a binding relationship with the destination port P11 of the controller 2, and the destination port P10 of the controller 1 may establish a binding relationship with the destination port P12 of the controller 2.
It should be noted that, when there are at least three controllers in the multi-control storage system, at least two target ports on one controller may respectively establish a binding relationship with target ports on different controllers. Such as: the multi-control storage system comprises a controller 1, a controller 2 and a controller 3, wherein a target port P9 of the controller 1 and a target port P11 of the controller 2 are in binding relation, a target port P10 of the controller 1 and a target port P13 of the controller 3 are in binding relation, and a target port P12 of the controller 2 and a target port P14 of the controller 3 are in binding relation.
As an embodiment, a port binding relationship is preconfigured on each controller, and the port binding relationship can be recorded in a binding relationship table, wherein the binding relationship table comprises mapping relationship between port numbers (Worldwide Port Name, WWPN) of local target ports and port numbers of target ports of other controllers; in addition, for convenience of searching, the mapping relationship between the controller identification of other controllers and the port number of the target port can be recorded in the binding relationship table.
When the first controller needs to suspend processing of an IO (Input Output) request, all local physical links corresponding to the first ports may be disconnected first.
The first controller is required to suspend processing the IO request when the first controller crashes (for example, the kernel of the controller crashes), a local service module breaks down, the system is upgraded or overhauls are accepted.
If the crash occurs, triggering the capturing kernel of the first controller to start after the system kernel of the first controller crashes. The first controller loads the HBA driver through the local capturing kernel, and then the FC Port signaling function of the HBA of the first controller is closed by utilizing the HBA driver, so that the physical links corresponding to all target ports of the first controller are disconnected.
If the IO request is needed to be suspended in other cases, the first controller loads the HBA driver through a local system kernel, and then the FC Port signal sending function of the HBA of the first controller is closed by utilizing the HBA driver, so that physical links corresponding to all target ports of the first controller are disconnected. It should be noted that, if processing of the IO request is suspended during a system upgrade or a maintenance time sequence is received, the first controller may first receive a take-over request sent by the second controller, and then execute an operation of disconnecting the physical link corresponding to the first port in response to the take-over request.
Referring to fig. 3, another architecture diagram of a SAN network is shown in this application, as shown in fig. 3, if the controller 1 can load HBA driver to turn off the FC Port signaling function of the HBA of the controller 1. FC switch 1 may immediately determine that physical links P5-P9 are disconnected, FC switch 2 may immediately determine that physical links P7-P10 are disconnected, and further, FC switch 1 and FC switch 2 may send RSCN (Registered State Change Notification, registration state change notification) notification to the server.
After the server receives the RSCN notification, it can be known that the physical links where the connection relations P1-P9, P2-P10 between the initial port and the target port led out from the controller 1 are already disconnected, and the path for accessing the LUN through the connection relations is unavailable. The HBA of the server may delete the connection relationship between the initial port and the target port, and report the MPIO module. The MPIO module then selects the path led out on the controller 2 to access the multi-control storage system.
Further, the first controller needs to send its own controller identifier to the second controller.
Step 202: the second controller determines a second port corresponding to each first port based on the controller identification of the first controller and a preset port binding relation, and creates a virtual first port on the second port.
Step 203: and the second controller accesses the virtual first port to a storage area network where the multi-control storage system is located.
After receiving the controller identifier sent by the first controller, the second controller can determine that the first port on the first controller is offline from the storage area network, so that the second controller can determine the second port corresponding to each first port based on the controller identifier of the first controller and a preset port binding relationship.
As an embodiment, after determining that the first port is offline, the second controller may first determine, from the local binding relationship table, the port number of the first port on the first controller based on the controller identifier of the first controller, and further determine the port number of the second port corresponding to each first port.
The second controller may create virtual first ports on the local second ports, respectively. It should be noted that, for any second port, the port number of the virtual first port created on the second port is the same as the port number of the first port corresponding to the second port.
Further, the second controller may access the created virtual first port to the storage area network. Referring to fig. 4, for a schematic architecture diagram of a SAN network shown in the present application, as shown in fig. 4, the controller 2 creates a virtual port P9 'on the target port P11, creates a virtual port P10' on the target port P12, logs in the virtual port P9 'to the FC switch 1, and logs in the virtual port P10' to the FC switch 2.FC switch 1 and FC switch 2 may inform the traffic server that a new port is accessed and inform the port number of the new port. The HBA of the service server reestablishes the connection relationship between the local initial port and the new port, namely, establishes the connection relationships P1-P9', P2-P10' between the initial port and the target port. In addition, the HBA of the service server may report the connection relationship to the MPIO.
The port number of the destination port in the connection relationship re-established by the service server is the same as the port number of the destination port in the connection relationship deleted by the HBA. The MPIO module deletes the path where any connection relation is located after the failure of the connection relation is known and a preset timeout time is needed, and the time from the failure of the first port to the access of the virtual first port to the storage area network is very short, so that the MPIO module of the server does not sense the path change. From the point of view of the service server, the path is merely a flash, and thus, a fast switching of the path is effectively achieved.
In this embodiment of the present application, if the first controller is restarted, the second controller may first remove the virtual first port on the second port, and then send its own controller identifier to the first port. Since the second controller has an FC protocol connection between the software layer and the FC switch through the virtual first port, the FC protocol connection is naturally disconnected after the software layer removes the virtual first port, and the FC switch can sense that the virtual first port has been removed. The FC switch may then send an RSCN notification to the server to cause the HBA of the server to modify the connection between the local start port and the target port. The details are not described in detail.
After the first controller receives the controller identifier of the second controller, it may determine that the virtual first port has been disconnected from the storage area network, so the first controller may determine, based on the controller identifier and the local port binding relationship, a first port corresponding to the second port, and enable the local first port, and further, access the first port to the storage area network. The specific access manner may be described with reference to the foregoing related descriptions, and will not be repeated here.
Similarly, for the server, the path corresponding to the port number is only flashed, and the MPIO module of the server does not sense the path change. Thus, a fast switching of paths is effectively achieved.
In summary, in the technical solution of the present application, when the first controller determines that a crash, a service module failure, a system upgrade, or an overhaul occurs, the first controller may first disconnect the physical link corresponding to the local first port, and then send the identifier of the first controller to the second controller; the second controller can determine a second port corresponding to each first port based on the controller identifier and a preset port binding relationship, and create a virtual first port on the second port; wherein the second port is a port on the second controller; further, the virtual first port is accessed to a storage area network;
after the first controller cuts off the physical link corresponding to the local first port, the second controller can quickly create a virtual first port on the second port corresponding to the first port, and the virtual first port is accessed to the storage area network, so that the path corresponding to the first port is only flashed for the service end, the service end does not need to switch paths, the LUN can be accessed by using the paths as usual, delay caused by path switching is greatly reduced, and the influence on the service is avoided.
Corresponding to the foregoing embodiments of the method for path switching, the present application also provides embodiments of an apparatus for path switching.
Referring to fig. 5, a block diagram of an embodiment of a path switching apparatus is shown in the present application:
as shown in fig. 5, the path switching apparatus 50 includes:
a processing unit 510, configured to disconnect physical links corresponding to all the first ports;
a sending unit 520, configured to send a controller identifier of the sending unit to the second controller, where the second controller creates a virtual first port on a second port corresponding to each first port, and accesses the virtual first port to a storage area network where the multi-control storage system is located; the first port is a port on the first controller, the second port is a port on the second controller, and the second port is determined by the second controller through a controller identifier of the first controller and a preset port binding relationship.
In this example, the processing unit 510 is further configured to:
if the physical link corresponding to the first port is re-started, receiving a controller identifier of the second controller sent by the second controller;
determining a first port corresponding to the second port based on the controller identification of the second controller and the port binding relation, and enabling the first port;
and accessing the first port into the storage area network.
The embodiment of the path switching device can be applied to a first controller. The apparatus embodiments may be implemented by software, or may be implemented by hardware or a combination of hardware and software. Taking a software implementation as an example, the device in a logic sense is formed by reading corresponding computer program instructions in the nonvolatile memory into the memory by the processor of the first controller where the device is located. In terms of hardware, as shown in fig. 6, a hardware structure diagram of a first controller where a device for path switching in the present application is located is shown, and in addition to a processor, a memory, a network interface, and a nonvolatile memory shown in fig. 6, the first controller where a device in an embodiment is located generally includes other hardware according to an actual function of the device for path switching, which will not be described herein.
The implementation process of the functions and roles of each unit in the above device is specifically shown in the implementation process of the corresponding steps in the above method, and will not be described herein again.
For the device embodiments, reference is made to the description of the method embodiments for the relevant points, since they essentially correspond to the method embodiments. The apparatus embodiments described above are merely illustrative, wherein the elements illustrated as separate elements may or may not be physically separate, and the elements shown as elements may or may not be physical elements, may be located in one place, or may be distributed over a plurality of network elements. Some or all of the modules may be selected according to actual needs to achieve the purposes of the present application. Those of ordinary skill in the art will understand and implement the present invention without undue burden.
The present application also provides a computer readable storage medium having stored thereon a computer program for implementing, by a processor, the steps of the method for path switching applied to a first controller in the technical solution of the present application.
In particular, computer-readable storage media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices (such as EPROM, EEPROM, and flash memory devices), magnetic disks (e.g., internal hard disk or removable disks), magneto-optical disks, and CD-ROM and DVD-ROM disks, or similar storage media, or combinations thereof.
Referring to fig. 7, a block diagram of an embodiment of another path switching apparatus shown in the present application is shown:
as shown in fig. 7, the path switching apparatus 70 includes:
a receiving unit 710, configured to receive a controller identifier sent by the first controller after the physical link corresponding to the first port is disconnected; wherein the first port is a port on the first controller;
a creating unit 720, configured to determine a second port corresponding to each first port based on the controller identifier of the first controller and a preset port binding relationship, and create a virtual first port on the second port; wherein the second port is a port on the second controller;
and an access unit 730, configured to access the virtual first port to a storage area network where the multi-control storage system is located.
The embodiment of the path switching device can be applied to a second controller. The apparatus embodiments may be implemented by software, or may be implemented by hardware or a combination of hardware and software. Taking software implementation as an example, the device in a logic sense is formed by reading corresponding computer program instructions in the nonvolatile memory into the memory by the processor of the second controller where the device is located. In the hardware level, as shown in fig. 8, a hardware structure diagram of the second controller where the device for path switching in the present application is located, except for the processor, the memory, the network interface, and the nonvolatile memory shown in fig. 8, the second controller where the device in the embodiment is located generally includes other hardware according to the actual function of the device for path switching, which is not described herein again.
The implementation process of the functions and roles of each unit in the above device is specifically shown in the implementation process of the corresponding steps in the above method, and will not be described herein again.
For the device embodiments, reference is made to the description of the method embodiments for the relevant points, since they essentially correspond to the method embodiments. The apparatus embodiments described above are merely illustrative, wherein the elements illustrated as separate elements may or may not be physically separate, and the elements shown as elements may or may not be physical elements, may be located in one place, or may be distributed over a plurality of network elements. Some or all of the modules may be selected according to actual needs to achieve the purposes of the present application. Those of ordinary skill in the art will understand and implement the present invention without undue burden.
The present application also provides a computer-readable storage medium having stored thereon a computer program for implementing, by a processor, the steps of the method for path switching applied to a second controller in the technical solution of the present application.
In particular, computer-readable storage media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices (such as EPROM, EEPROM, and flash memory devices), magnetic disks (e.g., internal hard disk or removable disks), magneto-optical disks, and CD-ROM and DVD-ROM disks, or similar storage media, or combinations thereof.
The foregoing description of the preferred embodiments of the present invention is not intended to limit the invention to the precise form disclosed, and any modifications, equivalents, improvements and alternatives falling within the spirit and principles of the present invention are intended to be included within the scope of the present invention.

Claims (10)

1. A method of path switching applied to a multi-control storage system, the multi-control storage system including a first controller and a second controller, comprising:
the first controller disconnects the physical links corresponding to all the first ports and sends the own controller identification to the second controller; wherein the first port is a port on the first controller;
the second controller determines a second port corresponding to each first port based on the controller identification of the first controller and a preset port binding relation, and creates a virtual first port on the second port; wherein the second port is a port on the second controller;
and the second controller accesses the virtual first port to a storage area network where the multi-control storage system is located.
2. The method according to claim 1, wherein the method further comprises:
if the first controller is re-started, the second controller removes the virtual first port on the second port and sends the own controller identification to the first controller;
the first controller determines a first port corresponding to the second port based on the controller identification of the second controller and the port binding relation, and enables the first port corresponding to the second port;
the first controller accesses the first port to the storage area network.
3. A method of path switching applied to a first controller of a multi-control storage system, the multi-control storage system further comprising a second controller, comprising:
disconnecting the physical links corresponding to all the first ports;
transmitting a controller identifier of the controller to the second controller, creating a virtual first port on a second port corresponding to each first port by the second controller, and accessing the virtual first port into a storage area network where the multi-control storage system is located; the first port is a port on the first controller, the second port is a port on the second controller, and the second port is determined by the second controller through a controller identifier of the first controller and a preset port binding relationship.
4. A method according to claim 3, characterized in that the method further comprises:
if the physical link corresponding to the first port is re-started, receiving a controller identifier of the second controller sent by the second controller;
determining a first port corresponding to the second port based on the controller identification of the second controller and the port binding relation, and enabling the first port;
and accessing the first port into the storage area network.
5. A method of path switching applied to a second controller of a multi-control storage system, the multi-control storage system further comprising a first controller, comprising:
receiving a controller identifier sent by the first controller after the physical link corresponding to the first port is disconnected; wherein the first port is a port on the first controller;
determining a second port corresponding to each first port based on the controller identification of the first controller and a preset port binding relation, and creating a virtual first port on the second port; wherein the second port is a port on the second controller; and accessing the virtual first port into a storage area network where the multi-control storage system is located.
6. A path switching apparatus for use in a first controller of a multi-control memory system, the multi-control memory system further comprising a second controller, comprising:
the processing unit is used for disconnecting the physical links corresponding to all the first ports;
the sending unit is used for sending the own controller identifier to the second controller, creating a virtual first port on a second port corresponding to each first port by the second controller, and accessing the virtual first port into a storage area network where the multi-control storage system is located; the first port is a port on the first controller, the second port is a port on the second controller, and the second port is determined by the second controller through a controller identifier of the first controller and a preset port binding relationship.
7. The apparatus of claim 6, wherein the processing unit is further configured to:
if the physical link corresponding to the first port is re-started, receiving a controller identifier of the second controller sent by the second controller;
determining a first port corresponding to the second port based on the controller identification of the second controller and the port binding relation, and enabling the first port;
and accessing the first port into the storage area network.
8. A path switching apparatus for use in a second controller of a multi-control memory system, the multi-control memory system further comprising a first controller, comprising:
the receiving unit is used for receiving the controller identification sent by the first controller after the physical link corresponding to the first port is disconnected; wherein the first port is a port on the first controller;
the creation unit is used for determining a second port corresponding to each first port based on the controller identification of the first controller and a preset port binding relation, and creating a virtual first port on the second port; wherein the second port is a port on the second controller;
and the access unit is used for accessing the virtual first port to a storage area network where the multi-control storage system is located.
9. A computer readable storage medium having stored therein a computer program which when executed by a processor implements the method of path switching of any of claims 3-4.
10. A computer readable storage medium having stored therein a computer program which when executed by a processor implements the method of path switching of claim 5.
CN201811573445.3A 2018-12-21 2018-12-21 Path switching method, device and computer readable storage medium Active CN111352574B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811573445.3A CN111352574B (en) 2018-12-21 2018-12-21 Path switching method, device and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811573445.3A CN111352574B (en) 2018-12-21 2018-12-21 Path switching method, device and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN111352574A CN111352574A (en) 2020-06-30
CN111352574B true CN111352574B (en) 2023-04-25

Family

ID=71197908

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811573445.3A Active CN111352574B (en) 2018-12-21 2018-12-21 Path switching method, device and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN111352574B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858414A (en) * 2020-07-08 2020-10-30 苏州浪潮智能科技有限公司 IO link fault switching method, system, terminal and storage medium
JP7197545B2 (en) * 2020-09-29 2022-12-27 株式会社日立製作所 Storage system and storage system control method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014199447A1 (en) * 2013-06-11 2014-12-18 株式会社日立製作所 Computer and failover method
WO2017193966A1 (en) * 2016-05-13 2017-11-16 华为技术有限公司 Link switching method for service in storage system, and storage device
CN108768692A (en) * 2018-04-18 2018-11-06 华为技术有限公司 A kind of network creation method, relevant device and system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110088732B (en) * 2016-12-19 2021-08-20 华为技术有限公司 Data packet processing method, host and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014199447A1 (en) * 2013-06-11 2014-12-18 株式会社日立製作所 Computer and failover method
WO2017193966A1 (en) * 2016-05-13 2017-11-16 华为技术有限公司 Link switching method for service in storage system, and storage device
CN108768692A (en) * 2018-04-18 2018-11-06 华为技术有限公司 A kind of network creation method, relevant device and system

Also Published As

Publication number Publication date
CN111352574A (en) 2020-06-30

Similar Documents

Publication Publication Date Title
US20070271481A1 (en) Storage controller
US8423818B2 (en) Disk array apparatus and method for controlling the same
US20190310925A1 (en) Information processing system and path management method
US8516294B2 (en) Virtual computer system and control method thereof
US10693970B2 (en) Servicing of storage device software components of nodes of a cluster storage system
US20180173652A1 (en) Method and apparatus for data recovering during a board replacement
US20130151888A1 (en) Avoiding A Ping-Pong Effect On Active-Passive Storage
US9823955B2 (en) Storage system which is capable of processing file access requests and block access requests, and which can manage failures in A and storage system failure management method having a cluster configuration
US20160077738A1 (en) Fibre Channel Storage Array Methods for Port Management
US7568119B2 (en) Storage control device and storage control device path switching method
CN110213065B (en) Method and device for switching paths
JP2006127201A (en) Storage system and conduction confirmation method
US20230205654A1 (en) Faulty Link Switching Method and System, and Related Device
CN111352574B (en) Path switching method, device and computer readable storage medium
US8255676B2 (en) Non-disruptive methods for updating a controller of a storage system
CN113342261A (en) Server and control method applied to same
US20120239788A1 (en) Automatic registration of devices
US9952951B2 (en) Preserving coredump data during switchover operation
JP2003316521A (en) Storage controller
US8972777B2 (en) Method and system for storage management
US7496745B1 (en) Method and system for managing storage area networks
US11860719B2 (en) Method for implementing storage service continuity in storage system, front-end interface card, and storage system
US20220114061A1 (en) System and Method for Promoting Fractured Volumes
KR101943904B1 (en) A method for providing a data movement service in a san network environment that provides data based on identifier infor
US9785520B2 (en) Computer system, storage apparatus and control method

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
GR01 Patent grant
GR01 Patent grant