WO2015029198A1 - ストレージシステム - Google Patents

ストレージシステム Download PDF

Info

Publication number
WO2015029198A1
WO2015029198A1 PCT/JP2013/073240 JP2013073240W WO2015029198A1 WO 2015029198 A1 WO2015029198 A1 WO 2015029198A1 JP 2013073240 W JP2013073240 W JP 2013073240W WO 2015029198 A1 WO2015029198 A1 WO 2015029198A1
Authority
WO
WIPO (PCT)
Prior art keywords
storage
capacity
vol
information
storage capacity
Prior art date
Application number
PCT/JP2013/073240
Other languages
English (en)
French (fr)
Inventor
宗士 中川
Original Assignee
株式会社日立製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社日立製作所 filed Critical 株式会社日立製作所
Priority to PCT/JP2013/073240 priority Critical patent/WO2015029198A1/ja
Priority to US14/350,602 priority patent/US9442659B2/en
Publication of WO2015029198A1 publication Critical patent/WO2015029198A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device

Definitions

  • the present invention relates to a technique for accurately grasping a storage capacity actually used in a storage system.
  • the cloud provider side also actually uses the storage capacity including the allocated storage capacity in the storage device recognized by the server OS and its backup capacity. There is a need to know exactly.
  • Patent Document 1 As a technology related to these, there is a data management method in a storage system for performing backup described in Patent Document 1.
  • the process of newly adding data is a process that increases the capacity used in the storage device.
  • the processing for updating existing data only updates the contents of the existing data and does not increase the storage capacity used.
  • the conventional technology that does not take these into consideration has a problem in that the storage capacity used is insufficiently managed, and the exact storage capacity used by the user cannot be grasped.
  • the backup according to the present invention distinguishes between the process of adding new data and the process of updating existing data, and the used capacity only for the process of adding new data Manage to increase. As a result, the system administrator or user can accurately grasp the used storage capacity.
  • FIG. 1 is a diagram showing a physical configuration example of a storage system configured with a storage apparatus of the present invention.
  • FIG. 2 is a block diagram illustrating a hardware configuration example of the client terminal.
  • FIG. 3 is a block diagram showing a configuration example of hardware and software of the capacity management server of the present invention.
  • FIG. 4 is a block diagram showing a configuration example of hardware and software of the storage apparatus of the present invention.
  • FIG. 5 is a diagram showing a configuration example of the variable capacity management table for primary VOL of the present invention.
  • FIG. 6 is a diagram showing a configuration example of the secondary VOL variable capacity management table of the present invention.
  • FIG. 7 is a diagram showing a configuration example of the capacity management table of the present invention.
  • FIG. 1 is a diagram showing a physical configuration example of a storage system configured with a storage apparatus of the present invention.
  • FIG. 2 is a block diagram illustrating a hardware configuration example of the client terminal.
  • FIG. 3 is a block diagram showing
  • FIG. 8 is a flowchart showing the entire process of the variable capacity management in the first embodiment of the present invention.
  • FIG. 9 is a flowchart showing a process for managing the variable capacity in the primary VOL of the present invention.
  • FIG. 10 is a flowchart showing backup processing and variable capacity management processing to the secondary VOL of the present invention.
  • FIG. 11 is a flowchart showing processing for managing backup capacity in the capacity management server of the present invention.
  • FIG. 12 is a flowchart showing overall processing of variable capacity management in the second embodiment of the present invention.
  • management table various types of information may be described using an expression such as “management table”, but the various types of information may be expressed using a data structure other than a table. Further, the “management table” can be referred to as “management information” to indicate that it does not depend on the data structure.
  • the program is executed by a processor, for example, an MP (Micro Processor) or a CPU (Central Processing Unit), and performs a predetermined process.
  • a processor for example, an MP (Micro Processor) or a CPU (Central Processing Unit), and performs a predetermined process.
  • the subject of processing may be a processor because the storage resource (for example, memory) and the communication interface device (for example, communication port) are used as appropriate.
  • the processor may have dedicated hardware in addition to the CPU.
  • the computer program may be installed on each computer from a program source.
  • the program source may be provided by, for example, a program distribution server or a storage medium.
  • each element for example, the controller can be identified by a number or the like, but other types of identification information such as a name may be used as long as it is identifiable information.
  • identification information such as a name
  • the same reference numerals are given to the same parts, but the present invention is not limited to the present embodiment, and any application examples that meet the idea of the present invention are technical. Included in the range. Further, unless specifically limited, each component may be plural or singular.
  • FIG. 1 is a diagram showing a physical configuration example of a storage system configured with a storage apparatus of the present invention.
  • the storage system 10 includes a data center 1 system connected to the client terminal 20 and a data center 2 system.
  • the data center 1 includes a device and system of a storage device 40a connected to the capacity management server 30, the network device 90, the network device 91, and the client terminal 20.
  • the data center 2 includes network devices 92 and storage devices 40b.
  • the client terminal 20 is a computer that is connected to the storage device 40a via the network device 90, and writes data to the storage device 40a and reads data from the storage device 40a.
  • the client terminal 20 is, for example, a host computer, a server, a PC (personal computer), a multi-function portable terminal, or the like.
  • the capacity management server 30 is a server that manages the storage capacity used in each storage device, and manages the used capacity of each volume in each storage device by a capacity management table (described later).
  • a storage area composed of a plurality of storage devices (HDD (Hard Disk Drive) and SSD (Solid State Drive)) is managed as a storage pool 41.
  • a storage area having a storage capacity is allocated.
  • the storage device 40b of the data center 2 also includes a storage pool 49.
  • the storage device 40a and the storage device 40b are connected by a dedicated inter-center connection network 4, and data copy is performed remotely between storage devices (between cases).
  • the capacity management server 30 and the storage devices 40a to 40b are connected via the network device 91, the network 5, and the network device 92.
  • the storage device 40a and the storage device 40b may be collectively referred to as the storage device 40.
  • the data center 1 and the data center 2 are connected by a dedicated line, and the remote copy function is used to perform backup during business.
  • the storage apparatus 40 generates a primary volume (primary VOL) or a secondary volume (secondary VOL) having a predetermined storage capacity together with the storage areas allocated from the storage pool.
  • the storage apparatus 40a has a secondary VOL1 43 that forms a pair with the primary VOL1 42, and further has a primary VOL2 45 that forms a pair with the secondary VOL2 46 of the storage apparatus 40b.
  • the contents of the primary VOL1 42 are made redundant by copying (reference numeral 44) to the secondary VOL1 43, and the data is backed up.
  • the copy method includes a synchronous copy in which an update in the primary VOL is immediately reflected in the secondary VOL, and an asynchronous copy in which a predetermined time has elapsed.
  • difference or unreflected data is managed using a journal (JNL) volume (JVOL).
  • JVOL-2P 48a is a journal volume for primary VOL2 45
  • JVOL-2S 48b is a secondary volume for secondary VOL246.
  • the used storage capacity hereinafter referred to as used capacity
  • the incremental storage capacity hereinafter referred to as incremental capacity
  • the released storage capacity hereinafter referred to as released capacity
  • the update storage capacity hereinafter referred to as updated
  • FIG. 2 is a block diagram illustrating a hardware configuration example of the client terminal.
  • the client terminal 20 includes a CPU 201 that executes programs stored in the memory 202, a memory 202 that stores programs and data, a built-in HDD 203 that stores various programs and data, and communication for connecting to the storage device 40a via the network device 90.
  • communication I / F for example, a liquid crystal display
  • an input unit 206 for example, a keyboard
  • FIG. 3 is a block diagram showing a configuration example of hardware and software of the capacity management server of the present invention.
  • the capacity management server 30 is a server that centrally manages the storage capacity of each storage device, and stores a CPU 301 that executes a program stored in the memory 302, a memory 302 that stores programs and data and tables, and various programs and data.
  • a display unit 305 for example, a liquid crystal display
  • An input unit 306 for example, a keyboard
  • receives data, commands, and the like is included, and these components are connected to each other via a system bus 307.
  • a capacity management program 321 and a capacity management table 70 are stored.
  • the capacity management program 321 sends a storage capacity change amount report request to each storage device to acquire each capacity data, updates and manages the capacity management table 70, and displays each capacity data on the display unit 305. It has a function to display.
  • the capacity management table 70 is a table for managing each capacity data in the primary VOL and the secondary VOL forming a pair with the primary VOL for each measurement time.
  • FIG. 4 is a block diagram showing a configuration example of hardware and software of the storage apparatus of the present invention.
  • the storage device 40 is connected to the storage device 40a via the CPU 401 that executes programs stored in the memory 402, the memory 402 that stores programs and data, the plurality of HDDs 403 that store various programs and data, and the network device 91.
  • a communication I / F 404 is provided, and these components are connected to each other via a system bus 405.
  • the memory 402 stores an intra-chassis backup program 421, an inter-chassis backup program 422, a primary / secondary VOL variable capacity management program 423, a primary VOL variable capacity management table 50, and a secondary VOL variable capacity management table 60.
  • the in-chassis backup program 421 performs data copy between the primary VOL (for example, primary VOL2 45) and secondary VOL (for example, secondary VOL2 46) in the same storage device, and backs up the primary VOL data to the secondary VOL. It is a program to do. For example, as shown in FIG. 1, it is a program for copying the data of the primary VOL1 42 to the secondary VOL1 43 (reference numeral 44) and backing it up.
  • the inter-chassis backup program 422 is a program for performing data copy between the primary VOL and the secondary VOL in different storage apparatuses, and backing up the primary VOL data to the secondary VOL.
  • this is a program for copying the data of the primary VOL2 45 to the secondary VOL2 46 (reference numeral 47) and backing it up.
  • the primary / secondary VOL variable capacity management program 423 is a program for managing each capacity (use / increment / release / update, unreflected capacity (capacity not reflected in the secondary VOL)) and measurement time information in the primary VOL and secondary VOL.
  • the primary VOL variable capacity management table 50 and the secondary VOL variable capacity management table 60 are tables for managing storage capacity information of the primary VOL and secondary VOL, respectively. Details will be described later.
  • FIG. 5 is a diagram showing a configuration example of the variable capacity management table for primary VOL of the present invention.
  • the primary VOL variable capacity management table 50 is a table for managing volume information for each primary VOL.
  • a measurement start time 507, a scheduled measurement end time 508, a secondary VOL number 509, a secondary VOL entry number 510, and previous confirmation information 511 are provided.
  • the volume group 501 is information for uniquely identifying the group to which the primary VOL belongs.
  • the primary VOL_ID 502 is information for uniquely identifying the primary VOL.
  • the used capacity 503 is an actual storage capacity used in the primary VOL.
  • the incremental capacity 504 is a capacity that is newly allocated and used after the end of the previous measurement.
  • the released capacity 505 is a capacity that has been released by deleting a storage area after the end of the previous measurement.
  • the updated capacity 506 is a capacity updated with respect to the data stored in the allocated storage area.
  • the used capacity 503, the incremental capacity 504, the release capacity 505, and the update capacity 506 are updated by writing data from the client terminal 20.
  • the measurement start time 507 and the scheduled measurement end time 508 store the start time and the scheduled measurement end time in the measurement of the used capacity 503, the incremental capacity 504, the release capacity 505, and the update capacity 506. Moreover, although the measurement time of this example is 1 day or 2 days, it may be a week or a unit of one hour.
  • the secondary VOL number 509 indicates the number of secondary VOLs that form a pair with the primary VOL.
  • the secondary VOL forming a pair with the primary VOL can be identified by comparing the entry number of the secondary VOL entry number 510 with the entry number 610 of the secondary VOL variable capacity management table 60. Note that the secondary VOL_ID of each secondary VOL forming a pair may be stored in the secondary VOL entry number 510 so that the correspondence between the primary VOL and the secondary VOL can be directly understood.
  • the previous confirmation information 511 stores the used capacity 503, the incremental capacity 504, the release capacity 505, the update capacity 506, the measurement start time 507, and the planned measurement end time 508 when the previous measurement end scheduled time is reached.
  • the capacity management server 30 acquires the information stored in the last confirmed information 511 periodically or when receiving an instruction from the system administrator / user. Alternatively, the accumulated value (determined value) of each capacity at the time of receiving the instruction may be stored in the previous confirmed information 511 by an information acquisition instruction from the capacity management server 30. The cumulative value of the variable capacity is stored in the previous confirmation information 511, and at the same time, the entry data of the increment / release / update capacity is cleared.
  • FIG. 6 is a diagram showing a configuration example of the secondary VOL variable capacity management table of the present invention.
  • the secondary VOL variable capacity management table 60 includes an entry number 601, secondary VOL type 602, secondary VOL_ID 603, used capacity 604, incremental capacity 605, release capacity 606, update capacity 607, unreflected incremental capacity 608, unreflected free capacity 609, An unreflected update capacity 610, a next reflection scheduled time 611, and previous confirmation information 612 are provided.
  • the entry number 601 is information for uniquely identifying the primary VOL that forms a pair with the secondary VOL.
  • the secondary VOL type 602 is information indicating whether the secondary VOL exists in the storage apparatus to which the primary VOL forming the pair belongs or exists outside the storage apparatus to which the secondary VOL belongs. However, if the storage device is not the storage device, “outside the case” or “between cases” is set. This information identifies the data copy destination at the time of data backup.
  • the secondary VOL_ID 603 is information for uniquely identifying the secondary VOL. For example, the secondary VOL_ID 603 is represented by a volume name if it is inside the chassis, and by a storage device name and volume name if it is outside the chassis.
  • the used capacity 604, the incremental capacity 605, the release capacity 606, and the update capacity 607 are the same as in FIG. 5, but each capacity reflected in the secondary VOL is stored at the time of asynchronous copy from the primary VOL to the secondary VOL.
  • the unreflected incremental capacity 608, the unreflected release capacity 609, and the unreflected update capacity 610 store each capacity that is not reflected in the secondary VOL during asynchronous copy from the primary VOL to the secondary VOL.
  • synchronous copy is performed, so that the fluctuation content on the primary VOL side is immediately reflected on the secondary VOL side.
  • the Asynchronous copy is performed when the secondary VOL_ID 603 is a copy pair with a secondary VOL with “DF800 LUN0”, so the fluctuation content on the primary VOL side is not immediately reflected on the secondary VOL side, and the capacity of the content that is not reflected is not reflected. They are stored in the incremental capacity 608, the unreflected release capacity 609, and the unreflected update capacity 610.
  • the second row of the secondary VOL variable capacity management table 60 is the inter-body copy (asynchronous copy), so it is added to each unreflected capacity until the copy is executed, and the inter-body copy executed capacity is reflected. At the same time as added capacity is added to each capacity, unreflected capacity is subtracted. When the inter-body copy is completely completed, the unreflected capacity is cleared to zero.
  • the next reflection scheduled time 611 is a scheduled time for reflecting the unreflected data in the secondary VOL.
  • the scheduled time is stored during asynchronous copying, but not stored during synchronous copying.
  • a used capacity 604 an incremental capacity 605, a released capacity 606, and an updated capacity 607 at the time when the previous scheduled measurement end time is reached are stored.
  • the capacity management server 30 acquires the information stored in the last confirmed information 612 at the time of receiving a regular or user instruction.
  • the accumulated value (determined value) at the time of receiving the instruction may be stored in the previous confirmed information 612 by an information acquisition instruction from the capacity management server 30.
  • the cumulative value of the fluctuation capacity is stored in the previous confirmation information 612, and at the same time, the data of the increment / release / update capacity entry is cleared.
  • the secondary VOL variable capacity management table 60 is dedicated to inter-body copy. It is good as a table.
  • Incremental capacity measurement assumed in the present embodiment is executed based on the measurement time set in the primary VOL variable capacity management table 50. Therefore, a time stamp entry is provided in the secondary VOL variable capacity management table 60.
  • the present invention is not limited to this, and independent entries (measurement start time and scheduled measurement end time) are provided in the secondary VOL variable capacity management table 60, and the contents of the primary VOL variable capacity management table 50 and the secondary VOL variable capacity management table are provided. The reliability of stored data may be assured by comparing and verifying the content of 60.
  • FIG. 7 is a diagram showing a configuration example of the capacity management table of the present invention.
  • the capacity management table 70 manages each capacity of the primary VOL / intra-casing copy secondary VOL / inter-casing copy secondary VOL in the storage apparatus connected to the capacity management server 30 together with the measurement time information, and calculates the actual used capacity. This table is created for each primary VOL and capacity management is performed. In the example of FIG. 7, it is assumed that the VOL group 501 is “VG01” and the primary VOL_ID 502 is a primary VOL having “VLU0”.
  • the capacity management table 70 includes a measurement time 701, a primary VOL capacity storage entry 702, an intra-box copy secondary VOL capacity storage entry 703, and an inter-box copy secondary VOL capacity storage entry 704. You may provide the column of the acquisition time which acquired.
  • the measurement time 701 is a time stamp of the fixed time of the variable capacity of the storage device. Note that the measurement time 701 may store a reception time of a variable capacity report request from the capacity management server 30 described later, or a reception time of a variable capacity acquisition request from the client terminal 20.
  • the primary VOL capacity storage entry 702 includes entries for used capacity (GB), incremental capacity (GB), release capacity (GB), and update capacity (GB).
  • the intra-box copy secondary VOL capacity storage entry 703 includes entries for used capacity (GB), variable capacity (GB), and update capacity (GB), but does not have an incremental capacity or a free capacity.
  • the inter-box copy secondary VOL capacity storage entry 704 includes entries for used capacity (GB), variable capacity (GB), and update capacity (GB), but does not have an incremental capacity or a release capacity.
  • the use / increment / release / update capacity of the primary VOL capacity storage entry 702 is the same as that of the storage apparatus.
  • the fluctuation capacity in the intra-box copy secondary VOL capacity storage entry 703 and the inter-box copy secondary VOL capacity storage entry 704 is the sum of the incremental capacity and the release capacity.
  • the total value is stored for each inter-body copy sub-VOL or inter-body copy sub-VOL forming a pair with the primary VOL.
  • FIG. 8 is a flowchart showing the entire process of the variable capacity management in the first embodiment of the present invention.
  • the subject of processing is each program of the capacity management server 30 and the storage device 40, but each CPU on which each program operates may be used.
  • the capacity management server 30 sets a VOL group for each user and generates a primary VOL. At the same time, the capacity management server 30 requests the storage device 40a to initialize the variable capacity management table 50 for primary VOL and the variable capacity management table 60 for secondary VOL.
  • the capacity management program 307 of the capacity management server 30 initializes the capacity management table 70.
  • the primary / secondary VOL variable capacity management program 423 of the storage device 40a initializes the primary VOL variable capacity management table 50 and the secondary VOL variable capacity management table 60.
  • the primary / secondary VOL variable capacity management program 423 sets necessary entry contents in the primary VOL variable capacity management table 50 and deletes the contents of the capacity and time. That is, the VOL group 501, primary VOL_ID 502, secondary VOL number 509, secondary VOL entry number 510 are set, capacity data from reference numerals 503 to 506, time data of reference numerals 507 and 508, and previous confirmation information of reference numeral 511. Delete the contents.
  • V01 is stored in the VOL group 501 in the first row
  • VLU0 is stored in the primary VOL_ID 502
  • 2 is stored in the secondary VOL number 509
  • the secondary VOL entry number 510 is stored.
  • “0” is set for each capacity, and the time information 507/508 and the previous confirmation information 511 are set to “NULL (blank)”.
  • the primary and secondary VOL variable capacity management program 423 sets predetermined contents in the entry number 601, secondary VOL type 602, and secondary VOL_ID 603. Delete the contents up to.
  • the initial capacity allocated from the storage pool to the virtual VOL may be stored in the used capacity entry, and the increment / release / update data may be cleared to zero. .
  • the client terminal 20 makes a data write request to the storage device 40a.
  • the storage apparatus 40a executes data writing to the primary VOL.
  • the primary / secondary VOL variable capacity management program 423 executes the primary VOL variable capacity determination process shown in FIG.
  • the positive VOL variable capacity management table 50 is updated, and the variable capacity in the positive VOL can be grasped. Details will be described with reference to FIG.
  • the primary / secondary VOL variable capacity management program 423 determines whether a secondary VOL exists in the primary VOL to which data has been written with reference to the secondary VOL number 509 in the primary VOL variable capacity management table 50. If the stored value of the secondary VOL number 509 is 0 (No in S814), the primary / secondary VOL fluctuation capacity management program 423 determines that there is no secondary VOL, and executes S817.
  • the primary / secondary VOL fluctuation capacity management program 423 determines that there is a secondary VOL, and specifies the secondary VOL to which data is to be copied next. Entry number 510 is referred to.
  • the primary / secondary VOL variable capacity management program 423 causes the intra-chassis backup program 421 or the inter-chassis backup program 422 to execute data copy processing (S815) using the acquired sub-VOL information.
  • the intra-chassis backup program 421 or the inter-chassis backup program 422 executes data copy processing to the secondary VOL.
  • the primary / secondary VOL variable capacity management program 423 updates the secondary VOL variable capacity management table 60 according to the progress of the data copy process.
  • the primary / secondary VOL variable capacity management program 423 executes the secondary VOL variable capacity determination process shown in FIG.
  • the secondary VOL variable capacity management table 60 is updated, and the variable capacity in the secondary VOL can be grasped. Details will be described with reference to FIG. Further, the storage apparatus 40 executes the processing of S821 and S812 to S816 for a certain period of time (for example, between the measurement start time 507 and the scheduled measurement end time 508 in FIG. 5), and the primary VOL variable capacity management table 50 and The contents of the secondary VOL variable capacity management table 60 are updated to manage the storage capacity.
  • the capacity management program 321 transmits a report request for the fluctuation capacity of the corresponding primary VOL and secondary VOL to the storage apparatus 40a.
  • This variable capacity report request is sent when the backup is completed (data copy is completed), but it may be sent periodically by a scheduler or the like, or a capacity totaling request accepted by the capacity management server 30 or the client terminal 20 It may be triggered by.
  • step S817 the primary / secondary VOL variable capacity management program 423 transmits the variable capacity report processing for the received variable capacity report request, the variable capacity and time information of the corresponding primary VOL and secondary VOL to the capacity management server 30.
  • the capacity management program 321 totals the received variable volumes of the primary VOL and the secondary VOL, and displays the aggregated result together with time information on the display unit 305 of the capacity management server 30, thereby indicating the capacity usage status in the system. You can let the administrator know. At this time, as shown in S805, the display unit 205 of the client terminal 20 may be requested to display the counting result and time information. By doing so, the user can also grasp the capacity usage status.
  • variable capacity management process when the variable capacity management process is performed after a lapse of time after the primary VOL is generated, the unreflected data capacity to the secondary VOL in inter-box copy may be initialized after the first asynchronous copy is completed.
  • the variable capacity report request may be periodically acquired by a scheduler or the like, or may be acquired by an instruction from a user or a system administrator.
  • Data copy processing may also be executed in response to a backup instruction, issue of a capacity management totaling command, and a request to display a totaling result. It is also possible to divert the determination processing result for the primary VOL in the case of intra-body copying in the sub-VOL variable capacity determination processing in S816.
  • FIG. 9 is a flowchart showing a process for managing the variable capacity in the primary VOL of the present invention.
  • the storage apparatus 40a receives a write command and write data from the client terminal 20.
  • the storage apparatus 40a stores the write data in the storage pool to which the primary VOL to be written belongs.
  • step S903 the primary / secondary VOL variable capacity management program 423 determines whether a new storage area has been allocated by data writing. When a new storage area is allocated (Yes), the primary / secondary VOL variable capacity management program 423 executes S904, and when not allocated (No), executes S907.
  • the primary / secondary VOL variable capacity management program 423 adds the capacity of the newly allocated storage area to the capacity of the used capacity 503 and the incremental capacity 504 of the primary VOL variable capacity management table 50.
  • the primary / secondary VOL variable capacity management program 423 determines whether the write data capacity is larger than the new allocated capacity. If it is larger (Yes), the primary / secondary VOL variable capacity management program 423 determines that there is an update of the existing data by the write data, and executes S906. If not large (No), the primary / secondary VOL variable capacity management program 423 executes S910.
  • the primary / secondary VOL variable capacity management program 423 adds the value obtained by subtracting the newly allocated capacity from the write data capacity to the value of the update capacity 506 of the primary VOL variable capacity management table 50.
  • the primary / secondary VOL variable capacity management program 423 executes S907 and determines whether the writing area has been released. If the write command is a delete command or if all the write data is “0”, the primary / secondary VOL variable capacity management program 423 determines that the write area has been released (Yes) and executes S909. When it is determined that the write area is not released (No), the primary / secondary VOL variable capacity management program 423 executes S908.
  • the primary / secondary VOL variable capacity management program 423 adds the write data capacity to the value of the update capacity 506 of the primary VOL variable capacity management table 50.
  • the primary / secondary VOL variable capacity management program 423 adds the released data capacity (the capacity of the 0 data writing area or the data deleting area) to the value of the released capacity 505 of the primary VOL variable capacity management table 50.
  • the above-described processing from S903 to S909 is the positive VOL variable capacity determination processing S813.
  • the primary / secondary VOL variable capacity management program 423 determines from the primary VOL variable capacity management table 50 whether there is a secondary VOL that forms a pair with the primary VOL. This process is equivalent to the process of S814 described above. When there is a secondary VOL (Yes), the primary / secondary VOL variable capacity management program 423 executes S911, and when there is no secondary VOL (No), S912 is executed.
  • Process S911 is a data copy to the secondary VOL and a variable capacity determination process. Details will be described with reference to FIG.
  • step S912 the primary / secondary VOL variable capacity management program 423 determines whether or not the variable capacity determination timing has been reached based on the scheduled measurement end time 508 in the primary VOL variable capacity management table 50. If the measurement end time of the scheduled measurement end time 508 is the same as the current time, the primary / secondary VOL variable capacity management program 423 determines that the variable capacity determination timing has been reached. When it is determined that it has reached (Yes), the primary / secondary VOL variable capacity management program 423 executes S913, and when it is determined that it has not reached (No), the processing is terminated.
  • step S913 the primary / secondary VOL variable capacity management program 423 stores the accumulated value of each capacity and time data (data from the used capacity 503 to the scheduled measurement end time 508 in FIG. 5) in the previously determined information 511 of the primary VOL variable capacity management table 50. ) And the accumulated values and time data excluding the used capacity 503 are cleared.
  • FIG. 10 is a flowchart showing backup processing and variable capacity management processing to the secondary VOL of the present invention. This backup is executed when data is written to the primary VOL, but may be periodically executed by a scheduler or the like, or may be triggered by a capacity totaling request received by the capacity management server 30 or the client terminal 20. .
  • the primary / secondary VOL variable capacity management program 423 determines whether the secondary VOL that forms a pair with the primary VOL exists in the enclosure. If it exists in the chassis (Yes), the primary / secondary VOL variable capacity management program 423 causes the in-casing backup program 421 to execute synchronous copy. When the secondary VOL exists outside the enclosure (other storage apparatus) (No), the primary / secondary VOL variable capacity management program 423 causes the inter-box backup program 422 to execute asynchronous copy.
  • the in-box backup program 421 stores the write data from the client terminal 20 in the storage pool to which the secondary VOL belongs.
  • the primary / secondary VOL variable capacity management program 423 adds a numerical value to the same item in the secondary VOL variable capacity management table 60 as the item added to the primary VOL variable capacity management table 50.
  • the inter-box backup program 422 stores the write data from the client terminal 20 in the differential copy area (for example, JVOL-2P 48a in FIG. 1). Note that the difference data stored in the journal volume JVOL-2P 48a is treated as an unreflected capacity, and is not used for calculating the actual used capacity.
  • the primary / secondary VOL variable capacity management program 423 adds a numerical value to an unreflected item in the same secondary VOL variable capacity management table 50 as the item added to the primary VOL variable capacity management table 60.
  • the processing of S1003 and S1005 and the processing of S1008 and S1009 described later are the sub-VOL variable capacity determination processing of processing S816 of FIG.
  • the primary / secondary VOL variable capacity management program 423 determines whether the inter-body copy timing has been reached based on the time information set at the next reflection scheduled time 611 of the secondary VOL variable capacity management table 60. When the inter-body copy timing is reached (Yes), the primary / secondary VOL fluctuation capacity management program 423 requests the inter-chassis backup program 422 to execute the processing S1007. If not reached (No), the primary / secondary VOL variable capacity management program 423 executes S1010.
  • the inter-chassis backup program 422 asynchronously copies the differential data to the pair target secondary VOL of the storage 2 (storage device 40b).
  • the difference data is written to the secondary VOL via the journal volume (for example, JVOL-2S 48b in FIG. 1).
  • the journal volume JVOL-2P 48a is treated as an unreflected capacity, and is not used for calculating the actual used capacity.
  • the primary / secondary VOL variable capacity management program 423 adds the numerical value of the unreflected item to the update capacity of the secondary VOL variable capacity management table 60.
  • step S1009 when the asynchronous secondary copy is completed, the primary / secondary VOL variable capacity management program 423 clears the numerical value of the unreflected item (reference numerals 608 to 610) and the next scheduled reflection time 611 in the secondary VOL variable capacity management table 50.
  • the primary / secondary VOL variable capacity management program 423 determines whether the variable capacity determination timing has been reached. If it has reached (Yes), the primary / secondary VOL variable capacity management program 423 executes S1011. If it has not reached (No), it executes S1012.
  • step S1011 the primary / secondary VOL variable capacity management program 423 stores the cumulative value of each item (reference numerals 604 to 607) in the previously determined information of the secondary VOL variable capacity management table 50, and clears the numerical value after the storage is completed.
  • the primary / secondary VOL variable capacity management program 423 determines whether the processing from S1001 to S1011 has been completed for all the secondary VOLs. When there is a secondary VOL to be processed (No), the primary / secondary VOL variable capacity management program 423 repeats the processing from S1001 onward. When there is no secondary VOL to be processed (Yes), the primary / secondary VOL variable capacity management program 423 ends the process.
  • FIG. 11 is a flowchart showing processing for managing backup capacity in the capacity management server of the present invention.
  • the capacity management program 321 of the capacity management server 30 transmits to the storage 1 (storage device 40a) a request for reporting the fluctuation capacity information of the primary VOL in the target VOL group from which the fluctuation capacity is acquired.
  • the storage apparatus 40a receives a request for reporting variable capacity information from the capacity management server 30.
  • the primary / secondary VOL variable capacity management program 423 determines whether the report request includes a variable capacity determination instruction. “With variable capacity determination instruction” means that the current (latest) variable capacity is stored in the previous determination information 511 and 612. When the variable capacity determination instruction is attached (Yes), the primary / secondary VOL variable capacity management program 423 executes S1113, and when not (No), executes S1114.
  • the primary / secondary VOL fluctuation capacity management program 423 stores the accumulated values in the previous confirmation information 511 of the fluctuation capacity management table 50 of the primary VOL and the previous confirmation information 612 of the fluctuation capacity management table 60 of the secondary VOL. And the time information is stored and the numerical value and the time information are cleared.
  • the primary / secondary VOL variable capacity management program 423 reads the previous fixed information 511 of the primary VOL variable capacity management table 50 and the previous finalized information 612 of the secondary VOL variable capacity management table 60, and transmits them to the capacity management server 30.
  • the capacity management program 321 stores the received information (measurement time information and capacity information of each VOL) in the capacity management table 70.
  • the capacity management program 321 determines whether there is still a primary VOL for which a variable capacity is to be acquired. If there is (Yes), the capacity management program 321 repeats the processing after S1101. If not (No), the capacity management program 321 executes S1104.
  • the capacity management program 321 determines whether there is another target VOL group. If there is (Yes), the capacity management program 321 repeats the processing after S1101. If not (No), the capacity management program 321 executes S1105.
  • step S1105 the capacity management program 321 determines whether to display the contents of the capacity management table 70 on the screen of the display unit 305. When displaying (Yes), the capacity management program 321 executes S1106, and when not displaying (No), the process ends.
  • the capacity management program 321 reads the capacity management table 70 of the acquisition target VOL from the memory 302, and calculates the increment capacity of the aggregation target period in units of volumes. Then, the capacity management program 321 displays the calculation result on the display unit 305 and ends the process. Note that the capacity management program 321 may request the display unit 205 of the client terminal 20 to display the calculation result. By doing so, the effect that a user and a system administrator can share the same information simultaneously is acquired.
  • the result of collecting the capacity management table 70 in VOL units for each VOL group may be displayed. By doing so, the user or system administrator can grasp the actual used storage capacity not only in a small unit of VOL but also in a large unit of VOL group.
  • the used capacity, the incremental capacity, the released capacity, and the updated capacity in the predetermined period of the primary VOL and the secondary VOL can be calculated by the processes of FIGS. Therefore, the user or system administrator can grasp the exact value of the storage capacity used in the storage device along with the time information, so that it is easy to make a plan according to the actual situation when adding or expanding the storage system. Pay-as-you-go based on various usage conditions.
  • variable capacity information can be acquired at regular intervals, and can be managed and analyzed as statistical data.
  • FIG. 12 is a flowchart showing overall processing of variable capacity management in the second embodiment of the present invention.
  • the second embodiment is a method for managing the capacity of the secondary VOL on the inter-frame copy destination storage apparatus side on the premise that there is inter-box copy.
  • the capacity management server 30 sets a VOL group for each user and generates a primary VOL. At the same time, the capacity management server 30 requests the storage 1 (storage device 40a) and the storage 2 (storage device 40b) to initialize the primary VOL variable capacity management table 50 and the secondary VOL variable capacity management table 60.
  • the capacity management program 321 initializes the capacity management table 70.
  • the processing S1231 is the same as the processing S821 in FIG. 8, S1212 is the same as S812, and S1213 is the same as S813.
  • inter-box data copy the inter-box data copy is executed between the storage device 40a and the storage device 40b.
  • the storage apparatus 40b receives the copy data transmitted from the storage apparatus 40a.
  • the primary / secondary VOL variable capacity management program 423 of the storage apparatus 40b executes the secondary VOL variable capacity determination process similar to S816, and updates the contents of the secondary VOL variable capacity management table 60 of the storage apparatus 40b.
  • the primary / secondary VOL fluctuation capacity management program 423 of the storage apparatus 40a determines whether there is a sub-VOL for intra-body copy. If yes (Yes), the primary / secondary VOL variable capacity management program 423 executes the secondary VOL variable capacity determination process of S1216.
  • the variable capacity determination process for secondary VOL in S1216 is the same as the process S816, and thus detailed description thereof is omitted.
  • the capacity management program 321 of the capacity management server 30 transmits a request for reporting the variable capacity to the storage apparatus 40a and the storage apparatus 40b.
  • step S1217 the primary / secondary VOL variable capacity management program 423 of the storage apparatus 40a executes the variable capacity report processing, that is, the contents of the previously determined information in the primary VOL variable capacity management table 50 and the secondary VOL variable capacity management table 60 in the storage apparatus 40a. Is transmitted to the capacity management server 30.
  • the primary / secondary VOL variable capacity management program 423 of the storage apparatus 40b stores the contents of the previously determined information in the primary VOL variable capacity management table 50 and the secondary VOL variable capacity management table 60 in the storage apparatus 40a. It transmits to the management server 30.
  • the capacity management program 321 totals the received variable capacities of the primary VOL and secondary VOL, and displays the summation result together with the time information on the display unit 305 of the capacity management server 30, thereby indicating the capacity usage status in the system. You can let the administrator know. At this time, the display unit 205 of the client terminal 20 may be requested to display the counting result and time information as in S125. By doing so, the user can also grasp the capacity usage status.
  • a capacity management server collects information from each storage device.
  • a capacity management server is connected to each storage device, and each VOL (primary VOL and secondary VOL) is connected. Capacity management may be performed.
  • a primary VOL may be generated in the storage 2 (storage device 40b) and a secondary VOL may be generated in the storage 1 (storage device 40a) to form a pair.
  • the processing in the primary VOL is performed in FIG. 7, and the processing in the secondary VOL is performed in FIG.
  • the used capacity, the incremental capacity, the released capacity, and the updated capacity of the primary VOL and the secondary VOL in both the storage apparatus 40a and the storage apparatus 40b can be grasped. Therefore, the same effect as in the first embodiment can be obtained in the second embodiment.
  • this invention is not limited to the above-mentioned Example, Various modifications are included.
  • the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment.
  • each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit.
  • Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor.
  • Information such as programs, tables, and files for realizing each function may be stored in a memory, a hard disk, a recording device such as an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.
  • a recording device such as an SSD (Solid State Drive)
  • a recording medium such as an IC card, an SD card, or a DVD.
  • control lines and information lines indicate what is considered necessary for the explanation, and not all the control lines and information lines on the product are necessarily shown. Actually, it may be considered that almost all the components are connected to each other.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 システム管理者ないしユーザが使用記憶容量を正確に把握することができるストレージ装置を提供する。そのため、本発明のバックアップでは、新規にデータを追加する処理と既に存在するデータについて更新をする処理を区別し、新規にデータを追加する処理の場合だけユーザの使う使用容量を増やす管理を行う。

