Configuration management apparatus and method

To migrate a configuration that an old storage device has to a new storage device.A new storage device 4000 obtains a configuration of an old storage device 5000, by using a migration manager PG 4345, and prepares a logical volume definition of the new storage device 4000 on the basis of a logical volume definition which is included in the configuration. Also, on the basis of a cache allocation definition included in the configuration of the old storage device 5000 and cache capacity of the new storage device 4000, a cache allocation definition of the new storage device 4000 is prepared. Also, on the basis of a port bandwidth allocation definition included in the configuration of the old storage device 5000 and bandwidth capacity of a port of the new storage device 4000, a port bandwidth allocation definition of the new storage device 4000 is prepared. And, the logical volume definition, the cache allocation definition and the port bandwidth allocation definition which were prepared as above are set up in a configuration of the new storage device 4000.

BACKGROUND OF THE INVENTION

The present invention relates to a technology which manages a configuration such as cache allocation, port bandwidth management and so on in a storage device.

As a mode which implements a new storage device in a computer system which has a server (host) and a storage device, there are an implementation mode which migrates all data in an old storage device to the new storage device and removes the old storage device, and an implementation mode which adds the new storage device with leaving over the old storage device and consolidates a storage area of the old storage device with the new storage device by a virtual volume.

As the former implementation mode, there is a data migration technology described in WO97/09676 (hereinafter, referred to as Patent Document 1). In this technology, a new storage device and an old storage device are connected, and a data migration process is carried out during operation of a system, and thereby, down time of the system for the data migration work is shortened. Concretely, a host computer and the new storage device are connected, and furthermore, the new storage device and the old storage device are connected. The new storage device copies data in an old storage device to its own storage area, The new storage device accepts an access request to data from the host computer even in a copy working state, and if the data exists in an own storage area, the data is accessed. In case that it does not exist in the own storage area, the data is firstly copied from the old storage device, and then, accessed. By such operation of the new storage device, it becomes possible to continuously operate the system even in a data migration working state.

Also, as the latter mode, there is a virtual volume technology described in United Kingdom Patent Laid-Open Publication No. 2351375 specification (hereinafter, referred to as Patent Document 2). In this technology, by a storage server having the following two functions, volumes assigned to a host are consolidated by virtual volumes. Function 1; a function which manages storage areas of each storage device which was connected to the storage server, and generates a volume pool. Function 2: a function which generates virtual volumes on the basis of one or more storage areas in the volume pool, and redirects I/O accesses to the virtual volumes from the host to corresponding storage areas, and responds to an I/O access from the host. Hereinafter, the storage server having such functions is referred to as a virtualization device.

SUMMARY OF THE INVENTION

The technology described in Patent Document 1 relates to data migration from the old storage device to the new storage device, and does not consider to take over a configuration in the old storage device, to the new storage device. Usually, in the old storage device, a configuration used for volume access performance improvement such as cache allocation, port bandwidth allocation management, is set up by a system administrator at the time of construction of a computer system. In case that these setups are not taken over to the new storage device, there may occur such a matter that an access performance of a volume of the new storage device after migration is lowered than that of a volume of the old storage device.

Similarly, the technology described in Patent Document 2, does not consider to take over a configuration set in the old storage device to the virtualization device. Incase that a configuration of the old storage device is not taken over to the virtualization device, there may occur such a matter that an access performance of a virtual volume provided by the virtualization device is lowered than an access performance in case of directly accessing to a volume of the old storage device which corresponds to the virtual volume. On one hand, when the virtualization device takes over a configuration of the old storage-device, a resource such as cache of the virtualization device is consumed in large amounts on behalf of the old storage device, and there may occur such a matter that a resource assigned to another new storage device comes short.

The present invention takes the above-described circumstance into consideration, and the purpose of the present invention is to provide the technology which migrates a configuration of an old storage device to a new storage device.

Also, another purpose of the present invention is to provide the technology which migrates a configuration of an old storage device to a virtual volume provided by a virtualization device, in consideration of a resource such as cache etc. of the virtualization device.

In order to solve the above-described problems, the present invention collects a configuration managed in a first storage device (an old storage device), and has it reflected to a second storage device (a new storage device) which is a migration destination of a logical volume of the first storage device or a virtualization device which manages the logical volume of the first storage device by a virtual volume which is a virtual logical volume.

For example, one aspect of a configuration management method of the present invention, in a computer system having a first storage device, a second storage device which becomes a migration destination of a logical volume of the first storage device, and a server which can transmits an access request to the first and second storage devices through a network sets up a configuration in the second storage device.

And, the configuration management method has a first step which obtains a configuration including logical volume definition set up in the first storage device,

a second step which prepares logical volume definition of a logical volume of the second storage device which becomes a migration destination of the logical volume of the first storage device, on the basis of logical volume definition which is included in the configuration obtained in the first step,

in case that the cache allocation definition is included in the configuration obtained in the first step, a third step which prepares cache allocation definition of the logical volume of the second storage device which becomes a migration destination of the logical volume of the first storage device on the basis of the cache allocation definition of the first storage device and capacity of a cache of the second storage device

in case that the port bandwidth allocation definition is included in the configuration obtained in the first step, a fourth step which prepares port bandwidth allocation definition of a port of the second storage device, which is used for an access to the logical volume of the second storage device which becomes a migration destination of the logical volume of the first storage device, on the basis of the port bandwidth allocation definition of the first storage device and bandwidth capacity of a port of the second storage device, and

a fifth step which sets up, as a configuration in the second storage device, the logical volume definition prepared in the second step, the cache allocation definition in case that the cache allocation definition is prepared in the third step, and the port bandwidth allocation definition in case that the port bandwidth allocation definition is prepared in the fourth step.

Also, another aspect of the configuration management method of the present invention, in a computer system having a first storage device, a virtualization device which manages the logical volume of the first storage device by a virtual volume which is a virtual logical volume, and a server which can transmits an access request to the first storage devices and the virtualization device through a network, sets up a configuration in the virtualization device.

And, the configuration management method has a first step which obtains a configuration including logical volume definition set up in the first storage device,

a second step which prepares logical volume definition of the virtual volume of the virtualization device which realizes virtualization of the logical volume of the first storage device, on the basis of logical volume definition which is included in the configuration obtained in the first step,

in case that the cache allocation definition is included in the configuration obtained in the first step, a third step which prepares cache allocation definition of the virtual volume of the virtualization device which realizes virtualization of the logical volume of the first storage device, on the basis of the cache allocation definition of the first storage device and capacity of a cache of the virtualization device,

in case that the port bandwidth allocation definition is included in the configuration obtained in the first step, a fourth step which prepares port bandwidth allocation definition of a port that the virtualization device has, which is used for an access to the virtual volume of the virtualization device which realizes virtualization of the logical volume of the first storage device, on the basis of the port bandwidth allocation definition of the first storage device and bandwidth capacity of a port of the virtualization device, and

a fifth step which sets up, as a configuration in the virtualization device, the logical volume definition prepared in the second step, the cache allocation definition in case that the cache allocation definition is prepared in the third step, and the port bandwidth allocation definition in case that the port bandwidth allocation definition is prepared in the fourth step.

Here, in the above-described each aspect, the third step may prepare the cache allocation definition of the virtual volume of the second storage device or the virtualization device, in such a manner that a cache allocation amount of the logical volume of the second storage device which is a migration destination of the logical volume of the first storage device or the virtual volume of the virtualization device which realizes virtualization of the logical volume of the first storage device becomes the same capacity as a cache allocation amount of the logical volume of the first storage device, in case that the cache allocation amount of the logical volume of the first storage device, which is specified by the cache allocation definition included in the configuration obtained in the first step, is smaller than remaining capacity to which the logical volume is not allocated out of total capacity of the cache of the second storage device or the virtualization device.

Also, the fourth step may prepare the port bandwidth allocation definition of a port of the second storage device or the virtualization device, which is used for an access to the logical volume of the second storage device which is a migration destination of the logical volume of the first storage device or the virtual volume of the virtualization device which realizes virtualization of the logical volume of the first storage device, in such a manner that a port bandwidth allocation amount, which is used for an access to the logical volume of the second storage device which is a migration destination of the logical volume of the first storage device or the logical volume of the virtualization device which realizes virtualization of the logical volume of the first storage device, becomes the same capacity as a port bandwidth allocation amount which is used for an access to the logical volume of the first storage device, in case that the port bandwidth allocation amount used for an access to the logical volume of the first storage device, which is specified by the port bandwidth allocation definition which is included in the configuration obtained in the first step, is smaller than remaining bandwidth capacity which is not allocated to an access to the logical volume, out of total bandwidth capacity of a port of the second storage device or the virtualization device.

