Method for setting up disk-array device, computer-readable storage medium, and information processing device

A method for setting up a disk-array device, which includes at least one connection port for connection with at least one computer and at least one storage volume for storing data, comprises the steps of: loading configuration-defining data to an information processing device that is connected to the disk-array device, the configuration-defining data being in an electronic-data form; the information processing device generating, in accordance with the configuration-defining data, a setup command for setup of the disk-array device and transmitting the setup command to the disk-array device; and the disk-array device receiving the setup command and performing the setup according to the setup command.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims priority upon Japanese Patent Application No. 2002-233262 filed on Aug. 9, 2002, which is herein incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method for setting up a disk-array device, a computer-readable storage medium, and an information processing device.

2. Description of the Related Art

One example of a way of setting a definition of system configuration is disclosed in U.S. Pat. No. 5,627,955. According to this disclosure, a configuration-defining chart that defines the logical connection between a device and a processor is provided in the processor, and this logical connection relationship is displayed.

Recently, the amount of information handled by computer systems has been increasing, and accordingly, the scale of disk-array devices for storing data is becoming larger. As a result, the amount of setup work required for using a disk-array device in a computer system has been increasing.

However, some disk-array devices are constructed as large-scale disk-array devices in which as many as thousands of logical volumes may be configured. For such disk-array devices, there is a demand for an environment in which the configuration can be defined more easily.

More specifically, a large-scale disk-array device may require larger maintenance load that is entailed with disk-array device setup, thereby the system's management cost being raised. This holds true not only for the initial setup of a disk-array device but also for the setup changes of a running disk-array device.

SUMMARY OF THE INVENTION

Under the aforementioned circumstances, an object of the present invention is to reduce the labor required for disk-array device setup.

According to one aspect of the present invention, a method for setting up a disk-array device, which includes at least one connection port for connection with at least one computer and at least one storage volume for storing data, comprises the steps of: loading configuration-defining data to an information processing device that is connected to the disk-array device, the configuration-defining data being in an electronic-data form; the information processing device generating, in accordance with the configuration-defining data, a setup command for setup of the disk-array device and transmitting the setup command to the disk-array device; and the disk-array device receiving the setup command and performing the setup according to the setup command.

The foregoing and other features and advantages of the present invention will become apparent from the following description of the embodiments of the invention and from the accompanying drawings.

DETAILED DESCRIPTION OF THE INVENTION

At least the following matters will be made clear by the explanation in the present specification and the description of the accompanying drawings.

In a first aspect of the present invention, a method for setting up a disk-array device, which includes at least one connection port for connection with at least one computer and at least one storage volume for storing data, comprises the steps of: loading configuration-defining data to an information processing device that is connected to the disk-array device, the configuration-defining data being in an electronic-data form; the information processing device generating, in accordance with the configuration-defining data, a setup command for setup of the disk-array device and transmitting the setup command to the disk-array device; and the disk-array device receiving the setup command and performing the setup according to the setup command. Accordingly, it becomes possible to easily modify and reuse the disk-array device's settings. Therefore, the burden relating to setup can be reduced.

In another aspect of the present invention, the configuration-defining data contains at least one configuration-defining parameter of the disk-array device in a prescribed format, and the method further comprises the step of: before the step of generating the setup command and transmitting the setup command to the disk-array device, the information processing device verifying whether the configuration-defining parameter is applicable to the configuration of the disk-array device and displaying the configuration-defining parameter that has been determined to be inapplicable to the configuration. Since it becomes possible to find errors in settings with a management program before a setup command is sent to the disk-array device, the efficiency of setup work can be increased.

In another aspect of the present invention, the displaying of the configuration-defining parameter is done graphically. Since a maintenance engineer can easily locate errors and identify their causes, the burden relating to setup can be reduced.

In still another aspect of the present invention, the configuration-defining data contains at least one configuration-defining parameter of the disk-array device in a prescribed format, and the method further comprises the step of: before the step of generating the setup command and transmitting the setup command to the disk-array device, the information processing device verifying whether the configuration-defining parameter is applicable to the configuration of the disk-array device and displaying at least one candidate which is applicable to the configuration for the configuration-defining parameter that has been determined to be inapplicable to the configuration. Since a candidate for correcting an error in a configuration-defining table will be displayed, errors can be corrected with ease.

Although the use of software for implementing the present invention has been described, the present invention can also be implemented by equivalent hardware.