Description

ストレージシステム
 本発明は、ストレージシステムで実際に使用している記憶容量を的確に把握するための技術に関する。
 現在、クラウド技術の発展とその普及に伴い、ITプラットフォーム使用環境は、ユーザが使用状況を把握しシステム環境を構築する従来方式から、外部ベンダへ使用環境の構築を含めアウトソースする事例(クラウドの採用)が増えてきている。一方で、情報化社会と称されるように、ビジネスや生活面で取り扱う電子データの急激な増大に伴い、ストレージ容量の肥大化や、それに伴い大規模化する情報システムは、バックアップ環境の複雑化による運用の煩雑化等の問題を生じている。
 そこで、ユーザはシステム管理の煩雑さから解放されるため、クラウドを採用した情報システムのアウトソース化の採用と推進をしている。一方で、ユーザないしクラウド提供側では、コストの大半を占める使用データ容量に注目する傾向が強くなりつつある。また、クラウド提供側としても、システム配備コストの適正化の観点から、サーバのOSが認識しているストレージ装置での割当て記憶容量と、そのバックアップ容量を含めた、実際に使用している記憶容量を的確に把握したいというニーズがある。
 つまり、クラウド技術が進化によりストレージ容量が急増し、それに伴いストレージ装置のバックアップについてもニーズが拡大している。そして、このバックアップを運用していく上ではユーザ毎にどれだけ実際に記憶容量を使っているかを把握することが、システムの運用や保守・計画などを考える上で重要となる。
 これらに関連する技術として特許文献1記載のバックアップを行うストレージシステムにおけるデータの管理方法がある。