According to the present invention, the configuration of the old storage, such as cache allocation, port bandwidth allocation management and so on, is set up in the new storage device or the virtualization device. On this account, it becomes possible to have various setups for volume access performance improvement applied to the old storage device validated even after a configuration of a computer system is changed.

In addition, other features of the present invention will be clarified by descriptions of this specification and accompanying drawings.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Hereinafter, computer systems to which embodiments of the present invention are applied will be described.

First Embodiment

A computer system of a first embodiment of the present invention will be described by way of taking such a case, as an example, that a storage area network between a host and a storage device is built up on a Fibre Channel network.

(1) System Configuration

FIG. 1is a schematic diagram of the computer system to which the first embodiment of the present invention is applied.

As shown in the figure, the computer system of this embodiment is configured such that a management terminal1000, a Fibre Channel switch (FC SW)3000which configures a storage area network, an existing old storage device5000, a new storage device4000to be newly implemented, and a server2000which is a host computer are mutually connected by a management network6000such as Ethernet (trademark) and so on.

The server2000, the FC SW3000, the new storage device4000, and the old storage device5000have, management agent PG (program)2310,3310,4310,5310, respectively. The new storage device4000further has a migration manager PG4345. By this migration manager PG4345, the new storage device4000obtains a configuration such as port bandwidth allocation, cache allocation and so on, from each device2000,3000,4000,5000executing the management agent PG2310,3310,4310,5310, and carries out a migration process which will be described later. In addition, the migration manager PG4345may be possessed by the old storage device5000. Also, the configuration may be obtained through the storage area network.

The management terminal1000is a terminal used for an administrator etc. of a computer system to input various instructions for the migration manager PG4345, and to inform execution results of the migration manager PG4345and the management agent PGs2310,3310,4310,5310to a system administrator etc. of the computer system.

FIG. 2is a schematic diagram of the management terminal1000shown inFIG. 1.

As shown in the figure, the management terminal1000has a CPU1100, a memory1200, a storage subsystem1300, a management port1400used for connecting to a management network6000, an output device1500such as display, an input device1600such as a keyboard, and a bus1700which connects these respective devices mutually. In the storage subsystem1300, an operation PG1310is stored. The CPU1100loads the operation PG1310to the memory1200and executes it, and thereby, accepts various instructions for the migration manager PG4345from an administrator etc. of a computer system through the input device1600, and transmits them from the management port1400. Also, through the management port1400, the CPU100receives execution results of the migration manager PG4345and the management agent PGs2310,3310,4310,5310, and outputs them to the output device1500.

The server2000communicates with the storage devices4000,5000by using a communication program defined on a Fibre Channel protocol that the Fibre Channel network adopts, for example, a standard SCSI protocol. By this, data stored in the storage devices4000,5000is read and written. In addition, inFIG. 1, one unit of the server2000is shown, but the number of servers2000may be plural.

FIG. 3is a schematic diagram of the server2000shown inFIG. 1.

As shown in the figure, the server2000has a CPU2100, a memory2200, a storage subsystem2300, a management port2400used for connecting to a management network6000, an I/O port2600used for connecting to the Fibre Channel network (FC SW3000), and a bus2700which connects these respective devices mutually. InFIG. 3, the I/O port2600is one, but maybe a plurality of I/O ports2600. In the storage subsystem2300, a management agent PG2310and a path manager PG2320are stored. The CPU2100loads the management agent PG2310to the memory2200and executes it, and thereby, communicates with the migration manager PG4345and the operation PG1310through the management network6000, and transmits and receives a configuration of the server2000. Also, the CPU2100loads the path manager PG2320to the memory2200and executes it, and thereby, controls an access path to a logical volume that the server2000manages.

The FC SW3000has a plurality of I/O ports used for connecting to each I/O port of the server2000, the new storage device4000, and the old storage device5000, and has a communication function between these pluralities of I/O ports. InFIG. 1, one unit of the FC SW3000is shown, but the number of FC SW3000may be plural.

FIG. 4is a schematic diagram of the FC SW3000shown inFIG. 1.

As shown in the figure, the FC SW3000has a CPU3100, a memory3200, a storage subsystem3300, a management port3400used for connecting to the management network6000, a plurality of I/O ports3600used for connecting to each I/O port of the server2000, the new storage device4000and the old storage device5000, a controller3800which carries out switching control of communication between the plurality of the I/O ports3600, and a bus3700which connects these respective devices mutually. In the storage subsystem3300, the management agent PG3310and an SW (switch) control PG3320are stored. The CPU3100loads the management agent PG3310to the memory3200and executes it, and thereby, communicates with the migration manager PG4345and the operation PG1310through the management network6000, and transmits and receives a configuration of the FC SW3000. Also, the CPU2100loads the SW control PG3320to the memory2200and executes it, and thereby, has the controller3800carried out switching control of communication between the plurality of I/O ports3600. Also, it provides a zoning function which limits communication to inside of a group (zone) of specific I/O ports3600.

The new storage device4000is a storage device which is newly implemented to a computer system. In configuration of this new storage device4000, the configuration which was set up in the old storage device5000is reflected.

FIG. 5is a schematic diagram of the new storage device4000shown inFIG. 1.

As shown in the figure, the new storage device4000has a CPU4100, a memory4200, a storage subsystem4300, a management port4400used for connecting to the management network6000, a cache memory4500, at least one I/O port4600used for connecting to the Fibre Channel network (FC SW3000), at least one disk drive4900, a disk controller4800, and a bus4700which connects these respective devices mutually. The disk controller4800controls a data transfer process to a logical volume which stores data. Here, the logical volume is a logical storage area configured by at least one disk drive4900. The cache memory4500is utilized to cache data which is stored in the disk drive4900, in order to have a data access request improved from the server2000. In addition, the cache memory4500may be realized by utilizing a part of a storage area of the memory4200.

In the storage subsystem4300, the management agent PG4310, the port management TL (table)4315in which management information of an I/O port of an own storage device is registered, the cache management TL4320in which management information of a cache memory of an own storage device is registered, the logical volume management TL4325in which management information of a logical volume of an own storage device is registered, the path management TL4330in which management information of a path which logically connects a logical volume and an I/O port in order to provide the logical volume of an own storage device to the server2000is registered, the cache allocation management TL4335in which management information of cache allocation for each logical volume in an own storage device is registered, the port bandwidth allocation management TL4340in which management information which is used to control, at an I/O port, a data bandwidth when the server2000accesses to a logical volume is registered, the migration manager PG4345, the device detection list4350in which attribute information of a device whose configuration is detected by the migration manager PG4345is registered, the cache allocation migration TL4355which is used in case that the migration manager PG4345has cache allocation set up in the old storage device5000taken over to the new storage device4000, the migration destination remaining capacity management TL4360that the migration manager PG4345uses for management of unallocated cache of the new storage device4000, the port bandwidth allocation migration TL4365which is used in case that the migration manager PG4345has port bandwidth which is set up in the old storage device5000taken over to the new storage device4000, a path migration TL4370which is used in case that the migration manager PG4345migrates a path to the old storage device5000to the new storage device4000, a migration destination port bandwidth remaining capacity management TL4375that the migration manager PG4345uses for management of port bandwidth of the new storage device4000, and the storage control PG4380, are stored.

In addition, a configuration of the old storage device5000as a storage device which has been already implemented to the computer system is basically the same as the new storage device4000shown inFIG. 5. In this regard, however, in the old storage device5000, the migration manager PG4345, the device detection list4350, the cache allocation migration TL4355, the migration destination cache remaining capacity management TL4360, the port bandwidth allocation migration TL4365, and the migration destination port bandwidth remaining capacity management TL4375, are unnecessary. In addition, hereinafter, it will be described by setting up reference numerals of a CPU, memory, storage subsystem, management port, cache memory, I/O port, disk drive, disk controller and bus that the old storage device5000has, as CPU5100, memory5200, storage subsystem5300, management port5400, cache memory5500, I/O port5600, disk drive5900, disk controller5800, and bus7700, respectively. Also, it will be described by setting up reference numerals of management agent PG, port management TL, cache management TL, logical volume management TL, bus management TL, cache allocation management TL, port bandwidth allocation management TL, bus migration TL, and storage control PG which are stored in the storage subsystem5300as management agent PG5310, port management TL5315, cache management TL5320, logical volume management TL5325, bus management TL5330, cache allocation management TL5335, port bandwidth allocation management TL5340, bus migration TL5370, and storage control PG5380, respectively.

