Storage system, asynchronous copy method, and asynchronous copy program

The storage system adjusts virtual computer performance based on current input/output processing to meet future demands, enhancing asynchronous data copying between multiple sites.

JP2025179681AActive Publication Date: 2025-12-10HITACHI VANTARA LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2024086590
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-05-28
Publication Date
2025-12-10
Estimated Expiration
2044-05-28

AI Technical Summary

Technical Problem

Existing technologies fail to anticipate future processing performance needs in virtual computer instances, leading to inefficiencies in asynchronous data copying between multiple sites.

Method used

A storage system with a processing performance adjustment unit that includes a virtual computer that adjusts the performance of a virtual computer that adjusts the performance of a virtual computer, which adjusts the performance of a virtual computer that adjusts the performance of a virtual computer based on the state of input/output processing at a first point in time to meet future processing performance requirements.

Benefits of technology

The system maintains consistent or higher performance levels for asynchronous data copying between multiple sites by anticipating and adjusting processing performance in advance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025179681000001_ABST
    Figure 2025179681000001_ABST
Patent Text Reader

Abstract

To continuously maintain performance higher than a certain level regarding asynchronous copy between a plurality of sites by preparing processing performance required in the future in advance.SOLUTION: In a storage system including another storage device, in which processing performance of a virtual computer that executes asynchronous copy processing of asynchronously copying data with one storage device that executes input and output processing of data in response to a request from a host device may be changed, a processing performance adjustment unit changes in advance processing performance required at a second time point temporally later than a first time point by the virtual computer of the other storage device, before the second time point, when the asynchronous copy processing is executed at the second time point according to a state of the input and output processing at the first time point in the one storage device.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a storage system, an asynchronous copy method, and an asynchronous copy program, and is suitable for application to a storage system relating to a technology for executing asynchronous copies between multiple sites, for example. [Background technology]

[0002] For example, a technique for adjusting the performance of an instance in a node that uses an instance that is a virtual computer is disclosed in Patent Document 1. The technique disclosed in Patent Document 1 changes the instance type (e.g., CPU frequency, number of cores, memory capacity) that indicates the type of processing performance of the instance when the processing performance, such as the current memory usage and CPU (Central Processing Unit) utilization rate of the instance, is at a predetermined threshold value. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2023-100222 Summary of the Invention [Problem to be solved by the invention]

[0004] However, the technology disclosed in Patent Document 1 takes into account the processing performance required at present, but does not take into account the processing performance that will be required in the future, making it impossible to prepare in advance the processing performance that will be required in the future for an instance.

[0005] The present invention has been made in consideration of the above points, and aims to propose a storage system, an asynchronous copy method, and an asynchronous copy program that can continuously maintain a certain level of performance or higher for asynchronous copying between multiple sites by preparing in advance for the processing performance that will be required in the future. [Means for solving the problem]

[0006] In order to solve this problem, the present invention provides a storage system that includes one storage device that performs input / output processing of data in response to a request from a host device, and a virtual computer that performs asynchronous copy processing to asynchronously copy the data between the one storage device and the other storage device, and that can change the processing performance of the virtual computer, and a processing performance adjustment unit that, depending on the state of the input / output processing in the one storage device at a first point in time, changes the processing performance required by the virtual computer of the other storage device at the second point in time when performing the asynchronous copy processing at a second point in time that is later than the first point in time, in advance of the second point in time.

[0007] In the present application, there is provided an asynchronous copy method for a storage system having one storage device that executes data input / output processing in response to a request from a host device and another storage device that can change the processing performance of a virtual computer that executes an asynchronous copy process that asynchronously copies data between the other storage device and the other storage device, wherein a processing performance adjustment unit executes a processing performance adjustment step that, depending on the state of the input / output processing at a first point in time in the one storage device, changes in advance, prior to the second point in time, the processing performance required by the virtual computer of the other storage device at the second point in time when executing the asynchronous copy process at the second point in time that is later than the first point in time.

[0008] In the present application, there is provided an asynchronous copy program for a storage system that includes one storage device that executes input / output processing of data in response to a request from a host device and that can change the processing performance of a virtual computer that executes an asynchronous copy process that asynchronously copies data between the other storage device and the other storage device, and the asynchronous copy program is realized by causing a processing performance adjustment unit to execute, in advance, before the second point in time, a processing performance required by the virtual computer of the other storage device at the second point in time when executing the asynchronous copy process at the second point in time that is later than the first point in time, in accordance with the state of the input / output processing in the one storage device at the first point in time, and a display step that causes the processing performance adjustment unit to display a specified screen for changing the processing performance in advance, on a computer. [Effects of the Invention]

[0009] According to the present invention, it is possible to realize a storage system, an asynchronous copy method, and an asynchronous copy program that can continuously maintain a certain level of performance or higher for asynchronous copying between multiple sites by preparing in advance for the processing performance that will be required in the future. [Brief explanation of the drawings]

