WO2017122263A1 - 管理計算機及び管理方法 - Google Patents

管理計算機及び管理方法 Download PDF

Info

Publication number
WO2017122263A1
WO2017122263A1 PCT/JP2016/050636 JP2016050636W WO2017122263A1 WO 2017122263 A1 WO2017122263 A1 WO 2017122263A1 JP 2016050636 W JP2016050636 W JP 2016050636W WO 2017122263 A1 WO2017122263 A1 WO 2017122263A1
Authority
WO
WIPO (PCT)
Prior art keywords
volume
vol
drive
storage device
predicted value
Prior art date
Application number
PCT/JP2016/050636
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/JP2016/050636 priority Critical patent/WO2017122263A1/ja
Publication of WO2017122263A1 publication Critical patent/WO2017122263A1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures

Definitions

  • the present invention relates to a technique for managing volume migration.
  • SSD Solid State Drive
  • One of the technologies for efficiently using the drive is Volume Migration (hereinafter referred to as migration).
  • migration a technique for acquiring a load situation from a user for each of a plurality of areas of a first storage device and moving data stored in a high-load area to a second storage device rather than the first storage device
  • this is disclosed in Patent Document 1.
  • the management computer includes a memory and a processor connected to the host computer and the storage device.
  • the storage device has a plurality of types of drives.
  • the storage apparatus generates a first volume based on at least one first drive of a specific type among a plurality of types of drives.
  • the storage apparatus performs data I / O processing on the first drive based on an I / O request specifying the first volume from the host computer.
  • the storage device monitors the usage status of the first volume.
  • the processor repeatedly acquires the usage state from the storage device.
  • the processor calculates a predicted value of the future usage state of the first volume based on the acquired usage state, and performs a first determination as to whether or not the predicted value exceeds a preset threshold value. When the predicted value exceeds the threshold value, the processor transmits an instruction to migrate the data in the first volume to the second volume based on the second drive of a different type from the first drive.
  • the I / O load on the storage device can be reduced by migration.
  • FIG. 171 An example of the PG table 171 is shown.
  • An example of the VOL table 172 is shown.
  • An example of the auto migration group table 173 is shown.
  • An example of the performance information storage table 174 is shown.
  • An example of the flowchart of a VOL creation process is shown.
  • An example of the flowchart of a regular monitoring process is shown.
  • An example of the flowchart of an auto migration monitoring process is shown.
  • An example of the flowchart of an automigration determination process is shown.
  • the information of the present invention will be described using an expression such as “aaa table”.
  • the information may be expressed using a data structure other than a table. Therefore, the “aaa table” or the like may be referred to as “aaa information” to indicate that it does not depend on the data structure.
  • program is used as the subject.
  • the program performs processing determined by being executed by the processor using the memory and the communication port (communication control device), the processor is used as the subject.
  • the explanation may be as follows. Further, part or all of the program may be realized by dedicated hardware.
  • various programs may be installed in the storage device by a program distribution server or a storage medium that can be read by a computer.
  • FIG. 1 is a configuration diagram of a computer system according to the present embodiment.
  • the computer system has one or more storage devices 2, one or more host computers 3, and a management system computer 1.
  • the host computer 3 is simply referred to as the host 3.
  • the management system computer 1, each storage device 2, and each host 3 are connected to each other via a communication network 4 such as a LAN (Local Area Network).
  • a communication network 4 such as a LAN (Local Area Network).
  • Each host 3 and each storage device 2 are connected to each other via a communication network 5 such as a SAN (Storage Area Network), for example.
  • SAN Storage Area Network
  • These communication networks 4 and 5 are not limited to SAN or LAN, and any communication network may be used.
  • the storage device 2 includes communication interfaces 22 and 23, a controller 21, and a plurality of types of physical storage drives 26.
  • the communication interfaces 22 and 23 may be simply referred to as the interfaces 22 and 23.
  • the physical storage drive 26 may be simply referred to as the drive 26.
  • a plurality of types of drives may exist in the storage device 2.
  • an SSD Solid State Drive
  • a flash drive having a function of compressing data in the drive 26 an HDD (SATA (Serial Attached SCSI), SATA (Serial ATA), etc. Hard Disk Drive) may be included.
  • SATA Serial Attached SCSI
  • SATA Serial ATA
  • Hard Disk Drive may be included.
  • a parity group (PG) 25 is generated.
  • PG 25 is generated based on two drives 26, but the number of drives 26 for generating PG 25 is not limited to this.
  • the PG 25 is composed of the same type of drive 26.
  • VOL logical volumes
  • the VOL 24 is generated based on the PG 25, but the VOL 24 may be generated from one drive 26.
  • the VOL 24 may be a virtual logical volume.
  • the controller 21 accesses the PG 25 corresponding to the VOL 24 designated by the I / O from the host 3. In the case of a write request, the write data is written into the drive 26 that is the basis of the PG 25 corresponding to the VOL 24 specified by the write request.
  • the host 3 has communication interfaces 32 and 33, a processor 31, and a memory 34.
  • the communication interfaces 32 and 33, the processor 31, and the memory 34 are interconnected via a bus or the like.
  • a communication interface 33 is connected to the communication interface 22 of the storage apparatus 2 via the communication network 5.
  • the communication interfaces 32 and 33 may be simply referred to as interfaces 32 and 33.
  • one or more application programs 36 are stored in the memory 34.
  • the processor 31 executes these application programs 36, the host 3 can perform I / O specifying the VOL 24 in the storage apparatus 2.
  • the management system computer 1 has a communication interface 13, a processor 11, and a memory 16.
  • the communication interface 13, the processor 11, and the memory 15 are interconnected via a bus or the like.
  • the communication interface 13 is connected to the interface 32 of the host 3 and the interface 23 of the storage apparatus 2 via the communication network 4.
  • the memory 15 stores a management server program 16 and configuration information 17 and the like.
  • the tables 171 to 174 will be described later.
  • the processor 11 controls each storage device 2 and each host 3 by executing various programs such as the management server program 16.
  • FIG. 2 shows an example of the PG table 171.
  • PG table 171 is a table having configuration information of PG 25.
  • the PG table 171 has an entry for each PG 25.
  • Each entry has a storage ID (Storage ID) 201, a PGID 202, a type (Type) 203, a compression (Compression) 204, a total capacity (Total Capacity) 205, and a used capacity (Used Capacity) 208. .
  • the storage ID 201 stores the identifier of the storage device 2 to which the PG belongs.
  • the PGID 202 stores an identifier that uniquely identifies a PG within each storage device.
  • the type 203 the type of the drive 26 that is the basis of the PG 25 is set. For example, “A” in the figure indicates a flash drive having a data compression function in the drive 26. Further, for example, “B” in the figure indicates SSD (Solid), and “C” indicates HDD.
  • the compression 204 it is set whether or not the drive 26 that is the basis of the PG 25 has a compression function. “True” is set when the drive on which the PG 25 is based has a compression function, and “False” is set when the drive has no compression function.
  • the total capacity 205 stores the capacity (actual capacity) of the storage area of the PG 25.
  • the used capacity 206 stores the capacity of the storage area in which the data in the PG 25 is stored. Note that a value obtained by subtracting the used capacity 206 from the total capacity 205 is a usable capacity (free capacity) of the PG 25.
  • the information in the PG table 171 is generated based on the information acquired from each storage device 2 by the management system computer 1.
  • FIG. 3 shows an example of the VOL table 172.
  • the VOL table 172 is a table having the configuration information of the VOL 26.
  • the VOL table 172 has an entry for each VOL 26.
  • Each entry includes a storage ID (Storage ID) 301, a VOLID 302, a PGID 303, a VOL capacity (VOL Capacity) 304, an auto migration group ID (Auto Migration Group ID) 305, and an auto migration call (Auto Migration Invoked) 306. And have.
  • the auto migration group may be simply referred to as a group
  • the auto migration group ID may be simply referred to as a group ID.
  • the storage ID 301 stores the identifier of the storage device 2 to which the VOL belongs.
  • the VOLID 302 stores an identifier of the VOL 24 that is uniquely identified in the storage apparatus 2.
  • the PGID 303 indicates an identifier of PG 25 that is the basis of VOL 24.
  • the PGID is an identifier of the PG 25 that is uniquely identified in the storage device 2.
  • the VOL capacity 304 stores the capacity (real capacity) of the storage area of the VOL 24.
  • the group ID 305 stores the identifier of the group to which the VOL 24 belongs.
  • “ ⁇ ” is stored in the VOL 24 in which auto migration is invalid.
  • a flag indicating whether or not the auto migration determination for the VOL 24 has been performed is stored. For the VOL 24, “True” is set when the automigration determination has already been performed, and “False” is set when it has not been performed. In the auto migration monitoring process described later, the auto migration determination process is performed only for the VOL 24 for which “False” is set in the auto migration call 306.
  • Auto-migration is a VOL migration management method for a storage apparatus, which is performed by the management system computer 1. Specifically, for a VOL in which automigration is valid, each process of an automigration monitoring process and an automigration determination process is executed in a periodic monitoring process described later.
  • VOL migration is based on PG (migration destination PG) that is different from the PG (migration source PG) that is the basis of the migration source VOL based on the data in the migration target VOL (migration source VOL). It is to migrate to the generated VOL (migration destination VOL).
  • the management system computer 1 determines whether or not to instruct migration of the VOL based on the predicted value of the VOL usage status by performing auto migration determination processing described later.
  • FIG. 4 shows an example of the auto migration group table 173.
  • the auto-migration group table 173 is a table that stores a determination criterion for each group when determining whether to instruct migration of the VOL 24 in the auto-migration determination process.
  • a threshold value for determining a predicted value of the usage state of the VOL 24 is set.
  • the auto migration group table 173 has an entry for each auto migration group. Each entry has a group ID (Auto Migration Group ID) 401, a call capacity (Invoke Capacity) 402, a compression rate 403, and an IOPS (Input Output per Second) 404.
  • group ID Auto Migration Group ID
  • call capacity Invoke Capacity
  • compression rate a compression rate
  • IOPS Input Output per Second
  • the group ID 401 stores an identifier for identifying each group.
  • the calling capacity 402 stores a threshold value of the used capacity of the VOL 24 in each group. This threshold value is used to determine the timing for performing the automigration determination process.
  • a threshold value for the usage state of the VOL 24, which is used for determining whether or not to instruct migration, is stored in the auto-migration determination process.
  • the compression rate and the IOPS value are measured as the usage state values. However, values other than these may be measured as usage state values.
  • the compression rate in this embodiment is the ratio of the data amount after compression to the data amount before compression (the value obtained by dividing the data amount after compression of the target VOL by the data amount before compression of the target VOL is multiplied by 100). Value). Therefore, the data in the VOL is not compressed as the compression rate is high, and the data in the VOL is compressed as the compression rate is low.
  • IOPS is defined as the number of I / Os (that is, write and read) per second for the target VOL.
  • FIG. 5 shows an example of the performance information storage table 174.
  • the performance information storage table 174 is a table in which information on the VOL usage status at each date and time is stored.
  • the usage status information includes, for example, the VOL usage capacity, compression rate, and IOPS.
  • the management system computer 1 creates or updates this table 174 by acquiring information on the usage state at each date and time monitored by the storage device 2 regularly or irregularly.
  • Each entry has a storage ID (Storage ID) 501, a VOLID 502, a data acquisition date (Time) 503, a used capacity (Used Capacity) 504, a compression ratio (Compression Ratio) 505, and an IOPS 506.
  • Storage ID Storage ID
  • VOLID Data acquisition date
  • Time Used Capacity
  • compression ratio Compression Ratio
  • the VOL “01” of the storage device “01” is displayed. : 01 "is 0.02 GB used, and the compression rate is 22% and IOPS5900count / s.
  • the time-series VOL usage status based on the date (acquisition date) when the management system computer 1 acquires the usage status information from the storage device is shown, but is not limited thereto.
  • the date / time when the storage apparatus actually measured the VOL usage status may be used.
  • the storage apparatus 2 transmits the measurement date and time together with information on the usage status of each VOL to the management system computer 1.
  • FIG. 6 shows an example of a flowchart of VOL creation processing.
  • VOL creation processing is processing performed when the processor 11 of the management system computer 1 executes a VOL creation program (not shown) stored in the memory 15.
  • the VOL creation program may be a part of the management server program 16.
  • the VOL creation program is simply referred to as a program.
  • the program is executed when the user starts the program using an input device and an output device (not shown) connected to the management system computer 1.
  • the user inputs information (VOL creation information) necessary for creating a new VOL in accordance with an instruction on a screen (not shown) displayed on the output device.
  • the VOL creation information is, for example, the storage ID of the storage apparatus to which the new VOL belongs, the type of the PG 25 that is the basis of the new VOL, the capacity (real capacity) of the storage area of the new VOL, and the like.
  • the type is the type of the drive 26 that is the basis of the PG 25.
  • the program refers to the PG table 171 and creates a new VOL based on the VOL creation information. Specifically, the program determines the PG 25 that will be the basis of the new VOL from the storage ID of the new VOL that is included in the VOL creation information, the type of the PG 25 that is the basis of the new VOL, and the actual capacity of the new VOL. To do. In this case, the program calculates the free capacity of the PG 25 by subtracting the used capacity 206 from the total capacity 205 of the candidate PG, with the PG 25 having the storage ID and volume type included in the VOL creation information as a candidate PG.
  • the program determines a PG 25 having a free capacity that satisfies the actual capacity of the new VOL as a PG 25 that is the basis of the new VOL.
  • the program may determine the PG 25 that is the basis of the new VOL based on any rule, such as the PG 25 with the largest free capacity.
  • the program adds a new VOL entry to the VOL table 172, and sets the storage ID 301, PGID 303, VOL ID 302, and capacity 304 of the affiliation destination.
  • the program determines whether the PG 25 that is the basis of the new VOL (that is, the drive 26 that is the basis of the PG 25) has a compression function.
  • the determination here is whether the type of the PG that is the basis of the new VOL is “A”. Although it is determined whether or not, it is not limited to this.
  • the program displays, on the output device, a screen (not shown) that allows the user to select whether or not to enable automigration for the new VOL. Based on this screen, the user selects and inputs whether to enable or disable auto-migration of the new VOL.
  • the program determines whether the information input in S605 is to enable or disable auto-migration of the new VOL. If the input information is information that invalidates auto-migration of a new VOL (No in S607), the program ends the process. On the other hand, if the input information is information that enables auto-migration of the new VOL (Yes in S607), the program advances the process to S609.
  • the program displays on the output device a screen that prompts the user to set auto migration for a new VOL.
  • a screen that prompts the user to set auto migration for a new VOL.
  • information on the auto migration group table 173 may be displayed on this screen.
  • the user selects and inputs the group ID of the group to which the new VOL belongs.
  • the program may allow the user to select and input a function corresponding to the auto migration group instead of the group ID. For example, when the user selects an invalid ID, the program may cause the user to select a valid group ID, such as prompting an input through an error screen.
  • the program causes the new VOL to belong to the group input in S609. Specifically, the program sets the group ID of the group to which the new VOL belongs in the field of the group ID 305 of the entry of the new VOL in the VOL table 305.
  • the program sets a flag indicating that automigration determination has not been performed for the new VOL. Specifically, the program sets “False” in the auto migration call 305 field of the entry of the new VOL in the VOL table 305.
  • the program transmits an instruction to create a new VOL to the storage apparatus 2.
  • the new VOL creation instruction may include information on the new VOL in the PG table 171 and the VOL table 172.
  • the management system computer 1 can set and manage various attribute information of the new VOL.
  • the auto migration group table 173 to group threshold combinations of usage statuses (compression rate, IOPS, etc.) for VOLs, it is easy to combine usage statuses for new VOLs created by the above processing. Can be set. Further, when creating a new VOL, by combining threshold combinations, it is possible to reuse a plurality of threshold combinations.
  • FIG. 7 shows an example of a flowchart of the regular monitoring process.
  • the periodic monitoring process is a process performed by the processor 11 of the management system computer 1 executing a periodic monitoring process program (not shown) stored in the memory.
  • the periodic monitoring processing program may be a part of the management server program 16.
  • the periodic monitoring program is simply referred to as a program.
  • the program reads the configuration information 17 into the memory 15.
  • Loop A periodically executes the processing in Loop A periodically for each storage device in the computer system.
  • the execution interval of Loop A may be set in any way and can be changed. Loop A may be performed irregularly.
  • the program sequentially executes the processing in Loop B for each VOL in the target storage apparatus that is executing Loop A.
  • one VOL in the target storage apparatus is set as a target VOL, and the process will be described.
  • the program refers to the VOL table 172, and determines whether or not an auto migration ID is set for the target VOL.
  • the program advances the process to S705.
  • the program executes the next LoopB process. In this case, the program executes S703 with the next VOL of the target storage device as the target VOL. Further, when the processing of LoopB is completed for all the VOLs in the target storage device, the program executes the processing of LoopA with the next storage device as the target storage device.
  • the program determines whether or not an auto migration determination process described later has already been performed for the target VOL. Specifically, the program refers to the VOL table 712 and determines whether “False” is set in the column of the auto-migration call 306 of the target VOL. In this embodiment, the automigration determination process is performed only once for each VOL.
  • auto migration monitoring processing can be sequentially executed for each VOL 24 of each storage device 2 in the computer system.
  • the auto migration determination process for determining whether or not to instruct VOL migration is performed only once for each VOL. That is, migration is not instructed to a VOL that has made this determination once. Therefore, after the VOL is created, the VOL migration is performed in a state where the used capacity is relatively small, and the I / O load of the storage apparatus due to the VOL migration can be reduced as much as possible.
  • FIG. 8 shows an example of a flowchart of the auto migration monitoring process.
  • the auto migration monitoring process is a process executed in S707 of the periodic monitoring process.
  • the program acquires the information on the used capacity (504) and the used state of the target VOL from the target storage device.
  • the usage state information includes, for example, the compression rate (505) and IOPS (506) of the target VOL.
  • the program registers the information in the performance information storage table together with the date and time (503) when the information is acquired. Thereby, for example, the capacity information and the usage state information may be stored in time series in the performance information storage table.
  • the program refers to the VOL table 172 and acquires the auto migration group ID of the target VOL.
  • the program refers to the auto migration group table 173 and determines whether or not the used capacity of the target VOL acquired in S801 exceeds the calling capacity (402) of the auto migration group to which the target VOL belongs.
  • the auto migration determination process can be executed.
  • an appropriate usage state prediction value can be calculated by setting the usage capacity in advance to such an extent that the prediction value of the usage state can be calculated.
  • a “True” flag is set in the automigration call of the VOL table.
  • the VOL creation of the target VOL can be performed at a stage where the amount of time that has elapsed since the time is small and the data accumulated in the target VOL is relatively small. As a result, the amount of data copied between drives by migration can be reduced, and the I / O load of the entire storage apparatus can be reduced.
  • FIG. 9 shows an example of a flowchart of the auto migration determination process.
  • the auto migration determination process is a process executed in S809 of the auto migration monitoring process.
  • the program refers to the performance information storage table 174 and calculates a predicted value of the usage status (compression rate, IOPS, etc.) of the target VOL.
  • the predicted value is a preset value at a certain time in the future. Specifically, for example, the predicted value may be a point in time when the target VOL reaches a usage rate (for example, 70%) preset by the user or automatically.
  • the calculation method of the predicted value of the usage state may be any method.
  • a method for calculating the predicted value of the compression rate for example, a method may be adopted in which the compression rate of the latest date and time among the compression rates of the target VOL recorded in the performance information storage table 174 is used as the predicted value. This method is effective for a VOL with little change in compression rate.
  • the predicted value of the compression rate may be estimated by calculating the slope from the compression rate of the target VOL recorded in time series in the performance information storage table 174. This method is effective for a VOL with a large change in compression rate. By these methods, it is possible to easily calculate the predicted value of the compression rate without using complicated calculation.
  • a method for calculating a predicted value of IOPS for example, a method may be adopted in which the maximum value is used as the predicted value among the IOPS of the target VOL recorded in the performance information storage table 174.
  • an average value of IOPS values of the target VOL recorded in the performance information storage table 174 may be calculated and used as a predicted value.
  • the program extracts the migration destination PG of the data in the target VOL in the target storage. Specifically, for example, the program acquires the capacity (304) of the target VOL based on the VOL table 172. Next, the program refers to the PG table 171 and extracts a PG having a free capacity corresponding to the capacity of the target VOL in the target storage as a data migration destination PG in the target VOL. When there are a plurality of extracted PGs, the program selects the one PG as a data migration destination PG in the target VOL. In this case, the program may set the PG having the largest available capacity among the plurality of extracted PGs as the migration destination PG, or may select the migration destination PG according to another rule.
  • the program determines whether or not the migration destination PG has been extracted. If the migration destination PG is not extracted (No in S905), that is, if there is no PG having a free capacity corresponding to the capacity of the target VOL in the target storage, the program ends the process (END). .
  • the program refers to the automigration group table 173 and determines whether or not the predicted value of the compression rate of the target VOL calculated in S901 is higher than the compression rate threshold of the group to which the target VOL belongs.
  • the fact that the predicted value of the compression rate is higher than the threshold value means that the predicted value of the compression rate is worse in the degree of compression of the data in the VOL than the threshold value. For example, if the target VOL belongs to the group “1”, the compression rate threshold is “80%” (see FIG. 4). If the predicted value of the compression rate of the target VOL is “90%”, the predicted value of the target VOL is higher than the threshold (that is, the degree of compression of the data in the VOL is bad).
  • the program ends the process. On the other hand, when the predicted value of the compression rate is a value higher than the threshold (No in S907), the program advances the process to S909.
  • the program refers to the auto-migration group table 173 and determines whether or not the IOPS predicted value of the target VOL calculated in S901 is higher than the IOPS threshold of the group to which the target VOL belongs. For example, if the target VOL belongs to the group “1”, the IOPS threshold is “8000 count / s” (see FIG. 4). If the predicted value of IOPS of the target VOL is “9000 count / s”, the IOPS of the target VOL is higher than the threshold value.
  • the program ends the process.
  • the program instructs the target storage device to migrate the target VOL (S911), and ends the process.
  • the target storage device executes migration of the target VOL according to the instruction. Specifically, the target storage device generates a VOL (migration destination VOL) based on the extracted PG, and copies the data in the target VOL to the migration destination VOL. Thereafter, the target storage device may erase data in the target VOL.
  • VOL migration destination VOL
  • the program can execute migration of the target VOL.
  • the target storage apparatus predicts the future usage status of the target VOL instead of migrating the target VOL to another PG, and executes migration of the target VOL. be able to.
  • the above effect is effective. This is because when a large amount of writing occurs in the flash drive for a certain time, write amplification (WA) may occur in which the amount of writing to the flash drive increases compared to the actual amount of write data. The WA may further degrade the I / O performance of the storage apparatus.
  • WA write amplification
  • the migration of the target VOL can be instructed when the predicted value of the compression rate of the target VOL becomes a value higher than the threshold (that is, when the degree of compression of the data in the VOL deteriorates). .
  • the storage apparatus can move the data in the flash drive having the compression function to another type of drive 26 (drive having no compression function). Therefore, the flash drive having the compression function can store data with a better compression degree, and the flash drive having the compression function can be used effectively.
  • the unit price of a flash drive having a compression function is high, it is possible to effectively use resources in the storage apparatus by storing data with a high degree of compression.
  • the target VOL when the IOPS of the target VOL becomes higher than the threshold value (that is, when the load of the target VOL becomes high), the target VOL can be automatically migrated. As a result, the target storage apparatus can move the data in the VOL with a high I / O load to another drive, and can level the I / O load.
  • this invention is not limited to a present Example, It cannot be overemphasized that it can change variously in the range which does not deviate from the summary.
  • the program executes automigration of the target VOL when the compression rate of the target VOL and the predicted value of IOPS are higher than the threshold.
  • the target VOL may be automatically migrated.
  • any threshold value (compression ratio 403 or IOPS 404) of the target group may be set to “0”.
  • the program when the predicted value of the compression rate of the target VOL is higher than the threshold and the predicted value of IOPS is equal to or lower than the threshold, the program notifies the input / output device operated by the user to that effect. You may make it do.
  • the program may execute S907 after S909.
  • the program notifies the input / output device operated by the user to that effect. You may make it notify.
  • the user may execute a migration instruction for the target VOL via the input / output device.
  • the program may execute S911 (instruction for migration to the target VOL) for the target VOL.
  • the compression rate and the IOPS value were measured as the values of the usage state. However, values other than these may be measured as usage state values.
  • the program sets “True” in the auto migration call 306 of the target VOL in the VOL table 172 before executing the auto migration determination process.
  • the timing for setting “True” in the auto-migration call 306 of the target VOL in the VOL table 172 may be other than this.
  • the program transmits a migration instruction to the target VOL (S911) or when the program is determined to execute S911 “True” is set in the auto-migration call 306 of the target VOL in the VOL table 172. May be. By doing so, a migration opportunity is given again for a VOL that has never been migrated.
  • each process of the program included in the management system computer 1 has been described.
  • the program for executing the above-described processing may be executed by a computer other than the management system computer 1 (for example, another computer connected to the storage device 2 or the computer system).
  • Management system computer 2 Storage device 3: Host computer 4: Communication network 5: Communication network