日本公開特許2005-165486号公報
 従来技術のバックアップ方法では、新規にデータを追加する処理と、既に存在するデータについて更新をする処理の2種類がある。しかしながら、特許文献1で開示するバックアップ方法では、この2つの処理が区別されていない。
 ユーザにとっては、新規にデータを追加する処理は、記憶装置において使用する容量が増える処理である。一方、既に存在するデータについて更新をする処理は、既存データの内容を更新するだけで使用する記憶容量は増えない。
 そのため、これらを考慮しない従来技術では使用する記憶容量の管理が不十分で、ユーザの使用している正確な記憶容量を把握できないという課題があった。
 上記課題を解決するために、本発明のバックアップでは、新規にデータを追加する処理と既に存在するデータについて更新をする処理を区別し、新規にデータを追加する処理の場合だけユーザの使う使用容量を増やす管理を行う。これにより、システム管理者ないしユーザが使用記憶容量を正確に把握することができるようになる。
 本発明により、ストレージシステムを増強・増設するにあたり実態に沿った計画の立案が容易となり、また、従量課金をする場合は正確な使用状況に基づいた課金ができるようになるという効果が得られる。前述以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
図1は、本発明のストレージ装置で構成したストレージシステムの物理的構成例を示す図である。 図2は、クライアント端末のハードウェアの構成例を示すブロック図である。 図3は、本発明の容量管理サーバのハードウェア及びソフトウェアの構成例を示すブロック図である。 図4は、本発明のストレージ装置のハードウェア及びソフトウェアの構成例を示すブロック図である。 図5は、本発明の正VOL用変動容量管理テーブルの構成例を示す図である。 図6は、本発明の副VOL用変動容量管理テーブルの構成例を示す図である。 図7は、本発明の容量管理テーブルの構成例を示す図である。 図8は、本発明の第1実施形態での変動容量管理の全体処理を示すフローチャート図である。 図9は、本発明の正VOLでの変動容量を管理する処理を示すフローチャート図である。 図10は、本発明の副VOLへのバックアップ処理と変動容量管理処理を示すフローチャート図である。 図11は、本発明の容量管理サーバでのバックアップ容量を管理する処理を示すフローチャート図である。 図12は、本発明の第2実施形態での変動容量管理の全体処理を示すフローチャート図である。
 以下、図面を参照しながら本発明の実施の形態を説明する。なお、以下の説明では、「管理テーブル」等の表現にて各種情報を説明することがあるが、各種情報は、テーブル以外のデータ構造で表現されていてもよい。また、データ構造に依存しないことを示すために「管理テーブル」を「管理情報」と呼ぶことができる。
 また、「プログラム」を主語として処理を説明する場合がある。そのプログラムは、プロセッサ、例えば、MP(Micro Processor)やCPU(Central Processing Unit)によって実行されるもので、定められた処理をするものである。なお、適宜に記憶資源(例えばメモリ)及び通信インタフェース装置(例えば、通信ポート)を用いながら行うため、処理の主語がプロセッサとされてもよい。プロセッサは、CPUの他に専用ハードウェアを有していても良い。コンピュータプログラムは、プログラムソースから各コンピュータにインストールされても良い。プログラムソースは、例えば、プログラム配布サーバ又は記憶メディアなどで提供されるものであっても良い。
 また、各要素、例えば、コントローラは番号などで識別可能であるが、識別可能な情報であれば、名前など他種の識別情報が用いられても良い。本発明の図及び説明において同一部分には同一符号を付与しているが、本発明が本実施例に制限されることは無く、本発明の思想に合致するあらゆる応用例が本発明の技術的範囲に含まれる。また、特に限定しない限り、各構成要素は複数でも単数でも構わない。