[0010] [Figure 1] 1 is a system configuration diagram illustrating an example of the hardware configuration of an information system including a storage system according to an embodiment of the present invention. [Figure 2] 2 is a system configuration diagram showing an example of the software configuration of a management server in an information system including the storage system shown in FIG. 1. FIG. [Figure 3] FIG. 10 illustrates an example of asynchronous data copy processing using journals among a plurality of storage devices. [Figure 4] FIG. 10 is a diagram illustrating an example of verification of processing performance between a storage device in an on-premise environment and a storage device in a cloud environment when writing data. [Figure 5]10 is a flowchart illustrating an example of a processing performance change process. [Figure 6] 6 is a flowchart illustrating an example of a procedure for performance information acquisition processing of the on-premises environment illustrated in FIG. 5. [Figure 7] 6 is a flowchart showing an example of a procedure for determining performance information of the on-premises environment shown in FIG. 5; [Figure 8A] 8 is a flowchart showing an example of a procedure for a determination process when an upper limit threshold shown in FIG. 7 is exceeded. [Figure 8B] 8 is a flowchart showing an example of a procedure for a determination process when the value falls below a lower limit threshold shown in FIG. 7. [Figure 9] 6 is a flowchart illustrating an example of a procedure for performance information change processing of the cloud environment illustrated in FIG. 5; [Figure 10] 10 is a flowchart illustrating an example of a procedure for memory change processing in the cloud environment illustrated in FIG. 9. [Figure 11] 10 is a flowchart illustrating an example of a procedure for a CPU change process in the cloud environment illustrated in FIG. 9; [Figure 12] FIG. 10 is a diagram illustrating an example of a method for calculating memory / CPU enhancement values ​​and the like when each condition is satisfied. [Figure 13] FIG. 10 is a diagram illustrating an example of a method for calculating memory / CPU enhancement values ​​and the like when each condition is satisfied. [Figure 14] FIG. 10 is a diagram illustrating an example of a method for calculating memory / CPU enhancement values ​​and the like when each condition is satisfied. [Figure 15] FIG. 10 is a diagram illustrating an example of a method for calculating memory / CPU enhancement values ​​and the like when each condition is satisfied. [Figure 16] FIG. 10 is a diagram illustrating an example of a method for calculating memory / CPU enhancement values ​​and the like when each condition is satisfied. [Figure 17] FIG. 10 is a diagram illustrating an example of a method for calculating memory / CPU enhancement values ​​and the like when each condition is satisfied. [Figure 18] FIG. 10 is a diagram illustrating an example of a monitoring screen. DETAILED DESCRIPTION OF THE INVENTION

[0011] An embodiment of the present invention will be described in detail below with reference to the drawings.

[0012] 1 is a system configuration diagram showing an example of the hardware configuration of an information system including a storage system according to this embodiment. A business system 1000 as an example of the storage system according to this embodiment is connected via a network 600 to, for example, a management server 400, which is a computer on which a storage control program described below runs.

[0013] The business system 1000 includes a business server 100, a storage device 200 in a so-called on-premise environment, at least one storage device 300 in a so-called cloud environment, and a network 500. An operating system (hereinafter also referred to as "OS") runs on these storage devices 200 and 300. The OS can acquire processing performance such as the amount of data written, the number of times data is written, the CPU usage rate (e.g., iostat) of the processor 201, or a combination of these, by executing commands provided by the OS (e.g., iostat).

[0014] The business server 100 is connected to a storage device 200 in an on-premise environment, and they can exchange data with each other. The storage device 200 in the on-premise environment and at least one storage device 300 in the cloud environment are connected via a network 500, and they can exchange data with each other. In the cloud environment, multiple storage devices 300 are provided. Note that, for simplicity of explanation, the following explanation will be given assuming that there is one storage device 300 in the cloud environment.

[0015] The storage device 200 in the on-premise environment and the storage device 300 in the cloud environment are examples of multiple storage devices that perform asynchronous copy processing to share data that is read and written in response to IO requests from the business server 100, and they do not necessarily have to be in an on-premise environment and a cloud environment, respectively.

[0016] The business server 100 includes a processor 101 , a volatile memory 102 , a drive 103 , and a network interface 104 .

[0017] The processor 101 is a central processing unit that controls the business server 100. The volatile memory 102 is a volatile storage device that can temporarily store data. The drive 103 is a drive device such as a hard disk drive or an SSD (Solid State Drive). The network interface 104 is a network interface for connecting to at least the storage device 200 in an on-premise environment.

[0018] The storage device 200 in the on-premise environment includes a processor 201, a volatile memory 202, a network interface 203, and a non-volatile memory 204. The storage device 200 in the on-premise environment operates as a so-called virtual computer, and the performance of the processor 201, the volatile memory 202, the network interface 203, and the non-volatile memory 204 can be changed according to settings.

[0019] The processor 201 is a central processing unit that controls the storage device 200. The volatile memory 202 is a volatile storage device that can temporarily store data. The network interface 203 is a network interface for connecting to the storage device 300 in the cloud environment via the network 500 and for connecting to the business server 100. The non-volatile memory 204 is a non-volatile storage device that can store data, and has, for example, a primary volume from which data can be read and written.

[0020] In this embodiment, the performance of the processor 201, volatile memory 202, network interface 203, and non-volatile memory 204 needs to be changed in this manner, for example, when the storage device 300 in the cloud environment needs to adjust the processing performance required of the storage device 300 in the cloud environment when performing asynchronous data copy processing between the storage device 200 in the on-premise environment and the storage device 300 in the cloud environment.

[0021] The cloud environment storage device 300 includes a processor 301, a volatile memory 302, a network interface 303, and a non-volatile memory 304. The non-volatile memory 304 may be shared among a plurality of cloud environment storage devices 300. In the following, this embodiment will be described assuming that one cloud environment storage device 300 is provided.

[0022] The processor 301 is a central processing unit that controls the storage device 300. The volatile memory 302 is a volatile storage device that can temporarily store data. The network interface 303 is a network interface for connecting to the storage device 200 in an on-premises environment via the network 500. The non-volatile memory 304 is a non-volatile storage device that can store data, and has, for example, a secondary volume (described later) that can read and write data. The non-volatile memory 304 may be configured across multiple storage devices 300, for example.

[0023] The management server 400 includes, as hardware, a processor 401, a volatile memory 402, a drive 403, a network interface 404, and an input / output device 405.

