Virtual machine state monitoring method and device, electronic equipment and storage medium

By dividing the observed variables of the virtual machine into related and independent variables, different monitoring algorithms are used to determine the index value and merge the status to determine the status, the problem of virtual machine abnormal monitoring in cloud computing systems is solved, and accurate virtual machine status monitoring is achieved, avoiding losses.

CN120469768APending Publication Date: 2025-08-12AGRICULTURAL BANK OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510649167.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-20
Publication Date
2025-08-12

AI Technical Summary

Technical Problem

In cloud computing systems, as the scale expands, the frequency of abnormalities during the operation of virtual machines increases, resulting in problems such as downtime and data loss. It is difficult for the existing technology to effectively monitor the operating status of virtual machines, resulting in incalculable losses.

Method used

By dividing the current observation variables of the virtual machine into associated observation variables and independent observation variables, different monitoring algorithms are used to determine the monitoring indicator values and merge them into joint monitoring indicator values to judge the operating status of the virtual machine.

Benefits of technology

It realizes effective and accurate monitoring of the operating status of the virtual machine, timely identify abnormal conditions, and avoids more losses.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120469768A_ABST
    Figure CN120469768A_ABST
Patent Text Reader

Abstract

The invention discloses a virtual machine state monitoring method and device, electronic equipment and a storage medium, and the method comprises the steps: determining current observation variables of at least two virtual machines, and dividing the current observation variables into associated observation variables and independent observation variables, the associated observation variables and the independent observation variables are obtained through division according to historical observation variables; determining a monitoring index value matched with the associated observation variable, and determining a monitoring index value matched with the independent observation variable; and combining the monitoring index values into a joint monitoring index value, and judging the running state of each virtual machine according to the joint monitoring index value. According to the method, the running state of the virtual machine can be effectively and accurately monitored.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of data processing technology, and in particular to a virtual machine status monitoring method, device, electronic device and storage medium. Background Art

[0002] Cloud computing has the advantages of on-demand resource allocation (computing, storage, network, etc.), flexible and elastic expansion, high cost-effectiveness, and service orientation. It has gradually become the mainstream computing and service model.

[0003] In cloud computing systems, resources are allocated to virtual machines. However, as cloud computing systems continue to expand, the frequency of virtual machine anomalies is increasing. These anomalies can lead to downtime, data loss, and other incidents, causing incalculable losses and hindering the long-term development of cloud computing technology. Therefore, a reliable and effective solution for monitoring the operating status of virtual machines is urgently needed to promptly identify anomalies and prevent further losses. Summary of the Invention

[0004] The present invention provides a virtual machine status monitoring method, device, electronic device and storage medium to achieve effective and accurate monitoring of the virtual machine running status.

[0005] In a first aspect, an embodiment of the present invention provides a method for monitoring a virtual machine status, the method comprising:

[0006] Determine current observation variables of at least two virtual machines, and divide the current observation variables into associated observation variables and independent observation variables, where the associated observation variables and the independent observation variables are obtained by dividing according to historical observation variables;

[0007] Determining monitoring indicator values that match associated observed variables, and determining monitoring indicator values that match independent observed variables;

[0008] The monitoring indicator values are combined into a joint monitoring indicator value, and the operating status of each virtual machine is determined based on the joint monitoring indicator value.

[0009] In a second aspect, an embodiment of the present invention further provides a virtual machine status monitoring device, the device comprising:

[0010] a current observation variable division module, configured to determine current observation variables of at least two virtual machines and divide the current observation variables into associated observation variables and independent observation variables, wherein the associated observation variables and the independent observation variables are obtained by dividing the historical observation variables;

[0011] A monitoring indicator value determination module, configured to determine monitoring indicator values that match associated observed variables, and to determine monitoring indicator values that match independent observed variables;

[0012] The virtual machine operation status judgment module is used to combine the monitoring indicator values into a joint monitoring indicator value, and judge the operation status of each virtual machine according to the joint monitoring indicator value.

[0013] In a third aspect, an embodiment of the present invention further provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, a virtual machine status monitoring method as described in any one of the embodiments of the present invention is implemented.

[0014] In a fourth aspect, an embodiment of the present invention further provides a storage medium storing computer-executable instructions, wherein the computer-executable instructions, when executed by a computer processor, are used to execute the virtual machine status monitoring method as described in any one of the embodiments of the present invention.