<<システム構成>>
<ストレージシステム全体構成>
 図1は、本発明のストレージ装置で構成したストレージシステムの物理的構成例を示す図である。ストレージシステム10は、クライアント端末20に接続するデータセンタ1内システムと、データセンタ2内システムとから構成される。
 データセンタ1は、容量管理サーバ30、ネットワーク機器90、ネットワーク機器91、クライアント端末20と接続するストレージ装置40aの装置やシステムを備える。また、データセンタ2は、ネットワーク機器92とストレージ装置40bの装置やシステムを備える。
 クライアント端末20は、ネットワーク機器90を介しストレージ装置40aと接続し、ストレージ装置40aへのデータの書き込み及びストレージ装置40aからのデータの読み出しを行うコンピュータである。クライアント端末20は、例えば、ホストコンピュータやサーバ、PC(パーソナルコンピュータ)、多機能携帯端末などである。
 容量管理サーバ30は、各ストレージ装置で使用される記憶容量を管理するサーバであり、容量管理テーブル(後述)で各ストレージ装置に各ボリュームの使用容量等を管理する。
 ストレージ装置40aには、複数のストレージデバイス(HDD(Hard Disk Drive)やSSD(Solid State Drive))で構成される記憶領域をストレージプール41として管理し、ボリュームとして利用する時にはストレージプール41から所定の記憶容量を有する記憶領域を割り当てる。
 同じく、データセンタ2のストレージ装置40bにも、ストレージプール49を備える。ストレージ装置40aとストレージ装置40bの間は、専用のセンタ間接続ネットワーク4で接続され、ストレージ装置間(筐体間)でデータコピーがリモートで行われる。また、容量管理サーバ30とストレージ装置40aないしストレージ装置40bとは、ネットワーク機器91、ネットワーク5、ネットワーク機器92を介し接続される。なお、ストレージ装置40aとストレージ装置40bを纏めてストレージ装置40と呼称することがある。このように、データを確実そして効率的に隔地にバックアップするため、データセンタ1とデータセンタ2とを専用回線で結び、リモートコピー機能を利用して、業務中にバックアップを実行する。
 また、ストレージ装置40は、ストレージプールから割り当てられた記憶領域も纏めて所定記憶容量も持つ正ボリューム(正VOL)ないしは副ボリューム(副VOL)を生成する。図1では、ストレージ装置40aに正VOL1 42とペアを形成する副VOL1 43があり、更にストレージ装置40bの副VOL2 46とペアを形成する正VOL2 45がある。また、正VOL1 42の内容は副VOL1 43へコピー(符号44)することで冗長化されデータをバックアップしている。
 同じく、正VOL2 45の内容は副VOL2 46にコピー(符号47)することで、冗長化されデータをバックアップしている。コピー方法には、正VOLでの更新が副VOLへ直ぐに反映される同期コピーと、所定時間経過後に反映される非同期コピーがある。非同期コピーでは、ジャーナル(JNL)ボリューム(JVOL)を用いて差分ないし未反映データを管理する。それが、JVOL―2P 48aとJVOL―2S 48bである。JVOL―2P 48aは正VOL2 45用、JVOL―2S 48bは副VOL2 46用のジャーナルボリュームである。
 本発明では、各正VOLと各副VOLでの使用記憶容量(以下、使用容量)、増分記憶容量(以下、増分容量)、解放記憶容量(以下、解放容量)、更新記憶容量(以下、更新容量)の情報と、各副VOLでの未反映容量(増分/解放/更新)を各ストレージ装置で管理し、その情報を容量管理サーバ30が取得し全体を一元管理する事で、各ストレージ装置で実際に使用されている記憶容量を把握するものである。