Landscapes

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

Abstract

管理計算機は、ホスト計算機及びストレージ装置に接続される。ストレージ装置は、複数種類のドライブを有し、複数種類のドライブのうちの特定の種類の少なくとも一つの第1ドライブに基づき第1ボリュームを生成し、ホスト計算機からの第1ボリュームを指定したI/O要求に基づき、第1ドライブに対してデータのI/O処理を行う。ストレージ装置は、第1ボリュームの使用状態を監視する。管理計算機は、第1のボリュームの使用状態を繰り返し取得する。管理計算機は、取得した第1ボリュームの使用状態に基づき、第1ボリュームの将来の使用状態の予測値を算出して、予測値が予め設定された閾値を超えたか否かの第1の判定を行う。管理計算機は、予測値が前記閾値を超えた場合に、ストレージ装置に対して、第1ドライブとは異なる種類の第2ドライブに基づく第2ボリュームに第1ボリューム内のデータをマイグレーションする指示を送信する。

Description

管理計算機及び管理方法
 本発明は、ボリュームマイグレーションを管理するための技術に関する。
 企業が扱うデータの規模が大きくなってきており、大量のデータを高速にアクセスできる高性能なストレージ装置を有する計算機システムが求められている。このため、従来のHard Disk Drive(HDD)よりも高速なドライブを利用するユーザが増大している。高速なドライブの一例として、Solid State Drive(SSD)等のフラッシュメモリを有するフラッシュドライブがある。
 これらのドライブは、高速なアクセスを可能にするが、ビット単価が高く高性能である。このため、このような高性能なドライブを効率よく利用したいというニーズがある。
 ドライブを効率よく利用する技術の1つに、Volume Migration(以下、マイグレーションという。)がある。例えば、ユーザからの負荷状況を第1の記憶装置の複数の領域毎に取得し、負荷の高い領域に格納されているデータを、第1の記憶装置よりも第2の記憶装置に移動させる技術が、特許文献1に開示されている。
 このように、複数種類のドライブ(記憶装置)が混在するストレージ装置においては、マイグレーションにより、ボリュームの使用状態に応じて、特定の種類のドライブに基づくボリューム内のデータを、別の種類のドライブに基づくボリュームに移行することで、ドライブを効率よく利用できる。