[0024] The processor 401 is a central processing unit that controls the management server 400. The volatile memory 402 is a volatile storage device that can temporarily store data. The drive 403 is a drive device such as a hard disk drive or SSD. The network interface 404 is a network interface for connecting to the business system 1000 via the network 600. The non-volatile memory 404 is a non-volatile storage device that can store data. The input / output device 405 is a device that allows a user operating the management server 400 to input and output information in order to operate the management server 400.

[0025] Fig. 2 is a system configuration diagram showing an example of the software configuration (corresponding to an example of the configuration of a storage control program, described later) of a management server 400 in an information system including the storage system shown in Fig. 1. As described above, the business system 1000, which is an example of a storage system according to this embodiment, is connected to the management server 400 via a network 600.

[0026] The storage system according to this embodiment comprises a storage device 200 in an on-premise environment as an example of one storage device that executes data input / output processing in response to a request from a business server 100 as an example of a host device, and a storage device 300 in a cloud environment that has a virtual computer that executes processing to asynchronously copy data between the storage device 200 in the on-premise environment (hereinafter referred to as "asynchronous copy processing") and that can change the processing performance of the virtual computer. The virtual computer is created according to the required processing performance, and the processing performance (performance values) of, for example, a CPU (Central Processing Unit), memory, etc. can be changed according to settings.

[0027] The management server 400 controls the storage device 200 in the on-premise environment and the storage device 300 in the cloud environment. The management server 400 includes, as software, a management server control unit 451, a processing performance adjustment unit 460, a performance information group 456, and a Web (World Wide Web) browser 457. The performance information group 456 is, for example, performance information related to various resources (for example, at least one of the processor 301, the volatile memory 302, the network interface 303, and the non-volatile memory 304, or a combination of any of these) acquired from the storage device 300 in the cloud environment, and includes various performance information related to the processing performance of the storage device 300 in the cloud environment.

[0028] The performance information group 456 is performance information regarding various resources (e.g., processor 201, volatile memory 202, network interface 203, and non-volatile memory 204) obtained from the storage device 200 in the on-premises environment, and may include various performance information regarding the processing performance of the storage device 200 in the on-premises environment.

[0029] The management server 400 is, for example, a computer on which a storage control program runs on an OS of the computer. The storage control program is a program for controlling the storage device 200 in the on-premise environment and the storage device 300 in the cloud environment in response to operations by a management user via the management server 400.

[0030] The processing performance adjustment unit 460 has a function of changing the processing performance required by the virtual computer of the storage device 300 in the cloud environment, which is the copy destination, at a certain point in time (hereinafter referred to as a "second point in time") later than the first point in time, in advance of the second point in time, depending on the state of input / output processing at the storage device 200 in the on-premises environment, which is the copy source, at the second point in time (hereinafter referred to as a "first point in time").

[0031] The processing performance adjustment unit 460 includes a performance information control unit 452, a performance information monitoring unit 453, a performance information determination unit 454, and a processing performance change unit 455. The processing performance adjustment unit 460 will be described in detail below.

[0032] The performance information control unit 452 controls the performance information monitoring unit 453, performance information determination unit 454, and processing performance change unit 455 included in the processing performance adjustment unit 460. The performance information monitoring unit 453 has a function of monitoring the processing performance of the storage device 300 in the cloud environment. The performance information determination unit 454 has a function of determining whether it is necessary to increase or decrease the processing performance of the storage device 300 in the cloud environment. A specific determination method will be described later. The processing performance change unit 455 changes the processing performance of the storage device 300 in the cloud environment. A specific change method will be described later.

[0033] For example, when the processing load as the input / output processing state in the storage device 200 in the on-premise environment at a first point in time is equal to or greater than a threshold, the processing performance change unit 455 increases the processing performance required by the virtual computer in the storage device 300 in the cloud environment at a second point in time.

[0034] Furthermore, the processing performance change unit 455 may, for example, when the processing load as the state of the input / output processing in the storage device 200 in the on-premise environment at a first point in time is equal to or less than a threshold, change the processing performance required by the virtual computer of the storage device 300 in the cloud environment at the second point in time to a lower value.

[0035] The processing performance adjustment unit 460 changes the processing performance of at least one of the memory and the processor included in the storage device 300 in the cloud environment as the processing performance of the storage device 300 in the cloud environment.

[0036] 3 is a diagram illustrating an example of asynchronous data copy processing using journals between multiple storage devices. In this embodiment, a storage device 200 in an on-premise environment and a storage device 300 in a cloud environment are illustrated as examples of multiple storage devices.

[0037] The storage device 200 in an on-premises environment has a primary volume 299 as an example of one of the volumes to which data is written, a base journal corresponding to the data written to the primary volume 299, and a master journal 298 that stores an update journal corresponding to the difference between the subsequently written data and the data already written to the primary volume 299.

[0038] The storage device 300 in the cloud environment has a restore journal 398 to which the base journal and update journal stored in the master journal 298 are copied, and a secondary volume 399 as an example of the other volume to which data is restored based on the restore journal 398.

[0039] In the on-premise storage device 200 , when data from the business server 100 is written to the primary volume 299 , the base journal corresponding to the written data is obtained and written to the master journal 298 .

[0040] After that, when there is a further request to write data, the storage device 200 in the on-premise environment obtains an update journal corresponding to the difference between the data written to the primary volume 299 and the data already written to the primary volume 299, and writes the obtained journal to the master journal 298. More specifically, the storage device 200 in the on-premise environment writes the update data (actual data) from the business server 100 and control information (metadata) to be assigned to the update data to the master journal 298.