A detailed description will be given below with reference to the drawings.

FIG. 1is a block diagram that shows the overall configuration of a computer system according to an embodiment of the present invention.

Two computers300, an information processing device200, and a disk-array device100are connected to a LAN (Local Area Network)500. The two computers300can exchange information with each other via the LAN500. The information processing device200communicates with the disk-array device100via the LAN500to set the disk-array device100.

The Internet may be used instead of the LAN500, or only two computers may be connected directly. The information processing device200and the disk-array device100may be connected directly with a dedicated cable or the like instead of being connected via the LAN500.

The two computers300acquire the data stored in the disk-array device100via a SAN (Storage Area Network)400. The SAN400is configured based on Fibre Channel (FC). Any number of computers300may be used instead of a set of two computers. Further, two or more disk-array devices may be used instead of only one.

FIG. 13is a block diagram that shows the configuration of the information processing device200. The information processing device200comprises a CPU (Central Processing Unit)204, a memory205, a storage device210, a storage-medium reader209, an input device206, an output device208, and a port201.

The CPU204takes charge of the overall control of the information processing device200and realizes various functions according to the present example by executing various programs stored in the memory205. The storage device210can store various programs and data. For example, hard disk devices and the like may be used as the storage device210. In the present example, the storage device210stores a management program202, configuration-defining tables600,601,602,603, and configuration lists700,701, details of which being explained in detail later on. Note that the storage device210may be build into the information processing device200, or it may be added externally. The storage-medium reader209is a device for reading various programs and/or data recorded on a storage medium203. The various programs and/or data that have been read are stored in the storage device210. Flexible disks, CD-ROMs, semiconductor memories or the like can be used as the storage medium203. The storage-medium reader209may be build into the information processing device200, or it may be added externally. The input device206is used by an operator for inputting data to the information processing device200. For example, a keyboard, a mouse or the like may be used as the input device206. The output device208is used as a display device for displaying various information. For example, a display, a printer or the like may be used as the output device208. The port201is used for communication with external devices via the LAN500.

FIG. 2is a block diagram that shows path/security setup for a computer system according to the present embodiment.

The disk-array device100and the computers300have FC ports (connection ports)102,301for connecting to the SAN400. They also have ports103,302for connecting to the LAN500. The information processing device200is connected to the LAN500via port201to set up the disk-array device100. To perform this setup process, the information processing device200executes the management program202.

The management program202is recorded on a storage medium203and read into and executed by the information processing device200. Reading-in of the management program202by the information processing device200is performed with the storage-medium reader209. Further, if the management program202is recorded on a storage medium203provided in another equipment (not shown) that is connected via the LAN500, it would also be possible to read-in the management program202from the other equipment by communicating with that equipment via the port201.

Each of the FC ports102,301is assigned a WWN (World Wide Name). The WWN is a unique identification number given to each FC port, used for FC port identification. Although the WWN is a 16-digit hexadecimal number, only the four lowest digits are indicated inFIG. 2.

“Path setup” or “setting paths” means to establish the relationship between the FC ports102, which are provided for connecting the disk-array device100to the SAN400, and storage volumes (hereinafter referred to as the “volumes”)100, which are provided within the disk-array device100. This path setup ensures that the input/output data from a computer300connected to an FC port102can be stored on the associated volume101.

“Security setup” or “setting security” means to establish the relationship between the FC ports102on the disk-array device100and the FC ports301on the computers300. This security setup prevents computers from inadvertently accessing the same FC port102in situations where they cannot share the volumes101.

In the present embodiment, the paths of the disk-array device100are defined so that volume2is correlated with FC port A (four lowest WWN digits=1001) and that volume3is correlated with FC port B (four lowest WWN digits=1002). Although the security setup is explained in detail later, it is defined so that FC port A is correlated with FC port1(four lowest WWN digits=5002) and that FC port B is correlated with FC port2(four lowest WWN digits=5004).

If, for instance, a computer300outputs data from FC port1in situations where the above relationships are established, the data can be stored on volume2via FC port A on the disk-array device100.

The path and security settings are stored in the disk-array device100as configuration information104. The path and security settings can be changed by updating the configuration information104.

FIG. 3is a flowchart of a process for setting up a disk-array device according to the present embodiment.

As described earlier, the disk-array device100is set by executing the management program202on the information processing device200. Therefore, the flowchart inFIG. 3indicates the process flow during the execution of the management program202.