[0015] The technical solution of an embodiment of the present invention obtains the current observed variables of each virtual machine, divides the current observed variables into associated observed variables and independent observed variables, determines monitoring indicator values for the associated observed variables, determines monitoring indicator values for the independent observed variables, combines the monitoring indicator values to obtain a joint monitoring indicator value, and then determines the operating status of each virtual machine based on the joint monitoring indicator value. This embodiment provides a reliable and effective monitoring solution for the operating status of virtual machines, which can achieve effective and accurate monitoring of the operating status of virtual machines, thereby promptly identifying abnormal conditions in virtual machines and avoiding further losses.

[0016] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present invention, nor is it intended to limit the scope of the present invention. Other features of the present invention will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0018] Figure 1 This is a flow chart of a virtual machine status monitoring method provided by Example 1 of the present invention;

[0019] Figure 2 This is a flow chart of a virtual machine status monitoring method provided by Embodiment 2 of the present invention;

[0020] Figure 3 Schematic diagram of compression and merging of an initial observation variable relationship matrix provided by the second embodiment of the present invention;

[0021] Figure 4 This is a structural diagram of a virtual machine status monitoring device provided by Embodiment 3 of the present invention;

[0022] Figure 5 This is a structural diagram of an electronic device provided in Example 4 of the present invention. DETAILED DESCRIPTION

[0023] In order to enable those skilled in the art to better understand the solutions of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the embodiments described are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of the present invention.

[0024] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices. In the embodiments of the present application, certain software, components, models and other existing solutions in the industry may be mentioned, and they should be considered as exemplary. Their purpose is merely to illustrate the feasibility of the implementation of the technical solution of the present application, but it does not mean that the applicant has or will necessarily use the solution.

[0025] The acquisition, transmission, storage, use, and processing of data in the technical solution of this application comply with the relevant provisions of national laws and regulations.

[0026] Example 1

[0027] Figure 1 A flowchart of a virtual machine status monitoring method is provided for embodiment 1 of the present invention. This embodiment is applicable to situations where the operating status of virtual machines in a cloud computing system is monitored. The method can be executed by a virtual machine status monitoring device, which can be implemented in the form of hardware and / or software. The virtual machine status monitoring device can be configured in a server and used in conjunction with at least two virtual machines.

[0028] like Figure 1As shown, the method includes:

[0029] S110: Determine current observation variables of at least two virtual machines, and divide the current observation variables into associated observation variables and independent observation variables.

[0030] Among them, a virtual machine refers to a virtual machine in a cloud computing system that has been allocated resources (computing, storage, network, etc.) and is executing corresponding tasks.

[0031] The currently observed variables include the values of the virtual machine under at least two observed variables at the current moment. Since observed variables are data that may change over time, the currently observed variables may also include the values of the virtual machine under at least two observed variables during a preset time period before and at the current moment. For example, in a cloud computing system, the observed variables of a virtual machine may include load, network send rate, network receive rate, and memory usage.

[0032] Correlated observed variables refer to at least two observed variables that are correlated with each other. Observed variables that are correlated with each other are classified as a group of correlated observed variables. Independent observed variables refer to observed variables that are not correlated with any other observed variables.

[0033] The associated observation variables and independent observation variables are obtained by dividing the historical observation variables. In an optional embodiment, the historical observation variables of at least two virtual machines can be determined, and the multi-dimensional correlation coefficient between each pair of historical observation variables can be calculated. The associated observation variables and independent observation variables are divided according to the correlation coefficient. The correlation coefficient includes at least two of the following: the Pearson correlation coefficient, the Spearman rank correlation coefficient, the Kendall rank correlation coefficient, the mutual information value, and the distance correlation coefficient.

[0034] When dividing the associated observation variables, it can be flexibly set according to the actual needs of the virtual machine operation status monitoring business. For example, it can be set so that for each two historical observation variables, at least one correlation coefficient is greater than the corresponding correlation coefficient threshold, that is, the two historical observation variables are used as associated observation variables; at least one correlation coefficient between other observation variables and at least one observation variable in the associated observation variables is greater than the corresponding correlation coefficient threshold, that is, the observation variable is added to the group of associated observation variables. Exemplarily, if there is at least one correlation coefficient between observation variable A and observation variable B that is greater than the correlation coefficient threshold, then observation variable A and observation variable B are regarded as a group of associated observation variables. If there is at least one correlation coefficient between observation variable C and observation variable A and / or observation variable B that is greater than the correlation coefficient threshold, then observation variable C is also included in the group of associated observation variables. It can also be set so that at least one correlation coefficient between other observation variables and at least two observation variables in the associated observation variables is greater than the corresponding correlation coefficient threshold, and then the observation variable is added to the group of associated observation variables.