[0041] On the other hand, in the storage device 300 in the cloud environment, when a data update request is issued to the storage device 200 in the on-premises environment, the storage device 200 in the on-premises environment journal copies the base journal of the master journal 298 to the restore journal 398, and journal copies the update journal of the master journal 298 to the restore journal 398.

[0042] The storage device 300 in the cloud environment restores the data to the secondary volume 399 based on the restore journal 398, thereby duplicating the data between the storage device 200 in the on-premise environment and the storage device 300 in the cloud environment.

[0043] In this case, between the storage device 300 in the cloud environment and the storage device 200 in the on-premise environment, performance can be analyzed not only by the amount of data written to the journals, but also by using, for example, the network bandwidth between multiple journals.

[0044] In this embodiment, based on the amount of data written to the restore journal 398, a determination is made as to whether the processing performance (performance value) of the virtual computer on the storage device 300 side of the cloud environment is increasing or decreasing, and the amount of data copied by asynchronous copy processing is adjusted.

[0045] On the other hand, in the storage device 200 in the on-premise environment, under the control of the storage control program, a journal restore is performed using the base journal and update journal of the restore journal 398 as described above, and data is restored to the secondary volume 399.

[0046] FIG. 4 is a diagram showing an example of verification of processing performance between the storage device 200 in the on-premise environment and the storage device 300 in the cloud environment when writing data.

[0047] In this embodiment, the performance information determination unit 454 predicts the load on the storage device 300 in the cloud environment at the second point in time described above from the performance values ​​(such as the amount of data written, which will be described later) of the storage device 200 in the on-premises environment at the first point in time described above, and the processing performance change unit 455 increases or decreases the processing performance of the storage device 300 in the cloud environment in advance, if necessary, based on the prediction.

[0048] The performance information determining unit 454 can employ the following methods to determine whether or not it is necessary to increase or decrease the processing performance of the storage device 300 in the cloud environment. That is, the performance information determining unit 454 can employ, for example, a method of determining whether to increase or decrease the processing performance based on the difference between the performance value of the storage device 300 in the cloud environment and thresholds (an upper threshold and a lower threshold, which will be described later), a method of determining based on the ratio between the performance value of the storage device 300 in the cloud environment and a threshold, or a method of determining based on the number of times the performance value of the storage device 300 in the cloud environment has exceeded a threshold (number of times exceeded).

[0049] For example, in the processing performance characteristic 501 when the processing performance change unit 455 does not change the processing performance, for the on-premise environment storage device 200, the on-premise environment characteristic 503 relating to the processing performance of the CPU usage rate of the cloud environment storage device 300 as the vertical axis peaks at a predetermined time and then declines, whereas the data communication volume between the on-premise environment storage device 200 and the cloud environment storage device 300 tends to increase with the passage of time t. Given this trend, it is expected that the load on the cloud environment storage device 300 will increase with the passage of time t until the predetermined time. Therefore, the processing performance change unit 455 needs to make changes to improve the processing performance of the cloud environment storage device 300. Note that the above-described processing performance characteristic 501 may be a characteristic whose vertical axis represents, for example, the amount of data written, the number of data writes, or network bandwidth usage rate, instead of the CPU usage rate.

[0050] On the other hand, for example, in the processing performance characteristic 502 when the processing performance change unit 455 changes the processing performance, for the on-premises environment storage device 200, the on-premises environment characteristic 503 relating to the processing performance of the storage device 300 in the cloud environment, for example, the CPU utilization rate as the vertical axis, peaks at a predetermined time and then declines. Meanwhile, the CPU utilization rate between the storage device 200 in the on-premises environment and the storage device 300 in the cloud environment does not increase even as time t passes, and remains almost flat until the predetermined time. With this trend, it is expected that the load on the storage device 300 in the cloud environment will not increase even as time t passes. Therefore, the processing performance change unit 455 can avoid making changes so as to maintain the processing performance of the storage device 300 in the cloud environment. Note that the above-described processing performance characteristic 502 may be a characteristic whose vertical axis represents, for example, the amount of data written, the number of data writes, or network bandwidth utilization rate, instead of the CPU utilization rate.

[0051] The business system 1000 including the storage system according to this embodiment has the above-described configuration. Next, an outline of an asynchronous copy method will be described as an example of operation of the storage system according to this embodiment. The asynchronous copy method is an asynchronous copy method for a storage system including a storage device 300 in a cloud environment that can change the processing performance of a virtual computer that executes asynchronous copy processing, which asynchronously copies data to and from a storage device 200 in an on-premises environment that executes data input / output processing in response to a request from a business server 100. In this asynchronous copy method, a processing performance adjustment unit 460 executes a processing performance adjustment step that, in accordance with the state of input / output processing in the on-premises environment at a first time point, changes in advance, prior to the second time point, the processing performance required by the virtual computer of the storage device 300 in the cloud environment at a second time point when executing asynchronous copy processing at a second time point that is later in time than the first time point.

[0052] The storage control program causes the processing performance adjustment unit 460 to execute the processing performance adjustment step, and also causes the processing performance adjustment unit 460 to execute, on the computer, a display step of displaying a predetermined screen for pre-changing the processing performance of the virtual machine of the storage device 300 in the cloud environment. When executing the processing performance adjustment step described above, the storage control program displays a monitoring screen and a main screen, which will be described later, as examples of the predetermined screen. These will be explained in detail below.

[0053] Fig. 5 is a flowchart showing an example of a processing performance change process, Fig. 6 is a flowchart showing an example of the procedure of the on-premises environment performance information acquisition process S100 shown in Fig. 5, and Fig. 7 is a flowchart showing an example of the procedure of the on-premises environment performance information determination process S200 shown in Fig. 5. Fig. 8A is a flowchart showing an example of the procedure of the determination process when the upper limit threshold is exceeded as shown in Fig. 7, and Fig. 8B is a flowchart showing an example of the procedure of the determination process when the lower limit threshold is below as shown in Fig. 7.