First, the management program202, which is running on the information processing device200, is made to load configuration-defining tables (configuration-defining data) (S30).

The configuration-defining tables are recorded on a storage medium203and read, or loaded, into the information processing device200. Reading-in of the configuration-defining tables by the information processing device200is performed with the storage-medium reader209(which may function as “means for loading configuration-defining data”). Further, if the configuration-defining tables are recorded on a storage medium203provided in another equipment (not shown) that is connected via the LAN500, it would also be possible to read-in, or load, the configuration-defining tables from the other equipment by communicating with that equipment via the port201(which would in this case function as “means for loading configuration-defining data”).

A configuration-defining table consists of electronic data in which the settings to be applied to the disk-array device100is written in a prescribed format.FIG. 4shows the configuration-defining tables. Two configuration-defining tables are used: one is a path-configuration-defining table600which describes the path settings; and the other is a security-configuration-defining table601which describes security settings. The path-configuration-defining table600and the security-configuration-defining table601both consist of electronic data, which can be edited and stored with spreadsheet software or the like.

The format for the path-configuration-defining table600is prescribed so that the volumes and the FC ports can be written-in as configuration-defining parameters. The examples inFIG. 4indicate that an attempt is being made to define the correlation between volume3and FC port B and the correlation between volume6and FC port D.

The format for the security-configuration-defining table601is prescribed so that the WWNs of the FC ports102on the disk-array device100and FC ports301on the computers300can be written-in as configuration-defining parameters. The examples inFIG. 4indicate that an attempt is being made to correlate FC port2(four lowest WWN digits=5004) on a computer300with FC port B on the disk-array device100, and to correlate FC port3(four lowest WWN digits=7002) with FC port D.

FIG. 5shows configuration-defining tables that carry the same contents as the tables shown inFIG. 4. However, the tables in these two figures slightly differ in the way of designating the FC ports and the way of designating the WWNs. Although the FC ports and WWNs represent the same items, there are cases where the display method may slightly vary, for instance, with the model of the disk-array device. Therefore, the configuration-defining tables are to be constructed so as to flexibly accept various description entries.

By putting (or loading) the disk-array device settings in electronic-data form in the configuration-defining tables in advance as described above, it becomes possible to reuse the previously created configuration-defining tables for disk-array device setup purposes. This eliminates the necessity for manually entering one setup command after another as in the past, thereby the labor required for setup being substantially reduced. Further, since the contents of the configuration-defining tables can be modified with ease, any errors can be corrected immediately.

Next, the current configuration information104about the disk-array device100is acquired (S31). For information acquisition, the management program202makes a request to the disk-array device100for the configuration information104. Upon receiving the request for the configuration information104, the disk-array device100transmits the configuration information104to the information processing device200via the LAN500.

The management program202creates configuration lists shown inFIG. 6in accordance with the configuration information104. The current settings for the disk-array device100are written in the configuration lists. Two configuration lists are used: one is a volume-to-FC-port configuration list700, which describes the path settings; and the other is an FC-port-to-WWN configuration list701, which describes security settings. The volume-to-FC-port configuration list700and FC-port-to-WWN configuration list701both consist of electronic data, which can be edited and stored with spreadsheet software or the like. Therefore, if configuration lists700,701were created in the past by acquiring the configuration information104from the disk-array device100and have been stored in the information processing device200, the stored configuration lists700,701can be reused. In another example, a maintenance engineer may create the configuration lists by inputting the settings for the disk-array device100from the information processing device200.

The format for the volume-to-FC-port configuration list700is prescribed so that a volume and an FC port are recorded as a pair. The examples inFIG. 6indicate that volume2is correlated with FC port A and that volume3is correlated with FC port B.

The format for the FC-port-to-WWN configuration list701is prescribed so that an FC port102on the disk-array device100and a WWN of an FC port301on a computer300is recorded as a pair. The examples inFIG. 6indicate that FC port A on the disk-array device100is correlated with FC port1(four lowest WWN digits=5002) on a computer300, and that FC port B is correlated with FC port2(four lowest WWN digits=5004).

Next, the management program202verifies whether there are any errors in the configuration-defining tables (S32). This verification is performed by comparing the configuration-defining tables against the configuration lists. The verification procedure will be explained in detail with reference toFIG. 7.