特開2013-171305号公報
 しかし、マイグレーションの実行中には、特定のドライブから他のドライブへの物理的なデータのコピーも発生するため、マイグレーションに伴うドライブへのリード又はライトに加え、各ボリュームに対するI/O要求に基づくドライブへのデータのI/O処理(リード又はライト)が行われる。このため、ストレージ装置全体のI/O負荷が高くなってしまう場合がある。
 特に、マイグレーションのタイミングが遅くなるほど、移行元のボリューム内に蓄積されるデータ量が増えるため、マイグレーションによってドライブ間でコピーされるデータ量が増えてしまうという問題がある。
 管理計算機は、メモリと、ホスト計算機及びストレージ装置に接続されるプロセッサと、を備える。ストレージ装置は、複数種類のドライブを有する。ストレージ装置は、複数種類のドライブのうちの特定の種類の少なくとも一つの第1ドライブに基づき第1ボリュームを生成する。ストレージ装置は、ホスト計算機からの第1ボリュームを指定したI/O要求に基づき、第1ドライブに対してデータのI/O処理を行う。ストレージ装置は、第1ボリュームの使用状態を監視する。プロセッサは、ストレージ装置から、使用状態を繰り返し取得する。プロセッサは、取得された使用状態に基づき、第1ボリュームの将来の使用状態の予測値を算出して、予測値が予め設定された閾値を超えたか否かの第1の判定を行う。プロセッサは、予測値が閾値を超えた場合に、ストレージ装置に対して、第1ドライブとは異なる種類の第2ドライブに基づく第2ボリュームに第1ボリューム内のデータをマイグレーションする指示を送信する。
 マイグレーションによる、ストレージ装置のI/O負荷を低減できる。