[0054] As shown in FIG. 5, the processing performance change process includes an on-premise environment performance information acquisition process S100, an on-premise environment performance information determination process S200, and a cloud environment performance information change process S300.

[0055] 6, in step S101 of the on-premises environment performance information acquisition process S100, the performance information monitor 453 acquires processing performance such as the amount of data written (MB / s) for a volume (primary volume 299) of the on-premises environment storage device 200 using a command provided by the operating system (for example, iostat). If the data collection interval is set to one minute, for example, the performance information monitor 453 executes the command at one-minute intervals.

[0056] In step S102, the performance information monitoring unit 453 obtains processing performance, such as the number of data writes (times / s), for the volume (primary volume 299) of the storage device 200 in the on-premises environment using a command provided by the OS (e.g., iostat).

[0057] In step S103, the performance information monitor 453 acquires the CPU utilization rate (%) for the volume (primary volume 299) of the storage device 200 in the on-premises environment using a command (for example, iostat) provided by the OS.

[0058] The performance information determination process S200 for the on-premise environment shown in FIG. 7 includes a determination process S210 for when the performance exceeds the upper threshold and a determination process S220 for when the performance falls below the lower threshold.

[0059] 8A, in step S211 of the determination process S210 for when the upper threshold is exceeded, the performance information monitor 453 executes step S212 for each performance value if the target performance value exceeds the upper threshold. In step S212, the performance information monitor 453 calculates and records, for example, the exceedance rate from the upper threshold.

[0060] Next, in step S213, for example, if the number of times that the value has exceeded a specified value, the performance information monitoring unit 453 executes step S214. In step S214, the performance information monitoring unit 453 calculates, for example, the average value of the values ​​that have exceeded the specified number of times.

[0061] 8B, in step S221, the performance information monitoring unit 453 executes step S222 if the target performance value falls below the lower threshold for each performance value. In step S222, the performance information monitoring unit 453 calculates and records, for example, the exceedance rate from the lower threshold. Note that the processing performance change unit 455 may change the performance value when each performance value exceeds the threshold, or may set a specific combination of performance values.

[0062] Next, in step S223, the performance information monitoring unit 453 executes step S224 if the number of times the threshold has been exceeded exceeds a specified value. Note that the performance information monitoring unit 453 checks, for example, whether the specified number of times has been exceeded in order to exclude cases in which spike values ​​occur. For example, if the default number of times the threshold has been exceeded is 7 out of 10, and if performance values ​​are acquired at a data collection interval of 1 minute, the performance information monitoring unit 453 checks the data for the most recent 10 times when 10 pieces of data have been acquired (10 data points acquired every minute), and if the number of times the threshold has been exceeded exceeds 7 times, calculates the average value of the excess values ​​for the 7 times. Next, in step S224, the performance information monitoring unit 453 calculates the average value of the excess values ​​for the specified number of times.

[0063] Figure 9 is a flowchart showing an example of the procedure for the performance information change processing S300 of the cloud environment shown in Figure 5, Figure 10 is a flowchart showing an example of the procedure for the memory change processing (step S340) of the cloud environment shown in Figure 9, and Figure 11 is a flowchart showing an example of the procedure for the CPU change processing (step S350) of the cloud environment shown in Figure 9.

[0064] 9, in step S310, the performance information monitoring unit 453 acquires the CPU value of the cloud environment using, for example, the above-mentioned command, etc. In step S311, the performance information monitoring unit 453 acquires the memory value of the cloud environment using, for example, the above-mentioned command, etc.

[0065] In step S312, if the performance information determination unit 454 determines that the target performance value exceeds the upper threshold based on a calculation method based on the mapping between conditions and calculation methods described below, the processing performance change unit 455 executes steps S340 and S350, whereas if it does not determine that the target performance value exceeds the upper threshold, the processing performance change unit 455 determines whether the target performance value has been determined to be below the lower threshold based on the calculation method based on the mapping between conditions and calculation methods described below.

[0066] If the processing performance change unit 455 determines that the target performance value is below the lower threshold, it executes step S340 (memory change processing in the cloud environment) and step S350 (CPU change processing in the cloud environment), but if not, it does not execute step S340 and step S350.

[0067] In step S340 (cloud environment performance information change processing) shown in FIG. 10, if the performance information determination unit 454 determines in step S341 that the performance value of the virtual computer on the storage device 300 side of the current cloud environment has exceeded the upper limit threshold, the processing performance change unit 455 executes step S342 for each of the exceeded performance values.

[0068] In step S342, the processing performance change unit 455 calculates a memory enhancement value based on a calculation method based on a mapping between conditions and calculation methods, which will be described later.

[0069] Next, in step S343, the processing performance change unit 455 requests that the memory on the storage device 300 side of the current cloud environment be increased based on the largest memory increase value calculated from each performance value.

[0070] On the other hand, if it is not determined in the above-mentioned step S341 that the target performance value exceeds the upper limit threshold, the performance information determination unit 454 calculates a memory reduction value for each of the exceeded performance values ​​based on a calculation method based on the mapping between conditions and calculation methods described below.

[0071] Next, in step S346, the processing performance change unit 455 requests that the memory on the storage device 300 side of the current cloud environment be reduced based on the largest value among the memory reduction values ​​calculated from the performance values.

[0072] In step S350 (memory change processing in cloud environment) shown in FIG. 11, in step S351, if the performance information monitoring unit 453 determines that the performance value exceeds the upper limit threshold, the performance information determination unit 454 executes step S352 for each performance value that exceeds the upper limit threshold.

