This application relates to and claims priority from Japanese Patent Application No. 2006-036372, filed on Feb. 14, 2006, the entire disclosure of which is incorporated herein by reference.
1. Field of the Invention
The present invention relates to a backup apparatus and a backup method, and it is suited for use in a storage apparatus, for example.
2. Description of the Related Art
In conventional storage systems, it has been commonly performed to hold backup data at a certain point of time, for an online volume used by a user in a backup volume, and, when a failure occurs in the online volume, use the backup data held in the backup volume to restore the online volume to the condition before the failure occurs.
To back up data stored in an online volume in such a storage system, there have been proposed various methods, such as holding data image in an online volume at a certain point of time as it is, and holding only differences from data image in an online volume at a certain point of time.
JP-A-2004-192133 discloses a method for generating a copy volume in which a copy (backup) of a master logical volume can be instantaneously generated.
In a storage system, it is usually necessary to improve the cost performance by creating and containing volumes for more users in one storage apparatus.
However, when data image in an online volume at a certain point of time is held as it is in order to back up data, the same number of backup volumes as the online volumes are required, so that the number of volumes required for one user is at least as twice as the number of online volumes. As a result, in a prior-art storage system employing the backup method, there is a problem that the number of users which can be allocated to one storage apparatus is limited to half the number of volumes which can be created in the storage apparatus.
When it is required to back up data images in an online volume, at multiple points of time, this problem is more significant. In such a case, the number of volumes which can be allocated to users is reduced to less than half the number of volumes which can be created in the storage apparatus.
In a host apparatus used by a user, it is common to perform restoration for each file or each directory when file breakage or operation error occurs. In a storage apparatus in such a storage system, however, restoration is limited to being performed for each volume, and there is a problem that restoration cannot be performed for each file.
The present invention has been made in consideration of the above point and is intended to propose a backup apparatus and a backup method capable of improving the cost performance of a storage apparatus.
In order to solve the problem, in the present invention, a backup apparatus for backing up each of data in one or more online volumes to be backed up which have been created in a storage apparatus is provided with: a control unit for creating a backup volume having a capacity corresponding to at least the summation of the capacities of the online volumes, dividing the storage area of the created backup volume into at least the same number of partitions as the online volumes, and storing backup data for each of the online volumes in a corresponding one of the partitions.
As a result, according to this backup apparatus, it is possible to back up respective online volumes using fewer backup volumes than the online volumes, and it is also possible to allocate all additional volumes creatable in a storage apparatus to online volumes.
Furthermore, in the present invention, a backup method for backing up each of data in one or more online volumes to be backed up which have been created in a storage apparatus is provided with: a first step of creating a backup volume having a capacity corresponding to at least the summation of the capacities of the online volumes, and dividing the storage area of the created backup volume into at least the same number partitions as the online volumes; and a second step of storing backup data for each of the online volumes in a corresponding one of the partitions.
As a result, according to this backup method, it is possible to back up respective online volumes using fewer backup volumes than the online volumes, and it is also possible to allocate all additional volumes creatable in a storage apparatus to online volumes.
According to the present invention, most of volumes creatable in a storage apparatus can be allocated to online volumes, so that it is possible to improve the cost performance of the storage apparatus.
Embodiments of the present invention will be described below in detail with reference to drawings.
(1-1) Configuration of a storage system according to an embodiment
In
The host apparatus 2 is a computer apparatus composed, for example, of a personal computer, a workstation or a mainframe, and it is composed of an input device 10, an output device 11, a storage unit 12, a processing unit 13 and a port 14 connected via a bus 15, as shown in
The input device 10 is a device for a user to input various instructions, and it is composed, for example, of a mouse, a keyboard, a switch, a pointing device, a microphone and the like. The output device 11 is a device for a host apparatus to present various information to a user, and it is composed, for example, of a monitor display and a speaker.
The storage unit 12 is composed of a hard disk device, a memory and the like. In this storage unit 12, there are stored various control programs and various control data, such as an OS (operating system) program 16 and an initiator program 17 for the host apparatus 2 to access the storage apparatus 5 via the network 4.
The processing unit 13 is composed of a processor unit such as a CPU (central processing unit), and it executes relevant processing based on the various control programs and various control data stored in the storage unit 12 and an instruction input via the input device 10, and presents the processing result to a user via the output device 11 as necessary.
The port 14 is connected to the network 4 via a predetermined cable. The port 14 is given a WWN (World Wide Name) or a network address such as an IP (Internet protocol) address for uniquely identifying the host apparatus 2 on the network 4.
The management server 3 is a personal computer apparatus used by an administrator to manage the storage apparatus 5, and it is composed of an input device 20, an output device 21, a storage unit 22, a processing unit 23 and a port 24 connected via a bus 25, as shown in
Description of the input device 20, the output device 21, the processing unit 23 and the port 24 will be omitted because each of them has the same function as a corresponding member of the host apparatus 2. In the storage unit 22, there are stored various control programs and various control data, such as an OS program 26, a backup management program 27 to be described later and a backup management table 28, as shown in
The network 4 is composed of an IP-SAN, a LAN, the Internet, a public line, a dedicated line or the like. The host apparatus 2 and the storage apparatus 5 communicate via this network 4 in accordance with FCP (Fibre Channel Protocol) if the network 4 is FC (Fiber Channel), and in accordance with iSCSI (Internet SCSI) if the network 4 is IP, such as an IP-SAN, a LAN and the Internet. In the examples, description will be made on embodiments in accordance with the iSCSI.
The storage apparatus is composed of a storage controller 30 and a disk storage device 31 as shown in
The iSCSI controller 32 is a controller for controlling sending/receiving of data to/from the host apparatus 2 in accordance with the iSCSI protocol, and it is composed of a storage unit 40, a processing unit 41 and a port 42 connected via a bus 43.
In the storage unit 40, there are stored various control programs and various control data including an iSCSI control program 44 to be described later, an iSCSI session management table 45 and a volume allocation management table 46. The processing unit 41 is composed, for example, of a CPU, and it executes necessary control processing based on the control programs and control data stored in the storage unit 40 and various commands given by the host apparatus 2 or the management server 3. The port 42 is given an address for uniquely identifying the port 42 on the network 4.
The NAS controller 33 is a controller for controlling the NAS function of the storage apparatus 5, and it is composed of a storage unit 50, a processing unit 51 and a port 52 connected via a bus 53.
In the storage unit 50, there are stored various control programs and various control data including an NAS control program 54. The processing unit 51 is composed, for example, of a CPU, and it executes necessary control processing based on the control programs and control data stored in the storage unit 50 and various commands given by the host apparatus 2 or the management server 3. The port 52 is given an address for uniquely identifying the port 52 on the network 4.
The disk controller 34 is composed of a storage unit 60, a processing unit 61 and a storage connection device 62 connected via a bus 63.
In the storage unit 60, there are stored various control programs and various control data including a storage control program 64 and sizing information 65. The processing unit 61 is composed, for example, of a CPU, and it executes necessary control processing based on the control programs and control data stored in the storage unit 60 and various commands given by the host apparatus 2 or the management server 3. The storage connection device 62 is an interface used for communication with the disk storage device 31, and it sends and receives data to be read or written or various commands to and from the disk storage device 31.
The disk storage device 31 is composed of multiple expensive disk devices 31A, such as SCSI disks, or multiple inexpensive disk devices 31A, such as SATA (Serial AT Attachment) disks and optical disks, included therein. In this embodiment, such disk devices may exist alongside each other, or only disk devices 31 of any one kind may be contained in the disk storage device 31.
These disk devices 31A are operated by the disk controller 34 according to a RAID method. On a physical storage area provided by one or more disk devices 31A, one or more logical volumes VOL are defined. Data is stored in the volumes VOL as blocks (hereinafter referred to as logical blocks) with a predetermined size.
Each volume VOL is given a unique identifier (hereinafter referred to as an LUN (logical unit number). In this embodiment, input and output of data is performed by specifying an address, which is combination of this LUN and a number which is given to each logical block and is unique to the logical block (hereinafter referred to as an LBA (logical block address).
(1-2) Backup Function in this Embodiment
Next, description will be made on a backup function employed in the storage system 1 of this embodiment.
The following is one of the characteristics of the storage system 1 of this embodiment: one backup volume BVOL with a capacity corresponding to the summation of capacities of volumes (hereinafter referred to as online volumes as appropriate) VOL for a user to write and read data to and from is created, in the storage apparatus 5 (
In this case, writing and reading of the backup data for each online volume VOL, to and from the backup volume BVOL can be performed with the use of the NAS function (file system function) of the storage apparatus 5, in this storage system 1. Thereby, when a failure occurs in an online volume VOL, restoration of the online volume VOL can be performed for each file or each folder with the use of the backup data stored in the backup volume BVOL.
In order to describe the backup function, a method for managing the online volumes VOL in the storage apparatus 5 will be described first.
Actually, the volume allocation management table 46 is composed of an “entry number (#)” field 46A, a “volume name” field 46B, an “allocated size” field 46C, a “target name” field 46D and an “initiator name” field 46E.
In the “entry number (#)” field 46A among these fields, the entry number of each entry registered with the volume allocation management table 46 is stored. In the “volume name” field 46B, a volume name (for example, LUN) of an online volume VOL corresponding to the entry is stored, and in the “allocated size” field 46C, the capacity of the online volume VOL is stored.
In the “target name” field 46D, an iSCSI target name given to the online volume VOL is stored, and in the “initiator name” field 46E, the iSCSI initiator name of a host apparatus 2 to which the online volume VOL is allocated is stored.
Accordingly, in the example of
Actually, the iSCSI session management table 45 is composed of an “entry number (#)” field 45A, a “volume name” field 45B, a “target name” field 45C, an “initiator name” field 45D and an “iSCSI session” field 45E.
In each of the “entry number (#)” field 45A, the “volume name” filed 45B, the “target name” field 45C and the “initiator name” field 45D, information similar to the information in the “entry number (#)” field 46A, the “volume name” filed 46B, the “target name” field 46D and the “initiator name” field 46E in the volume allocation management table 46 (
In the “ISCSI session” field 45E, information is stored which indicates whether or not a host apparatus 2 to which an online volume VOL corresponding to the entry is allocated is currently accessing the online volume VOL (whether or not a session is performed between the corresponding initiator and target).
Accordingly, in the example of
For example, in the example of
In each of the “entry number (#)” field 28A, the “volume name” field 28C, the “allocated size” field 28D and the “initiator name” field 28E from among these fields, data is stored which is similar to the data stored in the corresponding fields 46A to 46C and 46E among the “entry number (#)” field 46A, the “volume name” filed 46B, the “allocated size” field 46C and the “initiator name” field 46E in the volume allocation management table 46 described above with reference to
In the “storage name” field 28B, the identifier of a corresponding storage apparatus 5 is stored to cope with the case where multiple storage apparatuses 2 exist. Furthermore, in the “NAS authorization information” field 28F, there is stored authorization information about a user who can access a corresponding one of sub-folders 70A to 70n in the backup volume BVOL, which is to be described later (the user's user ID and a password set by the user). For example,
In the “backup status” field 28G, status information indicating whether or not backup for a corresponding on line volume VOL has been completed (hereinafter referred to as a backup status) is stored. In
That is, when an administrator operates the management server 3 to select a preconfiguration procedure mode, the processing unit 23 starts this first preconfiguration procedure RT1, and issues a request to transfer the data in the volume allocation management table 46 (
Subsequently, the processing unit 23 causes a predetermined GUI (graphical user interface) screen for the administrator to select online volumes VOL to be backed up, to be displayed on the output device 21 (SP2). When online volumes VOL to be backed up are selected with the use of this GUI screen, the processing unit 23 registers necessary information about the respective selected online volume VOL with the backup management table 28 described above with reference to
After that, the processing unit 23 stores, for each online volume VOL registered with the backup management table 28, a user ID and a password input by the administrator for each online volume VOL with the use of the above GUI screen and required for a user, who uses the online volume, to access a corresponding one of the subfolders 70A to 70n in the backup volume BVOL, in the “NAS authorization information” field 28F for a corresponding entry in the backup management table 28 (SP3).
After that, the processing unit 23 calculates the summation of the capacities allocated to the online volumes VOL to be backed up, based on the backup management table 28, and sends a volume creation request command to the NAS controller 33 (
Subsequently, the processing unit 23 sends a subfolder creation request command to the NAS controller 33 (
Then, the processing unit 51 (
After that, the processing unit 23 sends an NAS authorization information setting request command to the NAS controller 33 of the storage apparatus 5 to the effect that, for each of the subfolders 70A to 70n created in the backup volume BVOL, the same user ID and password as those set for a corresponding one of the online volumes VOL to be backed up at step SP3 should be set based on the backup management table 28 (SP6). When this NAS authorization information setting request command is received, the processing unit 51 of the NAS controller 33 sequentially sets the specified user ID's and passwords for the specified subfolders 70A to 70n. Thereby, the NAS authorization information is set for each of the subfolders 70A to 70n created in the backup volume BVOL so that only a corresponding user can access the subfolder, as shown in
After that, the processing unit 23 ends the sequence of the preconfiguration procedure.
After that, the processing unit 23 of the management server 3 stores backup data for each of the online volumes VOL to be backed up, which have been registered with the backup management table 28, in a corresponding one of the subfolders 70A to 70n in the backup volume BVOL periodically (for example, every day) based on the backup management program 27 (
That is, the processing unit 23 starts this backup processing, for example, at a predetermined time of a day. It first sets the backup status stored in the “backup status” field 28G (
Subsequently, the processing unit 23 accesses the iSCSI controller 32 of the storage apparatus 5 and causes it to read the data in the above-described iSCSI session management table 45 (
Then, the processing unit 23 selects one entry on the backup management table 28 (SP12). After that, it determines whether or not a session from a corresponding host apparatus 2 is disconnected from an online volume VOL corresponding to the entry (whether or not the corresponding host apparatus 2 is accessing the online volume VOL) based on the data in the iSCSI session management table 45, which has been acquired at step SP11 (SP13).
When obtaining a negative result from this determination, the processing unit 23 proceeds to step SP18. On the other hand, when obtaining a positive result, the processing unit 23 determines whether or not the backup status for the entry selected at step SP12 in the backup management table 28 is “uncompleted” (SP14).
When obtaining a negative result from this determination, the processing unit 23 proceeds to step SP18. On the other hand, when obtaining a positive result, the processing unit 23 controls the NAS controller 33 to mount an online volume VOL corresponding to the entry (SP15) . After that, the processing unit 23 causes the data in this online volume VOL to be stored in one of the subfolders 70A to 70n in the backup volume BVOL, which corresponds to the online volume (SP16). Thereby, the backup for the online volume VOL is held in a corresponding one of the subfolders 70A to 70n in the backup volume BVOL. After that, the processing unit 23 also controls the NAS controller 33 to unmount this online volume VOL (SP16).
Then, the processing unit 23 updates the backup status for a corresponding entry in the backup management table 28 to “completed” indicating that backup has been completed, as shown in
If obtaining a negative result from this determination, the processing unit 23 returns to step SP11 after waiting for a predetermined waiting time (n seconds). After that, sequentially selecting a different entry from the backup management table 28 at step SP12, the processing unit 23 repeats the same processing (SP11 to SP 19, and then to SP11).
Then, when the backup statuses for all the entries in the backup management table 28 have become “completed” (that is, backup has ended for all the entries) or when a specified time-up time has elapsed, and a positive result from the determination at step SP18 is obtained, the processing unit 23 ends the backup processing.
Thus, in this storage system 1, since backup data for each online volume VOL created in the storage apparatus 5 is stored in one backup volume BVOL, all the volumes that can be created afterward can be used as online volumes VOL to be used by users for reading and writing of data. Therefore, according to this storage system 1, creation of online volumes VOL is not restricted by a backup volume BVOL, and therefore, it is possible to considerably improve the cost performance of the storage apparatus 5.
Furthermore, in this storage system 1, to each of subfolders 70A to 70n created in a backup volume VOL by the processing described above, a corresponding user can access using a corresponding host apparatus, through the NAS function of the storage apparatus 5, as shown in
In
That is, this storage system 80 is arranged similarly to the storage system 1 according to the first embodiment except that the content of a backup management program 83 stored in the storage unit 22 of the management server 81 shown in
Actually, in the case of the storage system 80 according to the second embodiment, the sizing information 87 is composed of information about the maximum number of LU's indicating the maximum number of volumes creatable in the storage apparatus 82 (one hundred volumes in the example of
Then, the processing unit 23 of the storage apparatus 81 executes preconfiguration processing for backup, such as selection of online volumes VOL to be backed up and setting of subfolders 70A to 70n of a backup volume BVOL to be the backup destination, in accordance with a second preconfiguration procedure RT3 shown in
Specifically, the processing unit 23 performs the processing of steps SP20 to SP22 similarly to the processing of steps SP1 to SP3 of the first preconfiguration procedure RT1 described above with reference to
Subsequently, the processing unit 23 calculates the number of backup volumes BVOL to be created by dividing the total capacity of the sizes allocated to the respective online volumes VOL to be backed up by the maximum capacity of a volume creatable in the storage apparatus 82 (SP23) based on the backup management table 28. For example, if there are one hundred online volumes VOL to be backed up, a capacity of 20 GB is allocated to each of them, and the maximum capacity possible in the storage apparatus 82 is 500 GB, then it is calculated that four backup volumes BVOL are required, as shown in [Formula 1] below.
20×100÷500=4 . . . (1)
Then, the processing unit 23 sends a volume creation request command to an NAS controller 84 of the storage apparatus 82 to the effect that the calculated number of backup volumes BVOL each of which has the maximum capacity possible in the storage apparatus 82 should be created, giving them a path name of “/bkupN (N=0, 1, 2, . . . )”. The processing unit 51 (
Subsequently, the processing unit 23 sends a subfolder creation request command to the NAS controller 84 of the storage apparatus 82 to the effect that subfolders 70A to 70n (70A-1 to 70n-1 and 70A-2 to 70n-2) for the respective online volumes VOL to be backed up, which have been registered with the backup management table 28, should be created in a corresponding backup volume BVOL. In this case, the processing unit 23 sequentially sends initiator names associated with the respective online volumes VOL to be backed up and a quota setting request command to the effect that a quota (capacity limit) corresponding to the allocated size which has been allocated to each of the subfolders 70A to 70n should be set, together with the subfolder creation request command, to the NAS controller 84 of the storage apparatus 82.
The processing unit 51 (
After that, the processing unit 23 sets NAS authorization information for each of the subfolders 70A to 70n similarly to step SP6 of the first preconfiguration procedure RT1 described above with reference to
As described above, in this storage system 80, backup data for respective online volumes VOL created in the storage apparatus 82 is dispersed and stored in multiple NAS volumes. Accordingly, in addition to the effect obtained by the storage system 1 according to the first embodiment, it is also possible to obtain an effect of capable of practically sufficiently responding even when the capacity of an NAS volume creatable in the storage apparatus 82 is restricted.
In
Actually, the processing unit 23 (
That is, the processing unit 23 periodically starts this backup processing and performs the processing of steps SP30 to SP32 similarly to the processing of steps SP10 to SP12 of the first backup procedure RT2 described above with reference to
After that, the processing unit 23 determines whether or not a session from a corresponding host apparatus 2 is currently disconnected from the online volume VOL corresponding to the entry selected at step S32, based on the data in the iSCSI session management table 45, which has been acquired at step SP31 (SP33).
When obtaining a negative result from this determination, the processing unit 23 proceeds to step SP41. On the other hand, when obtaining a positive result, the processing unit 23 determines whether or not the backup status for the entry selected at step SP12 in the backup management table 28 is “uncompleted” (SP34).
When obtaining a negative result from this determination, the processing unit 23 proceeds to step SP18. On the other hand, when obtaining a positive result, the processing unit 23 sends a mount request command in which the online volume VOL is specified, to an NAS controller 94 (SP35)
The processing unit 51 (
After that, the processing unit 23 of the management server 91 determines whether or not a virus was not detected in the virus check processing performed at step SP35 or a virus was detected but successfully removed (SP36) based on the virus check result notification from the storage apparatus 92.
To obtain a positive result from this determination means that a virus was not detected or a virus was detected but successfully removed. In this case, the processing unit 23 performs the processing of steps SP37 to SP42 similarly to the processing of steps SP16 to SP19 of the first backup procedure RT2 (
On the other hand, to obtain a negative result from the determination at step SP36 means that a virus was detected but could not be removed. In this case, the processing unit 23 controls the NAS controller 94 of the storage apparatus 92 to unmount the online volume VOL targeted then (SP39).
After that, the processing unit 23 updates the backup status of the corresponding entry in the backup management table 28 (
After that, the processing unit 23 determines whether or not the backup status for all the entries in the backup management table 28 has become “completed” (“completed (with virus)”) or a predetermined time-up time has elapsed (SP41). If obtaining a negative result, then the processing unit 23 returns to step SP31 after waiting for a predetermined waiting time (n seconds) (SP42). After that, sequentially selecting a different entry from the backup management table 28 at step SP32, the processing unit 23 repeats the same processing (SP31 to SP42, and then to SP31).
Then, when the backup status for all the entries in the backup management table 28 has become “completed” (that is, backup has ended for all the entries) or when the specified time-up time has elapsed, and a positive result is obtained from the determination at step SP41, the processing unit 23 ends the backup processing.
As described above, in this storage system 90, when each online volume VOL created in the storage apparatus 92 is backed up, virus check for data in the online volume VOL is also performed, and the data in the online volume VOL is not backed up when the data is infected by a virus. Therefore, it is possible to certainly and effectively prevent backup data for the other online volumes VOL stored in the backup volume BVOL from being infected by the virus.
Furthermore, in this storage system 90, if data in an online volume VOL to be backed up is infected by a virus, the data is not backed up, as described above; and therefore, the data before it was infected by the virus can be held in a corresponding one of subfolders 70A to 70n in the backup volume BVOL. For example, restoration of the virus-infected data in the online volume VOL can be performed with the use of this backup data which is not infected by the virus.
In the above first to third embodiments, description has been made on the case where the NAS controller 33, 84 or 94 and volumes (online volumes VOL and backup volumes BVOL) are provided in the same one storage apparatus 5, 82 or 92. However, the present invention is not limited thereto. The present invention can be applied to a case where the NAS controller 33, 84 or 94 and the volumes are provided in different storage apparatuses.
Furthermore, in the embodiments described above, description has been made on the case where the same number of subfolders 70A to 70n as online volumes VOL is created in a backup volume BVOL (a case where a backup volume BVOL is divided into the same number of partitions as online volumes VOL). However, the present invention is not limited thereto. It is also possible to create more subfolders 70A to 70n than online volumes VOL in a backup volume BVOL in advance in consideration of increase in the number of online volumes VOL.
Furthermore, in the above first to third embodiments, description has been made on the case where a backup volume having the total capacity corresponding to the summation of capacities of online volumes is created; at least the same number of subfolders 70A to 70n as the online volumes is created in the storage area of the created backup volume; and a control unit for storing backup data for each online volume in a corresponding one of subfolders 70A to 70n is composed of the management server 3, 81 or 91 and the storage controller 30 of the storage apparatus 5, 82 or 92. However, the present invention is not limited thereto. All the functions of the control unit may be provided in the storage apparatus 5, 82 or 92. Specifically, the backup management program 27, 83 or 93 and the backup management table 28 are provided in the storage apparatus 5, 82 or 92, and the storage apparatus 5, 82 or 92 is constructed to self-containedly perform the backup processing for itself based on the backup management program 27, 83 or 93 and the backup management table 28.
Furthermore, in the embodiment described above, description has been made on the case where an online volume is a volume with a fixed capacity. However, the present invention is not limited thereto. For example, the present invention can be applied to the case where an online volume VOL is a volume the capacity of which is increased depending on the amount of data written by a user as disclosed in JP-A-2003-015915. In this case, an “actually used size” field 100A is provided in a volume allocation management table 100 as shown in
The present invention can be applied to various storage apparatuses.
Number | Date | Country | Kind |
---|---|---|---|
2006-036372 | Feb 2006 | JP | national |