本実施例に係る計算機システムの構成図である。 PGテーブル171の一例を示す。 VOLテーブル172の一例を示す。 オートマイグレーショングループテーブル173の一例を示す。 性能情報格納テーブル174の一例を示す。 VOL作成処理のフローチャートの一例を示す。 定期監視処理のフローチャートの一例を示す。 オートマイグレーション監視処理のフローチャートの一例を示す。 オートマイグレーション判定処理のフローチャートの一例を示す。
 なお、以後の説明では「aaaテーブル」等の表現にて本発明の情報を説明するが、これら情報はテーブル等のデータ構造以外で表現されていてもよい。そのため、データ構造に依存しないことを示すために「aaaテーブル」等について「aaa情報」と呼ぶことがある。
 さらに、各情報の内容を説明する際に、「識別情報」、「識別子」、「番号」、「ID」という表現を用いるが、これらについてはお互いに置換が可能である。
 以後の説明では「プログラム」を主語として説明を行う場合があるが、プログラムはプロセッサによって実行されることで定められた処理をメモリ及び通信ポート(通信制御デバイス)を用いながら行うため、プロセッサを主語とした説明としてもよい。また、プログラムの一部または全ては専用ハードウェアによって実現されてもよい。
 また、各種プログラムはプログラム配布サーバや、計算機が読み取り可能な記憶メディアによって記憶装置にインストールされてもよい。
 本発明は、以下に説明する実施例に限定されるものではない。以下、図面を用いて本実施例を説明する。
 図1は、本実施例に係る計算機システムの構成図である。
 計算機システムは、1つ以上のストレージ装置2と、1つ以上のホスト計算機3と、管理システム計算機1と、を有する。以下の説明では、ホスト計算機3を単にホスト3という。
 管理システム計算機1と、各ストレージ装置2と、各ホスト3とは、例えば、LAN(Local Area Network)等の通信ネットワーク4を介して、相互通信可能に接続されている。また、各ホスト3と、各ストレージ装置2とは、例えば、SAN(Storage Area Network)等の通信ネットワーク5を介して、相互通信可能に接続されている。なお、これらの通信ネットワーク4、5は、SAN又はLANに限られず、どのような通信ネットワークを利用されてもよい。
 ストレージ装置2は、通信インタフェース22、23と、コントローラ21と、複数種の物理記憶ドライブ26と、を有する。なお、以下の説明及び図面では、通信インタフェース22、23を単にインタフェース22、23という場合がある。また、以下の説明及び図面では、物理記憶ドライブ26を単にドライブ26という場合がある。
 ストレージ装置2には、複数種のドライブが存在してもよい。ドライブ26の種類としては、例えば、SSD(Solid State Drive)やドライブ26内でデータを圧縮する機能を備えるフラッシュドライブや、SAS(Serial Attached SCSI)やSATA(Serial ATA)等の性能の異なるHDD(Hard Disk Drive)が含まれてよい。
 複数のドライブ26に基づき、パリティグループ(PG)25が生成される。図では、2つのドライブ26に基づきPG25が生成されているが、PG25を生成するためのドライブ26の数は、これに限定されない。PG25は、同種のドライブ26で構成される。各PG25に基づき、1つ又は複数の論理ボリューム(VOL)24が生成される。なお、本実施例では、PG25に基づきVOL24が生成されるが、1つのドライブ26からVOL24が生成されてもよい。また、VOL24は、仮想的な論理ボリュームであってもよい。
 コントローラ21は、ホスト3からのI/Oで指定されたVOL24に対応するPG25にアクセスする。ライト要求の場合、ライトデータは、ライト要求により指定されたVOL24に対応するPG25の基となるドライブ26内に書き込まれる。
 ホスト3は、通信インタフェース32、33と、プロセッサ31と、メモリ34とを有する。通信インタフェース32、33と、プロセッサ31と、メモリ34とは、バスなどを介して相互接続される。通信インタフェース33が、通信ネットワーク5を介してストレージ装置2の通信インタフェース22に接続される。なお、以下の説明及び図面では、通信インタフェース32、33を単にインタフェース32、33という場合がある。
 メモリ34には、1つ以上のアプリケーションプログラム36が記憶される。プロセッサ31が、これらアプリケーションプログラム36を実行することにより、ホスト3は、ストレージ装置2内のVOL24を指定したI/Oを行うこと等ができる。
 管理システム計算機1は、通信インタフェース13と、プロセッサ11と、メモリと16と、を有する。通信インタフェース13と、プロセッサ11と、メモリ15とは、バスなどを介して相互接続される。また、通信インタフェース13が、通信ネットワーク4を介して、ホスト3のインタフェース32及びストレージ装置2のインタフェース23に接続される。
 メモリ15には、管理サーバプログラム16及び構成情報17等が記憶される。構成情報17としては、例えば、パリティグループテーブル(PGテーブル)171、論理ボリュームテーブル(VOLテーブル)172、オートマイグレーショングループ(Auto Migration Group)テーブル173、及び、性能情報格納テーブル174等がメモリ15に記憶される。各テーブル171~174については、後述する。
 プロセッサ11は、管理サーバプログラム16等の各種プログラムを実行することで、各ストレージ装置2及び各ホスト3を制御する。
 図2は、PGテーブル171の一例を示す。
 PGテーブル171は、PG25の構成情報を有するテーブルである。PGテーブル171は、PG25毎のエントリを有する。各エントリは、ストレージID(Storage ID)201と、PGID202と、種別(Type)203と、圧縮(Compression)204と、総容量(Total Capacity)205と、使用容量(Used Capacity)208と、を有する。
 ストレージID201には、PGが所属するストレージ装置2の識別子が格納される。PGID202には、各ストレージ装置内でPGを一意に識別する識別子が格納される。種別203には、PG25の基となるドライブ26の種別が設定される。例えば、図の「A」は、ドライブ26内でデータの圧縮機能を有するフラッシュドライブであることを示す。また例えば、図の「B」はSSD(Solid)、「C」はHDDであることを示す。
 圧縮204には、PG25の基となるドライブ26が、圧縮機能を有するか否か設定される。当該PG25の基となるドライブが、圧縮機能を有する場合には「True」、圧縮機能を有さない場合には「False」が設定される。総容量205には、PG25の記憶領域の容量(実容量)が格納される。使用容量206には、PG25内のデータが格納されている記憶領域の容量が格納される。なお、総容量205から使用容量206を引いた値が、当該PG25の使用可能な容量(空き容量)となる。
 なお、PGテーブル171内の情報は、管理システム計算機1が各ストレージ装置2から取得した情報に基づき生成する。
 図3は、VOLテーブル172の一例を示す。
 VOLテーブル172は、VOL26の構成情報を有するテーブルである。VOLテーブル172は、VOL26毎のエントリを有する。各エントリは、ストレージID(Storage ID)301と、VOLID302と、PGID303と、VOL容量(VOL Capacity)304と、オートマイグレーショングループID(Auto Migration Group ID)305と、オートマイグレーション呼び出し(Auto Migration Invoked)306とを有する。なお、以下の説明においては、オートマイグレーショングループを単にグループ、オートマイグレーショングループIDを単にグループIDという場合がある。
 ストレージID301には、VOLが所属するストレージ装置2の識別子が格納される。VOLID302には、ストレージ装置2内で一意に識別されるVOL24の識別子が格納される。
 PGID303は、VOL24の基となるPG25の識別子を示す。PGIDは、ストレージ装置2内で一意に識別されるPG25の識別子である。VOL容量304には、VOL24の記憶領域の容量(実容量)が格納される。グループID305には、VOL24が属するグループの識別子が格納される。また、オートマイグレーションが無効のVOL24には、「-」が格納される。
 オートマイグレーション呼び出し306には、VOL24に対するオートマイグレーション判定が実施されたか否かを示すフラグが格納される。当該VOL24について、オートマイグレーション判定がすでに実施された場合には「True」、実施されていない場合には「False」が設定される。後述のオートマイグレーション監視処理において、オートマイグレーション呼び出し306に「False」が設定されたVOL24に対してのみ、オートマイグレーション判定処理が行われる。
 ここで、オートマイグレーションについて説明する。オートマイグレーションは、管理システム計算機1によって行われる、ストレージ装置に対するVOLのマイグレーションの管理方法である。具体的には、オートマイグレーションが有効なVOLは、後述の定期監視処理において、オートマイグレーション監視処理及びオートマイグレーション判定処理の各処理が実行される。本実施例において、VOLのマイグレーションとは、マイグレーション対象のVOL(移行元VOL)内のデータを、移行元VOLの基となるPG(移行元PG)とは別のPG(移行先PG)に基づき生成したVOL(移行先VOL)に移行することである。VOLのマイグレーションを実行することにより、移行元PGを構成するドライブ26に格納されたデータが、移行先PGを構成するドライブ26にコピーされる。なお、管理システム計算機1は、後述のオートマイグレーション判定処理を行うことによって、VOLの利用状況の予測値に基づき、そのVOLのマイグレーションの指示を行うか否かを判定する。
 図4は、オートマイグレーショングループテーブル173の一例を示す。
 オートマイグレーショングループテーブル173は、オートマイグレーション判定処理において、VOL24のマイグレーションを指示するか否かを判定する際のグループ毎の判断基準を格納するテーブルである。本実施例では、この判断基準の一例として、VOL24の使用状態の予測値を判定するための閾値が設定される。
 オートマイグレーショングループテーブル173は、オートマイグレーショングループ毎のエントリを有する。各エントリは、グループID(Auto Migration Group ID)401と、呼び出し容量(Invoke Capacity)402と、圧縮率403と、IOPS(Input Output per Second)404とを有する。
 グループID401には、各グループを識別するための識別子が格納される。呼び出し容量402には、各グループにおけるVOL24の使用容量の閾値が格納される。この閾値は、オートマイグレーション判定処理を行うタイミングを判定するために使用される。403及び404には、オートマイグレーション判定処理において、マイグレーションの指示を行うか否かを判定するために使用される、VOL24の使用状態の閾値が格納される。なお、本実施例では、使用状態の値として、圧縮率とIOPSの値が測定される。しかし、使用状態値として、これら以外の値が測定されてもよい。
 本実施例における圧縮率とは、圧縮前のデータ量に対する圧縮後のデータ量の割合(対象VOLの圧縮後のデータ量を、対象VOLの圧縮前のデータ量で割った値に、100を掛けた値)と定義される。従って、圧縮率が高いほどVOL内のデータは圧縮されておらず、圧縮率が低いほどVOL内のデータは圧縮されていることになる。また、IOPSは、対象VOLに対する1秒間のI/O(つまり、ライト及びリード)数と定義される。
 図5は、性能情報格納テーブル174の一例を示す。
 性能情報格納テーブル174は、各日時におけるVOLの使用状態の情報が格納されるテーブルである。使用状態の情報としては、例えば、VOLの使用容量、圧縮率及びIOPSである。管理システム計算機1は、ストレージ装置2がモニタリングした各日時における使用状態の情報を、定期的に又は不定期に取得してこのテーブル174を作成・更新する。
 各エントリは、ストレージID(Storage ID)501と、VOLID502と、データの取得日時(Time)503と、使用容量(Used Capacity)504と、圧縮率(Compression Ratio)505と、IOPS506と、を有する。
 例えば、図には、対象ストレージ装置から管理システム計算機1が使用状態の情報を取得した日時「2015-08-01-10.00.00.000」においては、ストレージ装置「01」のVOL「01:01」は、0.02GB使用されており、圧縮率22%、IOPS5900count/sであることが示されている。
 なお、本実施例では、管理システム計算機1が、ストレージ装置から使用状態の情報を取得した日時(取得日時)による、時系列のVOLの使用状態が示されるが、これに限られない。例えば、使用状態の情報の取得日時に代えて、ストレージ装置が実際にVOL使用状態を測定した日時であってもよい。この場合、ストレージ装置2が、各VOLの使用状態の情報とともにその測定日時を管理システム計算機1に送信することとなる。
 図6は、VOL作成処理のフローチャートの一例を示す。
 VOL作成処理は、管理システム計算機1のプロセッサ11がメモリ15に記憶されたVOL作成プログラム(図示なし)を実行することにより行われる処理である。なお、VOL作成プログラムは、管理サーバプログラム16の一部であってもよい。以下、この図の説明においては、VOL作成プログラムを単にプログラムという。
 プログラムは、管理システム計算機1に接続される図示しない入力装置及び出力装置を用いて、ユーザが当該プログラムを起動することで実行される。例えば、ユーザは、プログラムの起動後、出力装置に表示される図示しない画面の指示に従い、新規VOLを作成するのに必要な情報(VOL作成情報)を入力する。VOL作成情報は、例えば、新規VOLを所属させるストレージ装置のストレージID、新規VOLの基となるPG25の種別、新規VOLの記憶領域の容量(実容量)等である。なお、上述の通り、種別は、PG25の基となるドライブ26の種別である。
 S601で、プログラムは、PGテーブル171を参照し、VOL作成情報に基づいて新規VOLを作成する。具体的には、プログラムは、VOL作成情報に含まれる新規VOLの所属先のストレージID、新規VOLの基となるPG25の種別、及び新規VOLの実容量から、新規VOLの基となるPG25を決定する。この場合、プログラムは、VOL作成情報に含まれるストレージID及びボリュームタイプを有するPG25を候補のPGとし、候補のPGの総容量205から使用容量206を引くことで、PG25の空き容量を算出する。そして、プログラムは、算出の結果、新規VOLの実容量を満たすだけの空き容量のあるPG25を、新規VOLの基となるPG25と決定する。なお、候補のPGが複数ある場合、プログラムは、例えば、空き容量の一番多いPG25等、いずれかのルールに基づき新規VOLの基となるPG25を決定してよい。次いで、プログラムは、VOLテーブル172に新規VOLエントリを追加し、所属先のストレージID301、PGID303、VOLID302及び容量304を設定する。
 S603で、プログラムは、新規VOLの基となるPG25(つまり、PG25の基となるドライブ26)が圧縮機能を有するか否かを判定する。なお、本実施例においては、圧縮機能を有するPG25の種別は「A」のみである(図2を参照)ため、ここでの判定は、新規VOLの基となるPGの種別が「A」か否かの判定となっているが、これに限定されるものではない。
 新規VOLの基となるPG25の種別が「A」以外の場合(S603でNo)、プログラムは処理を終了する。一方、新規VOLの基となるPG25の種別が「A」の場合(S603でYes)、プログラムはS605に処理を進める。
 S605で、プログラムは、新規VOLについて、オートマイグレーションを有効にするか否かをユーザに選択させる画面(図示なし)を、出力装置に表示する。この画面に基づき、ユーザは、新規VOLのオートマイグレーションを有効にするか又は無効にするかを選択し、入力する。
 S607で、プログラムは、S605で入力された情報が、新規VOLのオートマイグレーションを有効にするか又は無効にするかを判定する。入力された情報が、新規VOLのオートマイグレーションを無効にするものの場合(S607でNo)、プログラムは処理を終了する。一方、入力された情報が、新規VOLのオートマイグレーションを有効にするものである場合(S607でYes)、プログラムはS609に処理を進める。
 S609で、プログラムは、新規VOLのオートマイグレーションの設定をユーザに促す画面を出力装置に表示する。例えばこの画面には、オートマイグレーショングループテーブル173の情報が表示されてもよい。この画面に基づき、ユーザは、新規VOLを所属させたいグループのグループIDを選択し、入力する。また、プログラムは、グループIDに代えて、オートマイグレーショングループに対応する機能をユーザに選択し、入力させるようにしてもよい。なお、例えば、ユーザが無効なIDを選択した場合には、エラー画面により入力を促すなど、プログラムは、有効なグループIDをユーザに選択させるようにしてもよい。
 S611で、プログラムは、新規VOLをS609で入力されたグループに所属させる。具体的には、プログラムは、VOLテーブル305の新規VOLのエントリのグループID305の欄に、新規VOLを所属させるグループのグループIDを設定する。
 S613で、プログラムは、新規VOLにオートマイグレーション判定が行われていないことを示すフラグを設定する。具体的には、プログラムは、VOLテーブル305の新規VOLのエントリのオートマイグレーション呼び出し305の欄に「False」を設定する。
 この後、プログラムは、ストレージ装置2に対して、新規VOLの作成指示を送信する。新規VOL作成指示には、PGテーブル171及びVOLテーブル172内の新規VOLの情報が含まれてよい。
 上記処理により、管理システム計算機1は、新規VOLの種々の属性情報を設定し、管理することができる。
 また、圧縮機能を有する種別のPGに基づき新規VOLを作成する場合には、新規VOLに対してオートマイグレーションを有効にするか否かの情報を設定できる。
 また、オートマイグレーショングループテーブル173により、VOLに対する使用状態(圧縮率、IOPS等)の閾値の組み合わせをグループ化しておくことで、上記処理で作成した新規VOLに対して、使用状態の組み合わせを容易に設定することができる。また、新規VOLを作成する際に、閾値の組み合わせをグループ化しておくことで、複数の閾値の組み合わせを使いまわすことができる。
 図7は、定期監視処理のフローチャートの一例を示す。
 定期監視処理は、管理システム計算機1のプロセッサ11がメモリに記憶された定期監視処理プログラム(図示なし)を実行することによって行われる処理である。なお、定期監視処理プログラムは、管理サーバプログラム16の一部であってもよい。以下、この説明においては、定期監視プログラムを単にプログラムという。
 S701で、プログラムは構成情報17をメモリ15に読みこむ。
 次いで、プログラムは、計算機システム内の各ストレージ装置に対して、定期的にLoopA内の処理を順次実行する。なお、LoopAの実行間隔はどのように設定されてもよく、変更も可能である。また、LoopAは不定期に行われてもよい。
 プログラムは、LoopAを実行中の対象ストレージ装置内の各VOLに対して、LoopB内の処理を順次実行する。以下では、対象ストレージ装置内の1つのVOLを対象VOLとし、その処理を説明する。
 S703で、プログラムは、VOLテーブル172を参照し、対象VOLにオートマイグレーションIDが設定されているか否かを判定する。対象VOLにオーマイグレーションIDが設定されている場合(S703でYes)、プログラムは、S705に処理を進める。
 一方、対象VOLにオートマイグレーションIDが設定されていない場合(S703でNo)、プログラムは、次のLoopBの処理を実行する。なお、この場合、プログラムは、対象ストレージ装置の次のVOLを対象VOLとして、S703を実行する。また、対象ストレージ装置内の全てのVOLについてLoopBの処理が完了した場合には、プログラムは、次のストレージ装置を対象ストレージ装置として、LoopAの処理を実行する。
 S705で、プログラムは、対象VOLに対して、後述のオートマイグレーション判定処理がすでに実施されたか否かを判定する。具体的には、プログラムは、VOLテーブル712を参照し、対象VOLのオートマイグレーション呼び出し306の欄に「False」が設定されているか否かを判定する。本実施例では、各VOLに対してオートマイグレーション判定処理は、一度のみ行われる。
 オートマイグレーション呼び出し306の欄に「True」が設定されている場合(S705でNo)、対象VOLのオートマイグレーション判定処理がすでに行われたことを意味するので、プログラムは、LoopBに処理を戻す。
 一方、オートマイグレーション呼び出し306の欄に「False」が設定されている場合(S705でYes)、後述のオートマイグレーション判定処理がまだ行われていないことを意味するので、プログラムは、対象VOLに対してオートマイグレーション監視処理(S707)を実行し、LoopBに処理を戻す。
 上記処理により、計算機システム内の各ストレージ装置2の各VOL24に対して、順次オートマイグレーション監視処理を実行できる。
 本実施例では、VOLのマイグレーションを指示するか否かを判断するためのオートマイグレーション判定処理は、各VOLに対して1回のみ行われる。つまり、1度この判定を行ったVOLに対して、マイグレーションを指示することがない。このため、VOLを作成した後、使用容量が比較的少ない状態で、VOLのマイグレーションが行われることとなり、VOLのマイグレーションによるストレージ装置のI/O負荷をできる限り低減できる。
 図8は、オートマイグレーション監視処理のフローチャートの一例を示す。オートマイグレーション監視処理は、定期監視処理のS707で実行される処理である。
 S801で、プログラムは、対象ストレージ装置から対象VOLの使用容量(504)及び使用状態の情報を取得する。使用状態の情報は、例えば、対象VOLの圧縮率(505)及びIOPS(506)等である。次いで、プログラムは、これら情報を取得した日時(503)とともに性能情報格納テーブルに登録する。これにより、例えば、性能情報格納テーブルには、使用容量及び使用状態の情報が時系列に記憶されてよい。
 S803で、プログラムは、VOLテーブル172を参照し、対象VOLのオートマイグレーショングループIDを取得する。次いで、プログラムは、オートマイグレーショングループテーブル173を参照し、S801で取得した対象VOLの使用容量が、対象VOLが属するオートマイグレーショングループの呼び出し容量(402)を超えるか否かを判定する。
 S801で取得した対象VOLの使用容量が、呼び出し容量以下であった場合(S803でNo)、プログラムは、処理を終了する(END)。
 一方、S801で取得した対象VOLの使用容量が、呼び出し容量を超えた場合(S803でYes)、プログラムは、VOLテーブル712の対象VOLのオートマイグレーション呼び出し306の欄に「True」を設定し(S805)、オートマイグレーション判定処理を実行し(S807)、処理を終了する(END)。
 上記処理により、対象VOLの使用容量が、予め設定した使用容量を超えた場合に、オートマイグレーション判定処理を実行することができる。後述のオートマイグレーション判定処理において、使用状態の予測値を算出できる程度に使用容量を予め設定しておくことで、適切な使用状態の予測値を算出できる。
 また、オートマイグレーション判定処理を行うVOLについては、VOLテーブルのオートマイグレーション呼び出しに「True」のフラグが設定される。これにより、1つのVOLに対して2回以上マイグレーションが行われることがない。これにより、ストレージ装置内でのマイグレーションの回数が低減するため、ストレージ装置全体のI/O負荷を低減することができる。
 また、オートマイグレーション判定処理を行うVOLの使用容量の閾値(オートマイグレーショングループテーブル173の呼び出し容量402)を、対象VOLの全容量に対して低い値に設定しておくことで、対象VOLのVOL作成から経過した時間が少なく対象VOLに蓄積されるデータが比較的少ない段階で、オートマイグレーション判定処理を行うことができる。これにより、マイグレーションによるドライブ間のデータのコピー量を低減することができ、ストレージ装置全体のI/O負荷を低減することができる。
 図9は、オートマイグレーション判定処理のフローチャートの一例を示す。オートマイグレーション判定処理は、オートマイグレーション監視処理のS809で実行される処理である。
 S901で、プログラムは、性能情報格納テーブル174を参照し、対象VOLの使用状態(圧縮率及びIOPS等)の予測値を算出する。予測値は、予め設定された将来のある時点の値である。具体的には、例えば、予測値は対象VOLが、ユーザにより又は自動的に予め設定された使用率(例えば70%)に達した時点であってもよい。
 使用状態の予測値の算出方法は、どのような方法であってもよい。圧縮率の予測値の算出方法としては、例えば、性能情報格納テーブル174に記録された対象VOLの圧縮率のうち、最新の日時の圧縮率を予測値とする方法を採用してもよい。この方法は、圧縮率の変化の少ないVOLに対して有効である。また例えば、性能情報格納テーブル174に時系列に記録された対象VOLの圧縮率から、その傾きを算出することで、圧縮率の予測値を推定してもよい。この方法は、圧縮率の変化の多いVOLに対して有効である。これらの方法により、複雑な計算を用いずに簡易に圧縮率の予測値を算出することができる。
 IOPSの予測値の算出方法としては、例えば、性能情報格納テーブル174に記録された対象VOLのIOPSのうち、最大値を予測値とする方法を採用してもよい。また例えば、性能情報格納テーブル174に記録された対象VOLのIOPSの値の平均値を算出し、これを予測値とする方法を採用してもよい。これらの方法により、複雑な計算を用いずに簡易にIOPSの予測値を算出することができる。
 S903で、プログラムは、対象ストレージ内で、対象VOL内のデータの移行先のPGを抽出する。具体的には、例えば、プログラムは、VOLテーブル172に基づき、対象VOLの容量(304)を取得する。次いで、プログラムは、PGテーブル171を参照し、対象ストレージ内で、対象VOLの容量分の空き容量のあるPGを、対象VOL内のデータの移行先のPGとして抽出する。なお、抽出したPGが複数の場合には、プログラムは、その1つのPGを対象VOL内のデータの移行先のPGとして選択する。この場合、プログラムは、抽出された複数のPGのうち最大の空き容量を持つPGを移行先のPGとするとしてもよいし、他のルールに従って移行先のPGを選択してもよい。
 S905で、プログラムは、移行先のPGが抽出されたか否かを判定する。移行先のPGが抽出されなかった場合(S905でNo)、つまり、対象ストレージ内に対象VOLの容量分の空き容量を有するPGが存在しなかった場合、プログラムは、処理を終了する(END)。
 一方、移行先のPGが抽出された場合(S905でYes)、プログラムは、S907に処理を進める。
 S907で、プログラムは、オートマイグレーショングループテーブル173を参照し、S901で算出した対象VOLの圧縮率の予測値が、対象VOLが属するグループの圧縮率の閾値よりも高い値であるか否かを判定する。なお、前述の通り、圧縮率の予測値が閾値よりも高いというのは、圧縮率の予測値のほうが閾値よりもVOL内のデータの圧縮度合が悪いことを意味する。例えば、対象VOLがグループ「1」に所属しているとすれば、その圧縮率の閾値は「80%」である(図4参照)。対象VOLの圧縮率の予測値が「90%」であるとすれば、対象VOLの予測値は閾値よりも高い(つまり、VOL内のデータの圧縮度合が悪い。)こととなる。
 圧縮率の予測値が閾値以下の場合(S907でNo)、プログラムは、処理を終了する。一方、圧縮率の予測値が閾値よりも高い値の場合(S907でNo)、プログラムはS909に処理を進める。
 S909で、プログラムは、オートマイグレーショングループテーブル173を参照し、S901で算出した対象VOLのIOPSの予測値が、対象VOLが属するグループのIOPSの閾値よりも高い値であるか否かを判定する。例えば、対象VOLがグループ「1」に所属しているとすれば、そのIOPSの閾値は「8000count/s」である(図4参照)。対象VOLのIOPSの予測値が「9000count/s」であるとすれば、対象VOLのIOPSは閾値よりも高いこととなる。
 IOPSの予測値が閾値以下の場合(S909でNo)、プログラムは、処理を終了する。一方、IOPSの予測値が閾値よりも高い値の場合(S909でNo)、プログラムは、対象ストレージ装置に対して、対象VOLのマイグレーションを指示し(S911)、処理を終了する。
 その後、対象ストレージ装置は、指示に従い、対象VOLのマイグレーションを実行する。具体的には、対象ストレージ装置は、抽出されたPGに基づくVOL(移行先VOL)を生成し、対象VOL内のデータを移行先VOLにコピーする。その後、対象ストレージ装置は、対象VOL内のデータを消去してもよい。
 上記処理により、対象VOLの使用状態の予測値が閾値よりも高い値である場合に、プログラムは、対象VOLのマイグレーションを実行することができる。これにより、対象ストレージ装置は、対象VOLの使用状態が悪化した後に、対象VOLを他のPGにマイグレーションするのではなく、対象VOLの将来の使用状態を予測して、対象VOLのマイグレーションを実行することができる。
 特に、本実施例のように、ストレージ装置2がフラッシュドライブを有する場合には、上記効果は有効である。フラッシュドライブに対して一定時間に大量のライトが生じると、実際のライトデータの量よりも、フラッシュドライブに対するライト量が増加するというライトアンプリフィケーション(WA)が発生する場合があるためである。WAによって、ストレージ装置のI/O性能がさらに劣化する可能性もある。このようなストレージ装置2に対しても、上記処理を実行することにより、対象VOLの将来の使用状態を予測して、比較的早いタイミングで対象VOLのマイグレーションを指示することができる。
 具体的には、対象VOLの圧縮率の予測値が閾値よりも高い値となった場合(つまり、VOL内のデータの圧縮度合が悪化した場合)に、対象VOLのマイグレーションを指示することができる。これにより、ストレージ装置は、圧縮機能を有するフラッシュドライブ内のデータを、他の種別のドライブ26(圧縮機能を有さないドライブ)に移動することができる。従って、圧縮機能を有するフラッシュドライブには、より圧縮度合のよいデータを格納することができ、圧縮機能を有するフラッシュドライブを有効に利用することができる。特に、圧縮機能を有するフラッシュドライブのビット単価は高いため、圧縮度合いのよいデータを格納することにより、ストレージ装置内の資源を有効に利用できる。
 また、圧縮率に加えて、対象VOLのIOPSが閾値よりも高い値となった場合(つまり、対象VOLの負荷が高くなった場合)に、対象VOLのオートマイグレーションを実行することができる。これにより、対象ストレージ装置は、I/O負荷の高いVOL内のデータを、他のドライブに移動することができ、I/O負荷を平準化することができる。
 なお、本発明は、本実施例に限定されるものでなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
 例えば、本実施例では、プログラムは、対象VOLの圧縮率及びIOPSの予測値が閾値よりも高い値である場合に、対象VOLのオートマイグレーションを実行していた。しかしながら、例えば、圧縮率及びIOPSのうちいずれかの予測値が閾値よりも高い値であった場合に、対象VOLのオートマイグレーションを行うとしてもよい。これは例えば、オートマイグレーショングループテーブル173において、対象とするグループのいずれかの閾値(圧縮率403又はIOPS404)を「0」に設定すればよい。
 また、例えば、対象VOLの圧縮率の予測値が閾値よりも高く、IOPSの予測値が閾値以下である場合には、プログラムは、ユーザが操作する入・出力装置に対して、その旨を通知するようにしてもよい。
 さらに、プログラムは、S909の後にS907を実行するようにしてもよい。この場合、例えば、対象VOLのIOPSの予測値が閾値よりも高く、圧縮率の予測値が閾値以下である場合には、プログラムは、ユーザが操作する入・出力装置に対して、その旨を通知するようにしてもよい。
 これらの通知に応じて、ユーザが入出力装置を介して、対象VOLのマイグレーションの指示を実行するとしてもよい。この場合、プログラムは、対象VOLに対してS911(対象VOLに対するマイグレーションの指示)を実行するようにしてもよい。
 また、本実施例では、使用状態の値として、圧縮率とIOPSの値が測定されていた。しかし、使用状態値として、これら以外の値が測定されてもよい。
 また、本実施例では、オートマイグレーション監視処理において、プログラムは、オートマイグレーション判定処理を実行する前に、VOLテーブル172の対象VOLのオートマイグレーション呼び出し306に「True」を設定していた。しかし、VOLテーブル172の対象VOLのオートマイグレーション呼び出し306に「True」を設定するタイミングは、これ以外であってもよい。例えば、プログラムは、対象VOLにマイグレーションの指示を送信した場合(S911)又は、プログラムがS911を実行することが決まった場合に、VOLテーブル172の対象VOLのオートマイグレーション呼び出し306に「True」を設定してもよい。このようにすることで、マイグレーションが1度も実行されていないVOLについては、再度マイグレーションの機会が与えられることとなる。
 また、本実施例では、管理システム計算機1が有するプログラムの各処理を説明した。しかしながら、上述の処理を実行するプログラムは、管理システム計算機1以外の計算機(例えば、ストレージ装置2や計算機システムに接続される他の計算機)により実行されてもよい。