<クライアント端末の内部構成>
 図2は、クライアント端末のハードウェアの構成例を示すブロック図である。クライアント端末20は、メモリ202に格納されたプログラムを実行するCPU201、プログラムやデータを格納するメモリ202、各種プログラムやデータを格納する内蔵HDD203、ネットワーク機器90を介しストレージ装置40aと接続するための通信インタフェース(以下、通信I/F)204、装置構成や稼働状況などの情報を表示するための表示部205(例えば、液晶ディスプレイ)、ユーザからのデータや命令などを受け付ける入力部206(例えば、キーボード)を備え、それらは相互にシステムバス207で接続される。
<容量管理サーバの内部構成>
 図3は、本発明の容量管理サーバのハードウェア及びソフトウェアの構成例を示すブロック図である。容量管理サーバ30は、各ストレージ装置での記憶容量を一元管理するサーバで、メモリ302に格納されたプログラムを実行するCPU301、プログラムやデータ、テーブルを格納するメモリ302、各種プログラムやデータを格納する内蔵HDD303、ネットワーク機器91/92を介しストレージ装置40a/40bと接続するための通信I/F304、装置構成や稼働状況などの情報を表示するための表示部305(例えば、液晶ディスプレイ)、ユーザからのデータや命令などを受け付ける入力部306(例えば、キーボード)を備え、それらの構成要素は相互にシステムバス307で接続される。
 メモリ302には、容量管理プログラム321と容量管理テーブル70が格納される。容量管理プログラム321は、各ストレージ装置に記憶容量の変動量の報告要求を送信して各容量データを取得する機能、容量管理テーブル70を更新して管理する機能、各容量データを表示部305に表示させる機能を備える。容量管理テーブル70は、正VOL毎に作成され、正VOL及び正VOLとペアを形成する副VOLでの各容量データを計測時刻毎に管理するためのテーブルである。
<ストレージ装置の内部構成>
 図4は、本発明のストレージ装置のハードウェア及びソフトウェアの構成例を示すブロック図である。ストレージ装置40は、メモリ402に格納されたプログラムを実行するCPU401、プログラムやデータを格納するメモリ402、各種プログラムやデータを格納する複数のHDD403、ネットワーク機器91を介しストレージ装置40aと接続するための通信I/F404を備え、それらの構成要素は相互にシステムバス405で接続される。
 メモリ402には、筐体内バックアッププログラム421、筐体間バックアッププログラム422、正副VOL変動容量管理プログラム423、正VOL用変動容量管理テーブル50、副VOL用変動容量管理テーブル60を格納する。
 筐体内バックアッププログラム421は、同じストレージ装置にある正VOL(例えば、正VOL2 45)と副VOL(例えば、副VOL2 46)との間でデータコピーを実施し、正VOLのデータを副VOLにバックアップするためのプログラムである。例えば、図1のように正VOL1 42のデータを副VOL1 43にコピー(符号44)し、バックアップするためのプログラムである。
 筐体間バックアッププログラム422は、異なるストレージ装置にある正VOLと副VOLとの間でデータコピーを実施し、正VOLのデータを副VOLにバックアップするためのプログラムである。つまり、図1のように正VOL2 45のデータを副VOL2 46にコピー(符号47)し、バックアップするためのプログラムである。
 正副VOL変動容量管理プログラム423は、正VOL及び副VOLにおける各容量(使用/増分/解放/更新、未反映容量(副VOLに未反映な容量))や計測時刻情報を管理するプログラムである。
 正VOL用変動容量管理テーブル50及び副VOL用変動容量管理テーブル60は、それぞれ正VOLと副VOLの記憶容量情報を管理するテーブルである。詳細については後述する。
<<管理テーブル>>
<正VOL用変動容量管理テーブル>
 図5は、本発明の正VOL用変動容量管理テーブルの構成例を示す図である。正VOL用変動容量管理テーブル50は、正VOL毎のボリューム情報を管理するテーブルであり、ボリュームグループ(VOL Group)501、正VOL_ID502、使用容量503、増分容量504、解放容量505、更新容量506、計測開始時刻507、計測終了予定時刻508、副VOL数509、副VOL用エントリ番号510、前回確定情報511を備える。
 ボリュームグループ501は、正VOLが属するグループを一意に識別するための情報である。正VOL_ID502は、正VOLを一意に識別するための情報である。
 使用容量503は、正VOLで使用されている実際の記憶容量である。増分容量504は、前回計測終了後から新たに記憶領域を割り当て使用した容量である。解放容量505は、前回計測終了後から新たに記憶領域を削除して解放した容量である。更新容量506は、既割り当て記憶領域に格納されたデータに対して更新した容量である。使用容量503、増分容量504、解放容量505、更新容量506は、クライアント端末20からのデータの書き込みにより更新される。
 計測開始時刻507及び計測終了予定時刻508は、使用容量503、増分容量504、解放容量505、更新容量506の計測における開始時刻と計測終了予定時刻を格納する。また、本例の計測時間を1日ないし2日としているが、1週間単位や1時間単位でもよい。
 副VOL数509は、正VOLとペアを形成する副VOLの数を示す。正VOLとペアを形成する副VOLは、副VOL用エントリ番号510のエントリ番号を、副VOL用変動容量管理テーブル60のエントリ番号610に照し合せることで分かる。なお、副VOL用エントリ番号510にペアを形成する副VOLそれぞれの副VOL_IDを格納し、正VOLと副VOLの対応を直接分かるようにしてもよい。
 前回確定情報511は、前回の計測終了予定時刻に到達した時点での使用容量503、増分容量504、解放容量505、更新容量506、計測開始時刻507及び計測終了予定時刻508が格納される。容量管理サーバ30は、定期的ないしシステム管理者/ユーザからの指示を受け付けた時点で、前回確定情報511に格納されている情報を取得する。または、容量管理サーバ30からの情報取得指示で、指示受領時点の各容量の累積値(確定値)を前回確定情報511に格納されるようにしても良い。なお、前回確定情報511に変動容量の累積値が格納されると同時に、増分/解放/更新容量のエントリデータはクリアされる。
<副VOL用変動容量管理テーブル>
 図6は、本発明の副VOL用変動容量管理テーブルの構成例を示す図である。副VOL用変動容量管理テーブル60は、エントリ番号601、副VOL種別602、副VOL_ID603、使用容量604、増分容量605、解放容量606、更新容量607、未反映増分容量608、未反映解放容量609、未反映更新容量610、次回反映予定時刻611、前回確定情報612を備える。
 エントリ番号601は、副VOLとペアを形成する正VOLを一意に識別するための情報である。副VOL種別602は、副VOLがペアを形成する正VOLの属するストレージ装置内に存在するか、属するストレージ装置以外に存在するかを示す情報で、ストレージ装置内の場合は“筐体内”と設定し、当該ストレージ装置以外であれば“筐体外”または“筐体間”と設定する。この情報で、データバックアップ時のデータコピー先を識別する。副VOL_ID603は、副VOLを一意に識別するための情報であり、例えば、筐体内であればボリューム名で、筐体外であればストレージ装置名とボリューム名で表現される。
 使用容量604、増分容量605、解放容量606、更新容量607は、図5と同じであるが、正VOLから副VOLへの非同期コピー時には副VOLに反映された各容量を格納する。
 未反映増分容量608、未反映解放容量609、未反映更新容量610は、正VOLから副VOLへの非同期コピー時に副VOLに反映されていない各容量を格納する。
 例えば、正VOL_ID502が“VLU0”の正VOLと副VOL_ID603が“VS00”の副VOLとのコピーペアの場合は同期式コピーを実施するので、正VOL側の変動内容が副VOL側に直ぐに反映される。副VOL_ID603が“DF800 LUN0”の副VOLとのコピーペアの場合は非同期コピーを実施するので、正VOL側の変動内容が副VOL側に直ぐに反映されず、反映されていない内容の容量が未反映増分容量608、未反映解放容量609、未反映更新容量610に格納される。
 例えば、副VOL用変動容量管理テーブル60の2行目は、筺体間コピー(非同期コピー)なので、コピーが実施される迄は各未反映容量に加算され、筺体間コピー実施済の容量が、反映済容量として各容量に加算されると同時に、未反映容量は減算される。筺体間コピーが完全に終了した時点で、未反映容量は0にクリアされる。
 次回反映予定時刻611は、未反映分のデータを副VOLに反映させる予定時刻である。非同期コピー時はその予定時刻を格納するが、同期コピー時は格納しない。
 また、前回確定情報612は、前回の計測終了予定時刻に到達した時点での使用容量604、増分容量605、解放容量606、更新容量607が格納される。容量管理サーバ30は、定期的ないしユーザ指示を受け付けた時点で、前回確定情報612に格納されている情報を取得する。または、容量管理サーバ30からの情報取得指示で、指示受領時点の累積値(確定値)が前回確定情報612に格納されるようにしても良い。
 なお、同期コピーで正VOLとペアを構成する副VOLの場合、前回確定情報612に変動容量の累積値が格納されると同時に、増分/解放/更新容量のエントリのデータはクリアされる。
 また、データが副VOLに即時反映される筺体内コピー(同期コピー)の場合は、正VOL用のデータを流用する事ができるので、副VOL用変動容量管理テーブル60は、筺体間コピー専用のテーブルとしても良い。
 本実施例で想定している増分容量計測は、正VOL用変動容量管理テーブル50に設定された計測時刻に基づき実行するので、副VOL用変動容量管理テーブル60にはタイムスタンプのエントリが設けられていない。しかしながら、これに限らず、副VOL用変動容量管理テーブル60に独立したエントリ(計測開始時刻及び計測終了予定時刻)を設け、正VOL用変動容量管理テーブル50の内容と副VOL用変動容量管理テーブル60の内容とを比較・検証して格納されたデータの信頼性を保証するようにしてもよい。