[0073] In step S352, the performance information determination unit 454 calculates a CPU reduction value based on a calculation method based on a mapping between conditions and calculation methods, which will be described later. Next, in step S353, the processing performance change unit 455 requests an increase in the CPU on the storage device 300 side of the current cloud environment based on the largest memory increase value calculated from each performance value.

[0074] On the other hand, if it is not determined in the above-mentioned step S351 that the performance value exceeds the upper threshold, the performance information determination unit 454 calculates a CPU reduction value for each of the exceeded performance values ​​based on a calculation method based on the mapping between conditions and calculation methods described below.

[0075] Next, in step S356, the processing performance change unit 455 requests that the CPU on the storage device 300 side of the current cloud environment be reduced based on the largest value among the CPU reduction values ​​calculated from the performance values.

[0076] 12 to 15 are diagrams showing examples of methods for calculating memory / CPU enhancement values ​​and reduction values ​​when each condition is satisfied. In this embodiment, this calculation method is also referred to as a "calculation method based on mapping between conditions and calculation methods." FIGS. 12 and 13 show an example of a case where the processing performance of a virtual computer in a storage device 300 in a cloud environment is enhanced, and FIGS. 14 and 15 show an example of a case where the processing performance of a virtual computer in a storage device 300 in a cloud environment is reduced. In the illustrated example, an upper threshold and a lower threshold are defined for each metric, and the enhancement value and reduction value are determined according to the exceedance rate relative to the threshold.

[0077] 12 to 15, when each condition is satisfied, the performance information determining unit 454 calculates the post-change increase / decrease values ​​of the memory / CPU using the calculation method shown in the figures. Note that in each calculation formula of the calculation method shown in the figures, C1 and C2 represent predetermined coefficients, n represents the current performance value, and m represents the current number of memory or CPU cores.

[0078] The performance information determination unit 454 calculates the memory / CPU enhancement value, for example, according to the calculation method for memory / CPU as shown in the figure, when the processing performance (e.g., amount of data written) of the client environment shown as metrics in FIG. 12 reaches an upper limit threshold (e.g., 100).

[0079] The performance information determination unit 454 calculates the memory / CPU enhancement value, for example, according to the calculation method for memory / CPU as shown in the figure, when the processing performance (e.g., amount of data written) of the client environment shown as metrics in FIG. 13 reaches an upper limit threshold (e.g., 100).

[0080] When the processing performance (e.g., amount of data written) of the client environment shown as a metric in FIG. 14 reaches a lower limit threshold (e.g., 10), the performance information determination unit 454 calculates a reduction value for the memory / CPU according to the calculation method shown in the figure.

[0081] When the processing performance (e.g., amount of data written) of the client environment shown as a metric in FIG. 15 reaches a lower limit threshold (e.g., 10), the performance information determination unit 454 calculates a reduction value for the memory / CPU according to the calculation method shown in the figure.

[0082] FIG. 16 shows an example of an upper limit value after the enhancement (corresponding to the "upper limit value of the enhancement value of ~" in the figure) when the processing performance is enhanced, for example, as shown in FIG. 12, and FIG. 17 shows an example of a lower limit value after the reduction (corresponding to the "lower limit value of the enhancement value of ~" in the figure) when the processing performance is reduced, for example, as shown in FIG. 14.

[0083] When the processing performance change unit 455 increases the processing performance, for example, the amount of data written, it sets the upper limit of the memory increase value to "128" and the upper limit of the CPU increase value to "16", as shown in FIG. 16.

[0084] On the other hand, when the processing performance change unit 455 is to reduce the amount of data written, for example, as processing performance, it sets the lower limit of the memory enhancement value to "1" and also sets the lower limit of the CPU enhancement value to "1", as shown in FIG. 17.

[0085] 18 is a diagram showing an example of a monitoring screen 700 according to this embodiment. The monitoring screen 700 has a main screen 701 and a processing performance change screen 702. The monitoring screen 700 is displayed by the processing performance change unit 455 of the processing performance adjustment unit 460.

[0086] The main screen 701 displays, from the left, the monitoring status of the business server 100, the network 500, the storage device 200 in the on-premise environment, and the storage device 300 in the cloud environment.

[0087] A main screen 701 including the progress status of asynchronous copy processing is displayed in the background of the processing performance change screen 702. On the right side of the main screen 701, an asynchronous copy progress status screen 701A is provided that displays, for example, the copy progress rate of the asynchronous copy processing as the progress status of asynchronous copy between the storage apparatus 200 in the on-premises environment and the storage apparatus 300 in the cloud environment.

[0088] The processing performance change screen 702 includes, at the bottom, CPU values ​​before the increase and memory values ​​before the increase as examples of processing performance before the change, and CPU values ​​after the increase and memory values ​​after the increase as examples of processing performance after the change.

[0089] The processing performance change screen 702 includes an OK button 70 and a Cancel button 71. The OK button 70 is a button that is pressed when changing the performance values ​​of the storage device 300 in the current cloud environment, which are displayed in the Pre-enhancement CPU value and Pre-enhancement memory value fields at the bottom of the screen, to the new performance values ​​that have been entered in the Pre-enhancement CPU value and Pre-enhancement memory value fields in order to change those values. The Cancel button 71 is a button that is pressed when clearing the processing performance change screen 702 and not changing the processing performance of the storage device 300 in the cloud environment.

[0090] On the other hand, the processing performance change screen 702 includes, for example, a first display field 501Z showing an example of processing performance when the processing performance is changed on the storage device 300 side of the cloud environment, as described in Figure 4 above, and a second display field 502Z showing an example of processing performance when the processing performance is not changed.

