Managing Virtual Ports in an Information Processing System
A method is provided with which a name of a virtual port is not changed when virtualized storage is moved among switches. Information about a creator and a borrower of name information is added to a table including name information and address information of a virtual port of a name server managing the name information and the address information. The name information is provided to plural switches and managed. In addition, name information, which can be used commonly among name servers managing the name information and the address information is pooled in advance, and the name information of the virtual port is borrowed from there.
Latest Hitachi, Ltd. Patents:
- State monitoring method and state monitoring system
- Data processing system and data processing method
- Optical measurement instrument, server device, and optical measurement method
- Information management system, information management apparatus, and information management method
- COMPUTER SYSTEM AND SERVICE CONSTRUCTION SUPPORT METHOD
1. Field of the Invention
The present invention relates to a switch-based (storage) virtualization technique in a storage area network (SAN), and relates to a management method for a name which is given to a port of a switch providing a virtualized storage.
2. Description of the Prior Art
In the Fibre Channel (FC)-SAN environment, or the IP-SAN environment using the internet Small Computer System Interface (iSCSI) obtained by encapsulating the Small Computer System Interface (SCSI) in the Transmission Control Protocol/Internet Protocol (TCP/IP), an apparatuses such as a server or a storage is treated as a node. To identify a node in the SAN, in the FC-SAN each node has 24-bit address information called a port ID and 64-bit name information called a World Wide Name (WWN) by a unit of port. In addition, in the IP-SAN, each node has 32-bit address information in Ipv4 or 128-bit address information in Ipv6 called an IP address, 48-bit address information called a Media Access Control (MAC) address, and 255-byte name information called an iSCSI name by a unit of port.
The name information cannot be changed because it is generated based upon information permanently allocated to hardware of a node. Programs of a Simple Name Server (SNS) in the FC-SAN, an internet Storage Name Server (iSNS) in the IP-SAN, and the like are executed, whereby a relation between the name information and the address information or the like is managed, and the information is provided. After acquiring or setting the address information, the node connected to the SAN registers the name information and the address information of its own in a table held by an apparatus having these programs (e.g., see Tom Clark “SAN, Implementation of Practical Fibre Channel Storage Area Network”, Piason Education, Dec. 25, 2000, p. 40-42, and 76-83, or Mike Frase, “Troubleshooting Storage Networks”, [online], [retrieved on Jan. 10, 2003], Internet <URL: http:www.cisco.com/networkers/nw02/post/presentations/docs/OPT-350.pdf>).
In a switch providing a storage virtualization mechanism in the SAN environment, a volume or a logical unit (LU) of a virtualized storage is provided by a unit of port (e.g., see Mogi Ryuta, “Realize Functional Reinforcement and Package Management of a SAN through Virtualization of a Storage”, Nikkei Windows Pro, August 2002 (No. 65), p. 13-15). In the following description, a port providing a volume or an LU of a virtualized storage is referred to as a virtual port.
BRIEF SUMMARY OF THE INVENTIONWith the switch-based storage virtualization, allocation and rearrangement of storage areas in storage systems of plural vendors connected to a network can be performed without depending upon a physical configuration of the storage systems. Here, the storage system is assumed to be a system including plural storage devices and a storage control device for controlling the plural storage devices. However, in the related art, when a virtual port is continuously used with the same name information, only use in a switch is considered. In future, it is likely that the name information of the virtual port is changed by movement or reconstitution of the virtualized storage among plural switches, replacement of the switch providing the virtualized storage, or the like. In a server which is required of high availability, it is not allowed to interrupt operation processing by change of the name information of the virtualized storage.
This invention provides a method of maintaining and managing name information of a virtual port for preventing the situation as described above. To do so, a switch in accordance with the present invention adds information on a generator and a borrower of name information to a table including information for managing name information and address information of a virtual port and lends and borrows the name information among plural switches or to and from a replaced switch.
In addition, the switch in accordance with the present invention pools name information, which can be used commonly among switches having a name server program for managing name information and address information of a virtual port or switches having a representative name server program, in advance and borrows the name information of the virtual port from there.
A first embodiment of the present invention will be described with reference to
The storage system 103 has a port 104 for making connection with the switch 101 and the server 102, and plural storage devices 105 are connected under the port 104. In the case in which a virtualized storage is used in the switch 101, a virtual port 110 and a virtualized storage 111 under the virtual port 110 are prepared.
The link interface 201 has a port 208.
The routing processor 202 includes: a searching engine 202B which searches a header of a packet; a memory 202C which stores routing information and the like for the searching engine 202B to search a header; a forwarding engine 202A which rewrites a part of information in a packet when the packet is transferred to the routing processor 202 to be a destination or is virtualized according to a result of searching of the searching engine 202B; a CPU 202D which controls the entire routing processor 202; and a main memory 202E which stores programs and data.
The switch manager 204 includes: a CPU 204B which controls the entire switch manager 204; a main memory 204C which stores programs and data; a management interface 204D, and a switch interface controller 204A for communicating with the routing processor 202 or the like connected to the cross-bar switch 203. A management terminal 207 (e.g., a dam terminal, a console terminal, etc.) or an ordinary PC (not shown) is connected to the management interface 204D by a serial cable, an Ethernet cable, or the like.
As programs and tables (software and tables are encircled in the figure), which are used in executing the respective programs, stored in the main memory 202E of the routing processor 202, there are an operating system (hereinafter referred to as OS) 206A, a communication program 206B for communicating with the switch manger 204, a routing table 206C which is a copy of a routing table 205C2 generated by executing a routing protocol program 205C1 described later, and the like.
Similarly, as programs and tables, which are used in executing the respective programs, stored in the main memory 204C of the switch manager 204, there are an OS 205A, a switch management program 205B1 and a configuration and Management Information Base (MIB) table 205B2 therefor, a routing protocol program 205C1 such as Fabric Shortest Path First (FSPF) and a routing table 205C2 therefor, a name server program 205D1 such as an SNS for managing a name of a node apparatus to be connected to the switch 101 and a name management table 205D2 therefor, a login server program 205E for giving a port ID to a node apparatus to be connected to a network (fabric) of an FC, a volume management program 205F1 for constituting a virtualized storage with a logical unit of the storage system 103 to be connected and a volume management table 205F2 therefor, and the like.
Note that the FC switch shown in
The storage system 103 comprises: plural channel adapters 301 which have plural ports 104 for connecting the switch 101, the server 102, and the like; disk adapters 303 for accessing the plural storage devices 304; a cache memory switch 302 which connects the plural channel adapters 301 and the plural disk adapters 303; a storage manager 305 which performs system management and volume management of the storage system 103; a storage systems interconnect controller 306 for connecting the storage systems via the switch 101, and the like.
The storage manager 305 includes: a CPU 305B which controls the entire storage manager 305; a main memory 305C which stores programs and data; a management interface 305D, and a module interface controller 305A for controlling modules such as the channel adapters 301.
As representative programs and tables, which are used in executing the respective programs, stored in the main memory 305C of the storage manager 305, there are an OS 306A, a storage configuration management program 306B1 and a configuration management table 306B2 therefor, a volume management program for a logical unit in the storage system 103 and a volume management program 306C1 for constituting a virtualized storage and a volume management table 306C2 therefor, and the like.
The following description will be made using the FC switch shown in
In the IP network, an IP address may be set statically or may be set dynamically according to a Dynamic Host Configuration Protocol (DHCP). In the Fibre Channel, only an address called a port ID is dynamically set. The server 102 and the storage system 103 first send requests for fabric login (FLOGI) 404A and 404B to the switch 101 (a port ID to be a destination is 0xFFFFFE), and the switch 101 executes the login server program 205E, thereby sending messages Accept 405A and 405B allocating port IDs to the server 102 and the storage system 103 which have sent the requests. Next, the server 102 and the storage system 103 send requests for port login (PLOGI) 406A and 406B to the switch 101 (a port ID to be a destination is 0xFFFFFC), and the switch 101 executes the name server program 205D1, thereby registering a port ID, a port type, a port name, a service class to be supported, and the like in the name management table 205D2 and sends messages Accept 407A and 407B of completion of the registration to the server 102 and the storage system 103 which have sent the request. Thereafter, for example, the server 102 performs port login in order to use the storage system 103 and establishes communication of the data link layer of the Fibre Channel.
As information of an entry 510 for each port, other than a port ID 502 of 24 bits, a port type 503, and a World Wide Port Name (WWPN) 504 which is a 64-bit port name, with respect to a request for port login from the storage system 103, there are Logical Unit Number (LUN) 506 which is a number of the logical unit incorporated in the storage system 103, an 64-bit LUN WWN 507 which is a name of the LUN, MAP information 505 which represents mapping of the WWPN 504 and the LUN 506, and a World Wide Node Name (WWNN) 501 which is a node name for each switch. In addition, one row in which these pieces of information are stored is hereinafter referred to as an entry (510).
In the example of
First, a virtualized storage 111A and the virtual port 110A shown in
When the virtualized storage 111A corresponding to logical units of the storage devices 105A and 105B in
Next, the structure of the name management table 205D2 will be described in an association with
Next, it is assumed that the port 208B corresponds to the entry 610E of
Next, problems which occur when the movement of a virtualized storage is carried out by the related art in order to move the virtualized storage 111A corresponding to the logical unit of the storage device 105C in
In order to move the virtualized storage 111A, the CPU 204B of the switch manager 204 generates a port ID on an entry 910G (step 1001), sets a port type to virtual Fport (step 1002), generates a WWPN (step 1003), and confirms whether or not a logical unit to be a destination of movement of the virtualized storage exists (step 1004). If the logical unit does not exist, the CPU 204B ends the processing. If an logical unit (entry 710F) to be a destination of movement exists, as shown in entries 910G and 910F, the CPU 204B sets MAP information 605 (step 1005), generates an LUN WWN 606 on the entry 910G (step 1006), and performs data migration processing for migrating data from the storage device 105C to the storage device 105D (step 1007). Although details of the data migration processing are not described in this embodiment, it is assumed that the data migration processing can also cope with data migration while input/output (I/O) of read or write is performed online (see Patent Applications 2000-152672 and 2000-63289).
After completion of the data migration processing, the CPU 204B informs the server 102 or the like, which was using the virtualized storage 111A, that the port ID and the WWPN have been changed (step 1008). As this notification frame, a remote state change notification frame which is a State Change Notification in an SNS of a Fibre Channel is used (State Change Notification (SCN) of an iSNS in an iSCSI). Since a port ID and a WWPN of an origin of movement are in an entry 710E and a port ID and a WWPN of a destination of movement are in an entry 910G, change of the WWPN occurs in the related art. Unless the WWPN of the virtual port 110A used in the server 102 is changed, the virtualized storage 111B after movement cannot be used. Suspension of an operation such as stopping an application on the server 102 once may be required for the change of the WWPN. After it has become possible to use the virtualized storage 111B in the server 102, the CPU 204B performs processing for deleting information (an entry 810E in
Next, with reference to
Steps 1301 to 1307 of
In the present invention, since the WWPN of the entry 1210G is the same as the WWPN of the origin of movement of the virtualized storage, the virtualized storage 111A used in the server 102 can be continuously used with only change of the port ID even if it is really changed to the virtualized storage 111B.
On the other hand, upon receiving the request to borrow a WWPN, the CPU 204B of the switch 101A indicates that a pertinent WWPN is lent, and sets a port ID of the virtualized storage 111 B of a destination of movement to the borrower/lender 1101 of the entry 1110E (step 1312), and sends the WWPN, which is lent to the switch 101B, and the port ID to the switch 101B (step 1313). After it has become possible to use the virtualized storage 111B in the server 102, the CPU 204B of the switch 101A performs processing of deleting information on a name management table relating to the virtualized storage 111A, deleting data in the logical unit of the storage system 103, and the like (step 1314).
Next, a second embodiment of the present invention will be described with reference to
Steps 1701 to 1706 of
Steps 1801 to 1811 of
On the other hand, upon receiving a request to borrow a WWPN, the CPU 204B of the switch 101A deletes the pertinent WWPN by returning it to a commonly used area (in
Next, a third embodiment of the present invention will be described with reference to
A representative program and table of the storage manager has a structure in which a representative program and table 205 and the like in the switch manager of
A description of the case in which the virtualized storage 111A of
Note that, although a magnetic medium is often used as the storage device 105, other media such as an optical medium may be used. In addition, the program described in the present invention may be transferred from a storage medium such as a CD-ROM or may be downloaded from other devices through a network.
According to the present invention, name information of a virtual port can be maintained and managed by movement or reconstruction of a virtualized storage among plural switches, replacement of a switch, and the like. In addition, movement or the like of a virtualized storage can be performed without interruption in the case in which a server, which is required to have high availability, performs operation processing using a virtualized storage.
Claims
1-12. (canceled)
13. An information processing system having a plurality of switches connected to each other, the information processing system comprising:
- a first switch including: a plurality of ports for making connection with other switches; a CPU controlling the first switch; and a memory storing a first program and information;
- wherein: the memory includes a common area storing a port name which is commonly used by the plurality of switches; the first switch is connected to a first storage system; and the first program is configured to: acquire the port name from the common area; set a virtual port of a virtualized storage not existing physically; associate the virtualized storage with the first storage system; and set the acquired port name in the virtual port.
14. The information processing system according to claim 13, further comprising a second switch that is connected to a second storage system, wherein:
- the second switch includes: a port for making connection with the first switch; a CPU controlling the second switch; and a memory storing a second program and information; and
- the second program is configured to: set a virtual port of a virtualized storage not existing physically; associate the virtualized storage and the second storage system; send a request to borrow a port name of the virtual port stored in the common area to the first switch; receive the port name from the second switch; and set the received port name in the virtual port.
15. A first switch connected to a second switch, the first switch comprising:
- a plurality of ports for making a connection with the second switch;
- a CPU controlling the first switch; and
- a memory storing a program and information;
- wherein: the memory includes a common area storing a port name which is commonly used by the first and second switches; the first switch is connected to a first storage system; and the first program is configured to: acquire the port name from the common area; set a virtual port of a virtualized storage not existing physically; associate the virtualized storage with the first storage system; and set the acquired port name in the virtual port.
Type: Application
Filed: Jul 20, 2011
Publication Date: Nov 17, 2011
Applicant: Hitachi, Ltd. (Tokyo)
Inventors: Toshihiko Murakami (Fujisawa), Atsuya Kumagai (Kawasaki), Naoko Iwami (Sagamihara)
Application Number: 13/186,744
International Classification: H04L 12/28 (20060101);