<容量管理テーブル>
 図7は、本発明の容量管理テーブルの構成例を示す図である。容量管理テーブル70は、容量管理サーバ30に接続するストレージ装置における正VOL/筐体内コピー副VOL/筐体間コピー副VOLの各容量を計測時刻情報とともに管理して、実使用容量を算出するためのテーブルで、正VOL単位で本テーブルを作成し容量管理を行う。図7の例ではVOLグループ501が“VG01”で、正VOL_ID502が“VLU0”である正VOLの場合とする。
 容量管理テーブル70は、計測時刻701、正VOL用容量格納エントリ702、筐体内コピー副VOL用容量格納エントリ703、筐体間コピー副VOL用容量格納エントリ704を備えるが、各ストレージ装置から容量データを取得した取得時刻の欄を設けても良い。
 計測時刻701は、ストレージ装置の変動容量の確定時刻のタイムスタンプである。なお、計測時刻701には、後述する容量管理サーバ30からの変動容量報告要求の受領時刻を格納してもよいし、クライアント端末20からの変動容量取得要求の受信時刻を格納してもよい。
 正VOL用容量格納エントリ702は、使用容量(GB)、増分容量(GB)、解放容量(GB)、更新容量(GB)の各エントリを備える。
 筐体内コピー副VOL用容量格納エントリ703は、使用容量(GB)、変動容量(GB)、更新容量(GB)の各エントリを備えるが、増分容量及び解放容量は有しない。
 筐体間コピー副VOL用容量格納エントリ704は、使用容量(GB)、変動容量(GB)、更新容量(GB)の各エントリを備えるが、増分容量及び解放容量は有しない。
 正VOL用容量格納エントリ702の使用/増分/解放/更新容量はストレージ装置のものと同じである。しかしながら、筐体内コピー副VOL用容量格納エントリ703及び筐体間コピー副VOL用容量格納エントリ704における変動容量は、増分容量と解放容量の合算値である。
 更に正VOLとペアを形成する全ての筺体内コピー用副VOLもしくは筺体間コピー用副VOLについて、それぞれ合算された値が格納されている。
<<動作・処理>>
<全体処理>
 図8は、本発明の第1実施形態での変動容量管理の全体処理を示すフローチャート図である。処理の主体を容量管理サーバ30やストレージ装置40の各プログラムとするが、各プログラムが動作する各CPUでもかまわない。
 S801で、容量管理サーバ30は、ユーザ毎のVOLグループを設定し、正VOLを生成する。同時に、容量管理サーバ30はストレージ装置40aに対して、正VOL用変動容量管理テーブル50及び副VOL用変動容量管理テーブル60の初期化を要求する。
 S802で、容量管理サーバ30の容量管理プログラム307は、容量管理テーブル70を初期化する。
 S811で、ストレージ装置40aの正副VOL変動容量管理プログラム423は、正VOL用変動容量管理テーブル50及び副VOL用変動容量管理テーブル60を初期化する。まず、正副VOL変動容量管理プログラム423は、正VOL用変動容量管理テーブル50に必要なエントリの内容を設定し、容量や時刻の内容を削除する。つまり、VOLグループ501、正VOL_ID502、副VOL数509、副VOL用エントリ番号510を設定し、符号503から符号506までの容量データと、符号507と508の時刻データ、符号511の前回確定情報の内容を削除する。
 例えば、図5の正VOL用変動容量管理テーブル50では、1行目のVOLグループ501に“VG01”、正VOL_ID502に“VLU0”、副VOL数509に“2”、副VOL用エントリ番号510に“P001”と設定する。また、各容量に“0”を設定し、時刻情報507/508と前回確定情報511を“NULL(空白)”とする。
 また、副VOL用変動容量管理テーブル60も同様で、正副VOL変動容量管理プログラム423は、エントリ番号601、副VOL種別602、副VOL_ID603に所定の内容を設定し、使用容量604から前回確定情報612までの内容を削除する。なお、管理テーブルの初期化処理において、使用容量のエントリには仮想VOL(正VOL)へのストレージプールからの初期割当て容量を格納し、増分/解放/更新のデータを0にクリアしてもよい。
 S821で、クライアント端末20がストレージ装置40aにデータの書込み要求を行う。
 S812で、ストレージ装置40aは正VOLへのデータ書込みを実行する。
 S813で、正副VOL変動容量管理プログラム423は、図9に示す正VOL用変動容量判定処理を実行する。この正VOL用変動容量判定処理で、正VOL用変動容量管理テーブル50が更新され、正VOLでの変動容量を把握することができる。詳細は図9で説明する。
 S814で、正副VOL変動容量管理プログラム423は、データ書込みが行われた正VOLに副VOLが存在するかを正VOL用変動容量管理テーブル50の副VOL数509を参照して判断する。副VOL数509の格納値が0であれば(S814でNo)、正副VOL変動容量管理プログラム423は、副VOLが無いと判断しS817を実行する。
 副VOL数509の格納値が0以外であれば(S814でYes)、正副VOL変動容量管理プログラム423は副VOLが存在すると判断し、次にデータをコピーする副VOLを特定するため、副VOL用エントリ番号510を参照する。正副VOL変動容量管理プログラム423は、取得した副VOL情報で筐体内バックアッププログラム421または筐体間バックアッププログラム422にデータコピー処理(S815)を実行させる。
 S815で、筐体内バックアッププログラム421または筐体間バックアッププログラム422が、副VOLへのデータコピー処理を実行する。データコピー処理の進捗状況に従い正副VOL変動容量管理プログラム423は、副VOL用変動容量管理テーブル60を更新する。
 S816で、正副VOL変動容量管理プログラム423は、図10に示す副VOL用変動容量判定処理を実行する。この副VOL用変動容量判定処理で、副VOL用変動容量管理テーブル60が更新され、副VOLでの変動容量を把握することができる。詳細は図10で説明する。また、ストレージ装置40は、S821とS812からS816の処理を一定時間(例えば、図5の計測開始時刻507と計測終了予定時刻508との間)実行して、正VOL用変動容量管理テーブル50及び副VOL用変動容量管理テーブル60の内容を更新して記憶容量を管理する。
 S803で、容量管理プログラム321は、ストレージ装置40aに対し該当する正VOL及び副VOLの変動容量の報告要求を送信する。この変動容量の報告要求は、バックアップ完了(データコピー完了)の契機で送信されるが、スケジューラなどで定期的に送信されても良いし、容量管理サーバ30やクライアント端末20が受け付けた容量集計要求を契機にしてもよい。
 S817で、正副VOL変動容量管理プログラム423は、受信した変動容量の報告要求に対する変動容量報告処理、該当する正VOL及び副VOLの変動容量及び時刻情報を容量管理サーバ30に送信する。
 S804で、容量管理プログラム321は、受信した正VOL及び副VOLの変動容量の集計を実施し、集計結果を時刻情報と共に容量管理サーバ30の表示部305に表示することで、容量使用状況をシステム管理者に知らしめることができる。この時、S805のようにクライアント端末20の表示部205へ集計結果及び時刻情報を表示するよう要求してもよい。そうすることで、ユーザも容量使用状況を把握できる。
 また、正VOL生成後、時間が経過した後に変動容量管理処理を行う場合、筐体間コピーにおける副VOLへの未反映データ容量等は、初回の非同期コピー完了後に初期化するようにしても良い。変動容量報告要求は、スケジューラなどで定期的に取得してもよいし、ユーザないしシステム管理者の指示で取得してもよい。データコピー処理もバックアップ指示、容量管理の集計命令の発行、集計結果の表示要求の契機で実行されてもよい。S816の副VOL用変動容量判定処理で、筺体内コピーの場合は正VOL用の判定処理結果を流用することも可能である。
<正VOL変動容量>
 図9は、本発明の正VOLでの変動容量を管理する処理を示すフローチャート図である。
 S901で、ストレージ装置40aはクライアント端末20から書込み命令と書込みデータを受領する。
 S902(データ書込み処理)で、ストレージ装置40aは書込み対象の正VOLが属するストレージプールへ書込みデータを格納する。
 S903で、正副VOL変動容量管理プログラム423は、データ書込みで新規記憶領域が割当てされたかを判断する。新規記憶領域が割当てされた場合(Yes)、正副VOL変動容量管理プログラム423はS904を実行し、割当てされない場合(No)はS907を実行する。
 S904で、正副VOL変動容量管理プログラム423は、正VOL用変動容量管理テーブル50の使用容量503及び増分容量504の容量に、新規割当て記憶領域の容量を加算する。
 S905で、正副VOL変動容量管理プログラム423は、書込みデータ容量が新規割当て容量より大きいかを判断する。大きい場合(Yes)、正副VOL変動容量管理プログラム423は、書込みデータによる既存データの更新があると判断しS906を実行する。大きくない場合(No)、正副VOL変動容量管理プログラム423は、S910を実行する。
 S906で、正副VOL変動容量管理プログラム423は、正VOL用変動容量管理テーブル50の更新容量506の値に、書込みデータ容量から新規割当て容量を減算した値を加算する。
 データ書込みで新規記憶領域が割当てされない場合(S903でNo)、正副VOL変動容量管理プログラム423はS907を実行し、書込み領域が解放されたかを判断する。書込み命令が削除命令であった場合ないし書込みデータが全て“0”であった場合、正副VOL変動容量管理プログラム423は書込み領域が解放された(Yes)と判断しS909を実行する。書込み領域が解放されていないと判断された場合(No)、正副VOL変動容量管理プログラム423は、S908を実行する。
 S908で、正副VOL変動容量管理プログラム423は、正VOL用変動容量管理テーブル50の更新容量506の値に、書込みデータ容量を加算する。
 S909で、正副VOL変動容量管理プログラム423は、正VOL用変動容量管理テーブル50の解放容量505の値に、解放データ容量(0データ書込み領域ないしデータ削除領域の容量)を加算する。
 以上のS903からS909までの処理が、正VOL用変動容量判定処理S813である。
 S910で、正副VOL変動容量管理プログラム423は、正VOLとペアを形成する副VOLが有るかを正VOL用変動容量管理テーブル50で判断する。この処理は前述のS814の処理と同等である。副VOLが有る場合(Yes)、正副VOL変動容量管理プログラム423はS911を実行し、無い場合(No)はS912を実行する。
 処理S911は、副VOLへのデータコピーおよび変動容量判定処理である。詳細については図10で説明する。
 S912で、正副VOL変動容量管理プログラム423は、変動容量確定タイミングに到達したかを正VOL用変動容量管理テーブル50の計測終了予定時刻508で判断する。計測終了予定時刻508の計測終了時刻が現時刻と同じであれば、正副VOL変動容量管理プログラム423は、変動容量確定タイミングに到達したと判断する。到達していると判断した場合(Yes)、正副VOL変動容量管理プログラム423はS913を実行し、到達していないと判断した場合(No)、処理を終了する。
 S913で、正副VOL変動容量管理プログラム423は、正VOL用変動容量管理テーブル50の前回確定情報511に各容量の累積値及び時刻データ(図5の使用容量503から計測終了予定時刻508までのデータ)を格納し、使用容量503を除いた各累積値及び各時刻データをクリアする。