1:管理システム計算機 2:ストレージ装置 3:ホスト計算機 4:通信ネットワーク 5:通信ネットワーク
 

Claims (9)

  1.  メモリと、
     ホスト計算機及びストレージ装置に接続されるプロセッサと、
    を備え、
     前記ストレージ装置は、
      複数種類のドライブを有し、
      前記複数種類のドライブのうちの特定の種類の少なくとも一つの第1ドライブに基づき第1ボリュームを生成し、
      前記ホスト計算機からの前記第1ボリュームを指定したI/O要求に基づき、前記第1ドライブに対してデータのI/O処理を行い、
      前記第1ボリュームの使用状態を監視し、
     前記プロセッサは、
      前記ストレージ装置から、前記使用状態を繰り返し取得し、
      前記取得された使用状態に基づき、前記第1ボリュームの将来の使用状態の予測値を算出して、前記予測値が予め設定された閾値を超えたか否かの第1の判定を行い、
      前記予測値が前記閾値を超えた場合に、前記ストレージ装置に対して、前記第1ドライブとは異なる種類の第2ドライブに基づく第2ボリュームに前記第1ボリューム内のデータをマイグレーションする指示を送信する、
    管理計算機。
  2.  前記ストレージ装置は、前記第1ボリュームに格納されたデータ量を監視し、
     前記プロセッサは、
      前記データ量を繰り返し取得し、
      前記データ量が予め設定された基準量を超えたか否かの第2の判定を行い、
      前記データ量が前記基準量を超えた場合に、前記第1の判定を行う、
    請求項1に記載の管理計算機。
  3.  前記プロセッサは、
      前記データ量が前記基準量以下の場合、さらに前記第2の判定を行い、
      前記第1の判定に基づき前記第1ボリューム内のデータのマイグレーションの指示を送信した後には、前記第1の判定を行わない、
    請求項2に記載の管理計算機。
  4.  前記第1ドライブは、自身がデータを圧縮し格納する圧縮機能を有するフラッシュドライブであって、
     前記第2ドライブは、前記圧縮機能を有さないドライブであり、
     前記使用状態は、前記第1ボリューム内に格納されたデータの圧縮前のデータ量に対する圧縮後のデータ量の割合である圧縮率を含み、
     前記ストレージ装置は、前記第1ボリュームの圧縮率を監視し、
     前記プロセッサは、
      前記圧縮率を繰り返し取得し、
      前記取得された圧縮率に基づき、前記第1ボリュームの将来の圧縮率の予測値を算出する、
    請求項3に記載の管理計算機。
  5.  前記使用状態は、前記第1ボリュームのIOPS(Input or Output per second)を含み、
     前記ストレージ装置は、前記第1ボリュームのIOPSを監視し、
     前記プロセッサは、
      前記IOPSを繰り返し取得し、
      前記取得されたIOPSに基づき、前記第1ボリュームのIOPSの予測値を算出し、
      前記第1の判定において、前記圧縮率の予測値が予め設定された圧縮率の閾値を超え、かつ、前記IOPSの予測値が予め設定されたIOPSの閾値を超えたか否かを判定し、
      前記圧縮率の予測値が予め設定された圧縮率の閾値を超え、かつ、前記IOPSの予測値が予め設定されたIOPSの閾値を超えた場合に、
      前記指示を、前記ストレージ装置に送信する、
    請求項4に記載の管理計算機。
  6.  前記プロセッサは、前記取得した圧縮率のうち、最新の圧縮率を前記圧縮率の予測値として算出する、
    請求項5に記載の管理計算機。
  7.  前記プロセッサは、前記取得したIOPSのうち、最も高い値のIOPSを前記IOPSの予測値として算出する、
    請求項6に記載の管理計算機。
  8.  前記プロセッサは、                           
      前記圧縮率の閾値及び前記IOPSの閾値の組み合わせからなるグループを複数記憶し、
      ユーザの入力に基づいて、複数のグループの中から前記第1ボリュームに設定する1つのグループを選択する、
    請求項7に記載の管理計算機。
  9.  ホスト計算機に接続されるストレージ装置の管理方法であって、
     前記取得された使用状態に基づき、前記ストレージ装置内の第1ボリュームの将来の使用状態の予測値を算出し、前記ストレージ装置は、複数種類のドライブを有し、前記複数種類のドライブのうちの特定の種類の少なくとも一つの第1ドライブに基づき前記第1ボリュームを生成し、前記ホスト計算機からの前記第1ボリュームを指定したI/O要求に基づき、前記第1ドライブに対してデータのI/O処理を行い、前記第1ボリュームの使用状態を監視するストレージ装置から、前記第1ボリュームの使用状態を繰り返し取得し、
     前記予測値が予め設定された閾値を超えたか否かの第1の判定を行い、
     前記予測値が前記閾値を超えた場合に、前記ストレージ装置に対して、前記第1ドライブとは異なる種類の第2ドライブに基づく第2ボリュームに前記第1ボリューム内のデータをマイグレーションする指示を送信する、
    ことを備える管理方法。

     