First of all, the management program202analyzes the volume-to-FC-port configuration list700and acquires the following information of path settings about the disk-array device100:(1) There are four volumes, which are specified by1through4.(2) FC port A is correlated with volume2.(3) FC port B is correlated with volume3.(4) No FC port is correlated with volume1or4.

Next, the management program202acquires the following information of security settings about the disk-array device100from the FC-port-to-WWN configuration list701:(5) There are four FC ports, which are specified by A through D.(6) FC port1(four lowest WWN digits=5002) is correlated with FC port A.(7) FC port2(four lowest WWN digits=5004) is correlated with FC port B.(8) No security setup has been performed for FC port C or D.

Next, the management program202acquires the following items of information from the path-configuration-defining table602:(9) An attempt is being made to correlate FC port D with volume6.(10) An attempt is being made to correlate FC port B with volume3.

Next, the management program202acquires the following items of information from the security-configuration-defining table603:(11) An attempt is being made to correlate FC port3(four lowest WWN digits=7002) with FC port D.(12) An attempt is being made to correlate FC port2(four lowest WWN digits=5004) with FC port B.

In accordance with the above information, the management program202verifies the configuration-defining tables. The management program202first verifies the path-configuration-defining table602. When the management program202compares information (9) against information (1), information (2), information (3), and information (4), it finds that information (9) does not comply with the conditions stipulated by information (1). The management program202then finds that information (9) is in error. In this instance, “volume1”, “volume2”, “volume3”, or “volume4” can be provided as a correction candidate for “volume6” that is described within information (9). This correction candidate is displayed when an attempt is made later to correct the configuration-defining tables. In this manner, the labor required for configuration-defining table correction can be reduced.

Next, information (10) is compared against information (1), information (2), information (3), and information (4). Then, information (10) turns out to be the same as information (3), and, the management program202finds that information (10) may be a duplicate definition. Determination of whether information (10) is really a duplicate definition will be made along with the verification result for the security-configuration-defining table603.

Next, the management program202verifies whether there are any errors in the security-configuration-defining table603. When compared with information (5), information (6), information (7), and information (8), information (11) is found to be correct.

Then, when compared with information (5), information (6), information (7), and information (8), information (12) turns out to be the same as information (7). The management program202can find that information (12) may be a duplicate definition. By referring to the verification result for the path-configuration-defining table602, it is found that information (12) is actually a duplicate definition because information (10) and information (12) both relate to FC port B. In this instance, the management program202can provide either “volume1”, “volume2”, or “volume4” as a correction candidate for “volume3” that is described within information (10). The management program202can also provide either “FC port A”, “FC port C”, or “FC port D” as a correction candidate for “FC port B” that is described within information (10). However, if “volume2” is selected as a correction, “FC port A” will be omitted from the correction candidates. As regards “FC port2”, which is described within information (12), no correction candidate will be provided because it is not possible to specify the WWNs of the FC ports301on the computers300connected to the disk-array device100via the SAN400.

Through the above verification process, the management program202was able to find two errors in the configuration-defining tables602,603. One error is that a nonexistent volume is designated (information (9)). The other error is that a duplicate definition is formulated (information (10) and information (12)).

The management program202visually displays the result of the above verification (S33), making it easy for a user to comprehend where and how the settings are erroneous.

The verification result is displayed on the output device208(which may function as the “means for displaying”) that the information processing device200comprises. Further, it is also possible to display the verification result on displaying means provided to another equipment, which is connected to the information processing device200via the LAN500, by transmitting the verification result through the port201towards the other equipment.

FIG. 8andFIG. 9indicate how the paths and security are expressed when the verification result is displayed.FIG. 8shows how the paths are depicted. It indicates the relationship between an FC port102and volume101.FIG. 9depicts the security information. It indicates the relationship between an FC port102and an FC port301.

FIG. 10illustrates how the errors found in the verification process are depicted and what indication is given when no error is found.

When no error is found in the verification process, the associated icons are joined with a line. The illustrated example in the figure shows that the relationship among a volume101, an FC port102, and an FC port301on a computer is established. A duplicate definition is indicated by displaying an “X” mark on the line joining the associated icons.

If a volume101is not found in the configuration-defining5tables although it is designated, a “?” mark will appear next to the icon of the corresponding FC port102. This indicates a situation where there is no volume101that can make a pair with the FC port102.

If an FC port102that does not exist in the configuration lists is designated in both the path-configuration-defining table and security-configuration-defining table, the “?” marks will appear next to the icon of the corresponding volume101and next to the corresponding FC port301on a computer300. This indicates that there is no FC port102that can make a pair with the volume101or the FC port301on the computer300.