[0091] The processing performance change screen 702 includes a first display field 501Z that displays a graph of the transition of processing performance before the change over time including a first time point and a second time point, and a second display field 502Z that displays a graph of the transition of processing performance after the change over time including the first time point and the second time point. The display contents and functions of the first display field 501Z and the second display field 502Z are almost the same as the processing performance characteristics 501 and 502 shown in Fig. 4, respectively, except for the type of processing performance, and therefore a description thereof will be omitted.

[0092] As described above, the storage system of this embodiment includes: a storage device 200 in an on-premise environment as an example of one storage device that executes input / output processing of data in response to a request from a business server 100 as an example of a host device; a virtual computer that executes asynchronous copy processing to asynchronously copy the data between the storage device 200 in the on-premise environment and the storage device 300 in a cloud environment as an example of the other storage device that can change the processing performance of the virtual computer; and a processing performance adjustment unit 460 that, in accordance with the state of the input / output processing in the storage device 200 in the on-premise environment at a first point in time, changes the processing performance required by the virtual computer of the storage device 300 in the cloud environment at a second point in time when executing asynchronous copy processing at a second point in time that is later than the first point in time, before the second point in time.

[0093] The asynchronous copy method for a storage system according to this embodiment is an asynchronous copy method for a storage system including a storage device 300 in a cloud environment that can change the processing performance of a virtual computer that executes asynchronous copy processing to asynchronously copy data between the storage device 200 in an on-premise environment that executes data input / output processing in response to a request from a business server 100, and a processing performance adjustment unit 460 executes a processing performance adjustment step that, in accordance with the state of input / output processing in the storage device 200 in the on-premise environment at a first point in time, changes in advance, prior to the second point in time, the processing performance required by the virtual computer of the storage device 300 in the cloud environment at a second point in time when executing asynchronous copy processing at a second point in time that is later than the first point in time.

[0094] In this way, by preparing the processing performance required in the future in the storage device 300 in the cloud environment in advance, it is possible to continuously maintain a certain level of performance or higher for asynchronous copy processing between multiple sites (on-premises environment and cloud environment).

[0095] The asynchronous copy program of this embodiment is an asynchronous copy program for a storage system including a storage device 300 in a cloud environment that can change the processing performance of a virtual computer that executes asynchronous copy processing to asynchronously copy data with a storage device 200 in an on-premises environment that executes data input / output processing in response to a request from a business server 100, and causes a processing performance adjustment unit 460 to execute, on a computer, a processing performance adjustment step of changing in advance, before the second time point, the processing performance required by the virtual computer of the storage device 300 in the cloud environment at a second time point when executing asynchronous copy processing at a second time point that is later in time than the first time point, in accordance with the state of input / output processing in the storage device 200 in the on-premises environment at a first time point, and a display step of causing the processing performance adjustment unit 460 to display a specified screen for changing the processing performance in advance.

[0096] In this way, in addition to the effect of continuously maintaining a certain level of performance or higher in the asynchronous copy processing between the multiple sites (on-premises environment and cloud environment) described above, by monitoring the asynchronous copy processing from a predetermined screen, the status of the asynchronous copy processing (e.g., whether it is not possible, whether processing performance has been increased, etc.) can be confirmed. In particular, by referring to the predetermined screen displayed in the display step, for example, an administrative user can visually confirm that a certain level of performance or higher is being continuously maintained in the asynchronous copy processing between the multiple sites (on-premises environment and cloud environment) described above. This allows, for example, even if the asynchronous copy processing is not continuously maintaining a certain level of performance or higher, to visually confirm this and to prepare in advance, prior to the second time point, for an increase in the processing performance of the virtual computer of the storage device 300 in the cloud environment. On the other hand, for example, even if the performance of the asynchronous copy processing is higher than what is actually required, to visually confirm this and to prepare in advance, prior to the second time point, for an increase in the processing performance of the virtual computer of the storage device 300 in the cloud environment.

[0097] In this embodiment, when the processing load as the input / output processing state at a first point in time in the storage device 200 in the on-premise environment is equal to or greater than a threshold, the processing performance change unit 455 of the processing performance adjustment unit 460 increases the processing performance required at a second point in time by the virtual computer of the storage device 300 in the cloud environment. In this way, by preparing in advance the processing performance required in the future in the storage device 300 in the cloud environment, it is possible to continuously maintain a certain level of performance or higher in asynchronous copy processing between multiple sites (on-premise environment and cloud environment).

[0098] In this embodiment, when the processing load as the state of input / output processing at a first point in time in the on-premise environment storage device 200 is equal to or less than a threshold, the processing performance change unit 455 of the processing performance adjustment unit 460 lowers the processing performance required at a second point in time by the virtual computer of the cloud environment storage device 300. In this way, by making preparations to reduce processing performance that will not be required in the future in the cloud environment storage device 300, it is possible to eliminate unnecessary processing performance and thereby improve the processing performance of other elements.

[0099] In this embodiment, the storage apparatus 200 in the on-premises environment has a primary volume 299 as an example of one volume to which data is written, and a master journal 298 that stores a base journal corresponding to the data written to the primary volume 299 and an update journal corresponding to the difference between the subsequently written data and the data already written to the primary volume 299. On the other hand, the storage apparatus 300 in the cloud environment has a restore journal 398 to which the base journal and update journal stored in the master journal 298 are copied, and a secondary volume 399 as an example of the other volume to which data is restored based on the restore journal 398.

