System management device and system management method
The system management apparatus and method address the challenge of ensuring application-level consistency in hybrid cloud data copying by dynamically calculating copying operations based on RPO, application suspension time, and other factors, resulting in efficient and compliant data copying.
Patent Information
- Application Number
- JP2023189628
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-06
- Publication Date
- 2025-05-19
AI Technical Summary
Existing methods for data copying in hybrid cloud environments fail to guarantee application-level consistency and may result in data inconsistency due to variations in copy execution time, especially when the line connecting on-premises and public cloud storage is not dedicated.
A system management apparatus and method that dynamically calculates the timing of data copying operations in a hybrid cloud system, taking into account Recovery Point Objective (RPO), application suspension time, copy data amount, and copy time, to ensure application-level consistency and adherence to user-defined RPO and Recovery Time Objective (RTO).
The solution enables efficient and consistent data copying operations that meet application-level requirements, reducing the risk of data inconsistency and ensuring compliance with user-defined RPO and RTO objectives.
Smart Images

Figure 2025077439000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a system management apparatus and a system management method. Specifically, the present invention relates to a system management apparatus and a system management method that assist in determining an optimal copy method considering user application requirements when performing a copy in a hybrid cloud environment that centrally manages on-premises storage resources and cloud storage resources.
Background Art
[0002] When customers introduce backup or DR (Disaster Recovery), the number of cases where copy data is placed in the cloud to reduce costs is increasing. In addition, the storage resources of hybrid cloud services are provided as virtual volumes and are used by application developers from host computers for application development purposes. Therefore, when obtaining a copy of the virtual volume, it is necessary to determine an optimal copy configuration and copy method that satisfy the RPO (Recovery Point Objective) and RTO (Recovery Time Objective) at the application level.
[0003] In the technique described in Patent Document 1 below (hereinafter referred to as "the prior art"), in a remote copy configuration of storage where the copy source and the copy destination are in remote locations, a copy configuration that satisfies the user's RPO and RTO and a recovery procedure are presented.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] In the above-described prior art method, a copy configuration and a method for determining a copy and restore procedure for guaranteeing RPO and RTO at the block level of storage are disclosed. Here, in order to satisfy the RPO at the application level, it is necessary to obtain a copy of the data that is consistent in the application at the time point to which it is desired to roll back. To achieve this, the application is temporarily stopped at the time point to which it is desired to roll back, and all the data written to the memory (for example, the cache memory provided in the host computer) up to that time point is written to a non-volatile storage medium (for example, HDD (Hard Disk Drive)) of the storage, and then it is necessary to obtain a copy of the volume used as the non-volatile storage medium. However, in the prior art, since it only obtains a copy of the volume at intervals specified by the RPO, the RPO and RTO defined here do not guarantee the consistency of the application in the copied data.
[0006] Also, in a hybrid cloud configuration, in many cases, the line connecting the on-premises and the public cloud is not a dedicated line, and depending on the amount of data transferred, the time required for the copy to complete varies, resulting in a deviation from the copy execution time managed by the user or the system. As a result, there is a possibility that the data at the time point the user desires to roll back cannot be obtained, but the existing technology does not consider this.
[0007] The present invention has been made to solve the above problems. That is, one of the objects of the present invention is to provide a system management apparatus and a system management method capable of supporting a copy operation that satisfies copy requirements at the application level.
Means for Solving the Problems
[0008] In order to solve the above problems, a system management apparatus of the present invention is a hybrid cloud system including a computer system including a first storage constructed in an on-premises environment and a second storage constructed in a cloud environment, and the hybrid cloud system is configured to be able to perform data copying for storing a copy of application data stored in the first storage in the second storage. The system management apparatus includes an information processing apparatus for managing the hybrid cloud system, and the information processing apparatus acquires an RPO, an application suspension time per unit data amount, a copy data amount, and a copy time with respect to the data copying of the application, and based on the RPO, the application suspension time per unit data amount, the copy data amount, and the copy time, calculates a timing of a copy execution instruction for the data copying that guarantees the RPO with which the application is consistent.
[0009] A system management method of the present invention is a system management method using an information processing apparatus for managing a hybrid cloud system including a computer system including a first storage constructed in an on-premises environment and a second storage constructed in a cloud environment, and the hybrid cloud system is configured to be able to perform data copying for storing a copy of application data stored in the first storage in the second storage. The information processing apparatus acquires an RPO, an application suspension time per unit data amount, a copy data amount, and a copy time with respect to the data copying of the application, and based on the RPO, the application suspension time per unit data amount, the copy data amount, and the copy time, calculates a timing of a copy execution instruction for the data copying that guarantees the RPO with which the application is consistent.
Advantages of the Invention
[0010] According to a representative form of the present invention, it is possible to support a copy operation that satisfies copy requirements at the application level. Problems, configurations, and effects other than those described above will be clarified by the description of the following embodiments. Note that the effects described herein are not necessarily limited, and may be any of the effects described in the present disclosure.
Brief Description of the Drawings
[0011]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9A
Figure 9B
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
DETAILED DESCRIPTION OF THE INVENTION
[0012] Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, the present invention is not to be construed as being limited to the description of the embodiments shown below. It will be readily understood by those skilled in the art that the specific configuration can be changed without departing from the spirit or gist of the present invention.
[0013] In the configuration of the invention described below, the same or similar configurations or functions are denoted by the same reference numerals, and redundant descriptions are omitted.
[0014] Expressions such as "first", "second", "third", etc. in this specification and the like are attached to identify components, and do not necessarily limit numbers or orders.
[0015] In this specification and the like, as examples of various information, it may be described in the expression of "XX table", but it may also be expressed in a data structure such as "XX list", "XX queue", etc. Further, "XX table" may be "XX information". When explaining identification information, expressions such as "identification information", "identifier", "name", "ID", "number", etc. are used, and these can be replaced with each other.
[0016] <System Configuration> FIG. 1 is a block diagram showing an example of the system configuration of a hybrid cloud system. The hybrid cloud system is a system that copies data from the storage system 4 on the on-premises 1 to the public cloud 2 via a network 8 such as the Internet, a LAN (Local Area Network), or a WAN (Wide Area Network).
[0017] The on-premises 1 includes a computer system having a storage system 4 constructed in the on-premises environment, a storage management server 7 responsible for managing storage resources, and a host 31. The storage system 4 has storage volumes 41 and 42. The storage volumes 41 and 42 are provided to the host 31. Note that the storage system 4 constructed in the on-premises environment may be referred to as the "first storage" for convenience.
[0018] The storage system 4 on the on-premises 1 and the public cloud 2 are also communicably connected via the network 8. Note that the communication speed ([bps]) is set between the storage system 4 on the on-premises 1 and the public cloud 2 according to the bandwidth thereof.
[0019] The hybrid cloud management server 5 integrally manages the devices on the on-premises 1 and the resources of the public cloud 2, and is provided as SaaS (Software as a Service) to the administrator of the host 31. The hybrid cloud management server 5 has a service portal 5020 (see FIG. 2), and provides services to the administrator of the host 31 via the service portal 5020. Specifically, for example, the service portal 5020 shows a volume obtained by virtualizing a storage volume. Also, a copy of the virtualized volume can be acquired via the service portal. Note that the hybrid cloud management server 5 may be referred to as the "system management device" for convenience.
[0020] The host 31 can use the virtualized volume as a computer drive to run the application 61 or store the data generated by the application 61 in the virtual storage volume. Also, a copy of the data stored in the virtual volume can be obtained.
[0021] As storage services, the public cloud 2 has an object storage service and a block storage service, and provides those storage instances as virtual storage volumes to the service portal 5020. Also, a server instance 32 having a processor and a memory is provided. Note that the storage service of the public cloud 2 provides storage constructed in the cloud environment, and the storage provided by the storage service is also referred to as "second storage" for convenience.
[0022] In the hybrid cloud system, the hybrid cloud management server 5 copies the data stored in the storage volume 41 or the storage volume 42 to the public cloud 2, or restores the data copied to the public cloud 2 to the storage system 4.
[0023] Copying and restoration are executed by the hybrid cloud management server 5 issuing a copy instruction or a restoration instruction to the copy function of the storage system 4 via the storage management server 7. As a copy configuration, there is a case where it is copied from the storage volume 41 in the storage system 4 to the storage volume 43, and there is also a case where it is copied from the storage volume 42 of the storage device 4 of the on-premises 1 to the storage volume 21 provided by the storage service of the public cloud 2. In the DR configuration for preparing for a site failure of the on-premises 1, not only the storage volume 21 but also the host 32 is replicated to the public cloud 2 using the server instance service of the public cloud 2.
[0024] <Hardware Configuration>FIG. 2 is a block diagram showing an example of the hardware configuration of the hybrid cloud management server 5. The hybrid cloud management server 5 includes a processor 51, a storage device 52, a program memory 500, an input device 53, an output device 54, and a communication interface (communication IF) 55. Note that a device having the processor 51, the storage device 52, the program memory 500, the input device 53, the output device 54, the communication interface (communication IF) 55, and a bus 56 may sometimes be referred to as an "information processing device". The information processing device may be a plurality of information processing devices or a virtual information processing device constructed on a cloud. The processor 51, the storage device 52, the program memory 500, the input device 53, the output device 54, and the communication IF 55 are connected by the bus 56. The processor 51 controls the hybrid cloud management server 5. The input device 53 inputs data. Examples of the input device 53 include a keyboard, a mouse, a touch panel, a numeric keypad, a scanner, a microphone, and a sensor. The output device 54 outputs data. Examples of the output device 54 include a display (display device), a printer, and a speaker. The communication IF 55 connects to a network and transmits and receives data. The storage device 52 is a storage medium that stores data temporarily or non-temporarily, and examples thereof include a ROM (Read Only Memory), a RAM (Random Access Memory), an HDD (Hard Disk Drive), and an SSD (Solid State Drive). The program memory 500 has installed therein an application suspension time calculation program 5001, a copy status monitoring program 5002, a copy line monitoring program 5003, a configuration information management program 5004, a copy method management program 5005, and an input information management transfer program 5006.The application suspension time calculation program 5001 monitors the time taken to write data related to an application stored in a temporary storage medium (e.g., the cache memory provided in the host 31) to a non-temporary storage medium (e.g., HDD) provided in the storage system 4 for each application 61 in the host 31 using the storage volume 41, and calculates the time taken for application suspension per unit data volume. The copy status monitoring program 5002 is a program that manages the progress of a copy job for which a copy execution command has been issued. The copy line monitoring program 5003 is a program that monitors the status of the network 8 between the on-premises 1 and the public cloud 2. The configuration information management program 5004 is a program that periodically receives copy configuration information 7011 and copy execution command information 7012 from the storage management server 7. The copy method management program 5005 is a program that determines the copy configuration, copy execution time, and copy procedure according to user requirements. The input information management transfer program 5006 manages input information from the user, and when there is an operation request from the user to the storage system 4, instructs the storage management server 7 to execute the corresponding operation. The service portal 5020 is a screen that serves as an interface when the user uses the hybrid cloud service. The user makes requests for data copy and restoration via this screen. Also, the program memory 500 stores user requirement management information 5010, application suspension time management information 5011, application support information 5012, copy procedure management information 5013, copy required time management information 5014, line usage status 5015, copy configuration information 7011, and copy execution command information 7012. Details of the configuration information will be described later.
[0025] FIG. 3 is a block diagram showing an example of the hardware configuration of the storage management server 7. The storage management server 7 includes a processor 71, a storage device 72, a program memory 700, an input device 73, an output device 74, and a communication interface (communication IF) 75. The processor 71, the storage device 72, the program memory 700, the input device 73, the output device 74, and the communication IF 75 are connected by a bus 76. The processor 71 controls the storage management server 7. The input device 73 inputs data. Examples of the input device 73 include a keyboard, a mouse, a touch panel, a numeric keypad, a scanner, a microphone, and a sensor. The output device 74 outputs data. Examples of the output device 74 include a display (display device), a printer, and a speaker. The communication IF 75 connects to a network and transmits and receives data. The storage device 72 is a storage medium that stores data temporarily or non-temporarily, such as a ROM (Read Only Memory), a RAM (Random Access Memory), an HDD (Hard Disk Drive), or an SSD (Solid State Drive). The program memory 700 has a copy execution control program 7001, a copy execution program 7002, and an application inactivation program 7003 installed therein. The copy execution control program 7001 is a program that transmits a copy instruction to the copy execution program 7002 based on the copy schedule management information 7010. A direct instruction may be transmitted to the copy function implemented in the storage system 4. The copy execution program 7002 is a program that receives an instruction from the copy execution control program 7001 and executes the copy. The application inactivation program 7003 is a program that instructs the host computer 31 (which may also be referred to as "host 31") storing the application to be copied to inactivate the data of the application 61 to be copied. The program memory 700 also stores copy schedule management information 7010, copy configuration information 7011, and copy execution command information 7012. Details of the configuration information will be described later.
[0026] FIG. 4 is a block diagram showing an example of the hardware configuration of the host computer 31. The host computer 31 includes a processor 301, a storage device 302, a program memory 300, an input device 303, an output device 304, and a communication interface (communication IF) 305. The processor 301, the storage device 302, the program memory 300, the input device 303, the output device 304, and the communication IF 305 are connected by a bus 306. The processor 301 controls the host computer 31. The input device 303 inputs data. Examples of the input device 303 include a keyboard, a mouse, a touch panel, a numeric keypad, a scanner, a microphone, and a sensor. The output device 304 outputs data. Examples of the output device 304 include a display (display device), a printer, and a speaker. The communication IF 305 connects to a network and transmits and receives data. The storage device 302 is a storage medium for storing data. Here, the storage volume 41 of the storage system 4 is mounted and used. The program memory 300 has an application 61 and a copy execution control program 7001 installed therein. The copy execution control program 7001 is a program that transmits a copy instruction to the copy execution program 7002 based on the copy schedule management information 7010. Also, the program memory 300 stores the copy schedule management information 7010. When the storage management server 7 does not support the suspension of the application, a copy instruction is transmitted based on the copy schedule management information 7010 of the host computer 31. Here, the copy schedule management information 7010 may be independently managed by the host computer 31.
[0027] <Various data structures> Next, the data structure of various types of data will be described with reference to FIGS. 5 to 12. Note that the configurations of user requirement management information 5010, application suspension time management information 5011, application support information 5012, copy procedure management information 5013, copy time required management information 5014, line usage status 5015, copy schedule management information 7010, copy configuration information 7011, and copy execution command information 7012, which are shown in FIGS. 5 to 12 and described below, are examples and can be changed as appropriate.
[0028] FIG. 5 is a diagram showing an example of the data structure of user requirement management information 5010. It manages information input by the user via the service portal 5020. In the user requirement management information 5010 shown in FIG. 5, a record having fields of user name 50101, application name 50102, usage volume name 50103, data volume 50104, copy requirements 50105, RTO 50106, RPO 50107, number of generations to be saved 50109, and copy destination cloud 50108 is stored.
[0029] The user name 50101 is a field for storing the name of the user. The application name 50102 is a field for storing the name of the application developed by the user. The volume ID 50103 is a field for storing an ID for identifying storage volumes 41 and 42 in which the data of the application is stored. The data volume 50104 is a field for storing the data volume used by the application. In the copy requirements 50105, the RTO 50106, RPO 50107, number of generations to be saved 50109, and copy destination cloud 50108, which are the requirements input by the user when performing a copy, are stored. The RTO 50106 is a field for storing the RTO of the application specified by the user. The RPO 50107 is a field for storing the RPO of the application specified by the user. The number of generations to be saved 50109 is a field for storing the number of generations to be saved specified by the user. The copy destination cloud 50108 is a field for storing the name of the cloud specified by the user as the copy destination.
[0030] FIG. 6 is a diagram showing an example of the data configuration of the application suspension time management information 5011. In the application suspension time management information 5011 shown in FIG. 6, fields for storing an application name 50111, a volume ID 50112, and a suspension time per unit data amount 50113 are provided.
[0031] The application name 50111 is a field for storing the name of the application developed by the user. The volume ID 50112 is a field for storing an ID for identifying the storage volumes 41 and 42 in which the data of the application is stored. The suspension time per unit data amount 50113 is a field for storing the time required, for example, to write data related to an application stored in a temporary storage medium (for example, data stored in the cache memory provided in the host 31) to a non-temporary storage medium (for example, an HDD (for example, the storage volume 41)) of the storage system 4 when the application uses 1 TB of data. The application suspension time calculation program 5001 monitors the storage volume 41 used by the application 61 and stores, as the suspension time, the time required to write the data related to the application stored in the temporary storage medium (for example, the cache memory provided in the host 31) to the non-temporary storage medium (for example, an HDD (for example, the storage volume 41)) of the storage system 4, and stores the suspension time per unit data amount in 50113.
[0032] FIG. 7 is a diagram showing an example of the data configuration of the application support information 5012. In the application support information 5012 shown in FIG. 7, records having fields of a management software name 50121 and a supported application name 50122 are stored.
[0033] The management software name 50121 stores the name of the management software within the hybrid cloud system, and is a field that stores the names of the hybrid cloud management server 5 and the storage management server 7. The supported application name 50122 is a field that stores the name of the application that is supported for quiescence by the management software recorded in the management software name 50121.
[0034] Figure 8 is a diagram showing an example of the data configuration of the copy procedure management information 5013. In the copy procedure management information 5013 shown in Figure 8, records having the application name 50131 and the copy procedure 50132 as fields are stored.
[0035] The application name 50131 stores the application name as a field. The copy procedure 50132 stores, as a field, the copy procedure when copying data that is consistent at the application level in the corresponding application. For typical applications, the copy procedure shall be managed in advance. In this example, the "copy command" is a variable and shall be input by referring to the copy execution command information 7012 described later.
[0036] Figure 9A is a diagram showing an example of the data configuration of the copy time management information 5014. In the copy time management information 5014 shown in Figure 9A, records having the copy pair ID 50141, the job ID 50142, the transfer data volume 50143, the copy time 50144, the copy execution instruction time 50145, the copy completion time 50146, and the copy time required 50147 as fields are stored.
[0037] The copy pair ID 50141 stores the ID of the copy pair as a field. The job ID 50142 stores the ID of the copy execution job as a field. The transferred data volume 50143 stores, in the corresponding copy process, the data volume of the data transferred from the source volume to the destination volume as a field. The copy time 50144 stores the copy start time 50145, the copy completion time 50146, and the copy required time 50147. The copy execution instruction time 50145 stores the time when the copy command was executed as a field. The copy completion time 50146 stores the time when the data copy to the destination was completed as a field. The copy required time 50147 stores the time taken for the copy to be executed until completion as a field. The copy required time 50147 is the value obtained by subtracting the copy execution instruction time 50145 from the copy completion time 50146. Note that since the time when the copy actually starts may be different from the time when the copy execution instruction is given, a field for the copy start time may be added and managed.
[0038] The copy time Ct shown in FIG. 13 described later may be obtained as the average value of a plurality of copy required times recorded in the copy required time 50147 corresponding to a plurality of jobs recorded in the job ID 50142 for a certain past period recorded in FIG. 9A.
[0039] For example, in the copy where the copy pair ID 50141 is "1", the copy time Ct when the data volume to be transferred is 50 GB is calculated as follows. When the recent copy jobs for a certain past period are job IDs "10001", "10011", and "10022", the time taken for transferring 50 GB of data is 1 min, 2 min, and 3 / 2 = 1.5 min from the values recorded in the copy required time 50147. Calculating the average value gives (1 + 2 + 1.5) / 3 = 1.5 min. Therefore, the copy time Ct for copy pair 1 at this time is 1.5 min.
[0040] FIG. 9B is a diagram showing an example of the data configuration of the line usage status 5015. In the line usage status 5015 shown in FIG. 9B, records having a copy pair ID 50151, a line name 50152, a time 50153, a bandwidth 50154, and a usage rate 50155 as fields are stored. Note that the line usage status 5015 may be referred to as "line usage status information".
[0041] The copy pair recorded in the copy pair ID 50151 transfers data from the storage system 4 of the on-premises 1 to the storage service of the public cloud 2 via the line 8 recorded in the line name 50152. The bandwidth of the line 8 is the bandwidth recorded in the bandwidth 50154, and its usage rate 50155 varies. The usage rate 50155 of the line 8 is acquired periodically, and the usage rate acquired at the time of the time 50153 is recorded in the usage rate 50155. The copy time Ct can also be calculated from this bandwidth 50154 and usage rate 50155. For example, assume that 10 GB of differential data is copied using the line "Company A Line A". When all the available capacity can be used based on the values of the bandwidth 50154 and the usage rate 50155, the available bandwidth is 800 × 0.5 = 400 Mbps. When calculating the copy time Ct assuming a transmission efficiency of 100% and 1 Kbyte = 1000 bytes, the copy time Ct = (10 GB × 1000 × 1000 × 1000 × 8) / (400 × 1000 × 1000) = 200 seconds. Although the usage rate is shown as an example here, for example, when the bandwidth available for this service is determined, the available bandwidth may be managed as a field at the time recorded in the time 50153 based on the usage status.
[0042] FIG. 10 is a diagram showing an example of the data configuration of the copy schedule management information 7010. In the copy schedule management information 7010 shown in FIG. 10, records having a copy pair ID 70101, a periodic execution 70102, an execution timing 70103, and the number of generations for saving snapshots 70104 as fields are stored.
[0043] The copy pair ID 70101 stores the ID of the copy pair as a field. The periodic execution 70102 stores the ON or OFF value as a field indicating whether the copy is executed periodically. The execution timing 70103 stores the timing of copy execution as a field. Based on the calculation result of the copy execution time described later, the execution timing 70103 may update the time for the next copy execution at any time, such as "23 / 09 / 28 06:12", or when calculating the copy execution time at the time of introduction and using it as the copy execution interval, it may be recorded as "5-minute interval". Also, when calculating the copy execution time as described above and then periodically obtaining the copy at the same time, the time for periodic execution may be recorded, such as "06:00, 12:00". The number of generations to save the snapshot 70104 represents how many generations of the obtained snapshot are to be retained when obtaining the snapshot at the time of copy data acquisition.
[0044] Figure 11 is a diagram showing an example of the data structure of the copy configuration information 7011. In the copy configuration information 7011 shown in Figure 11, the copy pair 70111, the application name 70112, the copy method name 70113, the copy source 70114, which includes the site name 70117 and the volume ID 70117, and the copy destination 70115, which includes the site name 70118 and the volume ID 70119, are stored as fields.
[0045] The copy pair ID 70111 stores the ID of the copy pair as a field. The application name 70112 stores the application name as a field. The copy method name 70113 stores the name of the method used for data copy as a field. The copy source 70114 stores the site name 70116 and the volume ID 70117, which are the information of the copy source. The site name 70116 stores the name of the site where the storage system 4 storing the copy source data is installed as a field. Also, the volume ID 70117 stores the ID of the volume where the data to be copied is stored as a field.
[0046] The copy destination 70115 stores the site name 70118, which is information about the copy destination, and the volume ID 70119. The site name 70118 stores, as a field, the name of the site or cloud where the data of the copy destination is stored. Also, the volume ID 70119 stores, as a field, the ID of the volume where the copy data is stored. Note that the copy destination is not limited to a volume, and it may be recorded in a unit according to the storage service used as the copy destination.
[0047] Figure 12 is a diagram showing an example of the data configuration of the copy execution command information 7012. In the copy execution command information 7012 shown in Figure 12, records having the copy method name 70121 and the copy procedure 70122 as fields are stored.
[0048] The copy method name 70121 stores, as a field, the name of the method used for data copying. The copy procedure 70122 stores, as a field, commands for executing the copy, which are determined for each copy method, such as "synchronization" or "suspension".
[0049] <Copy acquisition interval calculation formula> Figure 13 shows the copy execution time calculation formula in the copy method management program 5005 of the hybrid cloud management server 5. Let the copy execution time be T i , the application suspension time AT i , the copy time Ct i , the suspension completion time RPi, and the copy completion time CCT i be used. The copy execution time T i here is the time when the copy execution command is sent to the copy function of the storage system 4 from the storage management server 7. Also, when a copy execution instruction is sent, application suspension starts, so the copy instruction time and the application suspension start time are the same.
[0050] When executing a copy, it is necessary to guarantee the RPO at any point in time t i . For example, at t 1The latest copy data that can be restored is T 1 and is the copy data that was frozen at that point in time. t 2 and t 3 Regarding, t 2 at, the application freezing and copy transfer of the copy executed at T 2 have not been completed, and at t 3 either, the copy transfer of the copy executed at T 2 has not been completed. Therefore, the latest copy data that can be restored at both points in time is T 1 and is the data frozen at that point in time. Conventionally, RPO = copy execution interval Ti - T i-1 was set as, but in the example of t 2 and t 3 , the image that can be obtained by copying is T i -T i-1 or older. Therefore, with the setting of T i -T i-1 =RPO, RPO will not be satisfied. CCt i Until the copy is completed at, it is the image of T i-1 frozen at the previous copy execution instruction. That is, the copy execution instruction interval (also referred to as the copy execution interval.) of T i -T i-1 plus the application freezing time AT i and the copy time Ct i must be less than or equal to RPO. Therefore, the copy execution interval is T i -T i-1 ≦RPO-(AT i +Ct i ), and the copy execution time is T i ≦RPO-(AT i +Ct i )+T i-1 must hold. The copy execution interval and the copy time are respectively, T i -T i-1 =RPO-(AT i +Ct i ), T i =RPO-(AT i +Ct i )+T i-1It is calculated as the application suspension time AT. i is based on the application suspension time management information 5011 and the copy time Ct. i is calculated based on the copy time management information 5014 and the line usage status 5015. For the corresponding application 61, the application suspension time AT i and when using a fixed value for the value of the copy time Cti, the copy execution interval T i -T i-1 results in periodic execution with a constant. On the other hand, depending on the usage status of the application and the line usage status, when dynamically calculating the application suspension time AT i and the copy time Ct, the copy execution interval T i -T i-1 is dynamically calculated, and the copy execution interval Ti - T i-1 does not become a constant.
[0051] Note that the interval of copy execution is T i -T i-1 <RPO - (AT i + Ct i ) may be calculated as an arbitrary interval that satisfies it, and the copy execution time may be calculated as an arbitrary time that satisfies T i <RPO - (AT i + Ct i ) + T i-1
[0052] <Processing procedure> Figure 14 is a flowchart showing an example of a process for determining the copy method and copy procedure of the embodiment. When the user sends a copy environment construction request via the service portal 5020 of the hybrid cloud management server 5, the following process starts.
[0053] When the hybrid cloud management server 5 receives a copy environment construction request from a user, the input information management transfer program 5006 registers the input information in the user requirement management information 5010 (step s101). Next, the copy method management program 5005 determines the method and configuration to be used for copying based on the user requirement management information 5010. For example, it determines the destination cloud from the copy destination cloud 50108. Also, when the RTO 50106 is within a certain time, it is a DR configuration that prepares not only the storage volume 21 but also the server instance (host) 32 in the copy destination cloud. Note that the certain time indicates a value less than the time required to newly construct an application, and may be, for example, "0" or "instantaneous switching", or may be described as "5 min" (step s102). The copy method management program 5005 searches whether there is an application described in the application name 50102 of the user requirement management information 5010 in the application name 50122 supported by the application support information 5012 (step s103). If Yes in step s103, that is, when the storage management server 7 supports the quiescence of the application, it transitions to step s104. If No in step s103, that is, when the storage management server 7 does not support the quiescence of the application, it transitions to step s105.
[0054] For example, if there is a record of "App1" in the application name 50122 supported by the application support information 5012, and "VOL1" recorded in the volume ID 50103 of the user requirement management information 5010 uses "App1" in the application name 50102. In this case, step s103 is Yes. On the other hand, "VOL2" recorded in the volume ID 50103 of the user requirement management information 5010 uses "App2" in the application name 50102, and there is no record of "App2" in the application name 50122 supported by the application support information 5012. In this case, step s103 is No.
[0055] When the storage management server 7 supports the application suspension, the application suspension time calculation program 5001 calculates the application suspension time ATi based on the suspension time 50113 per unit data amount of the application suspension time management information 5011 and the data amount 50104 of the user requirement management information 5010. The copy status monitoring program 5002 calculates the copy time Ct from the copy required time 50147 of the copy required time management information 5014. i Based on these values, the copy method management program 5005 determines the copy execution time or the copy execution interval (copy interval) based on the calculation formula shown in FIG. 13 (step s104). Details of step s104 will be described later with reference to FIG. 15. The copy configuration and the timing of copy execution are presented to the user via the service portal 5020 of the hybrid cloud management server 5 (step s105).
[0056] When the storage management server 7 does not support the application suspension, the user needs to perform the processes related to copy suspension and copy instructions from their own host computer 31. The copy method management program 5005 searches for the application in the application name 50131 of the copy procedure management information 5013 and extracts the procedure described in the corresponding copy procedure 50132. Also, among the copy procedures 50132, those depending on the copy method are distinguished by, for example, "“”". For the copy method determined in step s102, refer to the copy procedure 70122 of the copy execution command information 7012 and substitute the copy procedure 70122 into the "“”" of the copy procedure 50132 (step s106). Output the procedure registered in step s105 with a command (step s107). At this time, as the output, it may be a command or a thing including an execution environment such as a virtual machine may be provided. Thereby, even when the application suspension is not supported within the hybrid cloud, the user can execute the output command on the host computer 31 and execute the copy procedure 70122 of the copy execution command information 7012. Note that the timing of issuing the copy instruction may be coordinated with the schedule uniquely held by the user in the host computer 31, or the copy instruction may be issued with reference to the result of the execution timing described later in FIG. 15.
[0057] FIG. 15 is a flowchart showing an example of a process for determining the copy execution time in the embodiment. This flowchart determines the copy execution time T i and the copy execution interval T i -T i-1 and details the process in step s102 of FIG. 14. The copy execution time T i is calculated from the RPO, the application suspension time AT i and the copy time Ct i . The application suspension time AT i and the copy time Ct iWhen using the values at a certain point in time and performing this calculation process only once at the start of copy, for the copy execution interval T i -T i-1 becomes a constant, and periodic copying will be executed. On the other hand, when this calculation process is executed periodically multiple times, the application suspension time AT i and the copy time Ct i are the values at the calculation time, so the copy execution interval T i -T i-1 is not at regular intervals, and the value of the optimal copy execution time T i at that time will be calculated.
[0058] The copy method management program 5005 identifies the application and volume to be calculated from the application name 50102 of the user requirement management information 5010 and the volume ID 50103 (step s201). The application suspension time calculation program 5001 calculates the application suspension time AT i based on the suspension time per unit data volume 50113 of the application suspension time management information 5011 and the data volume 50104 of the user requirement management information 5010 (step s202). The copy status monitoring program 5002 calculates the copy time Cti from the copy required time 50147 of the copy required time management information 5014 (step s203). The copy required time may refer to the copy required time 50147 of the copy required time management information 5014, or the copy time Ct i for the transfer data volume may be predicted after checking the line occupancy status with the copy line monitoring program 5003. The results obtained in step s202 and step s203 and the value of the RPO recorded in the RPO50107 stored in the user requirement management information 5010 are input into the calculation formula shown in FIG. 13 to calculate the copy execution interval T i -T i-1 or the copy execution time Ti (step s204). For example, the copy execution time T i is from the RPO to the current application suspension time AT i and the current copy time Ct iBy reducing the total time, the execution interval T of this copy i -T i-1 is calculated, and at the previous copy execution time T i-1 the execution interval T of this copy i -T i-1 is added. For example, the copy execution interval T i -T i-1 is calculated by subtracting the total time of the current application suspension time AT i and the current copy time Ct i from the RPO. Note that Ti may be dynamically calculated using the calculation formula shown in FIG. 13. That is, the copy execution time Ti may be calculated each time data copying is performed as the timing of the copy execution instruction for data copying using the calculation formula shown in FIG. 13. Also, this calculation process may be performed only once at the start of copying, and the calculated copy execution interval T i -T i-1 is fixed as a constant so that the timing for executing periodic copying is calculated. That is, when copying is executed, the copy execution interval T i -T i-1 is calculated, and the timing of the copy execution instruction for periodic copying after the next time is calculated based on the execution time Ti of this copy and the already calculated execution interval T of data copying i -T i-1 (constant (fixed value)). The copy method management program 5005 updates the copy schedule management information 7010 based on the result calculated in s204 and also transmits the updated content to the storage management server 7 (step s204).
[0059] <Service Portal Display Screen> FIG. 16 is a diagram showing an example of the output display of the service portal (service portal screen) 5020. As an example of the input screen, an example of a screen for a user to input copy requirements is shown. The user inputs the volume name, application name, RPO, RTO, copy destination cloud, and the number of generations to save the snapshot, which are managed by the user requirement management information 5010. For example, in the volume name, the user can select from the volumes already in use by drill-down. Also, for the copy destination cloud, the user can select from the clouds targeted by the hybrid cloud. Here, the number of saved snapshots is used as an example, but for RPO and RTO, if the guaranteed range of the system is determined, the interface should be such that selection is possible only within that range.
[0060] As an example of the output screen, an output example is shown when the application 61 in use is not supported by the hybrid cloud system and the copy is executed using the schedule of the user's host computer 31 (the output example of step s107 in FIG. 14). After showing the copy configuration, a script describing the copy procedure may be output. The user can download this and run it on their own host computer 31.
[0061] As described above, according to the embodiment, it is possible to support copy operations that meet copy requirements at the application level. Furthermore, according to the embodiment, by dynamically determining the copy execution time in consideration of the application usage status and the line usage status, it is possible to support copy operations that meet copy requirements at the application level.
[0062] Note that the present invention is not limited to the above-described embodiments and includes various modifications. Also, for example, the above-described embodiments are those in which the configuration is described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Also, for a part of the configuration of each embodiment, it is possible to add to, delete from, or replace with other configurations.
[0063] In addition, each of the above-described configurations, functions, processing units, processing means, etc. may be realized in hardware by designing a part or all of them, for example, by using an integrated circuit. The present invention can also be realized by a program code of software that realizes the functions of the embodiments. In this case, a storage medium recording the program code is provided to a computer, and a processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the program code itself and the storage medium storing the same constitute the present invention. As a storage medium for supplying such a program code, for example, a flexible disk, a CD-ROM, a DVD-ROM, a hard disk, an SSD (Solid State Drive), an optical disk, a magneto-optical disk, a CD-R, a magnetic tape, a non-volatile memory card, a ROM, etc. are used.
[0064] In addition, the program code for realizing the functions described in this embodiment can be implemented in a wide range of programs or script languages such as assembler, C / C++, perl, Shell, PHP, Python, Java (registered trademark), etc.
[0065] Furthermore, by distributing the program code of software that realizes the functions of the embodiments via a network, it can be stored in a storage means such as a hard disk or memory of a computer or a storage medium such as a CD-RW or CD-R, and a processor included in the computer reads and executes the program code stored in the storage means or the storage medium.
[0066] In the above-described embodiments, the control lines and information lines show those considered necessary for explanation, and not necessarily all the control lines and information lines on the product are shown. All the components may be interconnected.
Explanation of Reference Numerals
[0067] 1…On-premises, 2…Public cloud, 4…Storage system, 5…Hybrid cloud management server, 7…Storage management server, 8…Network, 21…Storage volume, 31, 32…Host, 41, 42, 43…Storage volume, 51…Processor, 52…Memory device, 53…Input device, 54…Output device, 55…Communication I / F, 56…Bus, 61, 62…Application, 71…Processor, 72…Memory device, 73…Input device, 74…Output device, 75…Communication I / F, 76…Bus, 300…Program memory, 301…Processor, 302…Memory device, 303…Input device, 304…Output device, 305…Communication I / F, 306…Bus, 500…Program memory, 700…Program memory, 5001…Application suspension time calculation program, 5002…Copy status monitoring program, 5003…Copy line monitoring program, 5004…Configuration information management program, 5005…Copy method management program, 5006…Input information management transfer program, 5010…User requirement management information, 5011…Application suspension time management information, 5012…Application support information, 5013…Copy procedure management information, 5014…Copy required time management information, 5015…Line usage status, 5020…Service portal, 7001…Copy execution control program, 7002…Copy execution program, 7003…Application suspension program, 7010…Copy schedule management information, 7011…Copy configuration information, 7012…Copy execution command information
Claims
1. A system management device including an information processing device that manages a hybrid cloud system including a computer system including a first storage constructed in an on-premise environment and a second storage constructed in a cloud environment, the system being configured to perform a data copy for storing a copy of data of an application stored in the first storage in the second storage, The information processing device includes: With respect to the data copy of the application, an RPO, an application quiescing time per unit data amount, a copy data amount, and a copy time are obtained; calculating a timing of issuing a copy execution instruction for the data copy that ensures the RPO that ensures consistency of the application based on the RPO, the application quiescing time per unit data amount, the copy data amount, and the copy time; It was configured as follows: System management device.
2. 2. The system management device according to claim 1, The information processing device includes: Calculating a timing of issuing a copy execution instruction for the data copy each time the data copy is executed; It was configured as follows: System management device.
3. 3. The system management device according to claim 2, The information processing device includes: calculating an execution interval of the data copy based on the RPO, the application quiescing time per unit data amount, the copy data amount, and the copy time; calculating a timing of issuing an instruction to execute the data copy for each time the data copy is executed by calculating a time of execution of the current data copy as a timing of issuing an instruction to execute the data copy based on a time of execution of the previous data copy and an execution interval of the data copy; It was configured as follows: System management device.
4. 4. The system management device according to claim 3, The information processing device includes: Calculating a current application quiescing time based on the application quiescing time per unit data amount and the copy data amount; Calculating the data copy execution interval by subtracting the total time of the current application quiescing time and the current copy time from the RPO; calculating a time obtained by adding the execution interval of the data copy to the execution time of the previous data copy as a timing of issuing a copy execution instruction for the data copy; It was configured as follows: System management device.
5. 2. The system management device according to claim 1, The information processing device includes: When executing the data copy, a timing of issuing a copy execution instruction for the current data copy and a timing of issuing a copy execution instruction for the next and subsequent data copies are calculated. It was configured as follows: System management device.
6. 6. The system management device according to claim 5, The information processing device includes: When executing the data copy, an execution interval of the data copy is calculated, calculating a timing of issuing a copy execution instruction for the next and subsequent periodic data copies based on the current execution time of the data copy and the execution interval of the data copy that has already been calculated; It was configured as follows: System management device.
7. 7. The system management device according to claim 6, The information processing device includes: Calculating a current application quiescing time based on the application quiescing time per unit data amount and the copy data amount; Calculating the execution interval of the data copy by subtracting the total time of the current application quiescing time and the current copy time from the RPO; It was configured as follows: System management device.
8. 2. The system management device according to claim 1, a storage device for storing user requirement management information including information on the RPO and the copy data amount of the application, application quiescing time management information including information for calculating the application quiescing time, and copy required time management information including a history of the time required for the past data copies, The information processing device includes: Acquire the copy data amount and the RPO based on the user requirement management information; acquiring an application quiescing time per unit data amount based on the application quiescing time management information; acquiring the copy time based on the copy time management information; It was configured as follows: System management device.
9. 9. The system management device according to claim 8, the storage device stores line usage status information relating to line usage status; The information processing device includes: If the copy time cannot be obtained before the data copy is performed, an available line bandwidth between the on-premise environment and the cloud environment is obtained based on the line usage information; acquiring the copy time by calculating the copy time based on the available line bandwidth and the amount of copy data; It was configured as follows: System management device.
10. 9. The system management device according to claim 8, the computer system includes a host computer to which a copy target volume including data to be copied is provided from the first storage, the host computer having a cache memory for caching data; The information processing device monitors the volume to be copied, a write time from the cache memory to the volume per unit data amount when the data copy of the application is executed is stored in the application quiescing time management information as an application quiescing time per unit data amount. It was configured as follows: System management device.
11. 11. The system management device according to claim 10, The user requirement management information includes information indicating an RTO and a copy destination cloud regarding the data copy of the application, The information processing device includes: determining a copy configuration including a copy method and a copy destination cloud based on the user requirement management information; It was configured as follows: System management device.
12. 12. The system management device according to claim 11, The information processing device includes: determining whether the RTO is within a predetermined time or not, and if the RTO is within the predetermined time, preparing a server instance corresponding to the host computer in the cloud environment including a copy destination storage in a DR configuration; It was configured as follows: System management device.
13. 2. The system management device according to claim 1, A display device capable of displaying an image; a storage device storing copy procedure management information relating to a copy procedure of the application; Equipped with the first storage includes a storage management server that manages the first storage; The information processing device includes: determining whether the storage management server supports quiescing of the application; If the storage management server supports quiescing of the application, calculating a timing for issuing a copy execution instruction for the data copy; if the storage management server does not support the quiescing of the application, displaying information indicating a data copy procedure on the display device based on the copy procedure management information; It was configured as follows: System management device.
14. 14. The system management device according to claim 13, the storage management server has a storage device in which copy execution command information relating to commands of copy procedures for each copy method is stored; the information processing device creates the data copy procedure by quoting a command that differs for each copy method from the copy execution command information in the data copy procedure. It was configured as follows: System management device.
15. A system management method using an information processing device that manages a hybrid cloud system including a computer system including a first storage constructed in an on-premise environment and a second storage constructed in a cloud environment, the hybrid cloud system being configured to perform a data copy for storing a copy of data of an application stored in the first storage in the second storage, the method comprising: By the information processing device, With respect to the data copy of the application, an RPO, an application quiescing time per unit data amount, a copy data amount, and a copy time are obtained; calculating a timing of issuing a copy execution instruction for the data copy that ensures the RPO that ensures consistency of the application based on the RPO, the application quiescing time per unit data amount, the copy data amount, and the copy time; System management methods.
Citation Information
Patent Citations
Storage system, and method for designing disaster recovery configuration
JP2009020568A