Monitoring device, method, and program
The monitoring system addresses performance scaling challenges by identifying and enhancing non-containerized components like databases within constrained environments, ensuring continuous monitoring and expansion without downtime.
Patent Information
- Application Number
- JP2023542066
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-08-17
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2041-08-17
AI Technical Summary
Monitoring systems face challenges in scaling performance of both containerized and non-containerized components, particularly databases, without downtime, when processing capacity is constrained.
A monitoring system with containerized and non-containerized components that includes an identification unit to detect capacity constraints, a performance extension unit to restrict and enhance non-containerized components, and a restoration unit to restore data post-enhancement, ensuring continuous monitoring.
Enables performance expansion of both container and non-container elements while maintaining necessary monitoring, even under strained processing capacity.
Smart Images

Figure 0007736068000001 
Figure 0007736068000002 
Figure 0007736068000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a monitoring device, a monitoring method, and a monitoring program. [Background technology]
[0002] Monitoring systems that collect and monitor application logs and metrics information (e.g., CPU (Central Processing Unit) usage rate) of monitored applications have been known for some time. In addition, such monitoring systems have also been implemented using applications that have been containerized using container technology (hereinafter also referred to as container applications).
[0003] In this case, the monitoring system is required to be able to continuously monitor the target even when processing capacity is constrained. For this reason, it is important to have technology that can quickly scale out or scale up container applications when processing capacity is constrained.
[0004] Performance enhancements such as scaling out and scaling up of container applications can be achieved by utilizing a container management device. For example, there is known a technology for implementing performance control such as scaling out and scaling in of containers based on metrics information such as CPU usage for container applications running in an environment under the control of a container management device (for example, Non-Patent Document 1). [Prior art documents] [Non-patent literature]
[0005] [Non-Patent Document 1] "Horizontal Pod Autoscaler," kubernetes https: / / kubernetes.io / docs / tasks / run-application / horizontal-pod-autoscale / Summary of the Invention [Problem to be solved by the invention]
[0006] However, monitoring systems generally also use non-container technologies. For example, the databases of monitoring systems are not suitable for environments under the control of a container management device and are generally operated outside of that environment. For this reason, the technology described in Non-Patent Document 1 above cannot be applied as is. In addition, it takes a certain amount of time to expand the performance of a database without downtime, and it is generally difficult to expand performance in a short period of time.
[0007] Therefore, in a monitoring system that has containerized components and non-containerized components such as a database, there is a need for technology that can expand performance while maintaining necessary monitoring of the monitored objects even when processing capacity is strained.
[0008] One embodiment of the present invention has been made in consideration of the above points, and aims to achieve performance enhancement in a monitoring system composed of container elements and non-container elements, while maintaining necessary monitoring of monitored objects even when processing capacity is strained. [Means for solving the problem]
[0009] In order to achieve the above-mentioned object, a monitoring system according to one embodiment is a monitoring device having a first component realized by a containerized application and a second component realized by a non-containerized application, and includes: an identification unit that identifies whether the processing capacity of the first component or the second component is constrained based on information regarding the processing status of the first component and the processing status of the second component; a first performance extension unit that, when it is identified that the processing capacity of the second component is constrained, restricts data to the second component and then performs performance extension of the second component; and a restoration unit that, when the performance extension of the second component has been performed, restores the data restriction on the second component and reflects the data being subjected to the performance extension to the second component. [Effects of the Invention]
[0010] In a monitoring system made up of container elements and non-container elements, it is possible to achieve performance expansion while maintaining necessary monitoring of monitoring targets even when processing capacity is strained. [Brief explanation of the drawings]
[0011] [Figure 1] 1 is a diagram illustrating an example of the overall configuration of a monitoring system and a monitored device according to an embodiment of the present invention. [Figure 2] 10 is a flowchart illustrating an example of a performance enhancement process according to the present embodiment. [Figure 3] 10 is a flowchart illustrating an example of details of a database performance extension process according to the present embodiment. [Figure 4] 10 is a flowchart illustrating an example of details of a container performance extension process according to the present embodiment. [Figure 5] FIG. 2 illustrates an example of a hardware configuration of a computer. DETAILED DESCRIPTION OF THE INVENTION
[0012] An embodiment of the present invention will be described below. In this embodiment, a monitoring system 10 is described that has a container application and a non-containerized application (hereinafter also referred to as a non-container application) and that can achieve performance enhancement while maintaining necessary monitoring of a monitored device 20 even when processing capacity is tight.
[0013] Here, the monitoring system 10 is a computer system that collects data such as application logs and metrics information (e.g., CPU usage) from the monitored device 20, extracts and processes specific information required for monitoring from that data, and then displays it as a graph or table or detects anomalies. On the other hand, the monitored device 20 is a device or equipment that is the target of monitoring by the monitoring system 10.
[0014] <Overall structure> The overall configuration of a monitoring system 10 and a monitored device 20 according to this embodiment is shown in Fig. 1. The monitoring system 10 and the monitored device 20 are connected to each other so that they can communicate with each other via a communication network such as the Internet. Although Fig. 1 shows only one monitored device 20, there may be multiple monitored devices 20.
[0015] 1, the monitoring system 10 according to this embodiment includes a data processing unit 101, a display unit 102, an identification unit 103, a control unit 104, a data restoration unit 105, a container management unit 106, a database 107, and a storage 108. The monitored device 20 according to this embodiment includes a data collection unit 201.
[0016] Here, it is assumed that monitoring of the monitored device 20 is realized by the data processing unit 101, the display unit 102, and the database 107. It is also assumed that the data processing unit 101 and the display unit 102 are components (elementary elements) realized by a container application, while the database 107 is a component (elementary element) realized by a non-container application.
[0017] The data collection unit 201 acquires data such as application logs and metrics information running on the monitored device 20 and transmits it to the monitoring system 10 .
[0018] The data processing unit 101 receives data sent from the monitored device 20, extracts specific information necessary for monitoring from the data, and adds predetermined additional information (e.g., information for identifying the monitored device 20) to create data (hereinafter also referred to as monitoring data), which is then stored in the database 107 and storage 108.
[0019] The display unit 102 acquires the monitoring data stored in the database 107 and displays it in the form of a graph, a table, etc. The display unit 102 also determines whether the monitoring data acquired from the database 107 matches a specific condition (for example, a condition for determining whether an abnormality has occurred in the monitored device 20), and if the condition is met, sends an email indicating an alert to a predetermined email address.
[0020] The identifying unit 103 collects information (e.g., resource usage rate) relating to the processing status of the data processing unit 101, the display unit 102, and the database 107, and identifies a component whose processing capacity is under pressure. The identifying unit 103 also notifies the control unit 104 of information indicating the identified component. Note that the processing capacity of a component is under pressure when, for example, the resource usage rate (CPU usage rate, memory usage rate, etc.) of the component exceeds a predetermined threshold.
[0021] The control unit 104 implements performance enhancement of the component (the data processing unit 101, the display unit 102, or the database 107) indicated by the information notified from the identification unit 103. At this time, if the component indicated by the information notified from the identification unit 103 is the database 107, the control unit 104 temporarily changes the settings of the data processing unit 101 and limits (suppresses) the monitoring data stored in the database 107.
[0022] The data restoration unit 105 stores (restores) into the database 107 the monitoring data that was not stored during the performance enhancement of the database 107, out of the monitoring data stored in the storage .
[0023] The container management unit 106 manages the execution environment of the container application and controls the container application (that is, the container application that realizes the data processing unit 101 and the display unit 102) that runs on the execution environment.
[0024] The database 107 holds the monitoring data stored by the data processing unit 101 and the data restoration unit 105 in a searchable format. In addition, in response to a request from the display unit 102, the database 107 returns monitoring data that matches the search conditions included in the request to the display unit 102. Note that the database 107 is assumed to be redundant so that operation can be maintained even during performance expansion.
[0025] The storage 108 holds the monitoring data stored by the data processing unit 101. All monitoring data created by the data processing unit 101 is stored in the storage 108, regardless of whether it is during normal operation or when the performance of the database 107 is extended. The monitoring data stored in the storage 108 is restored to the database 107 by the data restoration unit 105, and is also used for purposes such as audit trails.
[0026] Each component of the monitoring system 10 shown in FIG. 1 may be configured on one server, or may be distributed across multiple servers.
[0027] <Performance enhancement processing> A flowchart of the performance extension process according to this embodiment is shown in Fig. 2. In the following, it is assumed that the processing capacity of any one of the components, the data processing unit 101, the display unit 102, or the database 107, is strained.
[0028] First, the identifying unit 103 identifies a control target component (that is, a component targeted for performance enhancement) based on information relating to the processing status of the data processing unit 101, the display unit 102, and the database 107 (step S101).
[0029] Next, the identifying unit 103 determines whether the control target component is the database 107 (step S102).
[0030] If it is determined in step S102 above that the control target component is the database 107, the control unit 104 executes a database performance extension process (step S103). The database performance extension process will be described in detail later.
[0031] On the other hand, if it is not determined in step S102 that the control target component is the database 107, the control unit 104 executes a container performance extension process (step S104). The container performance extension process will be described in detail later.
[0032] <<Database performance enhancement processing>> FIG. 3 shows a flowchart of the database performance extension process in step S103 of FIG.
[0033] First, the control unit 104 acquires information (setting information) indicating the current settings of the data processing unit 101, stores it in a predetermined storage area as a backup, and then changes the settings of the data processing unit 101 (step S201). Specifically, the control unit 104 changes the settings so that the data processing unit 101 stores only a portion of the monitoring data in the database 107. Note that the predetermined storage area can be any storage area accessible by the control unit 104.
[0034] Here, the setting in which the data processing unit 101 stores only a portion of the monitoring data in the database 107 may be, for example, a setting in which only monitoring data that matches a certain condition is stored in the database 107. For example, when monitoring data is created from an application log, a setting may be made in which only monitoring data that matches an alert condition, such as "log level is ERROR," is stored in the database 107. However, this is just one example, and other settings may also be made such that only a portion of the monitoring data is stored in the database 107 based on some other condition or rule. As a result, the database 107 continues to operate even during performance expansion, while the monitoring data stored by the data processing unit 101 is limited (suppressed).
[0035] Next, the control unit 104 acquires the time when the settings of the data processing unit 101 were changed in the above step S201 (in this database performance extension process, this time is referred to as "time A") (step S202).
[0036] Next, the control unit 104 performs performance expansion (scale-out or scale-up) of the database 107 (step S203).
[0037] After the performance of the database 107 has been expanded, the control unit 104 restores the settings of the data processing unit 101 to their original state (step S204). That is, the control unit 104 reflects the setting information stored as a backup in a predetermined storage area in the data processing unit 101, and restores the settings of the data processing unit 101 to the state before the performance expansion.
[0038] Next, the control unit 104 acquires the time when the settings of the data processing unit 101 were restored in step S204 (in this database performance extension process, this time is referred to as "time B") (step S205).
[0039] Then, the control unit 104 instructs the data restoration unit 105 to restore the monitoring data from time A to time B (step S206). As a result, the data restoration unit 105 restores the monitoring data from time A to time B from the storage 108 to the database 107. When the restoration is completed, the data restoration unit 105 notifies the control unit 104 of the completion.
[0040] Here, the restoration described above may strain the processing capacity of the database 107. For this reason, it is preferable that the control unit 104 calculates the amount of data transmission per unit time that satisfies the condition that the processing capacity of the database 107 will not be strained, and then notifies the data restoration unit 105 of a restore instruction that includes this amount of data transmission per unit time and times A and B. This allows the data restoration unit 105 to restore the monitoring data from time A to time B from the storage 108 to the database 107 at the data transmission amount per unit time. Therefore, it is possible to prevent a situation in which the processing capacity of the database 107 becomes strained due to the restoration.
[0041] Furthermore, when restoring monitoring data from storage 108 to database 107, data restoration unit 105 may assign priorities to each data type (such as application logs, metrics information, etc.) and then restore the data in order of priority.
[0042] ≪Container performance enhancement processing≫ Fig. 4 is a flowchart of the container performance extension process in step S104 in Fig. 2. In the following, it is assumed that the component to be controlled is either the data processing unit 101 or the display unit 102.
[0043] First, the control unit 104 instructs the container management unit 106 to enhance the performance of the component to be controlled (step S301).
[0044] Next, the container management unit 106 performs performance expansion (scale-out or scale-up) of the control target component (step S302). This performance expansion may be performed by using an existing technique described in, for example, Non-Patent Document 1.
[0045] Then, the control unit 104 confirms that the performance enhancement in the above step S302 has been performed (step S303).
[0046] <Hardware configuration> The monitoring system 10 and the monitored device 20 according to this embodiment are realized, for example, by the hardware configuration of a computer 500 as shown in Fig. 5. The computer 500 shown in Fig. 5 includes an input device 501, a display device 502, an external I / F 503, a communication I / F 504, a processor 505, and a memory device 506. Each of these pieces of hardware is connected to each other via a bus 507 so as to be able to communicate with each other.
[0047] The input device 501 is, for example, a keyboard, a mouse, a touch panel, various physical buttons, etc. The display device 502 is, for example, a display, a display panel, etc. Note that the computer 500 does not necessarily have to have at least one of the input device 501 and the display device 502, for example.
[0048] The external I / F 503 is an interface with an external device such as a recording medium 503a. The computer 500 can read from and write to the recording medium 503a via the external I / F 503. Examples of the recording medium 503a include a CD (Compact Disc), a DVD (Digital Versatile Disk), an SD memory card (Secure Digital memory card), and a USB (Universal Serial Bus) memory card.
[0049] The communication I / F 504 is an interface for connecting the computer 500 to a communication network. The processor 505 is, for example, a CPU or other computing device. The memory device 506 is, for example, a hard disk drive (HDD), a solid state drive (SSD), a flash memory, a random access memory (RAM), a read only memory (ROM), or other storage device.
[0050] Note that the hardware configuration of the computer 500 shown in FIG. 5 is an example, and the computer 500 may have, for example, multiple processors 505, multiple memory devices 506, or various other hardware components in addition to the hardware shown in the figure.
[0051] <Summary> As described above, in the monitoring system 10 having components realized by container applications and components realized by non-container applications, even when the processing capacity becomes strained, it is possible to expand the performance of each component while maintaining the necessary monitoring of the monitored device 20. In particular, when the non-container application is a database, the data necessary for monitoring is stored in the database while its performance is expanded, and after the performance expansion is completed, the data is restored, thereby achieving both continuity of monitoring and performance expansion. Note that in this embodiment, the component realized by the non-container application is a database, but this is merely an example, and it goes without saying that the present invention can be applied to components other than databases.
[0052] The present invention is not limited to the above-described specifically disclosed embodiments, and various modifications, changes, and combinations with known technologies are possible without departing from the scope of the claims. [Explanation of symbols]
[0053] 10. Surveillance System 20 Monitored Devices 101 Data Processing Department 102 Display section 103 Specific part 104 Control Unit 105 Data Recovery Department 106 Container Management Department 107 Database 108 Storage 201 Data Collection Department 500 computers 501 Input Device 502 Display device 503 External I / F 503a Recording media 504 Communication I / F 505 processor 506 Memory Device 507 Bus
Claims
1. 1. A monitoring device having a first component implemented by a containerized application and a second component implemented by a non-containerized application, an identification unit that identifies whether the processing capacity of the first component or the second component is strained based on information related to the processing status of the first component and the processing status of the second component; a first performance extension unit that, when it is determined that the processing capacity of the second component is under pressure, restricts data to the second component and then performs performance extension of the second component; a restoration unit that, when the performance of the second component is extended, restores the data restriction on the second component to its original state and reflects the data to the second component that was generated during the performance extension to the second component; A monitoring device having:
2. The monitoring device according to claim 1 , further comprising a second performance expansion unit that expands the performance of the first component when it is determined that the processing capacity of the first component is under pressure.
3. the second component is a database; The first performance extension unit includes: If it is determined that the processing capacity of the second component is strained, the performance of the second component is expanded after limiting the data stored in the second component; The restoration unit is 3. The monitoring device according to claim 1, wherein when the performance of the second component is expanded, the data restriction on the second component is restored, and data to the second component that occurred during the performance expansion is restored to the second component.
4. The restoration unit is 4. The monitoring device according to claim 3, wherein data generated during the performance expansion for the second component is restored to the second component based on a data transmission amount per unit time that satisfies the condition that the processing capacity of the second component will not be strained after the performance expansion.
5. The data includes a plurality of data types, The restoration unit is 5. The monitoring device according to claim 3, wherein data to the second component generated during the performance extension is restored to the second component in order of priority of the data to the second component generated during the performance extension based on the priority of each data type.
6. 6. The monitoring device according to claim 1, wherein the first component includes a component that collects and processes data from a monitoring target, and a component that displays the data in a predetermined format or issues an alert notification based on a condition determination.
7. A computer having a first component implemented by a containerized application and a second component implemented by a non-containerized application, a step of identifying whether the processing capacity of the first component or the second component is strained based on information on the processing status of the first component and the processing status of the second component; a first performance enhancement procedure for enhancing the performance of the second component after restricting data to the second component when it is determined that the processing capacity of the second component is under pressure; a restoration procedure in which, when the performance of the second component is extended, the data restriction on the second component is restored and the data to the second component that was generated during the performance extension is reflected in the second component; How to do it.
8. A program that causes a computer to function as the monitoring device according to any one of claims 1 to 6.
Citation Information
Patent Citations
System, method and program for detecting abnormality of performance load
JP2007323193A
Service order system, service order device, service order method and service order program
JP2013186644A
Cache control system, cache device, and cache priority control method
JP2015156058A
Prediction management system of resource usage amount, and prediction management method of resource usage amount
JP2021105772A