PCT/JP2016/050636 2016-01-12 2016-01-12 管理計算機及び管理方法 WO2017122263A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/050636 WO2017122263A1 (ja) 2016-01-12 2016-01-12 管理計算機及び管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/050636 WO2017122263A1 (ja) 2016-01-12 2016-01-12 管理計算機及び管理方法

Publications (1)

Publication Number Publication Date
WO2017122263A1 true WO2017122263A1 (ja) 2017-07-20

Family

ID=59311025

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/050636 WO2017122263A1 (ja) 2016-01-12 2016-01-12 管理計算機及び管理方法

Country Status (1)

Country Link
WO (1) WO2017122263A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114579050A (zh) * 2022-02-14 2022-06-03 阿里巴巴(中国)有限公司 处理压缩数据的方法以及装置
US11704037B2 (en) * 2020-03-30 2023-07-18 Cohesity, Inc. Deduplicated storage disk space utilization

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072519A (ja) * 2005-09-02 2007-03-22 Hitachi Ltd ストレージシステム及びストレージシステムの制御方法
JP2013171305A (ja) * 2012-02-17 2013-09-02 Fujitsu Ltd ストレージ装置、ストレージシステム、ストレージ管理方法及びストレージ管理プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007072519A (ja) * 2005-09-02 2007-03-22 Hitachi Ltd ストレージシステム及びストレージシステムの制御方法
JP2013171305A (ja) * 2012-02-17 2013-09-02 Fujitsu Ltd ストレージ装置、ストレージシステム、ストレージ管理方法及びストレージ管理プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11704037B2 (en) * 2020-03-30 2023-07-18 Cohesity, Inc. Deduplicated storage disk space utilization
CN114579050A (zh) * 2022-02-14 2022-06-03 阿里巴巴(中国)有限公司 处理压缩数据的方法以及装置
CN114579050B (zh) * 2022-02-14 2024-04-02 阿里巴巴(中国)有限公司 处理压缩数据的方法以及装置