[0100] In this embodiment, the processing performance change unit 455 of the processing performance adjustment unit 460 changes the processing performance of at least one of the memory and the processor included in the storage device 300 in the cloud environment as the processing performance of the storage device 300 in the cloud environment. In this way, by preparing in advance in the storage device 300 in the cloud environment the processing performance of at least one of the memory and the processor that will be required in the future, it is possible to continuously maintain a certain level of performance or higher in asynchronous copy processing between multiple sites (on-premise environment and cloud environment).

[0101] In this embodiment, the processing performance adjustment unit 460 displays, as a predetermined screen, a processing performance change screen 702 including the processing performance before the change (at least one of the CPU value before the increase and the memory value before the increase) and the processing performance after the change (the CPU value after the increase and the memory value after the increase). In this way, it is possible to consider what level the processing performance after the change should be while visually checking the processing performance before the change and the processing performance after the change.

[0102] In this embodiment, the processing performance change screen 702 includes a graph (first display field 501Z) showing the transition of processing performance before the change over time including a first time point and a second time point, and a graph (second display field 502Z) showing the transition of processing performance after the change over time including the first time point and the second time point. In this way, it is possible to consider what level of processing performance should be set after the change while visually checking the graph of the transition of processing performance before the change and the graph of the transition of processing performance after the change.

[0103] In this embodiment, the main screen 701, which includes the progress status of the asynchronous copy processing, is displayed in the background of the processing performance change screen 702. In this way, it is possible to check the processing performance before the change and the processing performance after the change while checking the progress status of the asynchronous copy processing by referring to the main screen 701.

[0104] The present invention is not limited to the above-described embodiments, and includes various modifications and equivalent configurations within the spirit and scope of the appended claims. For example, the above-described embodiments have been described in detail to clearly explain the present invention, and the present invention is not necessarily limited to those including all of the described configurations. Furthermore, the elements described in parallel in the present embodiment may be configured such that at least one of the elements is connected in series to the other elements. [Industrial Applicability]

[0105] The present invention can be applied to a storage system relating to a technique for performing asynchronous copying between multiple sites. [Explanation of symbols]

[0106] 100...Business server, 200...Storage device in on-premise environment, 300...Storage device in cloud environment.

Claims

1. one storage device that executes data input / output processing in response to a request from a host device; the other storage device, which is provided with a virtual computer that executes an asynchronous copy process for asynchronously copying the data between the other storage device and the other storage device, and which is capable of changing the processing performance of the virtual computer; a processing performance adjustment unit that changes in advance, prior to a second time point, the processing performance required by the virtual computer of the other storage device at the second time point when the asynchronous copy process is executed at the second time point, which is later in time than the first time point, in accordance with a state of the input / output process at the first time point in the one storage device; A storage system comprising:

2. The processing performance adjustment unit When the processing load as the state of the input / output processing at the first point in time in the one storage device is equal to or greater than a threshold, the processing performance required by the virtual computer of the other storage device at the second point in time is increased.

2. The storage system according to claim 1.

3. The processing performance adjustment unit When the processing load as the state of the input / output processing at the first point in time in the one storage device is equal to or less than a threshold, the processing performance required by the virtual computer of the other storage device at the second point in time is changed to a lower value.

2. The storage system according to claim 1.

4. The one storage device one volume to which the data is written; a master journal that stores a base journal corresponding to the data written to the one volume and an update journal that stores a difference between the data written thereafter and the data that has already been written to the one volume; The other storage device a restore journal to which the base journal and the update journal stored in the master journal are copied; another volume to which the data is restored based on the restore journal; 2. The storage system according to claim 1, further comprising:

5. The processing performance adjustment unit As the processing performance of the other storage device, the processing performance of at least one of the memory and the processor included in the other storage device is changed.

2. The storage system according to claim 1.

6. The processing performance adjustment unit The processing performance before the change; The processing performance after the change; Display the performance change screen including 2. The storage system according to claim 1.

7. The processing performance change screen is a graph of transition of the processing performance before the change over time including the first time point and the second time point; a transition graph of the processing performance after the change according to the passage of time including the first time point and the second time point; 7. The storage system according to claim 6, comprising:

8. The processing performance change screen is In the background, the main screen showing the progress of the asynchronous copy process is displayed.

7. The storage system according to claim 6.

9. 1. An asynchronous copy method for a storage system including a storage device that executes input / output processing of data in response to a request from a host device and that can change the processing performance of a virtual computer that executes asynchronous copy processing for asynchronously copying data between the storage device and the other storage device, a processing performance adjustment unit executes a processing performance adjustment step of changing in advance, prior to a second time point, the processing performance required by the virtual computer of the other storage device at the second time point when the asynchronous copy process is executed at the second time point, the second time point being later in time than the first time point, in accordance with the state of the input / output process at the first time point in the one storage device; 1. An asynchronous copy method comprising:

10. 1. An asynchronous copy program for a storage system including a storage device that executes input / output processing of data in response to a request from a host device and that can change the processing performance of a virtual computer that executes asynchronous copy processing for asynchronously copying data between the storage device and the other storage device, a processing performance adjustment step of causing a processing performance adjustment unit to change in advance, prior to the second time point, the processing performance required by the virtual computer of the other storage device at the second time point when the asynchronous copy process is executed at the second time point that is later in time than the first time point, in accordance with the state of the input / output process at the first time point in the one storage device; a display step of causing a processing performance adjustment unit to display a predetermined screen for changing the processing performance in advance; An asynchronous copy program characterized by executing the above on a computer.

Citation Information

Patent Citations

  • Storage system, computer system, and control method for storage system

    JP2018129074A

  • Remote copy system and remote copy control method

    JP2021174392A

  • Information processing device and information processing method

    JP2023170055A

  • System configuration management device, system configuration management method, and system configuration management program

    JP2023100222A