[0035] In an optional embodiment, historical observation variables of at least two virtual machines may be determined, and a correlation coefficient of a certain dimension between each pair of historical observation variables may be calculated. Based on the correlation coefficient, dependent observation variables and independent observation variables may be classified. For example, a correlation coefficient suitable for nonlinear relationships, such as the Spearman rank correlation coefficient, mutual information value, and distance correlation coefficient, may be selected.

[0036] Specifically, for any pair of historical observation variables, if their correlation coefficient is greater than a corresponding correlation coefficient threshold, the two historical observation variables are considered as associated observation variables. For any other observation variable, if its correlation coefficient with at least one of the associated observation variables is greater than a corresponding correlation coefficient threshold, the observation variable is added to the set of associated observation variables. Alternatively, any other observation variable can be added to the set of associated observation variables if its correlation coefficient with at least two of the associated observation variables is greater than a corresponding correlation coefficient threshold.

[0037] In this embodiment, after the current observation variables of each virtual machine are determined, the current observation variables may be divided according to the associated observation variables and independent observation variables obtained based on the division of historical observation variables.

[0038] It can be seen immediately that for each current observation variable, if it is not divided and a global monitoring method is adopted, then during the global monitoring process, many irrelevant observation variables will reduce the fault monitoring performance and submerge some local fault information, resulting in inaccurate monitoring results and difficulty in detecting the abnormal operating status of the virtual machine.

[0039] Therefore, in this embodiment, the purpose of dividing the current observed variables into correlated observed variables and independent observed variables is, on the one hand, to facilitate the subsequent use of different monitoring methods for different types of observed variables, making the monitoring of observed variables more tailored to the observed variable type, thereby improving the accuracy of monitoring results. On the other hand, it can also divide the numerous observed variables into blocks, and perform independent monitoring tasks for each group of correlated observed variables and independent observed variables, thereby discovering more local fault information and improving the accuracy of variable monitoring results.

[0040] S120: Determine monitoring indicator values that match associated observation variables, and determine monitoring indicator values that match independent observation variables.

[0041] Monitoring indicators are metrics used to evaluate correlated or independent observation variables when monitoring them using different monitoring algorithms. Monitoring indicator values are numerically expressed as quantitative representations of correlated or independent observation variables. The type and number of monitoring indicator values may vary depending on the monitoring algorithm.

[0042] For example, if independent observation variables are monitored using the SVDD (Support Vector Data Description) algorithm, the monitoring index can be represented by D, which is used to quantify the degree of deviation between the observed variables and the "normal area" defined by the model.

[0043] In this embodiment, the correlated observed variables can be monitored using methods such as Kernel Principal Component Analysis (KPCA), Generalized Extreme Studentized Deviate (ESD), Interquartile Range (IQR), and deep learning-based methods (such as those based on autoencoders and generative adversarial networks). Independent observed variables can be monitored using methods such as SVDD algorithms, K-nearest neighbor methods, and machine learning-based methods (such as those based on isolation forests and support vector machines).

[0044] Furthermore, S120 may include: determining monitoring indicator values that match associated observation variables by a kernel principal component analysis method, and determining monitoring indicator values that match independent observation variables by a support vector description method.

[0045] In this embodiment, since the KPCA method can effectively handle the linear and nonlinear correlation between the observed variables, the KPCA method is used to monitor the associated observed variables to obtain the monitoring index value of the associated observed variables. In the KPCA method, the monitoring index value is obtained by T 2 and Q are expressed, T 2 Also known as Hotelling's statistic, it is used to measure the distribution of data points in the principal component space and can detect whether the associated observation variables are within the normal range of variation. Q is also known as the squared prediction error statistic, which is used to measure the difference between the data points in the original space and the data points reconstructed by the KPCA model. In other words, Q reflects the part of the associated observation variables that cannot be explained by the principal components, that is, the reconstruction error of the model, and can detect small changes or potential abnormal patterns in the associated observation variables. The KPCA method converts T 2 Combined with Q, the associated observed variables are monitored and analyzed from different perspectives to more comprehensively detect abnormal situations and changing trends in the associated observed variables.

[0046] In this embodiment, since the SVDD method has a good monitoring effect when processing the monitoring problem of independent variables, this embodiment adopts the SVDD method to monitor the independent observation variables.

[0047] In this embodiment, the currently observed variables are divided, and different monitoring methods are used for correlated and independent variables, making the monitoring method more reasonable and objective. Furthermore, performing separate monitoring tasks for each set of correlated and independent variables can uncover more local fault information and improve the accuracy of fault monitoring results.

