This application relates to and claims priority from Japanese Patent Application No. 2007-304753, filed on Nov. 26, 2007, the entire disclosure of which is incorporated herein by reference.
1. Field of the Invention
The invention relates generally to a storage system and an external volume connection path search method for the storage system, and is suitable for use in, for example, a storage system that searches for connection paths to a volume in an external storage apparatus and an external volume connection path search method for the storage system.
2. Description of Related Art
There is a storage system in which a main storage apparatus is connected to a storage apparatus serving as an external storage apparatus via a fibre cable or similar so that a volume in the external storage apparatus can be used as an external volume. As a result, the storage system has increased storage resources, enabling processing for higher-capacity data.
Also, the above storage system has a configuration in which the storage apparatus and the external storage apparatus are connected via plural paths. With that configuration, when a fault occurs in a path, access to the external volume is realized using another path, improving resistance against path faults.
A technique for a path control method is known in which, in a storage system in which an external storage apparatus is connected to a storage apparatus, the storage apparatuses are connected via plural paths in a switchable manner; and when a fault occurs in a path, the path having the next highest priority is selected to continue processing, in order to achieve improved ease of use and reliability (see, e.g., JP2006-178811 A).
In the above storage system, a unique path for an external volume is determined based on a port, WWN (World Wide Name), and LUN (Logical Unit Number). For this reason, processing for acquiring “Inquiry” information is required, in which the “Inquiry” information is detected from each connection path for setting an alternate path for the relevant external volume and detecting volumes having corresponding information (e.g., device identifier) specifying a device based on the acquired information. Therefore, search is required for, at the maximum, the number of ports×the number of WWNs×the number of LUNs in order to specify a desired external volume. Executing the above processing requires time for searching for a desired external volume and causes heavy traffic.
The present invention has been made in light of the above, and an object of the invention is to provide a storage system with which a user can search for connection paths to an external volume with ease and for a short time, and an external volume connection path search method for the storage system.
According to the invention, provided is a storage system including: a host, a first storage apparatus, a second storage apparatus connected to the first storage apparatus via a communication line, and a management apparatus that manages the first storage apparatus and the second storage apparatus, the host and the first storage apparatus being connected to each other via the communication line; and the host using a volume in the second storage apparatus as an external volume for the first storage apparatus, characterized in that the first storage apparatus includes: a port search processing unit that searches for communication ports of the second storage apparatus; and a volume search processing unit that searches for connection paths to a volume in the second storage apparatus by utilizing any of the communication ports found in the port search processing unit and outputs all the information about the found connection paths to the volume.
With this configuration, the information about the connection paths to the external volume in the second storage apparatus can be acquired at once by utilizing any of the found communication ports.
According to the invention, a storage system with which a user can search for connection paths to an external volume with ease and for a short time, and an external volume connection path search method for the storage system can be provided.
Other aspects and advantages of the invention will be apparent from the following description and the appended claims.
A first embodiment of the invention will be described.
The storage apparatus 100, the external storage apparatus 200, and the host 300 are connected to one another via a fibre cable 10, which forms Fibre-SAN (Storage Area Network). The storage apparatus 100 has external (external connection) ports 101 and 102 and a target port 103; the external storage apparatus 200 has target ports 201 and 202; and the host 300 has an initiator port 301. Incidentally, an initiator port is a communication port for having a host issue commands; a target port is a communication port for receiving and processing commands; and an external port is a kind of initiator port, and is used for connection with the external storage apparatus 200.
The storage apparatus 100 and the maintenance terminal 400 are connected via an internal LAN (Local Area Network) 11, and the maintenance terminal 400 is connected to the client PC 500 via an external LAN 12.
The host 300 is a computer device equipped with information processing resources such as a CPU (Central Processing Unit) and memory, and is composed of, e.g., a personal computer, work station, or main frame. The host 300 is provided with an HBA (Host Bus Adapter) 310 for having access to the storage apparatus 100 via the fibre cable 10 and an application program 320 such as database software. The host 300 requests data input/output with blocks serving as data management units for storage areas provided by plural disk drives in accordance with Fibre Channel Protocol.
The maintenance terminal 400 is a computer device for managing configuration, etc. for the storage system 1, and is operated by a user such as a system administrator. The maintenance terminal 400 is configured to include a storage management unit 410. The storage management unit 410 is composed of, e.g., software, and gives various instructions to the storage apparatus 100. According to the instructions, the control information, table, etc. in the storage apparatus 100 can be rewritten. Also, the maintenance terminal 400 acquires various kinds of information from the storage apparatus 100, and can display the information on its terminal screen.
The client PC 500 is a computer device for managing the entire storage system 1, and is operated by a user such as an system administrator, like the maintenance terminal 400. The client PC 500 is provided with a storage apparatus management unit 510 including an external storage apparatus management unit 520. The storage apparatus management unit 510 is composed of, e.g., software, and executes, for example, processing for navigating the operation by a user such as a system administrator. The client PC 500 also can display the information about the above processing on its display screen.
The first embodiment is described for the case where the maintenance terminal 400 and the client PC 500 are provided as separate devices. However, a configuration may be employed in which one of the devices includes a function of the other device.
The external storage apparatus management unit 520 conducts setting for connecting a logical volume in the external storage apparatus 200 as an external volume (virtual volume) for the storage apparatus 100 so that the host 300 can use the logical volume in the external storage apparatus 200 as the logical volume for the storage apparatus 100 according to the instructions from a user such as a system administrator. More specifically, the external storage apparatus management unit 520 acquires connection path information about relationships between an external port and a WWN (World Wide Name) and between a WWN and a LUN (Logical Unit Number) via a micro program in a control unit (e.g., a channel adapter 110 described later) in the storage apparatus 100, creates connection path information (port-WWN-LUN) for connecting the logical volume in the external storage apparatus 200 as the virtual volume in the storage apparatus 100 via Fibre-SAN, and sets the information in the control unit in the storage apparatus 100.
The connection path information is created based on “Inquiry” information for the logical volume in the external storage apparatus 200. The “Inquiry” information is obtained by the micro program in the control unit in the storage apparatus 100 issuing SCSI (Small Computer System Interface) commands to the target ports 201 and 202 in the external storage apparatus 200 via the external ports. Note that the details of the above processing, etc., will be specifically described later.
Next, the storage apparatus 100 and the external storage apparatus 200 will be explained with reference to
The storage apparatus 100 is configured as, e.g., a disk array subsystem. As described above, the storage apparatus 100 provides the storage resources of the external storage apparatus 200 as its logical volume to the host 300. The storage apparatus 100 serves as a main storage apparatus in the storage system 1, and provides storage ability to the host 300. Meanwhile, the external storage apparatus 200 is an external storage apparatus used by the storage apparatus 100 serving as a main storage apparatus.
The storage apparatus 100 can be roughly divided into a controller and a storage unit 160. The controller can be configured to include, e.g., plural channel adapters (CHA) 110, plural disk adapters (DKA) 120, cache memory 130, shared memory 140, and a connection control unit 150.
Each of the channel adapters 110 conducts data communication with the host 300. Each channel adapter 110 is provided with ports 111 for communicating with the host 300. As described above, the ports 111 can be set as an initiator port, a target port, an external port, etc. Also, one of the channel adapters 110 has the external port 101 and 102 for communicating with the external storage apparatus 200.
Each channel adapter 110 is configured as a microcomputer system equipped with a CPU, memory, etc., and interprets various commands received from the host for execution. The channel adapter 110 is assigned a network address (e.g., IP address or WWN) for identification, can function as individual NAS (Network Attached Storage). When plural hosts 300 exist, the channel adapter 110 receives a request from each of the hosts 300 for processing.
Each of the disk adapters 120 conducts data transfer with disk drives 161 in the storage unit 160. The disk adapter 120 is configured as a microcomputer system equipped with a CPU, memory, etc., like the channel adapter 110. The disk adapter 120 writes, e.g., the data the channel adapter 110 has received from the host 300 or the data read from the external storage apparatus 200 to a predetermined address in a predetermined one of the disk drives 161.
Each disk adapter 120 also reads data from a predetermined address in a predetermined one of the disk drives 161, and sends the data to the host 300 or the external storage apparatus 200. When conducting data input/output with the disk drive 161, the disk adapter 120 converts a logical address into a physical address. When the disk drives 161 are managed according to RAID (Redundant Arrays of Independent/Inexpensive Disks), the disk adapter 120 conducts data access based on a RAID configuration. For example, the disk adapter 120 writes the same data to separate disk drives constituting a group (RAID group), or executes parity calculation and writes data and parity to the disk drive group.
The cache memory 130 stores the data received from the host 300 or the external storage apparatus 200, and stores the data read from the disk drive 161.
The shared memory 140 stores various kinds of control information and configuration information 141, etc. used for controlling the operation of the storage apparatus 100. In the maintenance terminal 400, all or part of the configuration information stored in the shared memory 140 can be rewritten.
Incidentally, one or more of the disk drives 161 may be used as a cache disk(s). The cache memory 130 and the shared memory 140 may be configured as separate memories. Alternatively, a configuration may be adopted where a part of a storage area in memory is used as a cache area, while the rest of the storage area is used as a control area.
The connection control unit 150 establishes mutual connection between the channel adapters 110, the disk adapters 120, the cache memory 130, and the shared memory 140. The connection control unit 150 can be configured as a high-speed bus such as an ultrahigh-speed cross bus switch for conducting data transfer via high-speed switching.
The storage unit 160 is provided with the disk drives 161. Examples of the disk drives 161 include various storage devices such as a hard disk drive, flexible disk drive, magnetic tape drive, semiconductor memory drive, and optical disk drive, and equivalents thereof. Also, a different kind of disk such as an FC. (Fibre Channel) disk or SATA (Serial AT Attachment) disk can be used together with the storage devices in the storage unit 160.
Note that, as will be described later, a virtual volume 163V, which is based on disk drives 220 in the external storage apparatus 200, is formed in the storage apparatus 100. The virtual volume 163V is provided to the host 300, like internal volumes 163 based on the disk drives 161.
The external storage apparatus 200 can be configured to include, e.g., a controller 210 and the plural disk drives 220. The controller 210 controls the entire operation of the external storage apparatus 200. The external storage apparatus 200 is connected to the storage apparatus 100 via the ports 201 and 202.
The external storage apparatus 200 can be configured in substantially the same way as the storage apparatus 100, and can be configured to have a configuration different from that of the storage apparatus 100. Each of the disk drives 220 in the external storage apparatus 200 is treated as an internal storage device in the storage apparatus 100.
Next, a configuration focused on logical storage structures of the storage apparatus 100 and the external storage apparatus 200 will be explained.
The storage structure of the storage apparatus 100 can be roughly divided into, e.g., a physical storage hierarchy and a logical storage hierarchy. The physical storage hierarchy is composed of the physical disk PDEVs (Physical Devices) 161. The PDEVs correspond to the disk drives.
The logical storage hierarchy can be composed of plural (e.g. two kinds of) hierarchies. One of the logical hierarchies can be composed of a VDEV (Virtual Device) 162 and a VDEV (hereinafter, also referred to as “V-VOL”) 162V, that is treated like the VDEV 162. The other logical hierarchy can be composed of the LDEVs (Logical Devices) 163.
The VDEV 162 is formed by grouping a predetermined number of the PDEVs 161, e.g., four pieces (3D+1P) or eight pieces (7D+1P) for one group. The aggregate of the storage areas provided by the PDEVs 161 belonging to a group forms a RAID storage area. The RAID storage area corresponds to the VDEV 162.
In contrast to the VDEV 162 constructed on the physical storage areas, the V-VOL 162V is a virtual intermediate storage device that does not directly require a physical storage area. The V-VOL 162V is not made to directly correspond to the physical storage area, and undertakes mapping of LUs (Logical Units) in the external storage apparatus 200.
At least one LDEV 163 can be provided above each of the VDEV 162 and the V-VOL 162V. An LDEV is a logical volume. The LDEV 163 can be configured by, e.g., dividing the VDEV 162 into units of a fixed length. Note that the LDEV set on the V-VOL 162 is given the reference symbol of “163V” in
When the host 300 is an open system host, the LDEVs 163 are respectively mapped to LUs 164, so that the host 300 recognizes each LDEV 163 as a physical disk. The open system host accesses a desired LDEV 163 by specifying a LUN or logical block address.
The LUs 164 are devices recognizable as SCSI logical units. Each of the LUs 164 is connectable to the host 300 via the target port 111. At least one of the LDEVs 163 can be made to correspond to each of the LUs 164. Note that, the LU size can be virtually expanded by making plural LDEVs 163 correspond to one LU 164.
A CMD (Command Device) 165 is an LU exclusively used for the transfer of a command or status between an 1/0 control program that operates on the host 300 and the controller (channel adapter 110, disk adapter 12, etc.) in the storage apparatus 100. For example, the host 300 can write a command to the CMD 165. The controller in the storage apparatus 100 executes processing in accordance with the command written to the CMD 165, and writes the execution result serving as a status to the CMD 165. The host 300 reads the status written to the CMD 165 for confirmation, and writes the content of processing to be executed next to the CMD 165. In this way, the host 300 can give various instructions to the storage apparatus 100 via the CMD 165.
Incidentally, the command received from the host 300 can be processed without being stored in the CMD 165. Also, the CMD 165 may be created as a virtual device while not defining the relevant actual device (LU), and may be configured to receive and process a command from the host 300. More specifically, for example, the channel adapter 110 writes the command received from the host 300 to the shared memory 140, and the channel adapter 110 or the disk adapter 120 processes the command stored in the shared memory 140. The processing result is written to the shared memory 140, and then is sent to the host 300 from the channel adapter 110.
The storage apparatus 100 is provided with the external ports 101 and 102. The external ports 101 and 102 are respectively connected to the target ports 201 and 202 in the external storage apparatus 200 via the fibre cable 10. The external ports 101 and 102 are connected to the V-VOL 162V. The V-VOL 162V is connected to the external storage apparatus 200 via plural paths.
The external storage apparatus 200 can be configured to include, e.g., plural PDEVs 220, a VDEV 230 set above the storage areas provided by the PDEVs 220, and at least one LDEV 240V settable above the VDEV 230. Each LDEV 240 is made to correspond to LUs 250. Also, the LUs 250 are made to correspond to the target ports 201 and 202, respectively.
The LUs 250 in the external storage apparatus 200 are connected to the common LDEV 240. The LUs 250 also are connected to the respective external port 101 and 102 via the port 201 and 202 through the communication line. As described above, the external ports 101 and 102 are connected to the common V-VOL 162V.
Therefore, the LDEV 240 in the external storage apparatus 200 is made to correspond to the V-VOL 162V via the plural paths. As a result, the LDEV 240, which serves as a storage resource for the storage apparatus 100, in the external storage apparatus 200 is available as an external volume via the paths. One pair of the V-VOL 162V and the LDEV 240 is shown in
In the storage apparatus 100, “LDEV 2” and LDEV 3” correspond to actual internal volumes, and “LDEV 1” corresponds to a virtual volume. “LDEV” in the external storage apparatus 200 corresponds to an actual volume. Note that, where a central focus is put on the storage apparatus 100, the external storage apparatus 200 serves as an external storage apparatus, and the logical volume 240 in the external storage apparatus 200 serves as an external volume.
Explained next is a procedure executed by a user such as a system administrator for searching for connection paths for access to an external volume, which has become not-connectable because of a fault due to the reason of, e.g., the occurrence of a fault in a path in the storage system 1 configured as describe above, via another path; and setting the external volume to a usable state.
A user conducts port management in step S101. More specifically, the user instructs the storage apparatus management unit 510 in the client PC 500 to conduct port attribute change. The port attribute change is a procedure for changing the attribute for the port in the storage apparatus 100 to an external attribute indicating the usage via external connection.
In step S102, a user instructs the external storage apparatus management unit 520 in the storage apparatus management unit 510 to search for an external volume. According to the instruction, the external storage apparatus management unit 520 executes port search processing and volume search processing to search for connection paths to the volume in the external storage apparatus 200. The details of the port search processing and volume search processing will be described in volume search processing described later.
In step S103, a user instructs the external storage apparatus management unit 520 to register WWNs in the external storage apparatus 200. According to this instruction, the external storage apparatus management unit 520 registers the WWNs in the external storage apparatus 200 that are used as connection paths to the external volume in the configuration information 141 in the storage apparatus 100.
In step S104, a user instructs the external storage apparatus management unit 520 to conduct mapping of the external volume to the VDEV. According to those instructions, the external storage apparatus management unit 520 defines the external volume as a virtual volume in the configuration information 141 in the storage apparatus 100 in order to make the external volume able to be treated like a volume in the storage apparatus 100.
In step S105, a user instructs the external storage apparatus management unit 520 to conduct mapping of the external volume to the LDEV. According to those instructions, the external storage apparatus management unit 520 defines the VDEV as a logical volume recognized by the host 300 in the configuration information 141 in the storage apparatus 100.
In step S106, a user conducts LUN management. More specifically, the user instructs the storage apparatus management unit 510 in the client PC 500 to conduct host path definition. The host path definition is processing for defining, in the LDEV, the connection paths (target port-host group-LU) recognized by the host 300.
The external volume is set with other connection paths by executing the above processing, and so can be used as an external volume by the host 300. Hereinafter, volume search processing for an external volume will be described.
In step S201, the external storage apparatus management unit 520 selects external ports as port search objects. In step S202, the external storage apparatus management unit 520 executes port search processing. This port search processing will be specifically described later. After the port search processing is executed, in step S203, the external storage apparatus management unit 520 selects combinations, which serve as volume search objects, of external ports and WWNs. In step S204, the external storage apparatus management unit 520 executes volume search processing. This volume search processing will be specifically described later.
The specific contents of port search processing and volume search processing will be explained using
Volume search processing will be explained next.
First, in step S301, the control unit specifies all the combinations of external ports and WWNs specified as the input information, and conducts a volume search. In step S302, the control unit searches for, from among the already-detected external volumes, the external volumes equivalent in the device identification information 634 to the external volume obtained from the volume search result. In step S303, the control unit judges whether or not a corresponding external volume exists. If it is determined that a corresponding external volume exists (S303: YES), the control unit adds connection paths to the external volume obtained from the volume search result as alternate paths for the already-detected external volumes in step S304. Meanwhile, if it is determined that a corresponding external volume does not exist (S303: NO), the control unit adds the external volume obtained from the volume search result to the already-detected external volumes in step S305.
When the step S304 or step S305 terminates, the control unit judges whether or not the next volume exists in the volume search result in step S306. If it is determined that the next volume exists (S306: YES), the control unit executes steps S302 to S306 again. Meanwhile, if it is determined that the next volume does not exist (S306: NO), the control unit terminates processing.
As shown in
Next, a specific example of the command format used in the volume search processing command sequence described with reference to
Next, the action of the storage system 1 will be explained.
In the storage system 1 shown in
With the above configuration, when a port search for ports 1 and 2 is performed, WWN 1 and WWN 2 are found for port 1, and WWN 1 and WWN 2 are found for port 2. Then, when the volume search, which has been described with reference to
Therefore, the storage apparatus 100 can acquire information about connection paths to external volumes based on the search result for each port and the volume search result for WWN 1. More specifically, only by performing the volume search for WWN 1 after the port search can the storage apparatus 100 acquire the information that there are four connection paths for actual device 1, i.e., port 1-WWN 1-LUN 0000, port 1-WWN 2-LUN 0001, port 2-WWN 1-LUN 0000, and port 2-WWN 2-LUN 0001; and there are four connection paths for actual device 2, i.e., port 1-WWN 1-LUN 0001, port 1-WWN 2-LUN 0002, port 2-WWN 1-LUN 0001, and port 2-WWN 2-LUN 0002.
The volume information possible to be acquired in conventional volume searches has included only the LUNs connected to the WWN for which the search was conducted. Therefore, a search for different WWNs has been required to search for external volumes having the corresponding device identification information for acquiring other paths. However, the storage system 1 enables acquisition of the connection information (combinations of WWNs and LUNs) in the external storage apparatus 200, leading to acquisition of all the connection paths.
Incidentally, the first embodiment has been described for the case where the external storage apparatus 200 is provided as an external storage apparatus. However, a storage system in which not only the external storage apparatus 200 but also an external storage 203 is connected to the fibre cable 10 can be utilized in the present invention.
The second embodiment will be described. This second embodiment will be described for the case where the invention utilizes a storage system in which a first storage apparatus and third storage apparatus connected to the host 300 are provided; a virtual volume is formed above devices in each of the first and third storage apparatuses; the virtual volume is subjected to data processing; and as a result, data processing can be executed simultaneously on respective predetermined devices in the first and third storage apparatuses.
As shown in
The alternate path software 330 may give a device re-recognition request to the storage apparatus 100 (including the external storage apparatus 200 as an external volume) and the storage apparatus 100′ (including the external storage apparatus 200′ as an external volume). During the device re-recognition, the alternate path software 330 needs to issue “Inquiry” commands to all the LUs in all the storage apparatuses connected to the host 300 to acquire LU information.
In the storage system 3 configured as above, regarding the volumes for which setting of the simultaneous data processing has been made, the serial number and LU number, which are included in the device identification information and control information, are set to the values set in the processing in the device detailed information format 970 described with reference to
Also, in the storage system 3, a setting can be employed in which selection is made concerning whether or not device detailed information is requested based on the values set in the above processing. Therefore, the device configuration report request command format 900, which has been described in the first embodiment, stores the information concerning whether or not device detailed information is requested.
The first embodiment has been described for the case where the invention utilizes the storage system: including the host 300, the storage apparatus 100; the external storage apparatus 200 connected to the storage apparatus 100 via the fibre cable 10; and the client PC 500 that manages the storage apparatus 100 and the external storage apparatus 200, the host 300 and the storage apparatus 100 being connected to each other via the fibre cable 10, and the host 300 using a volume in the external storage apparatus 200 as an external volume for the storage apparatus 100, in which the storage apparatus 100 includes the port search processing unit that searches for WWNs in the external storage apparatus 200 (S202) and a volume search processing unit that searches for connection paths to a volume in the external storage apparatus 200 by utilizing any of the WWNs found by the port search processing unit and outputs all the information about the found connection paths to the volume (S204). However, the invention is not limited to this configuration.
The client PC 500 sends the storage apparatus 100 an instruction to execute processing in the port search processing unit and processing in the volume search processing unit, and the found connection paths to the volume are output to the client PC 500 via the maintenance terminal 400. However, the invention is not limited to this configuration.
Also, the configuration has been described in which, as shown in
The client PC 500 has been described for the case where it creates the external volume information 830 based on the device configuration information obtained via the device configuration information acquisition, and creates the external volume list 810 for the external storage apparatus 200. The external volume information 830 has been described for the case where it includes the device identification information, device name, control information, path information, and alternate path information, as shown in
Moreover, the storage apparatus 100 has been described for the case where it has the external ports 101 and 102 for communicating with the external storage apparatus 200 via the fibre cable 10, and the connection path information has been described for the case where it consists of the combination of the specified external port (101,102), WWN on the fibre cable 10, and LUN. However, equivalents of the above can also be utilized in the invention.
Furthermore, the second embodiment has been described for the case where the invention utilizes the storage system 3 in which the storage system 1 further includes the storage apparatus 100′ connected to the host 300 and the external storage apparatus 200′ connected to the storage apparatus 100′ via the fibre cable 10; in which the host 300 uses a volume in the external storage apparatus 200′ as an external volume for the storage apparatus 100′; in which the host 300 includes the data processing unit for executing data processing simultaneously on the respective predetermined devices in the storage apparatus 100 and the storage apparatus 100′ by utilizing the virtual volume above the storage apparatus 100 and the storage apparatus 100′; and in which volume search processing (S204) is executed so that which—the acquisition of information corresponding to the setting (S402) or the acquisition of information not corresponding to the setting (S403)—is conducted is judged (S401) based on whether or not a setting for conducting the simultaneous data processing (presence or absence of OSW in
A wide variety of storage systems and external volume connection path search methods for the storage systems can be utilized in the invention.
While the invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of this disclosure, will appreciate that other embodiments can be devised which do not depart from the scope of the invention as disclosed herein. Accordingly, the scope of the invention should be limited only by the attached claims.
Number | Date | Country | Kind |
---|---|---|---|
2007-304753 | Nov 2007 | JP | national |