<副VOL変動容量>
 図10は、本発明の副VOLへのバックアップ処理と変動容量管理処理を示すフローチャート図である。このバックアップは、正VOLへのデータ書込みの契機で実行されるがスケジューラなどで定期的に実行しても良いし、容量管理サーバ30やクライアント端末20が受け付けた容量集計要求を契機にしてもよい。
 S1001で、正副VOL変動容量管理プログラム423は、正VOLとペア形成する副VOLが筺体内に存在するかを判断する。筺体内に存在する場合(Yes)、正副VOL変動容量管理プログラム423は、筐体内バックアッププログラム421に同期コピーを実行させる。筺体内に存在せず、筐体外(他のストレージ装置)に副VOLが存在する場合(No)、正副VOL変動容量管理プログラム423は、筐体間バックアッププログラム422に非同期コピーを実行させる。
 S1002(データの書き込み/コピー処理)で、筐体内バックアッププログラム421は、副VOLが属するストレージプールへクライアント端末20からの書き込みデータを格納する。
 S1003で、正副VOL変動容量管理プログラム423は、正VOL用変動容量管理テーブル50に加算した項目と同じ副VOL用変動容量管理テーブル60の項目に数値を加算する。
 S1004(データの書き込み処理)で、筐体間バックアッププログラム422は、クライアント端末20からの書き込みデータを差分コピー領域(例えば、図1のJVOL-2P 48a)に格納する。なお、ジャーナルボリュームJVOL-2P 48aに格納された差分データは未反映容量として扱われるので、実使用容量の算出には使用しない。
 S1005で、正副VOL変動容量管理プログラム423は、正VOL用変動容量管理テーブル60に加算した項目と同じ副VOL用変動容量管理テーブル50の未反映項目に数値を加算する。S1003とS1005の処理及び後述するS1008とS1009の処理が、図8の処理S816の副VOL用変動容量判定処理である。
 S1006で、正副VOL変動容量管理プログラム423は、副VOL用変動容量管理テーブル60の次回反映予定時刻611に設定された時刻情報で、筺体間コピータイミングに到達したかを判断する。筺体間コピータイミングに到達した場合(Yes)、正副VOL変動容量管理プログラム423は、筐体間バックアッププログラム422に処理S1007を実行するよう要求する。到達していない場合(No)、正副VOL変動容量管理プログラム423は、S1010を実行する。
 S1007で、筐体間バックアッププログラム422は、ストレージ2(ストレージ装置40b)のペア対象副VOLへ差分データを非同期リモートでコピーする。この時、差分データはジャーナルボリューム(例えば、図1のJVOL-2S 48b)経由で副VOLへ書き込まれる。なお、ジャーナルボリュームJVOL-2P 48aに格納された差分データは未反映容量として扱われるので、実使用容量の算出には使用しない。
 S1008で、正副VOL変動容量管理プログラム423は、副VOL用変動容量管理テーブル60の更新容量等に未反映項目の数値を加算する。 
 S1009で、正副VOL変動容量管理プログラム423は、非同期リモートコピーが完了したら、副VOL用変動容量管理テーブル50の未反映項目(符号608から610)の数値及び次回反映予定時刻611をクリアする。
 S1010で、正副VOL変動容量管理プログラム423は、変動容量確定タイミングに到達したかを判断する。到達していれば(Yes)、正副VOL変動容量管理プログラム423はS1011を実行し、到達していなければ(No)、S1012を実行する。
 S1011で、正副VOL変動容量管理プログラム423は、副VOL用変動容量管理テーブル50の前回確定情報に各項目(符号604から607)の累積値を格納し、格納完了後に数値をクリアする。
 S1012で、正副VOL変動容量管理プログラム423は、全ての副VOLに対してS1001からS1011の処理を終了したかを判断する。処理すべき副VOLが存在する場合(No)、正副VOL変動容量管理プログラム423は、S1001以降の処理を繰り返す。また、処理すべき副VOLが存在しない場合(Yes)、正副VOL変動容量管理プログラム423は、処理を終了する。
<バックアップ容量管理>
 図11は、本発明の容量管理サーバでのバックアップ容量を管理する処理を示すフローチャート図である。
 S1101で、容量管理サーバ30の容量管理プログラム321は、変動容量を取得する対象VOLグループにおける正VOLの変動容量情報の報告要求をストレージ1(ストレージ装置40a)に送信する。
 S1111で、ストレージ装置40aは容量管理サーバ30からの変動容量情報の報告要求を受領する。
 S1112で、正副VOL変動容量管理プログラム423は、報告要求が変動容量確定指示付きか否かを判断する。「変動容量確定指示付き」とは、現時点(最新)の変動容量を前回確定情報511及び612に格納することである。変動容量確定指示付きである場合(Yes)、正副VOL変動容量管理プログラム423はS1113を実行し、ない場合(No)S1114を実行する。
 S1113(変動容量確定処理)で、正副VOL変動容量管理プログラム423は、正VOLの変動容量管理テーブル50の前回確定情報511及び副VOLの変動容量管理テーブル60の前回確定情報612に、各累積値及び時刻情報を格納して数値及び時刻情報をクリアする。
 S1114で、正副VOL変動容量管理プログラム423は、正VOLの変動容量管理テーブル50の前回確定情報511及び副VOLの変動容量管理テーブル60の前回確定情報612を読み出し、容量管理サーバ30に送信する。
 S1102で、容量管理プログラム321は、受領した情報(計測時刻情報と各VOLの容量情報)を容量管理テーブル70に格納する。
 S1103で、容量管理プログラム321は、変動容量を取得する対象の正VOLがまだ、有るかを判断する。有る場合(Yes)、容量管理プログラム321はS1101以降の処理を繰り返す。無い場合(No)、容量管理プログラム321はS1104を実行する。
 S1104で、容量管理プログラム321は、対象の他VOLグループがあるかを判断する。有る場合(Yes)、容量管理プログラム321はS1101以降の処理を繰り返す。無い場合(No)、容量管理プログラム321はS1105を実行する。
 S1105で、容量管理プログラム321は、容量管理テーブル70の内容を表示部305の画面に表示するかを判断する。表示する場合(Yes)、容量管理プログラム321はS1106を実行し、表示しない場合(No)は処理を終了する。
 S1106で、容量管理プログラム321は、取得対象VOLの容量管理テーブル70をメモリ302から読み出し、集計対象期間の増分容量をボリューム単位で算出する。そして、容量管理プログラム321は、算出結果を表示部305に表示して、処理を終了する。なお、容量管理プログラム321が、クライアント端末20の表示部205に計算結果を表示するよう要求してもよい。そうすることで、ユーザ及びシステム管理者が同時に同じ情報を共有できるという効果が得られる。
 また、VOL単位の容量管理テーブル70をVOLグループ毎に纏めた結果を表示してもよい。そうすることで、VOL単位という細かい単位だけでなく、VOLグループ単位という大きい単位で実使用記憶容量をユーザないしシステム管理者が把握することができる。
 以上、図8から図11の処理で、正VOL及び副VOLの所定期間における使用容量、増分容量、解放容量、更新容量を算出できる。そのため、ユーザないしシステム管理者は、ストレージ装置で使用している記憶容量の正確な値を時間情報とともに把握できるので、ストレージシステムを増強・増設するにあたり実態に沿った計画の立案が容易となり、正確な使用状況に基づいた従量課金が可能となる。
 また、ユーザないしシステム管理者の指示により、最新の使用容量、増分容量、解放容量、更新容量も取得できるので、容量把握が容易になり使い勝手も向上するという効果もある。また、図7のように一定間隔での変動容量情報を取得できるので統計データとして管理・分析することができる。
<全体処理>
 図12は、本発明の第2実施形態での変動容量管理の全体処理を示すフローチャート図である。第2の実施例は筺体間コピーがあるという前提で、筺体間コピー先のストレージ装置側で副VOLの容量管理を行う方式である。
 S1201で、容量管理サーバ30はユーザ毎のVOLグループを設定し、正VOLを生成する。同時に、容量管理サーバ30は、ストレージ1(ストレージ装置40a)及びへストレージ2(ストレージ装置40b)に、正VOL用変動容量管理テーブル50及び副VOL用変動容量管理テーブル60の初期化を要求する。
 S1202で容量管理プログラム321が容量管理テーブル70を初期化する。S1211でストレージ装置40aの正副VOL変動容量管理プログラム423が、S1221でストレージ装置40bの正副VOL変動容量管理プログラム423が、それぞれの正VOL用変動容量管理テーブル50及び副VOL用変動容量管理テーブル60を初期化する。
 処理S1231は図8の処理S821と、S1212はS812と、S1213はS813と同じであるので説明を省く。
 S1214(筐体間データコピー)で、ストレージ装置40aとストレージ装置40bとの間で筐体間データコピーを実行する。
 S1222で、ストレージ装置40bはストレージ装置40aから送信されたコピーデータを受領する。
 S1223で、ストレージ装置40bの正副VOL変動容量管理プログラム423は、S816と同様の副VOL用変動容量判定処理を実行し、ストレージ装置40bの副VOL用変動容量管理テーブル60の内容を更新する。
 S1215で、ストレージ装置40aの正副VOL変動容量管理プログラム423は、筺体内コピー用副VOLが有るかを判断する。有る場合(Yes)、正副VOL変動容量管理プログラム423はS1216の副VOL用変動容量判定処理を実行する。S1216の副VOL用変動容量判定処理は、処理S816と同じであるので詳細な説明は省く。
 S1203で、容量管理サーバ30の容量管理プログラム321が、ストレージ装置40aとストレージ装置40bに変動容量の報告要求を送信する。
 S1217でストレージ装置40aの正副VOL変動容量管理プログラム423が、変動容量報告処理、すなわち、ストレージ装置40aでの正VOL用変動容量管理テーブル50及び副VOL用変動容量管理テーブル60の前回確定情報の内容を容量管理サーバ30に送信する。
 S1224もS1217と同様に、ストレージ装置40bの正副VOL変動容量管理プログラム423が、ストレージ装置40aでの正VOL用変動容量管理テーブル50及び副VOL用変動容量管理テーブル60の前回確定情報の内容を容量管理サーバ30に送信する。
 S1204で、容量管理プログラム321は、受信した正VOL及び副VOLの変動容量の集計を実施し、集計結果を時刻情報と共に容量管理サーバ30の表示部305に表示することで、容量使用状況をシステム管理者に知らしめることができる。この時、S125のようにクライアント端末20の表示部205へ集計結果及び時刻情報を表示するよう要求してもよい。そうすることで、ユーザも容量使用状況を把握できる。
 実施例2では、1つの容量管理サーバがそれぞれのストレージ装置から情報を収集している例を示しているが、ストレージ装置それぞれに容量管理サーバを接続して各VOL(正VOL及び副VOL)の容量管理を行うようにしても良い。
 また、ストレージ2(ストレージ装置40b)に正VOLを、ストレージ1(ストレージ装置40a)に副VOLを生成しペアを形成してもよい。なお、実施例1と同様、正VOLでの処理は図7で、副VOLでの処理は図8で行われる。
 以上のように、実施例2でも実施例1と同様、ストレージ装置40a及びストレージ装置40b両方における正VOL及び副VOLの所定期間における使用容量、増分容量、解放容量、更新容量を把握できる。そのため、実施例2でも実施例1と同等の効果を得られる。
 なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
 また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。
 各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置いてもよい。
 また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
 1、2 データセンタ
 10 ストレージシステム
 20 クライアント端末
 30 容量管理サーバ
 40a、40b ストレージ装置
 42 正VOL1
 43 副VOL1
 44 同期コピー
 45 正VOL2
 46 副VOL2
 47 非同期コピー
 48a、48b ジャーナルボリューム
 50 正VOL用変動容量管理テーブル
 60 副VOL用変動容量管理テーブル
 70 容量管理テーブル
 201、301、401 CPU
 203、303 内蔵HDD
 205、305 表示部
 206、306 入力部
 307 容量管理プログラム
 421 筐体内バックアッププログラム
 422 筐体間バックアッププログラム
 423 正副VOL変動容量管理プログラム

