Abstract:
Since only one golden image (GI) of a snapshot can exist and is shared among a plurality of storage apparatuses, there was a problem that migration or copy thereof deteriorates the capacity efficiency and increases the cost for managing consistency. The present invention solves the above-mentioned problem by either (1) a direct sharing method of generating a parent-child relationship of snapshots among different storage apparatuses at the time of creating differential LUs from the GI or (2) a virtual sharing method of creating virtual LUs of the GI in the respective storage apparatuses and creating differential LUs of the snapshots from the created virtual LUs, using a storage virtualization function among a plurality of storage apparatuses.

Description:
TECHNICAL FIELD 
     The present invention relates to a volume management method in a storage system, specifically to a technology of reducing operational cost of a storage apparatus. 
     BACKGROUND ART 
     Recently, by the improved performance of computers, it became possible to make a plurality of virtual computers (virtual machines, hereinafter referred to as “VMs”) operate in a physical computer. A VM performs various types of processing by starting up an operating system (hereinafter referred to as an “OS”) installed in a virtual storage device (a Virtual Hard Disk Drive, hereinafter referred to as a VHDD). 
     Furthermore, a technology of creating a snapshot (a child file) for which write can be performed from a parent file in a file system is known (Patent Literature 1). According to this technology, if write occurs in a snapshot, differential data which occurred by write is stored in another storage area than the snapshot, and the storage destination of the differential data is changed to the other storage area. By utilizing the writable snapshot, the commonly utilized OSs, applications, and others can be created from an image referred to as a Golden Image (a parent file which has no parent thereof and is hereinafter also referred to as a GI) into a plurality of VMs. 
     Furthermore, a technology for being able to uniquely identify a volume in a plurality of storage apparatuses is published (Patent Literature 2). According to this technology, by sharing an identifier for making a volume and a storage apparatus unique among a plurality of storage apparatuses, the operation for a specific volume can be performed among the plurality of storages. 
     CITATION LIST 
     Patent Literature 
     [Patent Literature 1] U.S. Pat. No. 6,857,001 
     [Patent Literature 2] Japanese Patent Application Laid-Open (Kokai) No. 2008-040571 
     (US Patent Application Publication No. 2008/0034005) 
     SUMMARY OF INVENTION 
     Technical Problem 
     However, by the technology of the Patent Literature 1, there was a problem that only one snapshot GI can exist and that, if migration, copy, and other operations are performed for sharing the GI among the plurality of storages, another snapshot tree occurs, which deteriorates the capacity efficiency and increases the management cost. Furthermore, there was a problem that a snapshot (LU) which is the data input/output destination and a pool (LU) in which the differential data is stored are managed individually, which deteriorates the data input/output performance. 
     Furthermore, by the technology of the Patent Literature 2, there was a problem that, although an identifier for making a volume and a storage apparatus unique among a plurality of storage apparatuses can be shared, identifiers as shared information increase along with the increase of differential volumes, which deteriorates the performance for volumes. 
     Therefore, the present invention is created in view of the above-mentioned problems, and the purpose thereof is to improve the disk capacity efficiency while sharing the GI and also improve the access performance for volumes. 
     Solution to Problem 
     The above-mentioned problems are solved by utilizing a storage virtualization function (a function by which one storage apparatus gets an LU in another storage apparatus to be recognized as an LU virtually and makes the software resources in the LU such as OSs and APs usable) among a plurality of storage apparatuses either by 
     (1) a direct sharing method of generating a parent-child relationship of snapshots among different storage apparatuses at the time of creating differential LUs from the GI, or by 
     (2) a virtual sharing method of creating virtual LUs of the GI in the respective storage apparatuses and creating differential LUs of snapshots from the created virtual LUs. 
     Specifically speaking, in a storage system configured of two or more storage apparatuses each of which comprises an interface unit which is coupled to a computer operating a plurality of virtual computers and is coupled to the virtual computers via a network and a control unit and a storage unit which are coupled to the interface unit, wherein a logical volume in a first storage apparatus is assigned to a differential virtual logical volume of the relevant first storage apparatus and is also assigned to a differential virtual logical volume of a second storage apparatus so that the logical volume is shared, and a logical volume of the first storage apparatus and a differential virtual logical volume of the first storage apparatus or a differential virtual logical volume of the second storage apparatus are assigned to the virtual computer by the control unit of the first storage apparatus. 
     Furthermore, in the storage system, the logical volume in the first storage apparatus is assigned to the virtual logical volume of the relevant first storage apparatus and is also assigned to the virtual logical volume of the second storage apparatus and the logical volume is shared, a differential virtual logical volume for the virtual logical volume of the first storage apparatus is assigned to the virtual logical volume of the first storage apparatus, a differential virtual logical volume for the virtual logical volume of the second storage apparatus is assigned to the virtual logical volume of the second storage apparatus, and a logical volume in the first storage apparatus and a differential virtual logical volume of the first storage apparatus or a differential virtual logical volume of the second storage apparatus are assigned to the virtual computer by the control unit of the first storage apparatus. 
     Furthermore, the present invention provides a volume sharing method for a storage system configured of two or more storage apparatuses each of which comprises an interface unit which is connected to a computer operating a plurality of virtual computers and is coupled to the virtual computers via a network and a control unit and a storage unit which are connected to the interface unit, the volume sharing method comprising a step wherein a logical volume of a first storage apparatus is assigned to a differential virtual logical volume of the relevant first storage apparatus and is also assigned to a differential virtual logical volume of a second storage apparatus so that the logical volume is shared, and a step wherein a logical volume of the first storage apparatus and a differential virtual logical volume of the first storage apparatus or a differential virtual logical volume of the second storage apparatus are assigned to the virtual computer, which are performed by the control unit of the first storage apparatus. 
     In addition, the present invention provides the above storage system, wherein the volume sharing method comprised of a step wherein a logical volume in the first storage apparatus is assigned to the virtual logical volume of the relevant first storage apparatus and is also assigned to the virtual logical volume of the second storage apparatus and the logical volume is shared, a step wherein a differential virtual logical volume for the virtual logical volume of the first storage apparatus is assigned to the virtual logical volume of the first storage apparatus, a step wherein a differential virtual logical volume for the virtual logical volume of the second storage apparatus is assigned to the virtual logical volume of the second storage apparatus, and a step wherein a logical volume in the first storage apparatus and a differential virtual logical volume of the first storage apparatus or a differential virtual logical volume of the second storage apparatus are assigned to the virtual computer, which are performed by the control unit of the first storage apparatus. 
     Advantageous Effects of Invention 
     By the present invention, the GI can be shared while improving the disk capacity efficiency and the management cost can be reduced. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
         FIG. 1  is a diagram for explaining a system configuration of the present invention. 
         FIG. 2  is a diagram for explaining a memory configuration of a computer. 
         FIG. 3  is a diagram for explaining a memory configuration of a management computer. 
         FIG. 4  is a diagram for explaining a memory configuration of a storage apparatus  1400 . 
         FIG. 5  is a diagram for explaining a memory configuration of a storage apparatus  1500 . 
         FIG. 6  is a diagram for explaining a virtual computer configuration information table. 
         FIG. 7  is a diagram for explaining a storage virtualization configuration information table in the storage apparatus  1400 . 
         FIG. 8  is a diagram for explaining a storage virtualization configuration information table in the storage apparatus  1500 . 
         FIG. 9  is a diagram for explaining a snapshot configuration information table. 
         FIG. 10  is a diagram for explaining a snapshot configuration information table. 
         FIG. 11  is a diagram for explaining an LU number table. 
         FIG. 12  is a diagram for explaining a GI configuration according to Embodiment 1 of the present invention. 
         FIG. 13  is a diagram for explaining GI creation processing according to Embodiment 1 of the present invention. 
         FIG. 14  is a diagram for explaining GI conversion processing according to Embodiment 1 of the present invention. 
         FIG. 15  is a diagram for explaining VM creation processing according to Embodiment 1 of the present invention. 
         FIG. 16  is a diagram for explaining a GI management screen according to Embodiment 2 of the present invention. 
         FIG. 17  is a diagram for explaining a GI configuration according to Embodiment 2 of the present invention. 
         FIG. 18  is a diagram for explaining a GI configuration according to Embodiment 3 of the present invention. 
     
    
    
     DESCRIPTION OF EMBODIMENTS 
     Hereinafter, the embodiments of the present invention are explained in detail with reference to the figures. 
     &lt;Embodiment 1&gt; 
     Firstly, a general overview of Embodiment 1 is explained with reference to Figures from  1  to  12 . It should be noted that the present invention specifies that a GI of the storage apparatus  1400  used by a computer  1000  is shared by the other storage apparatus  1500  and others. 
       FIG. 1  shows a system configuration in the present embodiment. The computer  1000  in  FIG. 1  is a computer which performs input/output for the storage apparatuses  1400  and  1500 . The computer  1000  comprises an FC_I/F  1001  which transmits and receives input/output data to and from the storage apparatuses  1400  and  1500 , an IP_I/F  1005  which transmits and receives management data to and from the management computer  1100 , a CPU  1002  which performs programs and controls the entire computer, a memory  1007  which is a storage area of the programs, a storage device  1006  which stores the programs, user data, and others, an input device  1003  such as a keyboard and a mouse for inputting information from the user, and an output device  1004  such as a display for displaying information for the user. 
     The management computer  1100  is a computer for managing the computer  1000  and the storage apparatus  1400 . The management computer  1100  comprises an FC_I/F  1101  which transmits and receives input/output data and control data to and from the storage apparatuses  1400  and  1500 , an IP_I/F  1105  which transmits and receives management data to and from the computer  1000  and the storage apparatus  1400 , a CPU  1102  which performs programs and controls the entire computer, a memory  1107  which is a storage area of the programs, a storage device  1106  which stores the programs, user data, and others, an input device  1103  such as a keyboard and a mouse for inputting information from the user, and an output device  1104  such as a display for displaying information for the user. 
     An FC switch  1200  is a switch device for transferring input/output data from the computer  1000  to the storage apparatus  1400  and others. The FC switch  1200  comprises an FC_I/F  1203  which transmits and receives input/output data, an IP_I/F  1204  which transmits and receives management data, a CPU  1201  which performs programs and controls the entire FC switch, and a memory  1202  which is a storage area of the programs and data. 
     An IP switch  1300  is a switch device for transferring management data from the management computer  1100  to the computer  1000  and others. The IP switch  1300  comprises an IP_I/F  1303  which transmits and receives management data, a CPU  1301  which performs programs and controls the entire IP switch, and a memory  1302  which is a storage area of the programs and data. 
     The storage apparatus  1400  is a node which processes input/output data from the computer  1000 . The storage apparatus  1400  comprises an FC_I/F  1401  which receives input/output data from the FC switch, an IP_I/F  1402  which receives management data from the management computer  1100 , a controller  1403  which controls HDDs  1406  and  1407 , a CPU  1404  which performs programs and controls the entire storage apparatus, a memory  1405  which is a storage area of the programs, HDDs  1406  and  1407  in which user data is saved, and LUs  1411 ,  1412 ,  1413 ,  1414 , and  1415  which are storage areas of the user data. 
     The storage apparatus  1500  is a node which processes input/output data from the computer  1000 . The storage apparatus  1500  comprises an FC_I/F  1501  which receives input/output data from the FC switch, an IP_I/F  1502  which receives management data from the management computer  1100 , a controller  1503  which controls HDDs  1506  and  1507 , a CPU  1504  which performs programs and controls the entire storage apparatus, a memory  1505  which is a storage area of the programs, HDDs  1506  and  1507  in which user data is saved, and LUs  1511 ,  1512 ,  1513 , and  1514  which are storage areas of the user data. 
     At this point, the storage apparatuses  1400  and  1500  can handle the LUs in the local and other storage apparatuses virtually as the LUs in the local storage apparatuses. For example, an LU  1514  in the storage apparatus  1500  can virtually utilize an LU  1415  in the storage apparatus  1400  while the LU  1415  in the storage apparatus  1400  actually stores the data. 
     In this case, if the computer  1000  performs input/output for the LU  1514  in the storage apparatus  1500 , the program which is read in the memory of the storage apparatus  1500  performs input/output for the LU  1415  in the storage apparatus  1400  which is the actual LU of the virtual LU  1514 . 
     By comprising this type of storage virtualization function in the storage apparatuses  1400  and  1500 , the computer has only to perform input/output for one virtual LU, and therefore, the reduction of the management cost can be expected. Furthermore, the computer can utilize software of the storage apparatus which comprises the virtual LU and efficiently utilize the resource which is an old storage apparatus. 
       FIG. 2  shows the configuration of the memory  1007  in the computer  1000 . At the time of start-up, the computer  1000  reads a data input/output program  2001  which performs data input/output for the storage apparatuses  1400  and  1500 , a VM management program  2003  for making a virtual computer operate in the computer, and a VM configuration information table  2004  which is the configuration information of the virtual computer in the memory  1007 . 
     The virtual computer is a virtual computer (VM=Virtual Machine) which enables a plurality of OSs and APs (application software) to be respectively performed independently in one actual computer, and can read configuration information and performance information in a virtual memory (physically in the memory  1007 ) the same as the actual computer. 
     Incidentally, the VM transmits and receives input/output data to and from the storage apparatuses  1400  and  1500  by utilizing the FC_I/F  1001  of the computer  1000 , and reads the data input/output program  2001  in the virtual memory in the VM. 
       FIG. 3  shows the configuration of the memory  1107  in the management computer  1100 . At the time of start-up, the management computer  1100  reads a GI management program  3001  of the storage apparatus  1400  in the memory  1107 . 
       FIG. 4  shows the configuration of the memory  1405  in the storage apparatus  1400 . At the time of start-up, the storage apparatus  1400  reads a data processing program  4001  for making the computer  1000  and others access the storage apparatus  1400 , a storage information management program  4002  for managing configuration information and performance information of the storage apparatus, a storage virtualization configuration information table  4003  which is the configuration information of the storage apparatus, a snapshot configuration information table  4004  which is pair information among LUs in the storage apparatus, and an LU number table  4005  which is correspondence information between the storage apparatus and the LUs in the memory  1405 . 
       FIG. 5  shows the configuration of the memory  1505  in the storage apparatus  1500 . At the time of start-up, the storage apparatus  1500  reads a data processing program  4001  for making the computer  1000  and others access the storage apparatus  1500 , a storage information management program  4002  for managing configuration information and performance information of the storage apparatus, a storage virtualization configuration information table  4003  which is the configuration information of the storage apparatus, a snapshot configuration information table  4004  which is pair information among LUs in the storage apparatus, and an LU number table  4005  which is correspondence information between the storage apparatus and the LUs in the memory  1505 . 
       FIG. 6  shows the configuration of the VM configuration information table  2004 . The 
     VM configuration information table  2004  comprises a VM  6001  which is an identifier of the VM, a HOST_LU  6002  which is an identifier in the host of an LU in which a virtual hard disk drive used by the VM is stored, an LU  6003  which is an identifier in the storage apparatus of the LU in which the virtual hard disk drive used by the VM is stored, and a VHDD file  6004 . The VHDD file  6004  is an OS, an AP, and others used by the VM. 
       FIG. 7  shows the configuration of the storage virtualization configuration information table  4003  in the storage apparatus  1400 . The storage virtualization configuration information table  4003  comprises an EX_STORAGE  7001  which is an identifier of a storage apparatus in which a virtually recognized LU exists, an EX_LU  7002  which is an identifier of the virtually recognized LU, an IN_STORAGE  7003  which is an identifier of a storage apparatus in which the actual LU for the virtually recognized LU exists, and an IN_LU  7004  which is the actual LU for the virtually recognized LU.  FIG. 8  is the configuration of the storage virtualization configuration information table  4003  in the storage apparatus  1500 , and the contents thereof are the same as  FIG. 7 . 
       FIG. 9  shows the configuration of the snapshot configuration information table  4004  in the storage apparatus  1400 . The snapshot configuration information table  4004  comprises a STORAGE  9001  which is an identifier of the storage apparatus, a PARENT_LU  9002  which is a parent LU of a snapshot pair, a CHILD_LU  9003  which is a child LU of the snapshot pair, and a POOL  9004  which is the actual data storage destination LU for the CHILD_LU.  FIG. 10  shows the configuration of the snapshot configuration information table  4004  in the storage apparatus  1500 , and the contents thereof are the same as  FIG. 9 . 
       FIG. 11  shows the configuration of the LU number table  4005 . The LU number table  4005  comprises a GLOBAL_LU  10001  which is an LU identifier which is unique among a plurality of storages, a STORAGE  10002  which is an identifier of the storage apparatus in which an actual LU exists, and a LOCAL_LU  10003  which is an identifier of the actual LU. 
       FIG. 12  shows a conceptual diagram of the present embodiment. A reference sign  13001  in the figure is a global LU identifier (a GLOBAL_LU  10001  in the LU number table  4005 ) for uniquely identifying the LUs and the pools and does not exist in the actual system configuration. 
     The LUs specified by the PARENT_LUs  9002 , CHILD_LUs  9003 , and the POOLs  9004  in the snapshot configuration information tables  4004  shown in  FIG. 9  and  FIG. 10  are the LUs used by a WritableSnapshot technology. The “WritableSnapshot” is a snapshot which is an LU maintaining the status of an LU at a certain point of time and is characterized by being writable to the snapshot. 
     For example, a VM  1010  is mounted with (corresponds to) a VHDD  1011  and mounts a VHDD file  1021  which is a program or data such as an OS or an AP used by the VM. This VHDD file  1021  is saved in the LU  1411  in the storage apparatus  1400 . This LU  1411  is referred to as a differential LU (Differential Disk), in which only the differential data from the contents of a GI (LU  1414 ) in which the images of the common OSs and applications are stored is stored. It should be noted that the GI is a virtual LU using the storage virtualization function, whose function is explained in detail later. 
     The data in the differential LU is actually stored in the hard disk configuring the pool  1413 . If a write request is transmitted from the VM  1010  to the differential LU  1411 , the storage apparatus  1400  confirms whether the data exists or not in the required address of the differential LU  1411  (the actual data is saved in the pool  1413 ) and, if the data exists, overwrites the data by the address for which the write request was made. If the data does not exist in the address, the storage apparatus  1400  writes the required address area in the pool  1413 . 
     If a read request is transmitted from the VM  1010 , the storage apparatus  1400  confirms whether the data exists or not in the required address of the differential LU  1411  and, if the data exists, transmits the data of the address to the VM. 
     If the data does not exist in the address, the storage apparatus  1400  transmits the data of the required address of the GI to the VM. Since this method makes it possible to store the VM specific data in the differential LU and store the VM common data in the GI, the capacity in the storage apparatus can be efficiently utilized. 
     The LUs specified by the EX_LUs  7002  and the IN_LUs  7004  in the storage virtualization configuration information tables shown in  FIG. 7  and  FIG. 8  are the LUs used by the storage virtualization function. 
     The storage virtualization function is a function by which a storage apparatus gets an LU in another storage apparatus to be recognized as an LU virtually and makes the software resources in the LU such as OSs and APs usable. For example, an LU  1415  which is the GI in which the data commonly used by the VMs such as OSs and software such as APs can be recognized virtually as an LU  1414  in the storage apparatus  1400  and as an LU  1514  in the storage apparatus  1500 . 
     If a read request is transmitted to the LU  1514 , the storage apparatus  1500  reads the data of required address in the storage apparatus  1400  and transmits the read data to the request source. 
     As explained above, there is an effect that, even if the LU  1415  stored in the storage apparatus  1400  is migrated to the storage apparatus  1500 , by using the storage virtualization function, the relationship between the LU  1414  and the LU  1415  has only to be switched to the relationship with the LU  1415  migrated from the LU  1514 , which does not affect the higher-level hosts and storages. 
     The present embodiment sets the purpose of sharing the GI which is the LU which a plurality of VMs such as OSs and applications commonly utilize among a plurality of storages. Therefore, by creating the LU  1415  which is the GI into the LU  1414  and the LU  1514  for the storage apparatuses  1400  and  1500  by the storage virtualization function, the same GI can be utilized among a plurality of storages. 
     At this time, by converting the LU  1414  and the LU  1514  into the common LU identifier (the identifier  13001  named G 1 ), the common GI can be utilized in a plurality of storages. The management table of the LU identifiers common to these LUs  1414  and  1514  is the LU number table  4005 . 
     The identifier defined as “G 1 ” by the GLOBAL_LU  10001  in the LU number table  4005  is defined as the LU  1414  of the storage apparatus  1400  and the LU  1514  of the storage apparatus  1500  in the STORAGE  10002  and the LOCAL_LU  10003 . 
     Furthermore, the snapshot configuration information tables  4004  defined in  FIG. 9  and  FIG. 10  indicate that, with the identifier “G 1 ” of the LU  13001  which is the GI as the parent, the differential LU  1411  and the differential LU  1412  are created in the storage apparatus  1400  while the differential LU  1511  and the differential LU  1512  are created in the storage apparatus  1500 . 
     It should be noted that the present embodiment is not intended to limit the existence of the LU number table  4005  in the management computer  1100 . For example, it may also be permitted that the LU number table  4005  is saved in the storage apparatus  1400 , the FC switch  1200 , and the computer  1000 . 
       FIG. 13  shows a conceptual diagram of the procedure and the configuration for converting a created VM into a GI (golden image). For example, if a VM  1010  stored in the storage device  1006  of the computer  1000  is converted into a GI, an LU in which a VHDD used by the VM  1010  is stored is copied or migrated to the storage apparatus  1400  and the LU  1415  is created. Furthermore, the virtual LU  1414  and the virtual LU  1514  are created from the LU  1415  by using the storage virtualization function. 
     A differential LU  1411  is created in the storage apparatus  1400  by the WritableSnapshot technology with the virtual LU  1414  as the parent LU. The computer  1000  which is running the VM  1010  makes the differential LU  1411  and the VHDD  1011  correspond to each other, and the VM  1010  can use the OSs and applications before the conversion into GI by using the VHDD file stored in the corresponding differential LU  1411 . 
       FIG. 14  shows a flow of converting a created VM into a GI and creating a VM in the present embodiment. In case of converting a created VM into a GI, the administrator transmits a request for displaying a request for converting a VM specified on the GI management screen ( FIG. 16 ) into a GI to the management computer  1100  (step  14001 ). The GI management program  3001  in the management computer  1100  which receives the request transmits a virtual LU creation request to the storage apparatus which is the creation destination of the GI specified by the administrator (step  14002 ). The storage management program  4002  of the storage apparatus  1400  which received the request creates an LU  1415  in the storage apparatus  1400  and creates a virtual LU  1414  whose actual LU is the LU  1415  (step  14003 ). 
     Next, the GI management program  3001  transmits a VHDD copy request to the computer  1000  and the storage apparatus  1400  (step  14004 ). The storage management program  4002  of the storage apparatus  1400  which receives the request migrates or copies the VHDD in the computer  1000  which the VM to be converted into an administrator-specified GI utilizes to the actual LU  1415  (step  14005 ). 
     At this time, the GI management program  3001  creates a record setting “ 1400 ” for the EX_STORAGE  7001 , “ 1414 ” for the EX_LU  7002 , “ 1400 ” for the IN_STORAGE  7003 , and “ 1415 ” for the IN_LU  7004  in the storage virtualization configuration information table  4003  ( FIG. 7 ) in the storage apparatus  1400 . At the same time, the program creates a record setting “G 1 ” for the GLOBAL_LU  10001 , “ 1400 ” for the STORAGE  10002 , “ 1414 ” for the LOCAL_LU  10003 , and “TRUE” for the GI  10004  in the LU number table  4005  ( FIG. 11 ). 
     Next, the GI management program  3001  transmits a differential LU creation request to the storage apparatus  1400  (step  14006 ). The storage management program  4002  of the storage apparatus  1400  which receives the request creates a differential LU  1411  which uses the pool  1413  (step  14007 ). 
     At this time, the GI management program  3001  creates a record setting “ 1400 ” for the STORAGE  9001 , “G 1 ” for the PARENT_LU  9002 , “ 1411 ” for the CHILD_LU  9003 , and “ 1413 ” for the POOL  9004  to the snapshot configuration information table  4004  ( FIG. 9 ) of the storage apparatus  1400 . 
     Next, the GI management program  3001  transmits a VM configuration change request to the computer  1000  (step  14008 ). The computer  1000  which receives the request mounts the created differential LU  1411  (makes the LU correspond) to the VHDD (step  14009 ) and mounts the VHDD (makes the VHDD correspond) to the VM  1010  (step  14010 ). 
     Subsequently, the computer  1000  deletes the VHDD of the VM specified for conversion into the GI (step  14011 ). At this time, in the record whose VM  6001  is “ 1010 ” in the VM configuration information table  2004  ( FIG. 6 ) in the computer  1000 , the program changes the HOST_LU  6002  to “ 1011 ”, the LU  6003  to “ 1411 ”, and the VHDD  6004  to “ 1021 ”. 
     Next, the GI management program  3001  in the management computer  1100  updates the contents of the GI management screen  16000  ( FIG. 16 ) (step  14012 ). In case of creating a VM from a GI, the administrator transmits a VM creation request specified on the GI management screen  16000  to the management computer  1100  (step  14013 ). The GI management program  3001  of the management computer  1100  which received the request performs the VM creation processing (step  14014 ) and updates the contents of the GI management screen  16000  (step  14015 ). 
       FIG. 15  shows a processing flow of the VM creation processing. The GI management program  3001  in the management computer  1100  searches the snapshot configuration information table  4004  for a storage apparatus in which a snapshot pool for storing the data of the specified differential LU exists (step  15001 ). 
     The GI management program  3001  searches the LU number table  4005  for the virtual LU specified as a GI in the searched storage apparatus (step  15002 ). Sub-sequently, the GI management program  3001  determines whether a plurality of virtual LUs exist in the storage apparatus or not (step  15003 ). If the result of the determination at the step  15003  is false (branches to “N”), the GI management program  3001  selects the only virtual LU (step  15005 ). 
     If the result of the determination at the step  15003  is true (branches to “Y”), the GI management program  3001  selects the most appropriate virtual LU from the plurality of virtual LUs (step  15004 ). If a plurality of virtual LUs exist in the storage apparatus by being copied from the GI for load distribution, the GI management program  3001  selects a virtual LU whose load is small (for example, the number of differential LUs created based on the virtual LU is small, the number of VMs utilizing the differential LUs is small, the I/O amount for the differential LUs is small, or the amount of differential data stored in the snapshot pool for the differential LUs is small). 
     Next, the GI management program  3001  creates a differential LU by using the selected virtual LU (step  15006 ), mounts the created differential LU (step  15007 ), and creates a VM by using a VHDD stored in the mounted differential LU (step  15008 ). The VM can be created by the above-mentioned processing. 
       FIG. 16  shows the configuration of the GI management screen  16000 . By the GI management screen  16000 , the administrator can ascertain the logical configuration of which differential LU is created from which GI (which can be displayed by selecting a tab  16001  named Physical view in the present embodiment) and the physical configuration. 
     Furthermore, by specifying a VM and pressing the Convert GI button  16002 , the VM can be converted into a GI. Furthermore, by specifying a GI and a pool and pressing a Create VM button  16003 , the VM duplicated from the GI can be created. 
     By the embodiment explained above, a GI can be shared as a virtual LU, and therefore the capacity efficiency of the storage apparatus can be improved. Furthermore, since it is not necessary to copy the GI at the time of creating a VM, the speed of creating the VM can be improved. 
     &lt;Embodiment 2&gt; 
     An example of sharing a GI of the storage apparatus  1400  used by the computer  1000  and being able to managing the storage apparatuses  1400  and  1500  as one storage apparatus in Embodiment 2 of the present invention is explained below. 
       FIG. 17  shows a conceptual diagram of the present embodiment. In the present embodiment, a record of identifiers D 1 , D 2 , D 3 , and D 4  for making the differential LUs  1411 ,  1412 ,  1511 , and  1512  created by the snapshot technology unique between the storage apparatuses  1400  and  1500  is registered in the LU number table  4005 . By these identifiers D 1 , D 2 , D 3 , and D 4 , the differential LUs can be uniquely identified among a plurality of storage apparatuses. 
     Furthermore, a record of identifiers P 1  and P 2  for making the pools  1413  and  1513  which are the data storage destinations of the differential LUs unique between the storage apparatuses  1400  and  1500  is registered in the LU number table  4005 . By the identifiers P 1  and P 2 , the pools can be uniquely identified among a plurality of storage apparatuses. 
     By the present embodiment, a GI can be shared among a plurality of storage apparatuses, and therefore the capacity efficiency of the storage apparatus can be improved. Furthermore, since it is not necessary to copy the GI at the time of creating a VM, the speed of creating the VM can be improved. Furthermore, the storage apparatuses  1400  and  1500  can be managed as a single apparatus. 
     &lt;Embodiment 3&gt; 
     A case of directly sharing a GI of the storage apparatus  1400  used by the computer  1000  in Embodiment 3 of the present invention is explained below. 
       FIG. 18  shows a conceptual diagram of the present embodiment. In the present embodiment, a record of identifiers D 1 , D 2 , D 3 , and D 4  for making the differential LUs  1411 ,  1412 ,  1511 , and  1512  created by the snapshot technology unique between the storage apparatuses  1400  and  1500  is registered in the LU number table  4005 . By these identifiers D 1 , D 2 , D 3 , and D 4 , the differential LUs can be uniquely identified among a plurality of storage apparatuses. 
     Furthermore, a record of identifiers P 1  and P 2  for making the pools  1413  and  1513  which are the data storage destinations of the differential LUs unique between the storage apparatuses  1400  and  1500  is registered in the LU number table  4005 . By the identifiers P 1  and P 2 , the pools can be uniquely identified among a plurality of storage apparatuses. 
     Furthermore, to the differential LUs  1411 ,  1412 ,  1511 , and  1512 , instead of making the virtual LUs created by the storage virtualization function as parent LUs which create snapshots correspond, the LU  1415  which is a GI is directly made to correspond. Therefore, a record setting “ 1415 ” instead of “G 1 ” for the PARENT_LUs  9002  and “ 1411 ”, “ 1412 ”, “ 1511 ”, and “ 1512 ” for the CHILD_LUs  9003  in the snapshot configuration information tables  4004  ( FIG. 9  and  FIG. 10 ) is generated. 
     By the present embodiment, the GI can be directly shared, and therefore the capacity efficiency of the storage apparatus can be improved. Furthermore, since it is not necessary to manage the relationship among GIs, the management cost can be reduced. 
     The three embodiments are explained above about GI creation and sharing among storage apparatuses. However, the present invention is not limited to the three embodiments. For example, it is evidently possible to share a GI created in the storage apparatus by maintaining the management tables such as the LU number table  4005  in the host, the network switch such as the FC switch, and others instead of the storage apparatus by a virtual sharing method. 
     Industrial Applicability 
     The present invention can be applied to information processing apparatuses such as large-scale computers, servers, and personal computers. 
     Reference Signs List 
       1000  Computer 
       1001  FC_I/F 
       1002  CPU 
       1003  Input device 
       1004  Output device 
       1005  IP_I/F 
       1006  Storage device 
       1007  Memory 
       1010  VM 
       1011 ,  1012 ,  1013 ,  1014  HOST_LU 
       1021 ,  1022 ,  1023 ,  1024  VHDD 
       1050  VHDD file 
       1100  Management computer 
       1101  FC_I/F 
       1102  CPU 
       1103  Input device 
       1104  Output device 
       1105  IP_I/F 
       1106  Storage device 
       1107  Memory 
       1200  FC switch 
       1201  CPU 
       1202  Memory 
       1203  FC_I/F 
       1204  IP_I/F 
       1300  IP switch 
       1301  CPU 
       1302  Memory 
       1303  IP_I/F 
       1400  Storage apparatus 
       1401  FC_I/F 
       1402  IP_I/F 
       1403  Controller 
       1404  CPU 
       1405  Memory 
       1406 ,  1407  HDD 
       1411 ,  1412 ,  1413 ,  1414 ,  1415  LU 
       1500  Storage apparatus 
       1501  FC_I/F 
       1502  IP_I/F 
       1503  Controller 
       1504  CPU 
       1505  Memory 
       1506 ,  1507  HDD 
       1511 ,  1512 ,  1513 ,  1514  LU 
       2001  Data input/output program 
       2003  VM management program 
       2004  VM configuration information table 
       3001  GI management program 
       4001  Data processing program 
       4002  Storage information management program 
       4003  Storage virtualization configuration information table 
       4004  Snapshot configuration information table 
       4005  LU number table 
       7001  EX_STORAGE 
       7002  EX_LU 
       7003  IN_STORAGE 
       7004  IN_LU 
       9001  STORAGE 
       9002  PARENT_LU 
       9003  CHILD_LU 
       9004  POOL 
       10001  GLOBAL_LU 
       10002  STORAGE 
       10003  LOCAL_LU 
       13001  G 1   
       16001  Tab 
       16002  Convert GI button 
       16003  Create VM button