[0048] S130: Combine the monitoring indicator values into a joint monitoring indicator value, and determine the operating status of each virtual machine according to the joint monitoring indicator value.

[0049] In this embodiment, especially when there are a large number of associated observation variables and independent observation variables, more monitoring indicator values will be generated. Merging the monitoring indicator values into a unified joint monitoring indicator value can quickly and intuitively reflect whether there are abnormalities in the operating status of each virtual machine in the cloud computing system.

[0050] Furthermore, the monitoring index values are combined into a joint monitoring index value, which may include:

[0051] S131, determining a normal state conditional probability value and an abnormal state conditional probability value of each monitoring indicator value, and determining a posterior probability value of each monitoring indicator value based on the normal state conditional probability value and the abnormal state conditional probability value of each monitoring indicator value;

[0052] S132. Determine a joint monitoring indicator value according to the normal state conditional probability value, the abnormal state conditional probability value, and the posterior probability value of each monitoring indicator value.

[0053] Specifically, each monitoring index value can be obtained by SI = [T b 2 ,Q b ,D] T Indicated by b=1,…,B, where B represents the number of groups of associated observation variables.

[0054] The normal state conditional probability value and abnormal state conditional probability value of each monitoring indicator value are determined by the following formula: Among them, p(SI i |N) represents the normal state conditional probability value, SI i Indicates the value of the i-th monitoring indicator, TH i Indicates the threshold corresponding to the i-th monitoring indicator value, p(SI i |F) represents the conditional probability value of abnormal state.

[0055] The posterior probability value of each monitoring indicator value can be calculated using the following formula: p(N) and p(F) represent the normal state probability and abnormal state probability respectively.

[0056] According to the normal state conditional probability value, abnormal state conditional probability value and posterior probability value of each monitoring indicator value, the joint monitoring indicator value is determined, which can be expressed by the following formula: Among them, BIC represents the joint monitoring index value.

[0057] In this embodiment, multiple monitoring indicator values are combined into a single joint monitoring indicator value, which can present fault information more quickly and intuitively.

[0058] In this embodiment, the operating status of each virtual machine is determined based on the joint monitoring indicator value. The joint monitoring indicator value can be compared with a preset joint monitoring indicator value threshold. If the joint monitoring indicator value is greater than or equal to the joint monitoring indicator value threshold, it is determined that an abnormal operating status of a virtual machine exists in the cloud computing system. Furthermore, the abnormal monitoring indicator value can be located, the abnormal observed variable can be located, and thus the abnormal virtual machine can be located.

[0059] The technical solution of an embodiment of the present invention obtains the current observed variables of each virtual machine, divides the current observed variables into associated observed variables and independent observed variables, determines monitoring indicator values for the associated observed variables, determines monitoring indicator values for the independent observed variables, combines the monitoring indicator values to obtain a joint monitoring indicator value, and then determines the operating status of each virtual machine based on the joint monitoring indicator value. This embodiment provides a reliable and effective monitoring solution for the operating status of virtual machines, which can achieve effective and accurate monitoring of the operating status of virtual machines, thereby promptly identifying abnormal conditions in virtual machines and avoiding further losses.

[0060] Example 2

[0061] Figure 2 This is a flow chart of a virtual machine status monitoring method provided in the second embodiment of the present invention. Based on the above embodiments, the embodiment of the present invention further specifies the division process of associated observation variables and independent observation variables.

[0062] like Figure 2 As shown, the method includes:

[0063] S210: Determine historical observation variables of at least two virtual machines.

[0064] Specifically, the data used for dividing the associated observation variables and the independent observation variables in this embodiment can be defined as the historical observation variable matrix X = [x1, ..., x m ]∈R n×m , where m represents the number of historical observation variables and n represents the number of virtual machines.

[0065] S220. Determine an initial observation variable relationship matrix based on the mutual information value between the two historical observation variables.

[0066] In this embodiment, the mutual information value is used as the correlation coefficient to distinguish between correlated and independent observed variables. The mutual information value can quantitatively describe the nonlinear relationship between the observed variables. If two observed variables are highly correlated, then the mutual information value between them is relatively large. Conversely, if two observed variables are approximately independent, then the mutual information value between them is relatively small. The method for determining the mutual information value between two observed variables can be used to calculate the mutual information value using conventional mutual information value calculation methods.

[0067] The elements of the initial observation variable relationship matrix are used to represent the correlation between the two observation variables. Specifically, the initial observation variable relationship matrix can be expressed by the following formula: Among them, h ij Used to represent the observed variable x i and x j The correlation between ij With hji same.

[0068] Furthermore, S220 may include:

[0069] S221. If it is determined that the mutual information value between the two historical observation variables is greater than or equal to a predetermined mutual information value threshold, then the values of the matrix elements corresponding to the two historical observation variables are set to 1;

[0070] S222. Otherwise, the values of the matrix elements corresponding to the two historical observation variables are set to 0.

[0071] In this embodiment, when determining the initial observation variable relationship matrix based on the mutual information value, when the mutual information value between two historical observation variables is greater than or equal to a predetermined mutual information value threshold, it can be determined that there is a correlation between the two historical observation variables, and the corresponding matrix element is set to 1.

[0072] In an optional embodiment, the mutual information value threshold may be a fixed value, or different mutual information value thresholds may be determined according to different combinations of observed variables.

[0073] Furthermore, the process of determining the mutual information value threshold may include:

[0074] S1. Determine a set of random variables, where the set of random variables includes two random variables that match the historical observation variables, and both random variables obey a normal distribution;

[0075] S2. For each group of random variables, calculate the mutual information value between two random variables;

[0076] S3. Perform probability density estimation on each mutual information value to obtain a mutual information value threshold between two historical observation variables.

[0077] This embodiment adopts a probability density estimation method to determine the corresponding mutual information value thresholds for different combinations of observed variables.

[0078] For the combination of two historical observation variables, two random variables that obey normal distribution are generated as a set of random variables. The random variables can be obtained by z1, z2∈R n Calculate the mutual information between two random variables z1 and z2. Repeat the above steps for multiple groups of random variables to obtain multiple mutual information values. Perform probability density estimation on each mutual information value to obtain the mutual information threshold between the two historically observed variables.

[0079] Specifically, the probability density of each mutual information value can be estimated by a kernel density estimation (KDE) method, and the mutual information value with a confidence level of 97.5% can be used as a mutual information value threshold.

[0080] Furthermore, considering that there is a certain weak correlation between the observed variables, a multiplication factor can be added to the mutual information value threshold to adjust the mutual information value.

[0081] S230 . Compress the initial observed variable relationship matrix according to the row elements in the initial observed variable relationship matrix to obtain the target observed variable relationship matrix.

[0082] Among them, the row elements in the initial observation variable relationship matrix are represented by h1,h2,…,h m To express, h i Represents the observed variable x i and the correlation between the observed variables.

[0083] In this embodiment, the initial observation variable relationship matrix is used to preliminarily represent the correlation between any two observation variables. In order to divide the associated observation variables into independent observation variables, the initial observation variable relationship matrix is compressed based on the row elements of the initial observation variable relationship matrix to obtain the compressed target observation variable relationship matrix, so that the associated observation variables and independent observation variables can be divided based on the target observation variable relationship matrix.

[0084] Furthermore, S230 may include: for each row element in the initial observation variable relationship matrix, if there is at least one element in the same column with the same value of 1 in two rows of elements, the two rows of elements are compressed; wherein, if the values of the elements in the same column of the two rows of elements are not 0 at the same time, the value of the column element of the row of elements obtained after compression is 1, otherwise the value of the column element of the row of elements obtained after compression is 0.

[0085] Specifically, for two rows of elements h i and h j , there is at least one element in the same column whose value is 1, such as h i2 With h j2 are all 1, then x i and x j are all correlated with x2 and can be identified as x i and x j It is also relevant, so for h i and h j Perform compression and merging.

[0086] Figure 3 A schematic diagram of the compression and merging of the initial observation variable relationship matrix is provided, such as Figure 3 As shown, the two rows of elements h i and h j are [1,1,0,0,1,…,1] and [1,1,1,0,0,…,0] respectively. Since x i and x j It has been identified as relevant only if the elements h in the original two rows i and h j When the values of the elements in the same column are all 0, the value of the position of the merged row of elements is set to 0. Therefore, Figure 3 The elements of a row after merging are [1,1,1,0,1,…,1].

[0087] In this embodiment, the target observation variable relationship matrix after compression and merging can be expressed by the following formula: ’ =[w1,w2,…,w s ] T , where s represents the number of rows in the matrix after compression and merging. Target observation variable relationship matrix R ’ The scalar product of any two row vectors in is 0, that is, w i T w j =0.

[0088] S240 , determining whether the target row in the target observation variable relationship matrix is obtained after compression; if so, executing S250 ; otherwise, executing S260 .

[0089] In this embodiment, if the target behavior is obtained after compression, its modulus is greater than 1, and the observation variables corresponding to the elements with a value of 1 in the target row are taken as a group of associated observation variables.

[0090] S250. Use each observation variable matched with each row before compression corresponding to the target row as an associated observation variable.

[0091] by Figure 3 For example, the elements of a row after merging are [1,1,1,0,1,…,1], and x1, x2, x3, x5,…, x i 、x j and x m as the associated observed variable.

[0092] S260. The observed variables that match the target row are used as independent observed variables.

[0093] In this embodiment, if the target behavior is not compressed, its modulus is equal to 1, and the observation variables corresponding to the elements whose values are 1 are used as independent observation variables.

[0094] After the division performed using the technical solution of this embodiment, independent observation variables are not correlated with any other observation variables, the observation variables within the same group of associated observation variables are correlated, and the observation variables between different groups of associated observation variables are not correlated. This embodiment's observation variable division method is more objective and reasonable, providing an accurate and clear basis for subsequent observation variable segmentation and decentralized monitoring, thereby improving monitoring performance. It is particularly suitable for large-scale, distributed cloud computing systems.

[0095] S270: Determine current observation variables of at least two virtual machines, and divide the current observation variables into associated observation variables and independent observation variables.

[0096] S280. Determine the monitoring indicator values that match the associated observation variables by using a kernel principal component analysis method, and determine the monitoring indicator values that match the independent observation variables by using a support vector description method.

[0097] In this embodiment, a kernel principal component analysis model is established for each group of associated observation variables. The number of kernel principal component analysis models is the same as the number of groups of associated observation variables, and each group of associated observation variables is monitored separately.

[0098] For all independent observation variables, a support vector description model is established to determine the monitoring index value of each independent observation variable by associating the observation variables.

[0099] S290. Determine the normal state conditional probability value and the abnormal state conditional probability value of each monitoring indicator value, and determine the posterior probability value of each monitoring indicator value based on the normal state conditional probability value and the abnormal state conditional probability value of each monitoring indicator value.

[0100] S2100: Determine a joint monitoring indicator value based on the normal state conditional probability value, the abnormal state conditional probability value, and the posterior probability value of each monitoring indicator value.

[0101] S2110. Determine the operating status of each virtual machine based on the joint monitoring indicator value.

[0102] The process of combining the monitoring indicator values into a joint monitoring indicator value and determining the running status of the virtual machine based on the joint monitoring indicator value has been described in the above embodiment and will not be repeated in this embodiment.

[0103] The technical solution of this embodiment, by rationally dividing the current observed variables into correlated observed variables and independent observed variables and selecting appropriate monitoring methods for each, is more conducive to detecting abnormal conditions during virtual machine operation and reducing the probability of virtual machine failure. This reasonable segmentation of observed variables can improve monitoring performance, especially for large-scale distributed cloud computing systems, and can more quickly and intuitively reflect the operating status of virtual machines, achieving excellent monitoring results.

[0104] Example 3

[0105] Figure 4 This is a schematic diagram of the structure of a virtual machine status monitoring device provided by the third embodiment of the present invention. Figure 4 As shown, the device includes:

[0106] A current observation variable division module 310 is configured to determine current observation variables of at least two virtual machines and divide the current observation variables into associated observation variables and independent observation variables, wherein the associated observation variables and the independent observation variables are obtained by dividing the historical observation variables;

[0107] A monitoring indicator value determination module 320 is configured to determine monitoring indicator values that match associated observed variables and to determine monitoring indicator values that match independent observed variables;

[0108] The virtual machine operation state judgment module 330 is configured to combine the monitoring indicator values into a joint monitoring indicator value, and judge the operation state of each virtual machine according to the joint monitoring indicator value.

[0109] The technical solution of an embodiment of the present invention obtains the current observed variables of each virtual machine, divides the current observed variables into associated observed variables and independent observed variables, determines monitoring indicator values for the associated observed variables, determines monitoring indicator values for the independent observed variables, combines the monitoring indicator values to obtain a joint monitoring indicator value, and then determines the operating status of each virtual machine based on the joint monitoring indicator value. This embodiment provides a reliable and effective monitoring solution for the operating status of virtual machines, which can achieve effective and accurate monitoring of the operating status of virtual machines, thereby promptly identifying abnormal conditions in virtual machines and avoiding further losses.

[0110] Based on the above embodiment, optionally, the device further includes:

[0111] A historical observation variable determination module, configured to determine historical observation variables of at least two virtual machines;

[0112] An initial observation variable relationship matrix determination module is used to determine the initial observation variable relationship matrix based on the mutual information value between two historical observation variables;

[0113] The target observation variable relationship matrix determination module is used to compress the initial observation variable relationship matrix according to the row elements in the initial observation variable relationship matrix to obtain the target observation variable relationship matrix;

[0114] an associated observation variable determination module, configured to, if a target row in the target observation variable relationship matrix is obtained after compression, use the observation variables matched with the rows before compression corresponding to the target row as associated observation variables;

[0115] The independent observation variable determination module is used to use the observation variable matching the target row as the independent observation variable if the target row in the target observation variable relationship matrix is not obtained after compression.

[0116] Based on the above embodiment, optionally, the initial observation variable relationship matrix determination module includes:

[0117] a first matrix element value setting unit, configured to set the values of the matrix elements corresponding to the two historical observation variables to 1 if it is determined that the mutual information value between the two historical observation variables is greater than or equal to a predetermined mutual information value threshold;

[0118] The second matrix element value setting unit is used to set the values of the matrix elements corresponding to the two historical observation variables to 0 if it is determined that the mutual information value between the two historical observation variables is less than a predetermined mutual information value threshold.

[0119] Based on the above embodiment, optionally, the device further includes:

[0120] A random variable determination module is used to determine a set of random variables, wherein the set of random variables includes two random variables that match the historical observation variables, and both random variables obey a normal distribution;

[0121] A mutual information value determination module is used to calculate the mutual information value between two random variables for each group of random variables;

[0122] The mutual information value threshold determination module is used to perform probability density estimation on each mutual information value to obtain the mutual information value threshold between two historical observation variables.

[0123] Based on the above embodiment, optionally, a target observation variable relationship matrix determination module includes:

[0124] The row element compression unit is used to compress the row elements in the initial observation variable relationship matrix if there is at least one element in the same column with the value of 1 in two rows of elements.

[0125] Among them, if the values of the elements in the same column of the two rows of elements are not 0 at the same time, the value of the elements in the column of the row of elements obtained after compression is 1, otherwise the value of the elements in the column of the row of elements obtained after compression is 0.

[0126] Based on the above embodiment, optionally, the monitoring indicator value determination module 320 includes:

[0127] The monitoring indicator value determination unit is used to determine the monitoring indicator value matching the associated observation variable through the kernel principal component analysis method, and to determine the monitoring indicator value matching the independent observation variable through the support vector description method.

[0128] Based on the above embodiment, optionally, the virtual machine operation status determination module 330 includes:

[0129] a posterior probability value determination unit, configured to determine a normal state conditional probability value and an abnormal state probability value of each monitoring indicator value, and determine a posterior probability value of each monitoring indicator value based on the normal state conditional probability value and the abnormal state probability value of each monitoring indicator value;

[0130] The joint monitoring indicator value determination unit is used to determine the joint monitoring indicator value according to the normal state conditional probability value, abnormal state conditional probability value and posterior probability value of each monitoring indicator value.

[0131] The virtual machine status monitoring device provided in the embodiment of the present invention can execute the virtual machine status monitoring method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0132] Example 4

[0133] Figure 5 A schematic diagram of the structure of an electronic device 10 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or claimed herein.

[0134] like Figure 5As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., which is communicatively connected to the at least one processor 11. The memory stores a computer program that can be executed by the at least one processor. The processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 into the random access memory (RAM) 13. Various programs and data required for the operation of the electronic device 10 can also be stored in the RAM 13. The processor 11, ROM 12, and RAM 13 are connected to each other via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.

[0135] Multiple components in the electronic device 10 are connected to the I / O interface 15, including an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a magnetic disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0136] The processor 11 can be any general-purpose and / or specialized processing component with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various processors that run machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 11 executes the various methods and processes described above, such as the virtual machine status monitoring method.

[0137] In some embodiments, the virtual machine status monitoring method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the virtual machine status monitoring method described above may be performed. Alternatively, in other embodiments, processor 11 may be configured to perform the virtual machine status monitoring method in any other appropriate manner (e.g., by means of firmware).

[0138] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0139] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the computer program is executed by the processor, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The computer program may be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0140] In the context of the present invention, computer-readable storage media can be tangible media that can contain or store a computer program for use with an instruction execution system, device or equipment or used in combination with an instruction execution system, device or equipment. Computer-readable storage media can include but are not limited to electronic, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, computer-readable storage media can be machine-readable signal media. More specific examples of machine-readable storage media can include electrical connections based on one or more lines, portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), optical fibers, portable compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0141] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0142] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0143] A computing system may include clients and servers. The clients and servers are typically remote from each other and typically interact via a communication network. This client-server relationship arises through computer programs running on the respective computers, creating a client-server relationship. The server may be a cloud server, also known as a cloud computing server or cloud host. This server is a hosting product within the cloud computing service ecosystem that addresses the management difficulties and limited scalability of traditional physical hosting and VPS services.