In the storage devices4000,5000, the CPUs4100,5100load the storage control PGs4380,5380to the memories4200,5200and execute them, and thereby, carries out allocation of I/O port etc. to each logical volume, control of the disk controllers4800,5800and so on. Also, the CPUs4100,5100load the management agent FGs4310,5310to the memories4200,5200and execute them, and thereby, communicate with the migration manager PG4345and the operation PG1310, and transmit and receive a configuration of the storage devices4000,5000. Furthermore, in the new storage device4000, the CPU4100loads the migration manager PG4345to the memory4200and executes it, and thereby, obtains a configuration such as port bandwidth, cache allocation and so on, from the management agent PGs2310,3310,4310,5310from each device, and carries out a migration process which will be described later.

In the port management TLs4315,5315, as described above, management information of each I/O port4600,5600of own storage device4000,5000is registered.

FIG. 6is a view for explaining configurations the port management TLs4315,5315. As shown in the figure, one record is formed by having a field43151for a registration of a port ID which is an identifier of an I/O port in an own storage device, a field43152for a registration of a port WWN (World Wide Name) which is an identifier of an I/O port in the Fibre Channel network, a field43153for a registration of SCSI ID which is an identifier for uniquely identifying an I/O port in a SCSI protocol which is a communication program defined on the Fibre Channel protocol that the Fibre Channel network adopts, a field43154for a registration of Fibre Channel bandwidth capacity of an I/O port, and a field43155for a registration of Fibre Channel bandwidth remaining capacity of an I/O port. Here, the Fibre Channel bandwidth capacity designates a bandwidth of the Fibre Channel network allocated to an I/O port. Also, the Fibre Channel bandwidth remaining capacity designates a remaining capacity of the Fibre Channel bandwidth which can be further allocated to an I/O port. In addition, an example ofFIG. 6shows the port management TL5315of the old storage device5000and each record of four I/O ports5600“port-b1”, “port-b2”, “port-b3”, “port-b4” of the old storage device5000is registered therein.

In the cache management TLs4320,5320, as described above, management information of the cache memories4500,5500of own storage devices4000,5000have is registered.

FIG. 7is a view for explaining configurations of the cache management TLs4320,5320. As shown in the figure, a record is formed by having a field43201for a registration of total capacity of a cache memory of an own storage device and a field43202for a registration of remaining capacity which is not allocated to a logical volume out of total capacity of a cache memory of an own storage device. An example ofFIG. 7shows the cache management TL5320of the old storage device5000, and shows that the cache memory4500of 10 GB is mounted on the old storage device5000, and a logical volume unallocation area of 7.5 GB exists in the cache memory4500.

In the logical volume management TLs4325,5325, as described above, management information of logical volumes of own storage devices4000,5000is registered.

FIG. 8is a view for explaining configurations of the logical volume management TLs4325,5325. As shown in the figure, a record is formed by having a field43251for a registration of a logical volume ID which is an identifier of a logical volume in an own storage device, a filed43252for a registration of a list of path IDs which uniquely identify paths connected to a logical volume, a field43253for a registration of capacity of a logical volume, and a field43254for a registration of physical data arrangement information (parity group) of a logical volume. An example ofFIG. 8shows the logical volume management TL5325of the old storage device5000, and each record of three logical volumes “vb1”, “vb2”, “vb3” of the old storage device5000is registered therein.

In the bus management TLs4330,5330, as described above, management information of a path connected to a logical volume of an own storage device, is registered.

FIG. 9is a view for explaining configurations of the path management TLs4330,5330. As shown in the figure, a record is formed by having a field43301for a registration of a path ID which is an identifier of a path in an own storage device, a field43302for a registration of a port ID of an I/O port allocated to a path, a field43303for a registration of a LUN (Logical Unit Number) which indicates a SCSI logical unit number allocated to a path, in a SCSI protocol which is a communication program defined on the Fibre Channel protocol that the Fibre Channel network adopts, and a field43304for a registration of a logical volume ID of a logical volume allocated to a path. An example ofFIG. 9shows the path management TL5330of the old storage device5000, and each record of four paths “path-b1”, “path-b2”, “path-b3”, “path-b4” of the old storage device5000is registered therein.

In the cache allocation management TLs4335,5335, as described above, management information of cache allocation to a logical volume of an own storage device, is registered.

FIG. 10is a view for explaining configurations of the cache allocation management TLs4335,5335. As shown in the figure, a record is formed by having a field43351for a registration of a logical volume ID of a logical volume of a cache allocation object, a field43352for a registration of a cache allocation amount which is capacity of a cache allocated to a logical volume, a filed43353for a registration of its resident capacity and resident area, in case that a logical volume has a part of a data area stayed resident in a cache. Here, it is assumed that a cache resident area is indicated by an address LBA (Logical Block Addressing) with block unit in a logical volume. In addition, these cache allocation management TLs4335,5335are not necessary in a storage device which does not have a cache allocation function and a cache resident function. Also, the cache allocation function and the cache resident function are not to be necessarily utilized by all logical volumes. An example ofFIG. 10shows the cache allocation management TL5335of the old storage device5000. To the logical volume “vb1”, a cache of 1 GB is allocated, and 300 MB therein of LBA “0” to “153600” is utilized for cache resident. To the logical volume “vb2”, a cache is not allocated, but 500 MB of LBA “0”, to “256000” is utilized for cache resident. And, to the logical volume “vb3”, a cache of 1 GB is allocated, but cache resident is not carried out.

In the port bandwidth allocation management TLs4340,5340, as described above, management information for controlling a data bandwidth by an I/O port, when the server2000accesses to a logical volume of an own storage device.

FIG. 11is a view for explaining configurations of the port bandwidth allocation management TLs4340,5340. As shown in the figure, a record is formed by having a field43401for a registration of a path ID of a path connected to an I/O port of a port bandwidth allocation object, a field43402for a registration of a port ID of an I/O port of a port bandwidth allocation object, and a field43403for a registration of a bandwidth allocated to an I/O port of a port bandwidth allocation object. In addition, these port bandwidth allocation management TLs4340,5340are not necessary in a storage device which does not have a bandwidth allocation function in which a data bandwidth is controlled at an I/O port. An example ofFIG. 11shows the port bandwidth allocation management TL5340of the old storage device5000, and to the path “path-b1” which utilizes the I/O port “port-b1”, a bandwidth of 100 MB/s is allocated, and to the path “path-b2” which utilizes the I/O port “port-b2” and the path “path-b3” which utilizes the I/O port “port-b3”, a bandwidth of 50 MB/s is allocated, respectively.

In the device detection list4350, as described above, attribute information of a device in which the migration manager PG4345detects a configuration, is registered.

FIG. 12is a view for explaining a configuration of the device detection list4350. As shown in the figure, a record is formed by having a field43501for a registration of a detection object ID which is an identifier of a device as an object to be detected, a field43502for a registration of a type of the device as an object to be detected, a field43503for a registration of device information such as an actual manufacturer, a product name etc. of the device as an object to be detected, and a field43504for a registration of an IP address of the device as an object to be detected. In an example ofFIG. 12, attribute information of the old storage device5000is registered. The new storage device4000accesses to the old storage device5000through the management network6000, in accordance with the device detection list4345by the migration manager PG4345, and obtains a configuration of the old storage device5000. In addition, a system administrator etc. of a computer system registers a record of the device detection list4350by using the management terminal1000. Or, it is automatically registered by using a name service etc. that the Fibre Channel protocol provides.

In the cache allocation migration TL4355, as described above, information which is necessary for the migration manager PG4345to have cache allocation set up in the old storage device5000taken over to the new storage device4000, is registered.

FIG. 13is a view for explaining a configuration of the cache allocation migration TL4355. As shown in the figure, a record is formed by having a field43551for a registration of a processed flag showing whether definition to a migration destination (takeover destination) of cache allocation setup in the old storage device5000was processed or not, a field43558for a registration of migration source cache definition which is definition of cache allocation set up in a migration source, i.e., the old storage device5000, and a field43559for a registration of migration destination cache definition which is definition of cache allocation to be set up in a migration destination, i.e., the new storage device4000. In case that a record is registered in the cache allocation migration TL4355, in a processed flag registered in the field43551of the record, during the early stage, “yet” which indicates that the migration destination cache definition has not yet been prepared, is registered, and at such a stage that the migration destination cache definition was prepared in a migration process which will be described later, it is rewritten to a “done” flag which indicates that it has already prepared. The field43558for a registration of the migration destination cache definition has a content of the cache allocation management TL5335of the old storage device5000as sub-fields, and is formed by copying the content of the cache allocation management TL5335. In short, it has a sub-field43552for a registration of a logical volume ID of a logical volume of the old storage device5000, a sub-field43553for a registration of a cache allocation amount which is capacity of a cache to be allocated to a logical volume, a sub-field43554for a registration of its resident capacity and resident area in case that a logical volume has a part of a data area stayed resident in a cache. Also, the field43559for a registration of migration destination cache definition has a content of the cache allocation management TL4335registered in the new storage device4000in a migration process which will be described later as sub-fields, and is formed by copying the content of the cache allocation management TL4335. In short, it has a sub-field43555for a registration of a logical volume ID of a logical volume of the new storage device4000, a sub-field43556for a registration of a cache allocation amount which is capacity of a cache to be allocated to a logical volume, and a sub-field43557for a registration of its resident capacity and resident area, in case that a logical volume has a part of a data area stayed resident in a cache.