Claims (11)

  1.  クライアント端末と接続するストレージシステムにおいて、
     前記ストレージシステムは、第1のストレージ装置を含む複数のストレージ装置と前記複数のストレージ装置を管理する管理サーバ装置を備え、
     前記管理サーバ装置は、
     装置全体を制御するCPUと、
     前記第1のストレージ装置とネットワークを介して接続するための通信インフェースとを備え、
     前記第1のストレージ装置は、
     装置全体を制御するCPUと、
     装置情報及び前記クライアント端末からのデータを記憶するメモリと、
     他のストレージ装置及び前記管理サーバ装置とネットワークを介して接続するための通信インフェースと、
     前記クライアント端末からのデータを記憶する複数の記憶デバイスとを備え、
     前記第1のストレージ装置は、前記記憶デバイスでの記憶領域から構成される第1の正ボリュームと前記第1の正ボリュームとペアを形成し前記第1の正ボリュームのデータをコピーしバックアップする第1の副ボリュームとを有し、
     前記第1のストレージ装置のCPUは、
     前記クライアント端末から前記第1の正ボリュームへのI/Oアクセスが、新規データ追加、既存データ更新、既存データ削除のいずれであるかを判断し、
     前記新規データ追加時の追加記憶容量、前記既存データ更新の更新記憶容量、前記既存データ削除の解放記憶容量それぞれを前記ストレージ装置のメモリに格納し、
     前記第1のストレージ装置のメモリに格納していた前記第1の正ボリュームの実使用記憶容量を前記追加記憶容量と前記解放記憶容量とで更新し、
     前記管理サーバ装置が各記憶容量の情報を取得する
     ことを特徴とするストレージシステム。
     
  2.  請求項1記載のストレージシステムであって、前記第1の正ボリュームと前記第1の副ボリュームの内容を一致させるバックアップコピーで、前記第1の副ボリュームに反映した記憶容量の情報と未反映の記憶容量の情報を前記第1のストレージ装置のメモリに格納し、
     前記第1のストレージ装置のメモリに格納していた前記第1の副ボリュームの実使用記憶容量を、前記第1の副ボリュームに反映した前記追加記憶容量と前記解放記憶容量とで更新し、
     前記管理サーバ装置が各記憶容量の情報を取得する
     ことを特徴とするストレージシステム。
     
  3.  請求項2記載のストレージシステムであって、前記第1のストレージ装置は更に第2の正ボリュームを備え、
     前記第1のストレージ装置とは別の第2のストレージ装置は、
     装置全体を制御するCPUと、
     装置情報及び前記クライアント端末からのデータを記憶するメモリと、
     他のストレージ装置及び前記管理サーバ装置とネットワークを介して接続するための通信インフェースと、
     前記第1のストレージ装置からのバックアップデータを記憶する複数の記憶デバイスとを備え、
     前記第2のストレージ装置は、前記記憶デバイスでの記憶領域から構成される第2の副ボリュームと第3の副ボリュームを有し、
     前記第2の副ボリュームは前記第1の正ボリュームとペアを形成して前記第1の正ボリュームの内容をバックアップし、
     前記第3の副ボリュームは前記第2の正ボリュームとペアを形成して前記第2の正ボリュームの内容をバックアップし、
     前記第1のストレージ装置のCPUは、前記クライアント端末からの各正ボリュームへのI/Oアクセスが、新規データ追加、既存データ更新、既存データ削除のいずれであるかを判断し、各正ボリュームでの追加記憶容量、更新記憶容量、解放記憶容量それぞれを前記第1のストレージ装置のメモリに格納し、
     前記第1のストレージ装置のメモリに格納していた各正ボリュームの実使用記憶容量を、各正ボリュームの追加記憶容量と解放記憶容量とで更新し、
     前記管理サーバ装置が各記憶容量の情報を取得する
     ことを特徴とするストレージシステム。
     
  4.  請求項3記載のストレージシステムであって、各正ボリュームとペア形成する副ボリュームのデータ内容を一致させるバックアップコピーで、前記副ボリュームにデータ内容を反映した記憶容量の情報と未反映の記憶容量の情報を各ストレージ装置のメモリに格納し、
     各ストレージ装置のメモリに格納していた各副ボリュームの実使用記憶容量を、データを反映した追加記憶容量と解放記憶容量とで更新し、
     前記管理サーバ装置が各ストレージ装置から各正ボリューム及びペアを形成する各副ボリュームそれぞれの記憶容量の情報を取得する
     ことを特徴とするストレージシステム。
     
  5.  請求項4記載のストレージシステムであって、各正ボリュームへのI/Oアクセスを所定時間計測して、得られた各正ボリューム及びペアを形成する各副ボリュームそれぞれの記憶容量の情報と計測時間情報を前記管理サーバ装置が取得する
     ことを特徴とするストレージシステム。
     
  6.  請求項5記載のストレージシステムであって、前記管理サーバ装置は、前記バックアップの完了を契機に、各ストレージ装置から記憶容量の情報及び計測時間情報を取得する
     ことを特徴とするストレージシステム。
     
  7.  請求項6記載のストレージシステムであって、前記管理サーバ装置は、記憶容量の情報の取得要求を受け付ける入力部を備え、前記入力部で受け付けられた取得要求の受領ないし前記管理サーバ装置内で発行された取得要求を契機に、各ストレージ装置から記憶容量の情報及び計測時間情報を取得する
     ことを特徴とするストレージシステム。
     
  8.  請求項7記載のストレージシステムであって、前記管理サーバ装置は、各ストレージ装置から取得した記憶容量の情報及び計測時間情報を、各正ボリュームとペアを形成する副ボリューム毎に集計する
     ことを特徴とするストレージシステム。
     
  9.  請求項8記載のストレージシステムであって、前記管理サーバ装置は前記記憶容量を表示する表示部を備え、
     前記管理サーバ装置のCPUが、前記取得した記憶容量の情報及び計測時間情報を前記表示部に表示させる
     ことを特徴とするストレージシステム。
     
  10.  請求項7記載のストレージシステムであって、前記クライアント端末からの記憶容量の情報の取得要求により、各ストレージ装置から記憶容量の情報及び計測時間情報を前記クライアント端末または前記管理サーバ装置が取得する
     ことを特徴とするストレージシステム。
     
  11.  請求項7記載のストレージシステムであって、前記管理サーバ装置のCPUは、
     前記取得要求に記憶容量の情報を確定させる確定指示が存在するかを判断し、
     確定指示が存在する場合には、取得要求時での記憶容量の情報及び計測時間情報を取得し、
     確定指示が存在しない場合には、計測が完了した時点での記憶容量の情報及び計測時間情報を取得する
     ことを特徴とするストレージシステム。
PCT/JP2013/073240 2013-08-30 2013-08-30 ストレージシステム WO2015029198A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2013/073240 WO2015029198A1 (ja) 2013-08-30 2013-08-30 ストレージシステム
US14/350,602 US9442659B2 (en) 2013-08-30 2013-08-30 Data backup storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/073240 WO2015029198A1 (ja) 2013-08-30 2013-08-30 ストレージシステム

Publications (1)

Publication Number Publication Date
WO2015029198A1 true WO2015029198A1 (ja) 2015-03-05

Family

ID=52585814

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/073240 WO2015029198A1 (ja) 2013-08-30 2013-08-30 ストレージシステム

Country Status (2)

Country Link
US (1) US9442659B2 (ja)
WO (1) WO2015029198A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10067959B1 (en) * 2014-12-19 2018-09-04 Amazon Technologies, Inc. Techniques for adapting data storage systems for peaky usage models
US10394789B1 (en) 2015-12-07 2019-08-27 Amazon Technologies, Inc. Techniques and systems for scalable request handling in data processing systems
JP7047702B2 (ja) * 2018-10-23 2022-04-05 日本電信電話株式会社 映像管理装置、映像管理方法及びプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086424A (ja) * 2008-10-01 2010-04-15 Hitachi Ltd ストレージ装置の管理装置
JP2011128852A (ja) * 2009-12-17 2011-06-30 Hitachi Ltd 仮想ハードディスクの管理サーバおよび管理方法、管理プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005165486A (ja) 2003-12-01 2005-06-23 Sony Corp ファイル管理装置、ストレージ管理システム、ストレージ管理方法、プログラム及び記録媒体
JP2011238038A (ja) * 2010-05-11 2011-11-24 Nec Corp ディスクアレイ装置、ディスクアレイ装置制御方式、及び、ディスクアレイ装置制御プログラム
JP5188538B2 (ja) * 2010-05-27 2013-04-24 株式会社日立製作所 計算機システム及びリストア方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010086424A (ja) * 2008-10-01 2010-04-15 Hitachi Ltd ストレージ装置の管理装置
JP2011128852A (ja) * 2009-12-17 2011-06-30 Hitachi Ltd 仮想ハードディスクの管理サーバおよび管理方法、管理プログラム

Also Published As

Publication number Publication date
US9442659B2 (en) 2016-09-13
US20150268866A1 (en) 2015-09-24

Similar Documents

Publication Publication Date Title
JP4733461B2 (ja) 計算機システム、管理計算機及び論理記憶領域の管理方法
US8595456B1 (en) Techniques for integrating backup modules with virtualized storage
JP5748932B2 (ja) 計算機システム及び非同期リモートレプリケーションの分析を支援する方法
EP2455860A2 (en) Virtual computer system and migration method of virtual computer
CN107615261B (zh) 多个云环境之间的共享存储的方法和装置
CN109299194A (zh) 多版本数据存储管理方法及装置、电子设备、存储介质
US7127575B2 (en) Offsite management using disk based tape library and vault system
JP6604115B2 (ja) ストレージ装置およびストレージ制御プログラム
US20110231580A1 (en) Information system, information apparatus and method of controlling information apparatus
US20170220275A1 (en) Computer system and management program
US10176048B2 (en) Creating a restore copy from a copy of source data in a repository having source data at different point-in-times and reading data from the repository for the restore copy
WO2015029198A1 (ja) ストレージシステム
US20130138903A1 (en) Computer system
CN111066005A (zh) 响应于经由总线接口上的i/o操作产生的高速缓存命中对元数据道的异步更新
JP5781716B2 (ja) 計算機システム及び非同期レプリケーション管理方法
US11132271B2 (en) Determining which target is most ahead in a multi-target mirroring environment
US8627126B2 (en) Optimized power savings in a storage virtualization system
CN114579043A (zh) Log结构阵列中的i/o操作
JP6755680B2 (ja) データ移行システム、及び、データ移行システムの制御方法
US11099751B2 (en) Determining tracks to release in a source volume being copied to a target volume
WO2016121108A1 (ja) ストレージ装置管理方法および計算機システム
JP4790283B2 (ja) ストレージサブシステム及びストレージシステム
US11030100B1 (en) Expansion of HBA write cache using NVDIMM
CN109542674A (zh) 分布式系统的快照生成方法、装置、设备和介质
Thomas PostgreSQL 12 High Availability Cookbook: Over 100 recipes to design a highly available server with the advanced features of PostgreSQL 12

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 14350602

Country of ref document: US

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13892594

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13892594

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP