A monitoring method, management device and computing system
By providing a management device that supports multi-grain monitoring in cloud-native scenarios, the problem of increasing difficulty in monitoring cluster resources is solved, flexible monitoring and efficient management of cluster resources is achieved, and the stability of cloud-native services is improved.
Patent Information
- Application Number
- CN202211697581.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-28
- Publication Date
- 2025-04-29
- Estimated Expiration
- 2042-12-28
AI Technical Summary
In cloud-native scenarios, the resource division of each computing device in the cluster is fine-grained, resulting in increased monitoring difficulty. The existing technology cannot flexibly change monitoring indicators and quickly locate overall resources, resulting in low monitoring efficiency.
Provides a monitoring method, by sending monitoring requests to computing devices in the cluster, supporting multi-grained monitoring object selection, including computing devices, pods, containers, processes and variables, users can select different monitoring granularities according to their needs.
It realizes flexible monitoring of various indicators in the cluster. Users can obtain data information of different granularities according to their needs, which improves the monitoring effect of the overall cluster resources, and thus improves the stability of cloud-native business operations.
Smart Images

Figure CN116010201B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of cloud computing technology, and in particular to a monitoring method, management equipment and computing system. Background Art
[0002] The stable operation of the business system is an important prerequisite for providing business services to users. Currently, the maintenance and management of the business system is achieved by monitoring various indicators of the business system. In cloud native scenarios, a cluster is usually composed of multiple computing devices to provide business services to users. Among them, the resources of each computing device in the cluster are divided using container technology, so that the processes running in different containers are relatively independent. This method helps to flexibly deploy the business, but at the same time greatly increases the difficulty of monitoring various indicators in the system. Summary of the invention
[0003] The embodiments of the present application provide a monitoring method, a management device, and a computing system for monitoring various indicators of computing devices in a cluster.
[0004] To achieve the above objectives, the embodiments of the present application adopt the following technical solutions:
[0005] In a first aspect, a monitoring method is provided, which is applied to a management device, wherein the management device is used to monitor a computing cluster for deploying cloud native services, and the computing cluster includes multiple computing devices; the method includes: displaying a first interface; wherein the first interface includes selection entrances for candidate objects corresponding to monitoring objects of multiple granularities; receiving a first operation on the selection entrance for the candidate object in the first interface; in response to the first operation, determining at least one target monitoring object among the candidate objects; wherein the target monitoring object includes any one or more of the following: a target computing device in the computing cluster, a target program in the target computing device, and a target variable in the target program; sending a monitoring request to a computing device corresponding to at least one target monitoring object; the monitoring request includes an identifier of the target monitoring object and a target parameter to be monitored; wherein the target parameter is used to indicate parameters of the target monitoring object related to the cloud native service; receiving target parameter information of the computing device corresponding to the target monitoring object in response to the monitoring request.
[0006] Since the current cluster resources involve multiple computing devices, and the cluster resources are divided into finer granularity based on container technology, monitoring of various indicators in the cluster resources has become a problem. Currently, resources are usually monitored for a single computing device, and it is impossible to flexibly change the monitored indicators and monitor the overall resources based on different granularities for rapid positioning, which makes the current monitoring efficiency low. In this regard, using the above method provided in the embodiment of the present application, the management device can monitor various indicators in the cluster, wherein users can use different monitoring granularities for cluster resources, obtain corresponding data information, improve the user's monitoring effect on the overall resources of the entire cluster, and thus improve the stability of cloud native business operations.
[0007] In one possible implementation, the monitoring objects of multiple granularities include: computing device programs and variables; wherein the programs include at least one of the following: pods, containers, and processes; and the granularities from large to small are computing devices, pods, containers, processes, and variables.
[0008] This possible implementation method provides a monitorable granularity level for the management device, which helps users obtain indicator information of monitoring objects of different granularities through the management device and improves the monitoring effect.
[0009] In one possible implementation, before displaying the first interface, the method also includes: storing association relationships between monitoring objects of multiple granularities; and determining at least one target monitoring object among the candidate objects in response to the first operation, including: determining at least one target monitoring object among the candidate objects in descending granularity according to the association relationship in response to the first operation.
[0010] This possible implementation method provides an implementation method for selecting a target monitoring object based on multi-granularity monitoring objects, which helps users quickly locate the target monitoring object and improves the efficiency of determining the monitoring object.
[0011] In one possible implementation, before sending a monitoring request to a computing device corresponding to at least one target monitoring object, the method also includes: displaying a second interface, the second interface including operation options for operating parameters; receiving a second operation for the operation options for the operating parameters in the second interface; and determining the target parameters in the operating parameters in response to the second operation.
[0012] This possible implementation method determines the target parameters through the user's operation on the second interface, thereby improving the feasibility of the solution.
[0013] In one possible implementation, the second interface also includes a modification operation option, and the method also includes: receiving a third operation for the modification operation option for the operating parameters in the second interface; in response to the third operation, sending a modification request to the target computing device, the modification request including the modified operating parameters of the target monitoring object running the cloud native business.
[0014] This possible implementation method helps users to modify the operating parameters, thereby flexibly adjusting the indicators that the system monitors for the monitored objects and improving monitoring efficiency.
[0015] In a possible implementation, the method further includes: converting the target parameter information into information recognizable by a visualization program, wherein the visualization program is used to convert the information recognizable by the visualization program into a visualization image; and displaying a third interface, wherein the third interface includes the visualization image.
[0016] This possible implementation method helps to provide users with more intuitive target parameter information, thereby improving user experience.
[0017] In a possible implementation, converting the target parameter information into information recognizable by a visualization program includes: mapping the target parameter information into readable labels and values; and obtaining information recognizable by the visualization program according to the labels and values.
[0018] This possible implementation method provides a processing procedure for converting target parameter information into a visual image, thereby improving the feasibility of the solution.
[0019] In a possible implementation manner, the method further includes: storing target parameter information.
[0020] This possible implementation method is helpful to collect statistics of historical operating parameters and facilitate further analysis and processing of data.
[0021] In a second aspect, a management device is provided, including a processor, a display and a communication interface, the processor is connected to the communication interface and the display respectively; the display is used to display a first interface; wherein the first interface contains selection entrances of candidate objects corresponding to monitoring objects of multiple granularities; the communication interface is used to receive a first operation on the selection entrance of the candidate object in the first interface; the processor is used to determine at least one target monitoring object among the candidate objects in response to the first operation; wherein the target monitoring object includes any one or more of the following: a target computing device in a computing cluster, a target program in a target computing device, and a target variable in a target program; the communication interface is also used to send a monitoring request to a computing device corresponding to at least one target monitoring object; the monitoring request includes an identifier of the target monitoring object and a target parameter to be monitored; wherein the target parameter is used to indicate parameters of the target monitoring object related to cloud native business; the communication interface is also used to receive target parameter information of the computing device corresponding to the target monitoring object in response to the monitoring request.
[0022] In a third aspect, a management device is provided, including a functional unit for executing any one of the methods provided in the first aspect, and the actions performed by each functional unit are implemented by hardware or by executing corresponding software through hardware. For example, the management device may include: a processing unit, a display unit, and a communication unit. The display unit is used to display a first interface; wherein the first interface includes selection entrances of candidate objects corresponding to monitoring objects of multiple granularities; the communication unit is used to receive a first operation for the selection entrance of the candidate object in the first interface; the processing unit is used to determine at least one target monitoring object in the candidate object in response to the first operation; wherein the target monitoring object includes any one or more of the following: a target computing device in a computing cluster, a target program in a target computing device, and a target variable in a target program; the communication unit is also used to send a monitoring request to a computing device corresponding to at least one target monitoring object; the monitoring request includes an identifier of the target monitoring object and a monitored target parameter; wherein the target parameter is used to indicate the parameter of the target monitoring object related to the cloud native business; the communication unit is also used to receive the target parameter information of the computing device corresponding to the target monitoring object in response to the monitoring request.
[0023] In a fourth aspect, a management device is provided, comprising: a processor and a memory. The processor is electrically connected to the memory, the memory is used to store program instructions, and the processor is used to execute the program instructions so that the management device executes any one of the methods provided in the first aspect.
[0024] In a fifth aspect, a computing system is provided, which includes multiple computing devices and the management device recorded in the second to fourth aspects above; wherein the computing device is used to run cloud native services; the management device is used to monitor information related to the cloud native services running on the computing devices, such as resource usage information of computing devices, pods, containers, processes and variables.
[0025] In a sixth aspect, a chip is provided, comprising: a processor and an interface circuit; the interface circuit is used to receive code instructions and transmit them to the processor; the processor is used to run the code instructions to execute any one of the methods provided in the first aspect.
[0026] In a seventh aspect, a computer-readable storage medium is provided, comprising computer execution instructions, which, when executed on a computer, enable the computer to execute any one of the methods provided in the first aspect.
[0027] In an eighth aspect, a computer program product is provided, comprising computer execution instructions, which, when executed on a computer, cause the computer to execute any one of the methods provided in the first aspect.
[0028] The technical effects brought about by any implementation method in the second to eighth aspects can refer to the technical effects brought about by the corresponding implementation method in the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0029] Figure 1 This is a schematic diagram of a system for implementing indicator monitoring based on monitoring containers;
[0030] Figure 2 It is a schematic diagram of a system for realizing indicator monitoring based on indicator observation tools;
[0031] Figure 3 A schematic diagram of a monitoring scenario provided in an embodiment of the present application;
[0032] Figure 4 A schematic diagram of the composition of a communication device provided in an embodiment of the present application;
[0033] Figure 5 A flow chart of a monitoring method provided in an embodiment of the present application;
[0034] Figure 6 A schematic diagram of a first interface for determining a target monitoring object provided in an embodiment of the present application;
[0035] Figure 7 A schematic diagram of a first interface for determining a target indicator provided in an embodiment of the present application;
[0036] Figure 8A schematic diagram of a second interface for determining a target indicator provided in an embodiment of the present application;
[0037] Fig. 9 A flow chart of a monitoring method provided in an embodiment of the present application;
[0038] Fig.10 A schematic diagram of a mapping relationship of original data provided in an embodiment of the present application;
[0039] Fig.11 A schematic diagram of the structure of a management device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0040] In the description of this application, unless otherwise specified, " / " means "or", for example, A / B can mean A or B. "And / or" in this article is merely a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, "at least one" means one or more, and "plurality" means two or more. The words "first", "second", etc. do not limit the quantity and execution order, and the words "first", "second", etc. do not limit them to be different.
[0041] It should be noted that, in this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in this application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0042] At present, cloud native architecture is a mainstream architecture in cloud computing, with the characteristics of microservices, continuous integration, containerization, developer operations (DevOps), etc., which helps to realize flexible deployment of services based on resource environments of different granularities. For example, in cloud native architecture, business services are usually carried by a cluster consisting of multiple computing devices. The resources of multiple computing devices are divided based on container technology to obtain multiple independent operating environments, which are used to carry one or more processes respectively. Specifically, container technology implements isolation between processes by utilizing the control groups (cgroup for short) and namespace mechanisms of the Linux kernel. Among them, cgroup is used to represent the resources of a container (such as central processing unit (CPU) resources, memory, etc.). The command space mechanism is used to distinguish the same variable names in different operating environments. Based on the above method, each container has independent computing resources for the operation of the process, and conflicts caused by the same variables between containers are avoided based on the namespace mechanism.
[0043] It can be understood that the computing devices involved in the embodiments of the present application include but are not limited to electronic devices with computing functions such as servers and computers.
[0044] Currently, in order to achieve cluster resource management, the kubernetes open source platform (hereinafter referred to as k8s) is mainly used for container orchestration and scheduling. Among them, pod is the smallest deployable unit in k8s. Containers run in pods. A pod can include one or more containers. Pods can also be called container groups. Therefore, cluster resources managed by k8s can be divided into different granularities based on computing device level, pod level, container level and process level.
[0045] During the operation of the business system, monitoring of various indicators in the business system is the key to maintaining the stability of the business system. Among them, indicator items are used to reflect the operation of the business system from different dimensions. For example, indicator items include CPU occupancy, memory occupancy, running time and other operating parameters. In the Linux system, the process management tool can be used to monitor the indicator items described above and describe the status of the system process. For example, the top tool can reflect the dynamic information of the system process, that is, as the current system process runs, the status of the system process is updated in time. For another example, the ps tool can reflect the static snapshot of the process executed by the system in the past, that is, the status of the process corresponding to the query time is displayed.
[0046] However, the cluster resources that carry cloud native services use container technology to divide the computing device resources in the cluster to form an independent operating environment, making it impossible for the commonly used process detection tools in the above system to obtain the operating status of the container granularity. In response to this, a monitoring method is currently proposed to monitor the operating status of each business container in the pod by adding a parallel monitoring container to the pod. Figure 1 As shown in the figure, a pod with a monitoring container can monitor the indicators of each business container in the pod. In this way, the monitoring container can be flexibly deployed based on the user's monitoring needs based on the business container. For example, Figure 1 In pod1, monitoring container 1 is deployed for business container 1 and business container 2. In pod2, monitoring container 2 is deployed for business container 3. In pod3, no monitoring container is deployed to monitor the indicators of business container 3, so that the deployment form of monitoring containers in the pod is not limited. Among them, multiple monitoring containers can be deployed in a pod to monitor different business containers in the pod.
[0047] The above monitoring method is a monitoring strategy adopted by the sensu monitoring tool provided in k8s. Specifically, sensu runs the monitoring container in the sidecar mode in k8s, and collects the required indicators by communicating with each business container in the same pod.
[0048] In the above monitoring method, since the monitoring container runs under user-mode resources, it cannot access kernel resources to obtain process-based granularity indicator monitoring. Therefore, the smallest monitoring unit of sensu is the container. In addition, using the above method, users need to attach a monitoring container to the pod where the monitored object is running to implement monitoring, so that each pod occupies a certain amount of resources to deploy one or more monitoring containers according to user needs, and the monitoring efficiency is low.
[0049] Another monitoring method is currently proposed, which is to access kernel resources and obtain the running status of processes inside the container by calling programs in the indicator observation tool set (inspektor-gadget). Specifically, the indicator observation tool set is based on the extended Berkeley packet filter (eBPF) framework of the Linux kernel to access kernel resources. The indicator observation tool set can monitor more indicators, such as obtaining disk input and output (IO) traffic, network connection latency, file open objects and other information. Figure 2 As shown, the user calls the monitoring instruction for a certain indicator in the indicator observation tool set. The instruction accesses the kernel resources through the eBPF framework, obtains the corresponding monitoring information, and feeds it back to the user.
[0050] In this monitoring method, the indicator observation tool set is stored in each computing device, and the indicator items are monitored based on user needs. However, in the cloud native scenario, the cluster resources composed of multiple computing devices cannot realize the rapid call of instructions according to user needs.
[0051] In this regard, the present application proposes a monitoring method applied to a management device, which communicates with multiple computing devices deployed with cloud native services, and is used to respond to user indicator monitoring requests based on different granularities, locate the corresponding computing devices, obtain the data information corresponding to the corresponding indicator items and feed back to the user, thereby helping to flexibly obtain the operating status of the computing devices in the cluster, and improve the efficiency of indicator monitoring through unified management of multiple computing devices.
[0052] like Figure 3 As shown, a schematic diagram of a scenario of indicator monitoring provided by the present application includes a management device for managing multiple computing devices in a cluster (computing device 1, computing device 2, ..., computing device n, where n is an integer greater than 1). Among them, each computing device includes one or more pods, each pod includes one or more containers, and the process in the container runs a cloud native business. Each computing device also includes an observation program set for calling the corresponding observation program for different indicator items to obtain corresponding data information. Exemplarily, the computing device reads data from the kernel through the kprobe, tracepoint and other tracking points or pile points of the observation program in the kernel. Based on the monitoring method provided in the embodiment of the present application, the management device sends an indicator monitoring request to the target computing device in multiple computing devices, and the target computing device calls the relevant monitoring instructions based on the target parameters requested by the indicator monitoring request, obtains the target parameter information, and feeds back to the management device. After receiving, the management device feeds back to the user, thereby realizing the indicator monitoring of different monitoring granularities of multiple computing devices in the cluster resources in the scenario of cloud native business, and improving the monitoring efficiency of the overall resources of the cluster.
[0053] The management device used in the monitoring method provided in the embodiment of the present application can be an independent communication device to execute the method provided in the present application. The present application does not limit the specific form of the communication device, which can be a terminal or a server. Among them, the terminal can specifically be a mobile phone, an augmented reality (AR) device, a virtual reality (VR) device, a tablet computer, a laptop computer, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (PDA), etc. The server can be a physical or logical server.
[0054] In terms of hardware implementation, the above communication equipment can be implemented as follows: Figure 4 The communication device shown in the figure realizes the corresponding functions. Figure 4 , which is a schematic diagram of the hardware structure of a communication device 40 provided in an embodiment of the present application.
[0055] Figure 4 The communication device 40 shown may include: a processor 401 , a memory 402 , a communication interface 403 , a bus 404 , and a display 405 . The processor 401 , the memory 402 , the communication interface 403 , and the display 405 may be connected via a bus 404 .
[0056] The processor 401 is the control center of the communication device 40, and can be a general-purpose CPU or other general-purpose processors, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc.
[0057] As an example, the processor 401 may include one or more CPUs, such as Figure 4 CPU 0 and CPU1 are shown in .
[0058] The memory 402 may be a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (RAM) or other type of dynamic storage device that can store information and instructions, an electrically erasable programmable read-only memory (EEPROM), a disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited to these.
[0059] In a possible implementation, the memory 402 may exist independently of the processor 401. The memory 402 may be connected to the processor 401 via a bus 404 and used to store data, instructions, or program codes. When the processor 401 calls and executes the instructions or program codes stored in the memory 402, the monitoring method provided in the embodiment of the present application can be implemented.
[0060] In another possible implementation, the memory 402 may also be integrated with the processor 401 .
[0061] The communication interface 403 is used for the communication device 40 to connect with other devices through a communication network, and the communication network may be Ethernet, a radio access network (RAN), a wireless local area network (WLAN), etc. The communication interface 403 may include a receiving unit for receiving data and a sending unit for sending data.
[0062] The bus 404 may be an industry standard architecture (ISA) bus, a peripheral component interconnect (PCI) bus, or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 4 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0063] Display 405 is used to display images, videos, etc. The display includes a display screen, a display panel, etc. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light emitting diode or an active-matrix organic light emitting diode (AMOLED), a flexible light-emitting diode (FLED), Miniled, MicroLed, Micro-oLed, a quantum dot light emitting diode (QLED), etc. In some embodiments, the communication device 40 may include 1 or N display screens, where N is a positive integer greater than 1. In the embodiment of the present application, the display can display the monitored target parameter information, and receive the user's selection operation or input operation for the monitored object and the monitored parameter.
[0064] It should be pointed out that Figure 4 The structure shown in the figure does not constitute a limitation on the communication device 40, except Figure 4 In addition to the components shown, the communication device 40 may include more or fewer components than shown, or combine certain components, or arrange the components differently.
[0065] like Figure 5 , which is a flow chart of a monitoring method provided by an embodiment of the present application. The method is applied to a management device for monitoring a plurality of computing devices for deploying cloud native services, and includes steps S501-S505.
[0066] S501: Display a first interface.
[0067] The first interface includes selection entrances for candidate objects corresponding to monitoring objects of multiple granularities.
[0068] Among them, the monitoring objects of multiple granularities include: computing devices, programs, and variables. Programs include at least one of the following: pods, containers, and processes. The granularities from large to small are computing devices, pods, containers, processes, and variables.
[0069] It is understandable that the current business system includes multiple computing devices that carry cloud native businesses. In the embodiments provided in this application, corresponding monitoring services are provided according to the division of computing resources in the business system. Specifically, the monitoring granularity includes computing device level, pod level, container level, process level, and variable level. The target monitoring object can be determined as a specific monitoring object under a certain monitoring granularity based on each monitoring granularity.
[0070] For example, Figure 6 , which is a schematic diagram of a first interface provided by an embodiment of the present application. The first interface includes a selection entry for candidate objects corresponding to monitoring objects of different granularities. Figure 6 The first interface shown includes identifiers indicating various monitoring granularities, such as computing devices, container groups pods, containers, and processes. Correspondingly, each monitoring granularity includes one or more candidate objects.
[0071] S502: Receive a first operation on a selection entry of a candidate object in a first interface.
[0072] Among them, the first operation is used to determine the target monitoring object in the selection entrance of the candidate object.
[0073] For example, in Figure 6 In , each monitoring granularity corresponds to a selection entry for a candidate object, and the selection entry is used by the user to select from one or more candidate objects under the monitoring granularity. Figure 6 By clicking on the entry, a candidate object list corresponding to each monitoring granularity is displayed, and the candidate object list is composed of one or more candidate object identifiers. For example, the candidate object list corresponding to the computing device includes computing device a, computing device b, and computing device c. Similarly, the candidate object list corresponding to the pod may include pod a, pod b, and pod c.
[0074] S503. In response to the first operation, determine a target monitoring object from the candidate objects; wherein the target monitoring object includes any one or more of the following: a target computing device in a computing cluster, a target program in a target computing device, and a target variable in a target program.
[0075] Exemplarily, when the target monitoring object is a target computing device in a computing cluster, the indicator monitoring request is used to perform indicator monitoring based on the computing device level granularity, and the target indicator obtained by the management device is the operating status of the target computing device in the process of running cloud native business, such as the CPU usage, memory occupancy and other data information of the overall resources of the target computing device.
[0076] Exemplarily, when the target program is a pod, the target monitoring object is a pod in a target computing device among multiple computing devices, and the indicator monitoring request is used to perform monitoring based on pod-level granularity. The indicator monitoring request is used to request to obtain target indicators such as the CPU usage, memory occupancy, and other data information of the pod in the target computing device.
[0077] Exemplarily, when the target program is a container or a process, the indicator monitoring request is used to monitor based on container-level or process-level granularity, wherein the requested target indicator is the running status of a container or a process in the target computing device.
[0078] Exemplarily, the monitoring granularity also includes the variable level. The target monitoring object is a variable in the target program. Among them, the process running in the computing device may contain multiple variables, and the indicator monitoring request can be detected based on the variable level granularity. The target indicator requested for obtaining by the indicator monitoring request is the CPU usage rate, memory usage and other data information of the variable in the computing device.
[0079] In combination with the above step S501 and step S502, in a possible implementation, the management device stores the identifiers of multiple computing devices in the service system, and the associations between the multiple computing devices and programs. The following Table 1 is an example of an association between computing devices and programs.
[0080] Table 1. Examples of associations between computing devices and programs
[0081]
[0082] In one example, Figure 6The candidate object list corresponding to the computing devices shown includes computing device a, computing device b and computing device c, the candidate object list corresponding to the pod includes pod a1, pod a2, pod b and pod c, and the candidate object list corresponding to the container includes container a1, container a2, container a3, container b1, container b2 and container c.
[0083] In another example, combined with the example in Table 1 above, Figure 6 The candidate object list corresponding to the computing device shown includes computing device a, computing device b, and computing device c, while the candidate object list corresponding to the pod is displayed based on the user's selection of the candidate object list in the computing device and in combination with the association relationship between the program and the computing device in Table 1. For example, when the user selects computing device a, based on the association relationship between computing device a and the program, it is determined that the candidate object list corresponding to the pod includes pod a1 and pod a2. Similarly, when the user selects pod a1, the candidate object list corresponding to the container includes container a1 and container a2.
[0084] It can be understood that the presentation method of the candidate object identifiers in the first interface described based on the above example helps to improve the convenience of interaction with the user.
[0085] It should be noted that the above description of the first interface elements contained in the first interface is only an example. In actual application, it can be further optimized. For example, in the above another example, different first interface elements are displayed in different interfaces according to the monitoring granularity selected by the user step by step. When the user selects computing device a to jump to the interface of pod and its corresponding candidate object list, the user makes a selection based on the candidate object list in the interface. This application does not impose any restrictions on this.
[0086] It should be noted that in Figure 6 In the first interface shown, the identification of the candidate object is displayed in the form of a drop-down menu. In actual application, it can also be displayed in other forms, which is not limited by this application. In addition, the first interface can also include more or fewer interface elements, such as a process-level candidate object list, so that the user can operate in the first interface and determine the monitoring object, which is not limited by this application.
[0087] In another example, the user selects candidate objects step by step according to the monitoring granularity, and selects the candidate object with the smallest monitoring granularity as the target monitoring object. Figure 7 As shown in Figure (a), based on Figure 6 After the user selects computing device a from the candidate objects of computing devices, he further selects pod a1 from the pods; Figure 7In Figure (b), container a1 is selected based on container a1 and container a2 corresponding to pod a1. At this time, container a1 is the identifier of the target monitoring object. Figure 6 In the example shown, after the user selects computing device a among computing devices, he / she does not select a more fine-grained pod, and the identifier of the target monitoring object is computing device a.
[0088] It should be noted that the first operation is related to the operable controls in the first interface and can be flexibly adjusted according to the controls deployed in the first interface, and this application does not impose any restrictions on this.
[0089] Optionally, in response to the first operation, the management device determines at least one target monitoring object. The at least one target monitoring object may be a monitoring object at a different monitoring granularity. Figure 6 or Figure 7 In the example, the user selects one or more computing devices, or one or more programs; or the user selects one or more computing devices, and one or more programs. That is, the target monitoring object can be one or more monitoring objects of the same granularity, or multiple monitoring objects of different granularities.
[0090] S504: Send a monitoring request to a computing device corresponding to at least one target monitoring object.
[0091] The monitoring request includes an identifier of target parameter information and a target parameter to be monitored, where the target parameter is used to indicate parameters of a target monitoring object related to a cloud-native business.
[0092] In one example, the target parameter is any one or more of the indicator items described above.
[0093] Optionally, before the above step S504, the management device determines the target parameters through the following steps S11-S13.
[0094] S11. Displaying a second interface; wherein the second interface includes operation options of operating parameters.
[0095] The operation parameter is used to indicate the resource usage information in the business system, and can be understood as the indicator item mentioned above.
[0096] For example, Figure 8 , which is a schematic diagram of a second interface provided by an embodiment of the present application. Figure 8The second interface shown includes multiple operating parameter identifiers, such as CPU occupancy, memory usage, and running time. The second interface also includes operation options corresponding to each operating parameter, such as on and off. Specifically, when the user selects on for an operation option corresponding to a certain operating parameter, it means that the information of the operating parameter needs to be obtained.
[0097] Among them, Figure 8 The running time in the running parameters refers to the running time after the computing device or the program in the computing device is started (not closed during the period), such as the running time after the computing device is turned on, the running time after the pod is created, etc.
[0098] Optionally, the management device can also monitor the input and output of the disk, and the operating parameters also include the number of read and write operations per second (IOPS) to monitor the disk performance. The management device can also perform network monitoring, and the operating parameters also include network packet loss rate, network delay, etc.
[0099] In a possible implementation, the one or more operating parameters have a corresponding relationship with the target monitoring object. Exemplarily, when the target monitoring object is a process, the operating parameters may include the number of process handles in addition to the one or more operating parameters described in the above examples. Among them, by monitoring the information of the number of process handles, it is possible to avoid a process occupying too many resources and affecting the overall performance of the system. This implementation can also be understood as the management device determining the second interface based on the first interface to determine the target monitoring object.
[0100] Furthermore, when multiple target monitoring objects are determined in step S503, the second interface corresponding to each target monitoring object can be determined through the corresponding relationship between the target monitoring object and the operating parameter. Figure 6 The user selects computing device a and computing device b. In response to the user's selection, the second interface includes an interface of operating parameters corresponding to computing device a and an interface of operating parameters corresponding to computing device b.
[0101] It can be understood that the number and form of the operating parameters included in the second interface described above are only examples. In actual applications, more or fewer operating parameters and other options corresponding to the operating parameters may be included, and this application does not impose any restrictions on this.
[0102] S12: Receive a second operation on one or more operation parameters in the second interface.
[0103] Specifically, the second operation is performed based on a specific form of the operation option, such as click, double-click, or input.
[0104] For example, in Figure 8 In the example, the operation options include on or off, which are used by the user to perform a second operation based on the needs of the observed indicator.
[0105] S13. In response to the second operation, determine target parameter information from one or more parameter information.
[0106] For example, in Figure 8 In the example, when the user selects “on” based on “CPU occupancy rate”, the management device determines “CPU occupancy rate” as the target parameter.
[0107] It is understandable that the target parameter may be one or more to meet the monitoring needs of the user.
[0108] The above process of determining the target parameters may also be understood as turning on or off the monitoring function of one or more indicator items.
[0109] Through the above steps S11-S13, the management device determines the target parameters by displaying the second interface for the user and receiving the user's operation on the second interface.
[0110] Among them, when the target monitoring object is a target computing device, step S504 specifically includes: determining the address of the target computing device according to the computing device information stored locally, and sending the target parameter based on the address. When the target monitoring object is a target program or a target variable, step S502 specifically includes: determining the computing device corresponding to the target program based on the association relationship between the computing device and the program or variable and the target program indicated by the target monitoring object; and sending a monitoring request to the computing device corresponding to the target program.
[0111] In a possible implementation, the address of the computing device is stored in the management device, and the address to send the monitoring request is determined based on the identifier of the computing device corresponding to the target monitoring object.
[0112] Based on the above steps S11-S13, the management device determines the target monitoring object and the monitored target parameter, and sends a monitoring request including the identifier of the target parameter to the computing device corresponding to the target monitoring object.
[0113] S505: Receive target parameter information of the computing device corresponding to the target monitoring object in response to the monitoring request.
[0114] Among them, the target parameter information is used to reflect the specific data information of the target parameters of the target monitoring object in its corresponding computing device.
[0115] After sending the monitoring request through the above step S504, the computing device corresponding to the target monitoring object receives the monitoring request and obtains the target parameter information based on the monitoring request.
[0116] Combination Figure 3 As shown, the management device sends a monitoring request to the computing device 1. The computing device 1 calls the corresponding program in the observation program set according to the identifier of the target parameter contained in the monitoring request, obtains the target parameter information, and feeds back to the management device. Among them, the observation program set includes the observation program corresponding to one or more operating parameters displayed in the second interface. The observation program is used to access the kernel based on the eBPF framework and obtain the corresponding data information.
[0117] Since the current business system contains multiple computing devices, and the resources of the business system are divided into finer granularity based on container technology, monitoring of various indicators in the resources of the business system has become a problem. Currently, resources are usually monitored for a single computing device, and the monitored indicators cannot be flexibly changed, and monitoring of the overall resources based on different granularities cannot be quickly located, which makes the current monitoring efficiency low. In this regard, the above method provided in the embodiment of the present application is adopted, and the management device provides an operating platform, so that users can complete the monitoring of various indicators in the cluster through simple operations. Among them, users can use different monitoring granularities for cluster resources, obtain corresponding parameter information, improve the user's monitoring effect on the resources of the business system, and thereby improve the stability of cloud native business operations.
[0118] Optionally, after the above step S505, the method further includes: the management device stores the target parameter information.
[0119] The management device stores the target parameter information locally, or stores the target parameter information in other devices or databases independent of the management device.
[0120] It is understandable that a user may need to obtain data information on a certain target parameter information within a period of time, rather than real-time data information, and then perform analysis based on the data information obtained within the period of time, such as obtaining the highest value reached by the CPU occupancy rate within a preset time period, and judging whether to adjust the business carried by the computing device based on the highest value.
[0121] Optionally, after the above step S505, the method also includes: the management device displays monitoring data; wherein the monitoring data includes target parameter information of the target monitoring object responded by the target computing device, or the monitoring data includes target parameter information of the target monitoring object responded by the target computing device, and the identifier of the computing device to which the target monitoring object belongs.
[0122] In one example, when the target monitoring object is a target computing device and the identifier of the target parameter information is CPU occupancy, the monitoring data includes the numerical value of the current CPU occupancy of the target computing device, or also includes the identifier of the target computing device. When the target monitoring object is a pod and the identifier of the target parameter information is CPU occupancy, the monitoring data includes the numerical value of the CPU occupancy of the pod in the computing device to which it belongs. Or it also includes the identifier of the computing device to which the pod belongs.
[0123] In another example, when the target monitoring object is a target program, such as a container, and the identifier of the target parameter information is CPU occupancy, the monitoring data includes the value of the CPU occupancy of the container in the computing device to which it belongs; or, the monitoring data also includes the identifier of the pod to which the container belongs and the identifier of the computing device. Similarly, when the target monitoring object is a process, the monitoring data includes the target parameter information and may also include the identifier of the container to which the process belongs, the identifier of the pod, and the identifier of the computing device.
[0124] Through the above method, the user is provided with program or computing device identifiers of other monitoring granularities related to the target monitoring object, which makes it easier for the user to view relevant information and improves the intelligence of monitoring.
[0125] Optionally, the target parameter information received in the above step S505 is the original data obtained by the computing device described in the target monitoring object from the operating system kernel. After step S505, the method also includes: converting the target parameter information into information recognizable by a visualization program, and the visualization program is used to convert the information recognizable by the visualization program into a visualization image; and displaying a third interface containing the visualization image.
[0126] It is understandable that when the target monitoring object is a target program, the corresponding observation program needs to access the kernel to obtain the required data. For example, when the kernel creates a container, it records the operating parameters of the container through cgroup information. When the target program is a pod, container, or process, the operating parameters can be obtained through cgroup information.
[0127] The process of using a visualization program to obtain a visualization image is called a visualization process, and visualization refers to converting data information into graphics or images based on image processing technology. For example, a user obtains a disk IOPS over a period of time, and obtains a line graph of the IOPS changes over time during the period through visualization, which helps the user to intuitively understand the trend of IOPS changes over time based on the line graph, so as to determine whether to configure more or less resources for the business carried by the computing device.
[0128] It can be understood that the above method helps users obtain more intuitive data information through visual images and improves user monitoring efficiency.
[0129] Specifically, the management device is configured as follows: Fig. 9 The steps shown to obtain information recognizable by the visualization program include steps S901-S904.
[0130] S901. Determine whether the target parameter information is formatted data.
[0131] If yes, then execute step S904 to output formatted data; if no, then continue to execute step S902.
[0132] The formatted data refers to data that can be recognized by the above-mentioned visualization program.
[0133] It is understandable that the data obtained by the kernel is usually output in the data format specified by the observation program. Accordingly, the data receiver needs to read it in the specified data format and convert it into formatted data that can be recognized by the visualization program. When performing visualization processing, the visualization program has strict requirements on the data structure and string length. Data that meets the above requirements of the visualization program is formatted data.
[0134] S902: Map the target parameter information into readable labels and values.
[0135] When the observation program obtains the target parameter information of the target program in the kernel of the computing device, the information in the kernel is exported according to the preset rules. The preset rules can be the data storage format of labels and values. A set of labels and values corresponds to a set of data, and each set of data corresponds to a type of observation information. Accordingly, the management device parses according to the preset rules to obtain readable labels and values; the readable labels and values are the target parameter information that can be read by the management device. For example, Fig.10 As shown, the original data includes data group 1, data group 2 and data group 3. After mapping, pod ID, container ID and PID are obtained. The three labels correspond to their respective values, so that the required data information is obtained based on the original data.
[0136] In a possible implementation, the observation program needs to call other programs in the kernel to trace the data based on the data obtained in the kernel. For example, the kernel can directly obtain the PID, and based on the PID, the container ID can be traced through its corresponding cgroup information, for example, in the following way:
[0137] cat / proc / $PID / cgroup|awk -F' / ''{print$5}'
[0138] In addition, based on the PID, you can also use moutinfo to trace back to get the pod ID, such as using the following method:
[0139] cat / proc / $PID / mountinfo|grep"etc-hosts"|awk-F / {'print$6'}
[0140] Through the above method, it is helpful to trace more relevant information, present more relevant data to users for reference, and improve the monitoring efficiency of cluster resources.
[0141] S903: Format the label and the value.
[0142] Specifically, the process of formatting labels and data is to process data according to the data structure and string length specified by the visualization program to obtain formatted data.
[0143] S904: Output formatted data.
[0144] It is understandable that in the above solution, the management device obtains the operating parameters of the corresponding computing device through the user's monitoring request, and further, the obtained information can be processed to obtain a visual image through a visualization program. The above step S904 takes the output of formatted data by the management device to the device for visualization as an example. After this step, the method can also include receiving the visual image and displaying it. For example, the management device obtains the change curve of the disk I / O flow over a period of time.
[0145] It should be noted that the visualization program can be directly deployed in the management device, and step S904 can directly output and display the visualization image.
[0146] It can be understood that, through the above method, the original data obtained from the kernel is formatted and converted into formatted data that can be read by the visualization program, thereby providing a basis for realizing data visualization processing.
[0147] Optionally, the management device stores the formatted data and / or the visual image locally, or in other devices or databases independent of the business system.
[0148] Optionally, after the above step S505, the method also includes: receiving a first modification request sent by the target computing device, wherein the first modification request is used to add or delete a computing device or program in multiple computing devices; in response to the first modification request, updating the information of the computing device in the business system, and the association relationship between the computing device and the program.
[0149] It is understandable that the resources in the cluster may change, and the resource changes need to be updated in the management device so that the target monitoring object of the indicator monitoring can be accurately located during the indicator monitoring.
[0150] In one possible implementation, the target computing device includes the identifier of the changed computing device or program in the first modification request and sends it to the management device. Exemplarily, if a new container is added to the target computing device, the identifier of the changed computing device or program includes at least the identifier of the container, the identifier of the pod to which the container belongs, and the identifier of the computing device to which the container belongs. If an existing container is deleted from the target computing device, only the identifier of the container may be included.
[0151] It is understandable that the management device maintains the association relationship between the target computing device and the target program, that is, the association relationship of the resources in the current cluster after being divided based on different granularities. If a new program is added, the management device can update the association relationship accordingly based on the location of the new program. If a program is deleted, the management device can update the association relationship accordingly based on the identifier of the deleted program.
[0152] It should be noted that the above takes the modification of the program as an example. In actual application, it also includes the addition and deletion of computing devices. The way in which the management device updates the information of the computing devices in the business system is similar to the above implementation method and will not be repeated.
[0153] Optionally, the management device updates the first interface element in the first interface, including updating the candidate object list of the target computing device and / or the candidate object list of the target program.
[0154] Optionally, the second interface also includes a modification operation option. After the above step S505, the method also includes: receiving a third operation for the modification operation option for the operating parameters in the second interface; in response to the third operation, sending a modification request to the target computing device, wherein the modification request includes the modified operating parameters of the target monitoring object for running the cloud native business.
[0155] It is understandable that in the example described above, the user can indicate the target indicator to be monitored by operating the operation options corresponding to the operating parameters in the second interface. The second interface also includes a modification operation option for modifying the operating parameters in the interface, which is used to add or delete the observation instructions of the currently existing target indicators.
[0156] In one possible implementation, the modification operation option is used to receive user input information, and the input information can be any one or more instructions for adding or deleting at least one instruction item for the target monitoring device. In response to the user's input information, the management device sends the modification request to the computing device to which the target monitoring device belongs. The computing device that receives the modification request generates a new observation program based on the eBPF framework and runs it, obtains corresponding data information and feeds it back to the management device; or, the computing device deletes the observation program corresponding to the instruction item in the observation instruction set. After completing the above steps, the computing device feeds back response information to the management device, and the management device updates the operating parameters in the second interface based on the response information. Exemplarily, bpftrace, bcc or other bpf programs can add or delete tracing points (kprobe, trace point, etc.) through the classifier to achieve the purpose of dynamically switching the corresponding plug-in to obtain the desired information.
[0157] Optionally, the management device updates the identification of the operating parameters and the corresponding operation options in the second interface.
[0158] It should be noted that the above-mentioned modification of operating parameters can be modified individually for the computing device to which the selected target monitoring object belongs, or can be modified for multiple computing devices in the business system, and this application does not impose any restrictions on this.
[0159] The above method helps to flexibly adjust the observation procedures of various instructions in various computing devices according to user needs, thereby improving the overall monitoring efficiency of cluster resources.
[0160] It should be noted that, in the implementation process of the above solution, the target monitoring object can be one or more, the number of target parameters can also be one or more, and the target parameters of different target monitoring objects can be the same or different, and there is no limitation on this.
[0161] The above mainly introduces the scheme of the embodiment of the present application from the perspective of the method. It is understandable that in order to realize the above functions, the management device includes at least one of the hardware structure and software modules corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of each example described in the embodiments disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0162] The embodiment of the present application can divide the management device into functional units according to the above method example. For example, each functional unit can be divided according to each function, or two or more functions can be integrated into one processing unit. The above integrated unit can be implemented in the form of hardware or in the form of software functional units. It should be noted that the division of units in the embodiment of the present application is schematic and is only a logical functional division. There may be other division methods in actual implementation.
[0163] In the case of dividing each functional module into corresponding functional modules, Fig.11 A possible structural diagram of the management device involved in the above embodiment is shown. Fig.11 As shown, the management device 110 includes a display unit 1101 , a communication unit 1102 , and a processing unit 1103 .
[0164] The display unit 1101 is used to display a first interface; wherein the first interface includes selection entrances for candidate objects corresponding to monitoring objects of multiple granularities.
[0165] The communication unit 1102 is used to receive a first operation on a selection entry of a candidate object in the first interface.
[0166] The processing unit 1103 is used to determine at least one target monitoring object in the candidate objects in response to the first operation; wherein the target monitoring object includes any one or more of the following: a target computing device in the computing cluster, a target program in the target computing device, and a target variable in the target program.
[0167] The communication unit 1102 is also used to send a monitoring request to a computing device corresponding to at least one target monitoring object; the monitoring request includes an identifier of the target monitoring object and a target parameter to be monitored; wherein the target parameter is used to indicate parameters of the target monitoring object related to the cloud native business.
[0168] The communication unit 1102 is also used to receive target parameter information of the computing device corresponding to the target monitoring object in response to the monitoring request.
[0169] In one example, the monitoring objects of multiple granularities include: computing device programs and variables; wherein the program includes at least one of the following: pod, container, and process; the granularities from large to small are computing device, pod, container, process, and variable.
[0170] In one example, the management device 110 also includes a storage unit 1104 for storing association relationships between monitoring objects of multiple granularities; a processing unit 1103 is specifically used to respond to the first operation and determine at least one target monitoring object among the candidate objects according to the association relationship and granularity from large to small.
[0171] In one example, the display unit 1101 is also used to display a second interface, which includes operation options for operating parameters; the communication unit 1102 is also used to receive a second operation for the operation options for the operating parameters in the second interface; and the processing unit 1103 is also used to determine the target parameters in the operating parameters in response to the second operation.
[0172] In one example, the second interface also includes a modification operation option, and the communication unit 1102 is also used to receive a third operation of the operation option for the operating parameters in the second interface; the communication unit 1102 is also used to send a modification request to the target computing device in response to the third operation, and the modification request includes the modified operating parameters of the target monitoring object running the cloud native business.
[0173] In one example, the processing unit 1103 is further used to convert the target parameter information into information recognizable by a visualization program, wherein the visualization program is used to convert the information recognizable by the visualization program into a visualization image; the display unit 1101 is further used to display a third interface, wherein the third interface includes a visualization image.
[0174] In one example, the processing unit 1103 is specifically configured to map the target parameter information into readable labels and values; and obtain information recognizable by the visualization program according to the labels and values.
[0175] In one example, the storage unit 1104 is also used to store target parameter information.
[0176] In an example, the storage unit 1104 is also used to store computer-executable instructions, and other units in the management device can perform corresponding actions according to the computer-executable instructions stored in the storage unit 1104 .
[0177] For the detailed description of the above optional methods, please refer to the above method embodiments, which will not be repeated here. In addition, the explanation of any management device 110 provided above and the description of the beneficial effects can refer to the above corresponding method embodiments, which will not be repeated here.
[0178] The present application also provides a management device. Figure 4The hardware structure diagram of the communication device shown in the figure, the management device includes: a processor, a display and a communication interface, and the processor is connected to the communication interface and the display respectively. The display is used to display a first interface; wherein the first interface contains selection entrances of candidate objects corresponding to monitoring objects of multiple granularities; the communication interface is used to receive a first operation for the selection entrance of the candidate object in the first interface; the processor is used to determine at least one target monitoring object in the candidate objects in response to the first operation; wherein the target monitoring object includes any one or more of the following: a target computing device in a computing cluster, a target program in a target computing device, and a target variable in a target program; the communication interface is also used to send a monitoring request to a computing device corresponding to at least one target monitoring object; the monitoring request includes an identifier of the target monitoring object and a target parameter to be monitored; wherein the target parameter is used to indicate the parameters of the target monitoring object related to the cloud native business; the communication interface is also used to receive target parameter information of the computing device corresponding to the target monitoring object in response to the monitoring request.
[0179] The management device also includes a memory, wherein the memory may include computer program code, and the processor is used to execute the computer program code stored in the memory, thereby implementing the method provided in the embodiment of the present application.
[0180] In the implementation process, each step in the method provided in this embodiment can be completed by an integrated logic circuit of hardware in a processor of the management device or by instructions in the form of software. The steps of the method disclosed in the embodiment of the present application can be directly embodied as being executed by a hardware processor, or by a combination of hardware and software modules in the processor.
[0181] An embodiment of the present application further provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed on a computer, the computer is enabled to execute any of the methods executed by the management device provided above.
[0182] For the explanation of the relevant contents and description of the beneficial effects of any of the above-mentioned computer-readable storage media, reference may be made to the above-mentioned corresponding embodiments, which will not be repeated here.
[0183] The embodiment of the present application also provides a chip. The chip integrates a control circuit and one or more ports for implementing the functions of the above-mentioned management device. Optionally, the functions supported by the chip can be referred to above and will not be repeated here. A person of ordinary skill in the art can understand that all or part of the steps of implementing the above-mentioned embodiment can be completed by instructing the relevant hardware through a program. The program can be stored in a computer-readable storage medium. The storage medium mentioned above can be a read-only memory, a random access memory, etc. The above-mentioned processing unit or processor can be a central processing unit, a general-purpose processor, an application specific integrated circuit (ASIC), a microprocessor (digital signal processor, DSP), a field programmable gate array (field programmable gatearray, FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof.
[0184] The embodiment of the present application also provides a computer program product including instructions, when the instructions are run on a computer, the computer executes any one of the methods in the above embodiments. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website site, a computer, a server, or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means to another website site, computer, server, or data center. The computer-readable storage medium may be any available medium that a computer can access or a data storage device such as a server or a data center that includes one or more servers that can be integrated with the medium. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., an SSD), etc.
[0185] It should be noted that the above-mentioned devices for storing computer instructions or computer programs provided in the embodiments of the present application, such as but not limited to the above-mentioned memories, computer-readable storage media and communication chips, etc., are all non-transitory.
[0186] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using a software program, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loading and executing computer program instructions on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. Computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, computer instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server, data center, etc. that contains one or more servers that can be integrated with a medium. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a semiconductor medium (eg, a solid state disk (SSD)).
[0187] Although the present application is described herein in conjunction with various embodiments, in the process of implementing the claimed application, those skilled in the art may understand and implement other changes to the disclosed embodiments by viewing the drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "one" or "an" does not exclude multiple situations. A single processor or other unit may implement several functions listed in the claims. Certain measures are recorded in different dependent claims, but this does not mean that these measures cannot be combined to produce good results.
[0188] Although the present application has been described in conjunction with specific features and embodiments thereof, it is obvious that various modifications and combinations may be made thereto without departing from the spirit and scope of the present application. Accordingly, this specification and the drawings are merely exemplary illustrations of the present application as defined by the appended claims, and are deemed to have covered any and all modifications, variations, combinations or equivalents within the scope of the present application. Obviously, those skilled in the art may make various modifications and variations to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A monitoring method, characterized in that: The monitoring method is applied to a management device, wherein the management device is used to monitor multiple computing devices in a computing cluster that deploys a cloud native service; The method comprises: Store the associations between monitoring objects of multiple granularities; Displaying a first interface; wherein the first interface includes selection entrances for candidate objects corresponding to monitoring objects of multiple granularities; Receiving a first operation on a selection entry of the candidate object in the first interface; In response to the first operation, at least one target monitoring object is determined from the candidate objects according to the association relationship in descending granularity; wherein the target monitoring object includes: a target computing device in the computing cluster, a target program in the target computing device, and a target variable in the target program; Sending a monitoring request to a computing device corresponding to the at least one target monitoring object; the monitoring request includes an identifier of the target monitoring object and a target parameter to be monitored; wherein the target parameter is used to indicate a parameter of the target monitoring object related to the cloud native business; the computing device is used to call a corresponding program in an observation program set according to the target parameter, obtain target parameter information, and feed it back to the management device; the observation program set includes one or more observation programs corresponding to the target parameter; Receive target parameter information of the computing device corresponding to the target monitoring object in response to the monitoring request.
2. The method according to claim 1, characterized in that The monitoring objects of the multiple granularities include: computing device programs and variables; wherein the programs include at least one of the following: pods, containers, and processes; the granularities are computing devices, pods, containers, processes, and variables from large to small.
3. The method according to claim 1 or 2, characterized in that: Before sending the monitoring request to the computing device corresponding to the at least one target monitoring object, the method further includes: Displaying a second interface, wherein the second interface includes operation options of operating parameters; Receiving a second operation on the operation option of the operating parameter in the second interface; In response to the second operation, the target parameter is determined among the operating parameters.
4. The method according to claim 3, characterized in that The second interface also includes a modification operation option, and the method further includes: receiving a third operation for a modification operation option of the operating parameter in the second interface; In response to the third operation, a modification request is sent to the target computing device, wherein the modification request includes the modified operating parameters of the target monitoring object for running the cloud native service.
5. The method according to claim 1, characterized in that The method further comprises: Converting the target parameter information into information recognizable by a visualization program, wherein the visualization program is used to convert the information recognizable by the visualization program into a visualization image; A third interface is displayed, wherein the third interface includes the visualized image.
6. The method according to claim 5, characterized in that The step of converting the target parameter information into information recognizable by a visualization program includes: Mapping the target parameter information into readable labels and values; Information recognizable by the visualization program is obtained according to the labels and the values.
7. The method according to claim 1, characterized in that The method further includes storing the target parameter information.
8. A management device, characterized in that: It includes a memory and a processor, wherein the memory is electrically connected to the processor; wherein the memory is used to store program instructions, and the processor is used to execute the program instructions, so that the management device executes the monitoring method as described in any one of claims 1-7.
9. A computing system, characterized in that: The computing system includes multiple computing devices and a management device as described in claim 8; wherein the multiple computing devices are used to run cloud native services; and the management device is used to monitor the operation information of the cloud native services on the multiple computing devices.
Citation Information
Patent Citations
Application monitoring method and device
CN112835766A