If an FC port102that does not exist in the configuration lists is designated in the security-configuration-defining table, the “?” mark will appear next to the corresponding FC port301on a computer300. This indicates that there is no FC port102that can make a pair with the FC port301on the computer300.

If an FC port102missing from the configuration lists is designated in the path-configuration-defining table, the “?” mark will appear next to the corresponding volume101. This indicates that there is no FC port102that can make a pair with the volume101. In addition to the indications described in the above examples, various other styles of expression may be employed.

In compliance with the above expression rules,FIG. 11illustrates the result of a verification that was made with reference toFIG. 7.

Graphically displaying the result of verification as shown inFIG. 11makes it possible to quickly and easily comprehend where and how the settings are erroneous. More specifically, it is possible to understand that the path and security settings for FC port A are both in correct state, that the FC port B has been defined twice, and further that an incorrect volume has been designated for the path setup of FC port D.

Since the result of the above verification indicates that the configuration-defining tables are in error, the setup process ends here (S34) according to the present embodiment. The maintenance engineer who sets the disk-array device100corrects any error in the configuration-defining tables, again makes the management program202load the corrected configuration-defining tables (S30), and performs setup.

The configuration-defining tables are to be corrected as explained below. Corrections are to be made by directly rewriting the data written in the path-configuration-defining table602and security-configuration-defining table603. The verification result shown inFIG. 11makes it possible to readily determine what data in the configuration-defining tables need to be rewritten. In addition, the relevant sections in the configuration-defining tables are marked so as to facilitate identification. The relevant sections are highlighted by, for instance, surrounding the erroneous entries in the configuration-defining tables with a thick line, by changing the color of the surrounding line, or by coloring the relevant cells. To furnish the maintenance engineer with useful information about how to rewrite the relevant erroneous data, the management program202displays correction candidates for such erroneous data on the output device208(which may function as “means for displaying a candidate”). The correction candidates can be displayed, for instance, by opening a pop-up window, which lists correction candidates, when the mouse cursor is positioned over an erroneous cell, or by displaying a list of correction candidates when an erroneous cell is clicked with the mouse cursor positioned over it.

FIG. 12shows the configuration-defining tables that are corrected as explained above. These configuration-defining tables contain no error. Therefore, when a series of setup processing steps is performed (S30through S34), the management program202requests the disk-array device100to change the configuration information (S35).

More specifically, the maintenance program202generates command “AddPath (“1”, “CL1-D”)” and command “AddWWN (“CL1-D”, “00.00.00.00.00.00.70.02”)” as the path and security setup commands in accordance with the path-configuration-defining table602and security-configuration-defining table603, and transmits them together to the disk-array device100. Transmitting to the disk-array device100is made from the port201(which may function as “means for transmitting a setup command”) of the information processing device200via the LAN500.

Upon receipt of the above setup commands, the disk-array device100updates the internally stored configuration information104. Path and security setup is completed accordingly.

According to the presently preferred embodiment, by putting (or loading) disk-array device settings in the configuration-defining tables in electronic-data form in advance, it becomes possible to edit the settings with ease and reuse the configuration-defining tables. Therefore, the labor required for disk-array device setup can be reduced when compared to the use of a conventional method which requires manual entering of settings every time a disk-array device is set up.

The use of a conventional method makes it mandatory to generate setup commands, one by one, with a management program and transmit them to the disk-array device. Therefore, if an error is found after the setup process is half-completed, the already-completed setup steps might be wasted. However, the present embodiment makes it possible to avoid wasting of setup steps because the setup commands can be verified by the management program prior to their transmission to the disk-array device.

Further, in the present embodiment, the verification result of the settings is graphically displayed. Accordingly, a maintenance engineer can readily check for errors and identify their causes. As a result, it is possible to reduce the burden relating to correction of erroneous settings.

Furthermore, erroneous settings are not only graphically displayed but also marked within the configuration-defining tables. This makes it possible to instantly locate the settings that need to be corrected. Since correction candidates are also indicated when such erroneous settings are visually pointed out, errors can be corrected with ease.

While the present invention has been described in terms of preferred embodiments, it should be understood that the invention is not limited to those preferred embodiments, and that variations may be made without departure from the scope and spirit of the invention.

The present invention makes it possible to reduce the labor required for disk-array device setup.