The cache remaining capacity management TL4360, as described above, is used for the migration manager PG4345to manage an unallocated cache of the new storage device4000.

FIG. 14is a view for explaining a configuration of the migration destination cache remaining capacity management TL4360. As shown in the figure, in the migration destination cache remaining capacity management TL4360, capacity of an unallocated cache to a logical volume of the new storage device4000which is a migration destination of a configuration is registered. The migration destination cache remaining capacity management TL4360is utilized to confirm whether total capacity of cache allocation shown by a plurality of prepared migration destination cache definitions exceeds remaining capacity of the cache memory4500of the new storage device4000which is a migration destination, in a step of a migration process which will be described later.

In the port bandwidth allocation migration TL4365, as described above, information required to have the migration manager PG4345taken over a port bandwidth set up in the old storage device5000to the new storage device4000, is registered.

FIG. 15is a view for explaining a configuration of the port bandwidth allocation migration TL4365. As shown in the figure, a record is formed by having a field43651for a registration of a processed flag indicating whether definition of port bandwidth allocation set up in the old storage device5000to a migration destination (takeover destination) has been already processed or not, a field43658for a registration of migration source port definition as definition of port bandwidth allocation set up in a migration source, i.e., the old storage device5000, and a field43659for a registration of migration destination port definition as definition of port bandwidth allocation set up in a migration destination, i.e., the new storage device4000. In case that a record is registered in the port bandwidth allocation migration TL4365, in a processed flag registered in the field43651of the record, during the early stage, “yet” which indicates that the migration destination port definition has not yet been prepared, is registered, and at such a stage that the migration destination port definition prepared in a migration process which will be described later, it is rewritten to a “done” flag which indicates that it has already prepared. The field43658for a registration of the migration source port definition has a content of the port bandwidth allocation management TL5340of the old storage device5000as sub-fields, and is formed by copying the content of, the port bandwidth allocation management TL5340. In short, it has a sub-field43652for a registration of a path ID of a path connected to an I/O port of the old storage device5000, a sub-field43653for a registration of a port ID of an I/O port of the old storage device5000, and a sub-field43654for a registration of a bandwidth allocated to an I/O port of the old storage device5000. Also, the field43659for a registration of migration destination port definition has a content of the port bandwidth management TL4340registered in the new storage device4000by a migration process which will be described later as sub-fields, and is formed by copying the content of the port bandwidth allocation management TL4340. In short, it has a sub-field43655for a registration of a path ID of a path connected to an I/O port of the new storage device4000, a sub-field43656for a registration of a port ID of an I/O port of the new storage device4000, and a sub-field43657for a registration of a bandwidth allocated to an I/O port of the new storage device4000.

In the path migration TL4370, as described above, information required for the migration manager PG4345to migrate a path to the old storage device5000to the new storage device4000, is registered.

FIG;16is a view for explaining a configuration of the path migration TL4370. As shown in the figure, a record is formed by having a field43701for a registration of a processed flag indicating whether definition to a migration destination (takeover destination) of a path of the old storage device5000has been already processed or not, a field43710for a registration of migration source path definition as definition of a path of a migration source, i.e., the old storage device5000, and a field43711for a registration of migration destination path definition as definition of a path of a migration destination, i.e., the new storage device4000. In case that a record is registered in the path migration TL4370, in a processed flag registered in the field43701of the record, during the early stage, “yet” which indicates that the migration destination path definition has not yet been prepared, is registered, and at such a stage that the migration destination path definition prepared in a migration process which will be described later, it is rewritten to a “done” flag which indicates that it has already prepared. The field43701for a registration of migration source path definition has a content of the path management TL5330of the old storage device5000as sub-fields, and is formed by copying the content of the path management TL5330. In short, it has a sub-field43702for a registration of a path ID of a path of the old storage device5000, a sub-field43703for a registration of a port ID of an I/O port allocated to the path, a sub-field43704for a registration of LUN allocated to the path, and a sub-field43705for a registration of a logical volume ID of a logical volume allocated to the path. Also, the field43711for a registration of migration destination path definition has a content of the path management TL4330registered in the new storage device4000by a migration process which will be described later as sub-fields, and is formed by copying the content of the path management TL4330. In short, it has a sub-field43705for a registration of a path ID of a path of the new storage device4000, a sub-field43706for a registration of a port ID of an I/O port allocated to the path, a sub-field43707for a registration of LUN which was allocated to the path, and a sub-field43709for a registration of a logical volume ID of a logical volume allocated to the path.

The migration destination port bandwidth remaining capacity management TL4375, as described above, is used for the migration manager PG4345to manage a port bandwidth of the new storage device4000.

FIG. 17is a view for explaining a configuration of the migration destination port bandwidth remaining capacity management TL4375. As shown in the figure, a record is formed by having a field43751for a registration of a port ID of an I/O port of the new storage device4000, and a field43752for a registration of an unallocated bandwidth in a logical volume among bandwidths of the I/O port. Each record is utilized to confirm whether total capacity of port bandwidth allocation indicated by a plurality of prepared migration destination port definitions exceeds remaining capacity of a bandwidth of the I/O port or not, in a step of a migration process which will be described later, as to each I/O port of the new storage device4000.

(2) Migration Process Procedure

In case that a logical volume of the old storage device5000is migrated to the new storage device4000, a migration process that a device in which the migration manager PG4345installed carries out, in order to have a configuration set up in the old storage device5000taken over to the new storage device4000, will be described. In addition, in the first embodiment of the present invention, the device in which the migration manager PG4345installed is the new storage device4000.

FIG. 18is, in the first embodiment of the present invention, a flow chart for explaining a migration process that a device in which a migration manager PG4345is installed carries out, in case of migrating a logical volume of the old storage device5000to the new storage device4000.

In addition, as a pre-work of the migration process shown inFIG. 18, a system administrator of the computer system connects the new storage device4000to the FC SW3000and the management network6000, respectively. And, he or she activates the new storage device4000. When the new storage device4000is activated, the CPU3100of the FC SW3000controls the controller3800by using the SW control PG3320, and detects link establishment of the I/O ports3600. Also, it transmits status change notification to the new storage device4000through the management network6000. After that, in accordance with the Fibre Channel standard, carried out are log-in from each of the I/O ports4600of the new storage device4000to the I/O ports3600of the FC SW3000, log-in to the I/O port2600of the server2000, and log-in to the I/O port5600of the old storage device5000. At this time, in the new storage device4000, information such as a WWN, a port ID and so on of a connection destination port to which each I/O port4600logged in, is to be held.

In the meantime, the CPU4100of the new storage device4000, when it receives the status change notification from the FC SW3000by the migration manager PG4345, obtains again network topology information from the FC SW3000through the management network6000. By this, it is detected that a network connection of the new storage device4000to the Fibre Channel network was established, and a flow shown inFIG. 18, is started.

Firstly, in the new storage device4000, the CPU4100transmits a configuration request to a detection object device indicated by attribute information registered in the device detection list4350, i.e., the old storage device5000, by using the management network6000. Accordingly, the CPU5100of the old storage device5000transmits a configuration of the old storage device5000by the management agent PG5310. Concretely, it transmits the port management TL5315, the cache management TL5320, the logical volume management TL5325, the path management TL5330, the cache allocation management TL5335, and the port bandwidth allocation management TL5340. By this, the CPU4100of the new storage device4000obtains a configuration from the old storage device5000, and stores it in the memory4200(step S1810).

Next, the CPU4100of the new storage device4000prepares logical volume definition of a logical volume of the new storage device4000which is a migration destination of a logical volume that the old storage device5000provides (step S1815). Concretely, on the basis of each record registered in the logical volume management TL5325obtained from the old storage device5000in the step S1810, formed is logical volume definition of the new storage device4000. Firstly, one of records is extracted from the logical volume management TL5325, and a record of a logical volume of the new storage device4000which becomes a migration destination of the logical volume that the extracted record indicates is newly registered in the logical volume management TL4325. This process is repeated until all records are detected from the logical volume management TL5325. Here, the number of path IDs registered in the field43252of a newly registered record is made to be same as the number of path IDs registered in the field53252of the extracted record. Also, capacity of a volume registered in the field43253of the newly registered record is made to be same as capacity of a volume registered in the field53253of the extracted record. Furthermore, correspondence relations of logical volume IDs and path IDs registered in the fields53251,53252of the extracted record and logical volume IDs and path IDs registered in the fields53251,53252of the newly registered record are stored in a memory etc. In this embodiment, it is assumed that the logical volume IDs “vb1”, “vb2”, “vb3” of the old storage device5000correspond to the logical volume IDs “va1”, “va2”, “va3” of the new storage device4000, respectively. Also, it is assumed that the path IDs “path-b1”, “path-b2”, “path-b3” to the old storage device5000correspond to the logical volume IDs “path-a1”, “path-a2”, “path-a3” of the new storage device4000.

Next, the CPU4100of the new storage device4000prepares cache allocation definition of a cache of the new storage device4000which is a migration destination of a logical volume that the old storage device5000provides (step S1820). This process is referred to as a cache allocation definition preparation process. Its detail will be described later. In addition, in case that a cache allocation function does not exist in the old storage device5000which is a migration source, for example, to the management terminal1000, outputted is such a message that, since the cache allocation function does not exists in the old storage device5000, cache allocation is not taken over to the new storage device4000, and a routine goes to a step S1825without carrying out the step S1820. Also, in case that a cache allocation function does not exists in the new storage device4000which is a migration destination, for example, to the management terminal1000, outputted is such a message that, since the cache allocation function does not exists in the new storage device4000, cache allocation is not taken over to the old storage device5000, and the routine goes to the step S1825without carrying out the step S1820.

Next, in the step S1825, the CPU4100of the new storage device4000prepares path definition and port bandwidth allocation definition of the new storage device4000which is a migration destination of a logical volume that the old storage device5000provides. This process is referred to as a path definition and port bandwidth allocation definition preparation process. Its detail will be described later.

By the above-described steps S1810to1825, preparations of logical volume definition, cache allocation definition, path definition, and cache port bandwidth allocation definition of the new storage device4000are completed. Accordingly, the CPU4100of the new storage device4000accesses to the FC SW3000through the management network6000, and changes a zone configuration of the FC SW3000, so as to enable mutual communication between the server2000, the old storage device5000and the new storage device4000. Also, in order to enable an access to a logical volume of the old storage device5000from the new storage device4000, an access permission setup of the old storage device5000is changed (S1830). Concretely, the CPU4100of the new storage device4000transmits a zone configuration to the FC SW3000through the management network6000. The CPU3100of the FC SW3000receives the zone configuration from the new storage device4000by the management agent PG3310. And, by the SW control PG3320, in accordance with the received zone configuration, the controller3800is controlled to change a zone configuration. Also, the CPU4100of the new storage device4000transmits access permission information including designation of an I/O port of the new storage device4000, to the old storage device5000through the management network6000. The CPU5100of the old storage device5000receives the access permission information from the new storage device4000by the management agent PG5310. And, in accordance with the access permission information received from the new storage device4000, in order to enable an access to a logical volume of the old storage device5000from the new storage device4000, access permission setup of the old storage device5000is changed.

Next, the CPU4100of the new storage device4000registers the logical volume definition, the cache allocation definition, the path definition and the port bandwidth allocation definition of the new storage device4000, which are prepared in the steps S1810to1825in the logical volume management TL4325, the cache allocation management TL4335, the path management TL4330and the port bandwidth allocation management TL4340, and sets up these definitions in the new storage device4000(step S1835).

Next, the CPU4100of the new storage device4000has the server2000carried out re-acknowledgment of a logical volume (step S1840). Concretely, the CPU4100of the new storage device4000transmits a re-scanning request of a logical volume to the server2000through the management network6000. The CPU2100of the server2000receives the re-scanning request of a logical volume from the new storage device4000by the management agent PG2310. And, by the path manager PG2320, a re-scanning process of a logical volume is carried out, and device files regarding newly allocated logical volumes “va1”, “va2”, “va3” of the new storage device4000are prepared in the server2000. For example, in a UNIX (trademark) operating system of Hewlett-Packard Company, by a command of “IOSCAN”, carried out are recognition of a new logical volume, and preparation of a device file which is such means that an operating system recognizes a logical volume.

Here, the CPU4100of the new storage device4000instructs the path manager PG2320of the server2000to manage a device file of a newly prepared logical volume of the new storage device4000as one in the same group as a device file of an already prepared logical volume of the old storage device5000, by the migration manager PG4345. Accordingly, the CPU2100of the server2000prepares a virtual device file for a device file of the same group, by the path manager PG2320, and has an operating system on the server2000acknowledged it.

Next, the CPU4100of the new storage device4000transmits an access object change instruction which is used to change an access to a logical volume of the old storage device5000to an access to a logical volume of the new storage device4000, to the path manager PG2320of the server2000(step S1845) Accordingly, the CPU2100of the server2000changes an access to a logical volume of the old storage device5000from an application which is operated in the server2000, to an access to a logical volume of the new storage device4000, by the path manager PG2320. As a result of this, it becomes possible for an application operated on the server2000to access to a logical volume of the new storage device4000by the same access method as in the past. In addition, as to such a matter that an access to a logical volume of the old storage device5000is changed to an access to which logical volume of the new storage device4000, for example, it may be configured such that a correspondence relation of a logical volume of the old storage device5000stored in a memory etc. of the new storage device4000in the step S1815and a logical volume of the new storage device4000is included in the access object change instruction that the CPU4100of the new storage device4000transmits, and the CPU2100of the server2000carries out the above matter in accordance with the correspondence relation included in the instruction, by the path manager PG2320. Or, it may be configured such that the server2000displays, on the management terminal1000, information of a logical volume of the old storage device5000and a logical volume of the new storage device4000, and a system administrator of a computer system sets it up directly to the server2000through the management terminal1000.

Next, the CPU4100of the new storage device4000accesses to the FC SW3000through the management network6000, and changes a zone configuration of the FC SW3000so as to enable mutual communication between the server2000except for the old storage device5000and the new storage device4000. Also, in order to disable a direct access to a logical volume of the old storage device5000from the server2000, access permission setup of the old storage device5000is changed (S1850). By this, a logical volume of the new storage device4000responds all of I/O access processes from an application on the server2000. In addition, a content of a concrete process which is used to migrate data of a logical volume of the old storage device5000to a corresponding logical volume of the new storage device4000, can utilize a data migration technology which has been carried out in the prior art. In this connection, its detailed description will not be described in this embodiment.

FIG. 19is a flowchart for explaining a cache allocation definition preparation process (process by the migration manager PG4345) carried out in the step S1820ofFIG. 18.

The CPU4100of the new storage device4000calculates cache remaining capacity (unallocated cache capacity) of the new storage device4000which is a migration destination of a logical volume that the old storage device5000provides, and registers its value to the migration destination cache remaining capacity management TL4360(step S1905). Concretely, it copies a value of cache remaining capacity registered in the field43202of the cache management TL4320of the new storage device4000, and registers the value in the migration destination cache remaining capacity management TL43600.

Next, the CPU4100of the new storage device4000copies cache allocation definition of the old storage device5000which is a migration source of a logical volume in the cache allocation migration TL4355(step S1910). Concretely, in the cache allocation migration TL4355, records of the same number as all records of the cache allocation management TL5335of the old storage device5000, which are obtained from the old storage device5000in the step S1810ofFIG. 18are newly generated, and each record of the cache allocation management TL5335is copied as migration source cache definition, in the field43558of each record of the cache allocation migration TL4355. In addition, in the field43551of each record of the cache allocation migration TL4355, the processed flag “yet” is registered.

Next, for each of records of the cache allocation migration TL4355in which the migration source cache definition is registered in the field43558, and a processed flag of the field43551is of “yet”, processes of the steps S1920to S1945are repeated (steps S1915,1950). Concretely, the following process is repeated until all of processed flags of the field43551of the cache allocation migration TL4355become “done”.

Firstly, the CPU4100of the new storage device4000specifies one of the records in which the processed flag “yet” is registered in the field43551, from the cache allocation migration TL4355. And, it investigates whether a cache allocation amount, a cache resident area of the migration source cache allocation definition are registered in the sub-fields43553,43554of the field43558of the specified record (referred to as specified record) or not (step S1920).

In the step S1920, in case that both of them are not registered, the sub-fields43556,43557of the field43559of the specified record are made to be blank, i.e., the cache allocation amount, the cache resident area of the migration destination cache allocation definition are made to be of no definition (S1935). Also, on the basis of a correspondence relation of a logical volume of the old storage device5000stored in a memory etc. of the new storage device4000in the step S1815ofFIG. 18and a logical volume of the new storage device4000, a logical volume of the new storage device4000, which corresponds to a logical volume of the old storage device5000specified by a logical volume ID of the migration source cache definition, is specified. And, in the sub-field43555of the field43559of the specified record, a volume ID of a logical volume of the corresponding new storage device4000is registered, and a processed flag registered in the field43551is changed from “yet” to “done” (step S1945).

On one hand, in the step S1920, in case that any one of the cache allocation amount and/or the cache resident area of the migration source cache allocation definition are/is registered, it is judged whether or not the migration source cache allocation definition which is the cache allocation definition of the old storage device5000can be taken over to the migration destination allocation definition which is the cache allocation definition of the new storage device4000(step S1925). Concretely, in case that the cache allocation amount and the cache resident area of the migration source cache allocation definition are smaller than cache remaining capacity registered in the migration destination cache remaining capacity management TL4360, it is judged that takeover is possible.

In case that it is judged that takeover is possible in the step S1925, the CPU4100of the new storage device4000copies contents of the sub-fields43553,43554of the field43558of the specified record, in the sub-fields43556,43557of the field43559of the specified record. In short, as a cache allocation amount, a cache resident area of the migration destination cache definition, a cache allocation amount, a cache resident area of the migration source cache definition are used (step S1930). Next, a value of the migration destination cache remaining capacity management TL4360is updated (step S1940). Concretely, among the cache allocation amount and the cache resident area of the migration source cache definition, selected is a cache capacity value which has a larger value. And, the selected cache capacity value is subtracted from a registered value of the migration destination cache remaining capacity management TL4360, and its result is set as an update value of the migration destination cache remaining capacity management TL4360. Then, on the basis of a correspondence relation of a logical volume of the old storage device5000stored in a memory etc. of the new storage device4000in the step S1815ofFIG. 18and a logical volume of the new storage device4000, the CPU4100of the new storage device4000specifies a logical volume of the new storage device4000which corresponds to a logical volume of the old storage device5000specified by a logical volume ID of the migration source cache definition. And, in the sub-field43555of the field43559of the specified record, it registers a volume ID of a logical volume of the corresponding new storage device4000, and changes a processed flag registered in the field43551from “yet” to “done” (step S1945).

Also, in case that it is judged that takeover is not possible in the step S1925, the CPU4100of the new storage device4000carries out the same process as in case that it is judged that both of the cache allocation amount and the cache resident area of the migration source cache definition are not registered in the step S1920(steps S1935,1945). In this regard, however, for example, it may be configured such that takeover of cache allocation definition is carried out by allocatable capacity. Concretely, in the sub-fields43556,43557of the field43559of the specified record, the contents of the sub-fields43553,43554of the field43558of the specified record are copied. On this occasion, a copy value which exceeds a registration value of the migration destination cache remaining capacity management TL4360is reduced to a registration value or less of the migration destination cache remaining management TL4360. And, the reduced copy value (larger one of values registered in the sub-fields43556,43557) is subtracted from a register value of the migration destination cache remaining capacity management TL4360, and the migration destination cache remaining capacity management TL4360is updated.

In addition, in the step S1935, in case that takeover of a cache allocation definition of a certain logical volume is not carried out, it may be configured such that the CPU4100of the new storage device4000notifies the management terminal1000through the management network6000.

Here, by using the cache allocation migration TL4355shown inFIG. 13, a concrete example of a cache allocation definition preparation process shown inFIG. 19will be described. As shown inFIG. 13, when the steps S1920to S1945ofFIG. 18are carried out to an initial record of the cache allocation migration TL4355, it is judged that a cache allocation definition of the logical volume “vb1” of the old storage device5000can be migrated to the logical volume “vb1” of the new storage device4000, and it takes over a cache allocation amount “1 GB” and a cache resident area “300 MB (addresses 0 to 153600)”. As a result of that, cache memory remaining capacity of the new storage device4000becomes such a value that 1 GB is subtracted from a value registered in the migration destination cache remaining capacity management TL4360, and a registration value of the migration destination cache remaining capacity management TL4360is updated (inFIG. 14, updated to 9 GB). In this manner, by a cache allocation definition preparation process shown in a flow ofFIG. 19, the cache allocation migration table4355is prepared.

FIG. 20is a flow chart for explaining the path definition and a port bandwidth allocation definition preparation process (process by the migration manager PG4345) carried out in the step S1825ofFIG. 18.

The CPU4100of the new storage device4000calculates port bandwidth remaining capacity (unallocated port bandwidth) with respect to each port of the new storage device4000which is a migration destination of a logical volume that the old storage device5000provides, and registers its value in a corresponding record of the migration destination port bandwidth remaining capacity management TL4375(step S2005). Concretely, it adds each record which corresponds to each of records of the port management TL4315of the new storage device4000to the migration destination port bandwidth remaining capacity management TL4375. And, it copies a port ID, bandwidth remaining capacity registered in the fields43151,43155of a record of the port management TL4315in the fields43751,43752of a corresponding record which is added to the migration destination port bandwidth remaining capacity management TL4375.

Next, the CPU4100of the new storage device4000copies a path definition of the old storage device5000which is a migration source of a logical volume in the path migration TL4370(step S2010). Concretely, the records of the same number as all records of the path management TL5330of the old storage device5000, which are obtained from the old storage device5000in the step S1810ofFIG. 18in the path migration TL4370is newly generated, and each record of the path management TL5330is copied as a migration source path definition, in the field43710of each record of the path migration TL4370. In addition, in the field43701of each record of the path migration TL4370, the processed flag “yet” is registered.

Next, the CPU4100of the new storage device4000copies a port allocation definition of the old storage device5000in the port bandwidth allocation migration TL4365(step S2015). Concretely, the records of the same number as all records of the port bandwidth allocation management TL5340of the old storage device5000obtained from the old storage device5000in the step S1810ofFIG. 18are generated in the port bandwidth allocation migration TL4365, and each record of the port bandwidth allocation migration TL5340is copied, as a migration source port definition, in the field43658of each record of the port bandwidth allocation migration TL4365. In addition, in the field43651of each record of the port bandwidth allocation migration TL4365, the processed flag “yet” is registered.

Next, for each of records of the path migration TL4370in which the migration source path definition is registered in the field43710and a processed flag of the field43701is of “yet”, processes of steps S2025to S2065are repeated (steps S2020,2070). Concretely, the following process is repeated until all of processed flags of the field43701of the path migration TL4370becomes “done”.

Firstly, the CPU4100of the new storage device4000specifies one of records in which the processed flag “yet” is registered in the field43701, from the path migration TL4370. This record is referred to as the first specified record. And, it determines a migration destination of an I/O port of the old storage device5000in which a port ID is registered in the sub-field43703of the field43710of the first specified record, i.e., an I/O port of the new storage device4000(step S2025). Concretely, from the port management TL5315of the old storage device5000, it extracts a record which has a port ID registered in the sub-field43703of the field43710of the first specified record. And, it obtains bandwidth capacity of the extracted record, which is registered in the field53154. By this, it specifies bandwidth capacity of an I/O port of the old storage device5000whose migration source path definition is registered in the field43710of the first specified record. Next, from the port management TL4315of the new storage device4000, it extracts one of records in which bandwidth capacity registered in the field43154is larger than bandwidth capacity of an I/O port of this old storage device5000, and determines an I/O port of the new storage device4000specified by this record as an I/O port of a migration destination.

In addition, in the following, it will be described on the assumption that, as migration destination ports of the I/O ports “port-b1”, “port-b2”, “port-b3” of the old storage device5000, the I/O ports “port-a1”, “port-a2”, and “port-a3” of the new storage device4000are determined, respectively.

Next, the CPU4100of the new storage device4000extracts such all records that a port ID registered in the sub-field43703of the first specified record is registered in the sub-field43653, i.e., such all record that the migration source port definition which utilizes an I/O port of the old storage device5000specified by the port ID is registered in the field43658, from the port bandwidth allocation migration TL4365. And, to each of the extracted records (referred to as second specified record), processes of steps S2035to S2060are repeated (steps S2030,2065).

Firstly, searched is the second specified record in which a path ID registered in the sub-field43702of the first specified record is registered in the sub-field43652, and a port allocation bandwidth is registered in the sub-field43654. If the suchlike second specified record is searched, a port ID of the new storage device4000which corresponds to a port ID of the old storage device5000registered in the sub-field43653of the second specified record is specified on the basis of a correspondence relation of a port ID of the old storage device5000stored in a memory etc. and a port ID of the new storage device4000, and bandwidth remaining capacity of an I/O port of the specified new storage device4000is further specified by using the migration destination port bandwidth remaining capacity management TL4375. And, it is judged whether this remaining capacity is larger than a port allocation bandwidth registered in the sub-field43654of the second specified record (step S2035)

