A computer program product for causing a computer to manage a storage device provided externally, comprising:
- a computer readable medium;
- and
- a computer program stored on the computer readable medium,
- wherein the computer program comprises:
- a first program for causing the computer to obtain, while the storage device is operating, management data indicating which of a plurality of disk groups in the storage device is active, from the storage device, wherein the plurality of disk groups comprises a RAID group including at least one logical volume, and wherein the management data indicating a number of active RAID groups, an active RAID group identification number, and an upper limit value indicating a number of RAID groups that are able to be active at any given instant;
- a second program for causing the computer to execute, while the storage device is operating, predetermined processing with reference to the management data regarding the storage device in order to utilize a logical volume belonging to a disk group in the plurality of disk groups in the storage device while ensuring that a number of active disk groups in the storage device does not exceed the upper limit value, wherein the predetermined processing determines, when one of the logical volumes in the RAID group is access or a new logical volume is set to be added to the RAID group, if activation of the RAID group is necessary and further to determine if the activation would cause the upper limit value to be exceeded, wherein the predetermined processing further sends a first instruction to the storage device indicating whether the upper limit value is exceeded and sends a second instruction to the storage device indicating that activation of the RAID group is necessary and to activate the RAID group, and wherein an activity of the disk group in the plurality of disk groups being controlled dynamically while the storage device is operating;
- a third program for causing the computer, when a logical volume is to be mapped to a virtual volume, to select with reference to the management data regarding the at least one storage device, a plurality of candidates indicating a plurality of storage areas, each storage area being included in the at least one storage device and being usable to create the logical volume to be mapped to the virtual volume, while ensuring that the number of active disk groups in each storage device does not exceed the upper limit value;
- a fourth program for causing the computer to instruct a particular storage device including a storage area corresponding to one candidate selected from among the plurality of candidates to create a logical volume in the storage area corresponding to the one candidate;
- a fifth program for causing the computer to map the logical volume to the virtual volume;
- a sixth program for causing the computer to obtain a utilization rate of storage capacity of the virtual volume, and when the utilization rate exceeds a predetermined value, then causing the computer to select the plurality of candidates in order to map a new logical volume to the virtual volume,
- wherein each of the plurality of candidates is usable without increasing the number of active disk groups beyond the upper limit value and
- wherein each of the plurality of candidates satisfies a condition preset by a user;
- and
- a seventh program for causing the computer:
- to activate, responsive to an access request requesting an access to a logical volume in the storage device, a particular disk group to which the requested logical volume belongs in a case where the particular disk group is not active and the particular disk group is capable of being activated without increasing the number of active disk groups beyond the upper limit value, and
- to postpone, responsive to the access request, the activating of the particular disk group in a case where the particular disk group is not active and the particular disk group is not capable of being activated without increasing the number of active disk groups beyond the upper limit value.