[0144] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in the present invention can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution of the present invention can be achieved. This is not limited herein.

[0145] The above specific embodiments do not limit the scope of protection of the present invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention are intended to be included within the scope of protection of the present invention.

Claims

1. A virtual machine status monitoring method, characterized in that: include: Determine current observation variables of at least two virtual machines, and divide the current observation variables into associated observation variables and independent observation variables, where the associated observation variables and the independent observation variables are obtained by dividing according to historical observation variables; Determining monitoring indicator values that match associated observed variables, and determining monitoring indicator values that match independent observed variables; The monitoring indicator values are combined into a joint monitoring indicator value, and the operating status of each virtual machine is determined based on the joint monitoring indicator value.

2. The method according to claim 1, characterized in that The process of dividing the associated observation variables and the independent observation variables includes: Determine historical observation variables of at least two virtual machines; According to the mutual information value between two historical observation variables, the initial observation variable relationship matrix is determined; According to the row elements in the initial observation variable relationship matrix, the initial observation variable relationship matrix is compressed to obtain the target observation variable relationship matrix; If the target row in the target observation variable relationship matrix is obtained after compression, then the observation variables that match the rows before compression corresponding to the target row are used as associated observation variables; Otherwise, the observations matched to the target rows are treated as independent observations.

3. The method according to claim 2, characterized in that According to the mutual information value between two historical observation variables, the initial observation variable relationship matrix is determined, including: If it is determined that the mutual information value between the two historical observation variables is greater than or equal to a predetermined mutual information value threshold, the values of the matrix elements corresponding to the two historical observation variables are set to 1; Otherwise, the values of the matrix elements corresponding to the two historical observation variables are set to 0.

4. The method according to claim 3, characterized in that The process of determining the mutual information value threshold includes: Determine a set of random variables, wherein the set of random variables includes two random variables that match the historical observation variables, and both random variables obey the normal distribution; For each group of random variables, calculate the mutual information value between two random variables; The probability density of each mutual information value is estimated to obtain the mutual information value threshold between two historical observation variables.

5. The method according to claim 2, characterized in that According to the row elements in the initial observation variable relationship matrix, the initial observation variable relationship matrix is compressed to obtain the target observation variable relationship matrix, including: For each row element in the initial observation variable relationship matrix, if there is at least one element in the same column with the same value of 1 in two rows, the two rows of elements are compressed; Among them, if the values of the elements in the same column of the two rows of elements are not 0 at the same time, the value of the elements in the column of the row of elements obtained after compression is 1, otherwise the value of the elements in the column of the row of elements obtained after compression is 0.

6. The method according to claim 1, characterized in that Determining monitoring indicator values that match associated observed variables, and determining monitoring indicator values that match independent observed variables, including: The monitoring indicator values that match the associated observation variables are determined by the kernel principal component analysis method, and the monitoring indicator values that match the independent observation variables are determined by the support vector description method.

7. The method according to claim 1, characterized in that Combine the various monitoring indicator values into joint monitoring indicator values, including: Determine the normal state conditional probability value and the abnormal state conditional probability value of each monitoring indicator value, and determine the posterior probability value of each monitoring indicator value based on the normal state conditional probability value and the abnormal state conditional probability value of each monitoring indicator value; The joint monitoring indicator value is determined based on the normal state conditional probability value, abnormal state conditional probability value and posterior probability value of each monitoring indicator value.

8. A virtual machine status monitoring device, characterized in that: include: a current observation variable division module, configured to determine current observation variables of at least two virtual machines and divide the current observation variables into associated observation variables and independent observation variables, wherein the associated observation variables and the independent observation variables are obtained by dividing the historical observation variables; A monitoring indicator value determination module, configured to determine monitoring indicator values that match associated observed variables, and to determine monitoring indicator values that match independent observed variables; The virtual machine operation status judgment module is used to combine the monitoring indicator values into a joint monitoring indicator value, and judge the operation status of each virtual machine according to the joint monitoring indicator value.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the virtual machine status monitoring method according to any one of claims 1 to 7 is implemented.

10. A storage medium storing computer executable instructions, characterized in that: When the computer executable instructions are executed by a computer processor, they are used to execute the virtual machine status monitoring method according to any one of claims 1 to 7.