In the step S2035, in case that a path ID registered in the sub-field43702of the first specified record is registered in the sub-field43652, and the second specified record whose port allocation bandwidth is registered in the sub-field43654does not exist, there is no necessity to take over a port allocation bandwidth of an I/O port (migration source port) of the old storage device5000specified by the migration source path definition registered in the field43710of the first specified record, to an I/O port (migration destination port) of the new storage device4000specified by the migration destination path definition to be registered in the field43711of the first specified record. In this case, the CPU4100of the new storage device4000registers the migration destination path definition in the field43711of the first specified record. Preparation and registration of the migration destination port definition are not carried out (step S2040).

Concretely, in the sub-field43707of the first specified record in the path migration TL4370, a port ID of an I/O port of the new storage device4000determined as a migration destination port in the step S2025, is registered. Also, in the sub-field43708of the first specified record, LUN registered in the sub-field43704of the first specified record is copied. And, in the sub-fields43706,43709of the first specified record, a path ID of the old storage device5000stored in a memory etc. in advance, and registered in the sub-fields43702,43705of the first specified record, a path ID of the new storage device4000which corresponds to a logical volume ID, and a logical volume ID, are registered.

Next, a value of the migration destination port bandwidth remaining capacity management TL4375is remained as it is (step S2055), and a processed flag registered in the field43701of the first specified record is changed from “yet” to “done” (step S2060)

Also, in the step S2035, in case that the second specified record in which a path ID registered in the sub-field43702of the first specified record is registered in the sub-field43652, and a port allocation bandwidth is registered in the sub-field43654, is detected, and furthermore, bandwidth capacity of an I/O port of the new storage device4000which corresponds to a port ID of the old storage device5000registered in the sub-field43653of the second specified record is larger than a port allocation bandwidth registered in the sub-field43654of the second specified record, a port allocation bandwidth of an I/O port (migration source port) of the old storage device5000specified by the migration source path definition registered in the field43710of the first specified filed is taken over to an I/O port (migration destination port) of the new storage device4000specified by the migration destination path definition to be registered in the field43711of the first specified record. In this case, the CPU4100of the new storage device4000registers the migration destination path definition in the field43711of the first specified record, and registers the migration destination port definition in the field43659of the second specified record (step S2045).

Concretely, in the sub-field43707of the first specified record in the path migration TL4370, a port ID of an I/O port of the new storage device4000determined as a migration destination port in the step S2025, is registered. Also, in the sub-field43708of the first specified record, LUN registered in the sub-field43704of the first specified record is copied. And, in the sub-fields43706,43709of the first specified record, a path ID of the old storage device5000stored in a memory etc. in advance, and registered in the sub-fields43702,43705of the first specified record, a path ID of the new storage device4000which corresponds to a logical volume ID, and a logical volume ID are registered. In the same manner, in the sub-field43656of the detected second specified record in the port bandwidth allocation migration TL4365, a port ID of an I/O port of the new storage device4000determined as a migration destination port in the step S2025, is registered. Also, in the sub-field43657of the detected second specified record, a port allocation bandwidth registered in the sub-field43654of the detected second specified record, is copied. And, in the sub-field43655of the detected second specified record, a path ID of the new storage device4000stored in a memory etc. in advance, and corresponding to a path ID of the old storage device5000registered in the sub-field43651of the detected second specified record, is registered.

Next, by subtracting the port allocation bandwidth registered in the sub-field43657of the detected second specified record from a value of the migration destination port bandwidth remaining capacity management TL4375, the migration destination port bandwidth remaining capacity management TL4375is updated (step S2055). And, then, a processed flag registered in the field43701of the first specified record is changed from “yet” to “done” (step S2060).

Furthermore, in the step S2035, in case that the second specified record in which a path D registered in the sub-field43702of the first specified record is registered in the sub-field43652, and a port allocation bandwidth is registered in the sub-field43654, is detected, and bandwidth remaining capacity of an I/O port of the new storage device4000which corresponds to a port ID of the old storage device5000registered in the sub-field43653of this second specified record is less than a port allocation bandwidth registered in the sub-field43654of this second specified record, it is impossible to have an I/O port (migration destination port) of the new storage device4000specified by the migration destination path definition to be registered in the sub-field43711of the first specified record, taken over a port allocation bandwidth of an I/O port (migration source port) of the old storage device5000specified by the migration source path definition registered in the field43710of the first specified filed, without any modification.

In this case, the process of the step S2025is carried out and another migration destination port is newly selected. And, the steps S2030,2035are carried out. In case that it is confirmed that the port allocation bandwidth of the migration source port can be taken over to the newly selected migration destination port, the step S2045is carried out. The migration destination path definition is registered in the field43711of the first specified record, and the migration destination port definition is registered in the field43659of the second specified record. This process is carried out until a migration destination port which can take over a port allocation bandwidth of a migration source port is found. In case that the suchlike migration destination port is not found, the step S2040is carried out and, only the migration destination path definition is registered in the field43711of the first specified record (step S2050).

In addition, in the step S2050, the same process as in the step S2040may be carried out from the beginning, i.e., it may be configured such that port bandwidth allocation is not taken over. Also, the result of the process may be notified to the management terminal1000as the port bandwidth allocation cannot be taken over completely.

Next, from a value of the migration destination port bandwidth remaining capacity management TL4375, a port allocation bandwidth registered in the sub-field43657of the detected second specified record is subtracted, and the migration destination port bandwidth remaining capacity management TL4375is updated (step S2055). And, then, a processed flag registered in the field43701of the first specified record is changed from “yet” to “done” (step S2060) Here, by using the port bandwidth allocation migration TL4365, the path migration TL4370and the migration destination port bandwidth remaining capacity management TL4375shown inFIGS. 15,16and17, a concrete example of a path definition and port bandwidth allocation definition preparation process shown inFIG. 20will be described. When the path migration TL4370shown inFIG. 16, S2025to S2065ofFIG. 20are carried out to three records from the beginning, the path definitions of the paths “path-b1”, “path-b2”, “path-b3” of the old storage device5000which is a migration source of a logical volume are taken over to the paths “path-a1”, “path-a2”, “path-a3” of the new storage device4000which is a migration destination of a logical volume. Also, it is judged that takeover of the paths “path-b1”, “path-b2”, “path-b3” to the port bandwidth allocation paths “path-a1”, “path-a2”, “path-a3” is possible, and as shown inFIG. 15, a bandwidth of 100 MB/s of the path “path-b1”, a bandwidth of 50 MB/s of the path “path-b2”, and a bandwidth of 50 MB/s of the path “path-a3” are taken over to a bandwidth of 100 MB/s of the path “path-a1”, a bandwidth of 50 MB/s of the path “path-a2”, and a bandwidth of 50 MB/s of the path “path-a3”. As a result of that, as shown inFIG. 17, port bandwidth remaining capacity of the port “port-a1” of the new storage device4000becomes 50 MB/s obtained by subtracting 150 MB/s (both of the paths “path-a1”, “path-a2” utilize the port “port-a1”) from bandwidth capacity 200 MB/s of the port “port-a1”, and port bandwidth remaining capacity of the port “port-a3” of the new storage device4000becomes 50 MB/s obtained by subtracting 50 MB/s (only the path “path-a3” utilizes the port “port-a3”) from bandwidth capacity 100 MB/s of the port “port-a3”.

As above, the first embodiment of the present invention is described. According to this embodiment, by carrying out the above-described migration process, it becomes possible to have cache allocation and port bandwidth allocation of the old storage device5000which is a migration source of a logical volume, automatically taken over to the new storage device4000which is a migration destination of a logical volume.

Second Embodiment

FIG. 21is a schematic diagram of a computer system to which the second embodiment of the present invention is applied. As shown in the figure, different points between the computer system of this embodiment and the computer system of the first embodiment shown inFIG. 1are as follows: a plurality of old storage devices5000which become migration sources of logical volumes and new storage devices4000which become migration destinations are provided respectively. As a device in which the migration manager PG4345is installed, there is a management server8000which is a different device from the new storage device4000is provided; and the management server8000is connected to the management network6000. Others are the same as in the computer system of the first embodiment. In addition, in this embodiment, the same reference numerals and signs are given to ones having the same functions as in the first embodiment.

FIG. 22is a schematic diagram of the management server8000shown inFIG. 21.

As shown in the figure, the management server8000has a CPU8100, a memory8200, a storage subsystem8300, a management port8400for connecting to the management network6000, an output device8500such as a display etc., an input device8600such as a keyboard etc., and a path8700which mutually connects these devices. In the storage subsystem8300, the migration manager PG4345, the device detection list4350, the cache allocation migration TL4355, the migration destination cache remaining capacity management TL4360, the port bandwidth allocation migration table4365, the path migration TL4370, and the migration destination port bandwidth remaining capacity management TL4375are stored.

These programs and tables are basically the same as ones which are described in the first embodiment. In this regard, however, it is assumed that the device detection list4350, the cache allocation migration TL4355, the migration destination cache remaining capacity management TL4360, the port bandwidth allocation migration table4365, the path migration TL4370, and the migration destination port bandwidth remaining capacity management TL4375are disposed so as to correspond to attribute information including an IP address of the new storage device4000, with respect to each new storage device4000. The CPU8100, by loading the migration manager PG4345in the memory8200and executing it, obtains a configuration such as a port bandwidth, cache allocation and so on, from the management agent PGs2310,3310,4310,5310of respective devices, and carries out the above-described migration process with respect to each new storage device4000, by using the device detection list4350, the cache allocation migration TL4355, the migration destination cache remaining capacity management TL4360, the port bandwidth allocation migration table4365, the path migration TL4370, and the migration destination port bandwidth remaining capacity management TL4375including a configuration of the old storage device which corresponds to the new storage device4000. By this, as to each new storage device4000specified by attribute information, it becomes possible to have a logical volume taken over cache allocation and port allocation of the old storage device5000which is a migration source of the new storage device4000.

According to this embodiment, since the CPU8100(migration manager PG4345) of the management server8000carries out the migration process, it is possible to carry out the migration process even to the new storage device4000in which the migration manager PG4345is not installed. Also, it is possible to realize central control of the migration process in the computer system by the management server8000.

Third Embodiment

(1) System Configuration

FIG. 23is a schematic diagram of a computer system to which the third embodiment of the present invention is applied. As shown in the figure, a different point between the computer system of this embodiment and the computer system of the first embodiment shown inFIG. 1is as follows; a new storage device which becomes a migration destination is a virtualization device9000. Others are the same as in the computer system of the first embodiment. In addition, in this embodiment, the same reference numerals and signs are given to ones having the same functions as in the first embodiment.

The virtualization device9000manages a logical volume of the old storage device5000, allocated to the server2000, by a virtual volume, by using the following two functions. Function 1: Function which manages a storage area of the old storage device5000connected to the virtualization device9000and generates a volume pool. Function 2: Function which generates a virtual volume on the basis of one or more storage area in the volume pool, and redirects an I/O access to a virtual volume from the server2000to a corresponding storage area, and responds I/O the I/O access from the server2000. Furthermore, the virtualization device9000of this embodiment is also a new storage device newly introduced into the computer system. In the same manner as in the new storage device4000shown inFIG. 1, the virtualization device9000has the management agent PG4310, the migration manager PG4345. Furthermore, it has a volume virtualization PG4380which manages by a virtual volume, a logical volume of the old storage device5000which is allocated to the server2000by using the above-described two functions.

FIG. 24is a schematic diagram of the virtualization device9000shown inFIG. 23.

As shown in the figure, such a different point between the virtualization device9000of this embodiment and the new storage device4000shown inFIG. 1is as follows; the volume virtualization PG4380is stored in the storage subsystem4300. The CPU4100loads this volume virtualization PG4380on the memory4200and executes it, so that the above-described two functions are realized. Therefore, the virtualization device9000provides a virtual volume to the server2000. This virtual volume is virtualized a logical volume that the old storage device5000holds as a logical volume that the virtualization device9000holds so as to enable an I/O access. Its concrete process content can utilize a virtual volume technology which has been carried out in the prior art. In this connection, its detailed description will not be described in this embodiment. In addition, it is possible to manage a correspondence relation of a virtual volume and a logical volume of the old storage device5000by registering physical data arrangement of a corresponding logical volume of the old storage device5000, which is an actual storage area, as physical data arrangement of a virtual volume, in the field4325of the logical volume management TL4325in the virtualization device9000.

(2) Migration Process Procedure

In case of migrating from such a mode that a part of a logical volume of the old storage device5000is migrated to the new storage device4000, and the server2000directly accesses to another part of the logical volume of the old storage device5000, to such a mode that the logical volume is accessed through a virtual volume of the virtualization device9000, a migration process that the device in which the migration manager PG4345is installed carries out, so as to have a configuration set up in the old storage device5000taken over to the virtualization device9000, will be described. In addition, in the third embodiment of the present invention, a device in which the migration manager PG4345is installed is the virtualization device9000.

FIG. 25is a flow chart for explaining a migration process that the device in which the migration manager PG4345is installed carries out, in case of migrating from such a mode that a part of a logical volume of the old storage device5000is migrated to the new storage device4000, and the server2000directly accesses to another part of the logical volume of the old storage device5000, to such a mode that the logical volume is accessed through a virtual volume of the virtualization device9000in the third embodiment of the invention.

As shown in the figure, a different point between a migration process of this embodiment and the migration process of the first embodiment shown inFIG. 18is as follows; the steps S2505, S2510are carried out, instead of the steps S1815,1820,1825.

In the step S2505, the CPU9100of the virtualization device9000carries out logical volume definition preparation, cache allocation definition preparation, path definition and port bandwidth allocation definition of a logical volume of the virtualization device9000which is a migration destination, to each logical volume of the old storage device5000, which is migrated to a logical volume of the virtualization device9000. Also, in the step S2510, the CPU9100of the virtualization device9000carries out logical volume definition preparation, cache allocation definition preparation, path definition and port bandwidth allocation definition of a logical volume of the virtualization device9000, which is a virtual volume, to each logical volume of the old storage device5000, virtualized by a logical volume (virtual volume) of the virtualization device9000by using the volume virtualization PG4380. In addition, such a matter that which logical volume of the old storage device5000is migrated to which logical volume of the virtualization device9000, and which logical volume of the old storage device5000is virtualized by a logical volume of the virtualization device9000, and so on, may be set up, for example, in the virtualization device9000in advance, by a system administrator of the computer system using the management terminal1000.

In addition, a logical volume definition preparation process carried out in the steps S2505,2510is basically the same steps carried out in the step S1815ofFIG. 18. Also, a cache allocation definition preparation process, a path definition and port bandwidth allocation definition preparation process are basically the same as the cache allocation definition preparation process shown inFIG. 19, and the path definition and port bandwidth allocation definition preparation process shown inFIG. 20. However, in this embodiment, a logical volume of a migration destination becomes a logical volume of the virtualization device9000. Also, as a logical volume of a migration source, in the step S2505, a partial logical volume of the old storage device5000is targeted, and in S2510, a partial logical volume of the old storage device5000, which is virtualized by a logical volume of the virtualization device9000, is targeted.

In this embodiment, such a definition that it is judged that takeover to the virtualization device9000which is a migration destination is impossible may be set up again as a definition of the old storage device5000which is a migration source, without any modification. If this is done, in case that the cache allocation function and the port bandwidth allocation function are not applicable to the virtualization device9000, it is possible to continuously use the cache allocation function and the port bandwidth allocation function of the old storage device5000. In short, it becomes possible to continuously utilize various definition setups for improving performances defined by a system administrator of a computer system. In this manner, according to this embodiment, even in case of newly introducing the virtualization device9000, by the migration process by the migration manager PG4345, it is possible to carry out a setup which considered resource distribution of the virtualization device9000and the old storage device5000, without compelling complicated works to a system administrator of a computer system.

In addition, in this embodiment, such a case that a device in which the migration manager PG4345is installed is the virtualization device9000is described as an example. However, in the same manner as a difference between the above-described first and second embodiments, as a device in which the migration manager PG4345is installed, the management server8000may be disposed separately from the virtualization device9000. In this case, even a configuration in which the old storage device5000, the new storage device4000and the virtualization device9000are disposed in a mixed manner as shown inFIG. 26(in this regard, the new storage device4000and the virtualization device9000are not ones in which the migration manager PG4345is installed.) can realize takeover of various setups for performance improvement due to the migration process. In this manner, by carrying out the migration process by the migration manager PG4345on the management server8000, it is possible to realize central control of various setups used for takeover of performances in the computer system.

As above, each embodiment of the present invention has been described.

According to each embodiment of the present invention, by the migration process of the migration manager PG4345, on the occasion of newly introducing the new storage device4000, it is possible to take over various setups used to improve performances set up in a logical volume of the old storage device5000to a logical volume of the new storage device4000without compelling complicated works to a system administrator. By this, it is possible to reduce a management cost which required sophisticated knowledge and enormous time to each storage device, such as a matter that a system administrator carries out a takeover work of a setup every all logical volume. Also, even in case of newly introducing the virtualization device9000, by the migration process of the migration manager PG4345, it is possible to carry out an optimum setup which considered a resource distribution of the virtualization device9000and the old storage device5000, without compelling complicated works to a system administrator.

In addition, the present invention is not limited to the above-described each embodiment, and lots of modifications are possible within a scope of its substance. For example, in the above-described each embodiment, such a case that the Fibre Channel network is utilized as a storage area network was described as an example. However, the present invention is not limited to this. The present invention is applicable to various storage area networks.