Similar Documents

Publication Publication Date Title
US11073999B2 (en) Extent migration in multi-tier storage systems
JP5981563B2 (ja) 情報記憶システム及び情報記憶システムの制御方法
US8694727B2 (en) First storage control apparatus and storage system management method
JP5756240B2 (ja) 管理システム及び管理方法
JP4699837B2 (ja) ストレージシステム、管理計算機及びデータ移動方法
JP5500256B2 (ja) ストレージシステム
US9626105B2 (en) Controlling a storage system
JP2008217216A (ja) 負荷分散方法及び計算機システム
JP2015517147A (ja) 空間節約(spacesavings:空き容量節約)を達成するように処理をスケジューリングするためのシステム、方法及びコンピュータープログラム製品
JP2007156815A (ja) データマイグレーション方法及びシステム
JP2015191628A (ja) ストレージ管理装置、性能調整方法及び性能調整プログラム
JPWO2017006674A1 (ja) 情報処理システム、記憶制御装置、記憶制御方法および記憶制御プログラム
WO2017177953A1 (zh) 在存储服务器中为应用设置数据处理路径的方法及装置
JP7035858B2 (ja) マイグレーション管理プログラム、マイグレーション方法およびマイグレーションシステム
US9164885B2 (en) Storage control device, storage control method, and recording medium
JP2020154587A (ja) 計算機システム及びデータ管理方法
JP6227841B1 (ja) データ処理システム及びデータ処理方法
US20160364268A1 (en) Computer system, management computer, and management method
WO2014094303A1 (zh) 一种监控记录管理方法与装置
WO2017122263A1 (ja) 管理計算機及び管理方法
CN113220650A (zh) 数据存储方法、装置、设备、存储介质及程序
CN107018163B (zh) 一种资源配置方法和装置
JP4778538B2 (ja) ストレージデータ管理システム及びストレージデータ管理プログラム
US20160070478A1 (en) Storage control device and storage control method
JP6417695B2 (ja) 情報処理システム、情報処理システムの制御方法および情報処理装置の制御プログラム

Legal Events

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

Ref document number: 16884867

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: 16884867

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP