Cluster management method and computing device
By using algorithmic models combined with runtime data to determine the target processing flow in the business cluster management of the Kubernetes platform, the accuracy and reliability issues of resource change event handling are solved, enabling flexible adaptation and efficient processing in various operation and maintenance scenarios.
Patent Information
- Application Number
- CN202510902640.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-30
- Publication Date
- 2025-11-14
AI Technical Summary
In existing technologies, the accuracy and reliability of resource change event handling processes in the operation and maintenance management of business clusters based on the Kubernetes platform are low, and they are greatly affected by human factors, making it difficult to adapt to various operation and maintenance scenarios.
By acquiring resource change events of the business cluster, we can determine the algorithm model and multiple processing flows. Combined with runtime data, the algorithm model can be used to accurately determine the target processing flow among multiple processing flows, avoiding the influence of single-dimensional manual processing and human factors.
It improves the accuracy and reliability of resource change event handling, adapts to various operation and maintenance scenarios, reduces manual intervention, and improves processing efficiency and reliability.
Smart Images

Figure CN120950113A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computing device technology, and in particular to a cluster management method and a computing device. Background Technology
[0002] Kubernetes (K8s) is an open-source container orchestration platform that enables the automated deployment, scaling, and management of containers. K8s allows you to build and run containerized applications by defining resource objects, providing features such as service discovery, load balancing, and autoscaling, which simplifies application deployment and maintenance.
[0003] In related technologies, enterprises can deploy their own business clusters based on the Kubernetes platform and need to perform operation and maintenance management on these clusters. For example, enterprise employees can manually determine the corresponding handling process for resource change events (such as cluster upgrade events) in the operation and maintenance scenario.
[0004] However, this process is typically used to handle resource change events in a single operation and maintenance scenario. When the operation and maintenance scenario changes, enterprise employees need to redetermine the process for handling resource change events. Furthermore, the process for manually determining the process for handling resource change events is subject to single-dimensionality and human factors, resulting in low accuracy of the determined process and low reliability when handling resource change events based on this process. Summary of the Invention
[0005] This application provides a cluster management method and computing device that can improve the accuracy of the target processing flow for determined resource change events, thereby making the processing of resource change events based on the target processing flow more reliable.
[0006] In a first aspect, embodiments of this application provide a cluster management method applied in a computing device, the method comprising:
[0007] Obtain resource change events for the business cluster;
[0008] Determine the algorithm model and multiple processing flows corresponding to resource change events;
[0009] Obtain operational data of the business cluster. The operational data includes cluster data and / or resource data. Cluster data is the data generated by the business cluster in the computing device on which the business cluster runs. Resource data is the data generated by the business cluster in the management platform. The management platform is used to manage the business cluster.
[0010] Based on runtime data and multiple processing flows, the input data for the algorithm model is determined;
[0011] Based on the algorithm model and input data, the target processing flow is determined among multiple processing flows;
[0012] Resource change events are handled through a target processing flow.
[0013] In the above technical solution, the computing device can acquire resource change events of the business cluster under various operation and maintenance scenarios, determine the algorithm model corresponding to the resource change event, and combine multiple processing flows corresponding to the resource change event with the operating data of the business cluster under various operation and maintenance scenarios. The algorithm model can accurately determine the most suitable target processing flow for the resource change event in each operation and maintenance scenario among multiple processing flows, making the method flexibly applicable to the processing of resource change events in various operation and maintenance scenarios. By combining the cluster data and / or resource data of the business cluster and multiple processing flows corresponding to the resource change event to determine the input data of the algorithm model, the single-dimensional and human factor problems existing in the manual determination of the processing flow corresponding to the resource change event by enterprise employees can be avoided. This helps to improve the accuracy of the algorithm model in determining the target processing flow among multiple processing flows, thereby improving the reliability of processing the resource change event based on the target processing flow.
[0014] In one possible implementation, the algorithm model includes:
[0015] Multiple calculation rules;
[0016] Priority order among multiple calculation rules.
[0017] In the above technical solution, the following parameters can be pre-configured in the algorithm model: multiple calculation rules and the priority order among the multiple calculation rules, so as to quickly and accurately determine the input data of the resource change event in the algorithm model based on these parameters and the running data of the business cluster.
[0018] In one possible implementation, the input data for the algorithm model is determined based on runtime data and multiple processing flows, including:
[0019] Based on the operational data, identify at least one influencing factor for each of the multiple calculation rules.
[0020] The input data is determined based on at least one influencing factor of each calculation rule, the priority order among multiple calculation rules, and multiple processing flows.
[0021] In the above technical solution, the operational data includes cluster data of the infrastructure layer in the computing device on which the business cluster runs and / or resource data of the business cluster in the control plane layer of the management platform. The input data of the algorithm model is determined based on the operational data, so that the algorithm model is more accurate in determining the target processing flow based on the input data and is more in line with the actual business needs of the business cluster (e.g., lower resource consumption or shorter execution time).
[0022] In one possible implementation, the input data is determined based on at least one influencing factor of each calculation rule, the priority order among the multiple calculation rules, and multiple processing flows, including:
[0023] Based on the priority order among multiple calculation rules, a first calculation matrix corresponding to multiple calculation rules is determined. The first calculation matrix is used to determine the weights corresponding to each calculation rule.
[0024] For any given calculation rule, a second calculation matrix is determined based on the degree of influence of at least one influencing factor on the calculation rule. The second calculation matrix is used to determine the weights of each influencing factor in the calculation rule.
[0025] Based on at least one influencing factor of multiple calculation rules and multiple processing flows, determine the third calculation matrix corresponding to each influencing factor in each calculation rule. The third calculation matrix is used to determine the influence weight of the influencing factor on multiple processing flows.
[0026] The input data includes a first calculation matrix, a second calculation matrix corresponding to each calculation rule, and a third calculation matrix corresponding to each influencing factor in each calculation rule.
[0027] In the above technical solution, by determining the first calculation matrix, the second calculation matrix corresponding to each calculation rule, and the third calculation matrix corresponding to each influencing factor in each calculation rule as the input data of the algorithm model, it is beneficial to improve the accuracy of the algorithm model in calculating the target processing flow based on the input data.
[0028] In one possible implementation, the target processing flow is determined among multiple processing flows based on the algorithm model and input data:
[0029] Based on the algorithm model and input data, the recommended value for each processing step in multiple processing flows is determined.
[0030] The target processing flow is determined based on the recommended values corresponding to multiple processing flows.
[0031] In the above technical solution, the algorithm model can determine the recommended values of multiple processing flows based on the input data, and quickly determine the target processing flow based on the recommended values of each processing flow, which helps to improve the efficiency of determining the target processing flow.
[0032] In one possible implementation, based on the algorithm model and input data, recommended values are determined for each processing step in multiple processing flows, including:
[0033] Based on the first calculation matrix corresponding to multiple calculation rules in the input data, determine the weight corresponding to each calculation rule, and based on the first calculation matrix and the weight corresponding to each calculation rule, determine the first verification result of the first calculation matrix;
[0034] Based on the second calculation matrix corresponding to each calculation rule in the input data, determine the weights of each influencing factor in each calculation rule, and based on the second calculation matrix corresponding to each calculation rule and the weights of each influencing factor in each calculation rule, determine the second verification result of the second calculation matrix corresponding to each calculation rule.
[0035] Based on the third calculation matrix corresponding to each influencing factor in each calculation rule in the input data, determine the influence weight of each influencing factor in each calculation rule on multiple processing flows of the algorithm model. Based on the third calculation matrix corresponding to each influencing factor in each calculation rule and the influence weight of each influencing factor in each calculation rule on multiple processing flows, determine the third verification result of the third calculation matrix corresponding to each influencing factor in each calculation rule.
[0036] If the first verification result of the first calculation matrix, the second verification result of each second calculation matrix, and the third verification result of each third calculation matrix are verified to be valid, the recommended value for each processing flow in the multiple processing flows is determined based on the weight corresponding to each calculation rule, the weight corresponding to each influencing factor in each calculation rule, and the influence weight of each influencing factor in each calculation rule on the multiple processing flows.
[0037] In the above technical solution, the first calculation matrix, each of the second calculation matrices, and each of the third calculation matrices can be verified. After the verification is passed, the recommended value for each processing flow in the multiple processing flows is determined according to the weights corresponding to each calculation rule, the weights corresponding to each influencing factor in each calculation rule, and the influence weights of each influencing factor in each calculation rule on the multiple processing flows. This is beneficial to improving the accuracy of the algorithm model in determining the target processing flow.
[0038] In one possible implementation, the multiple calculation rules include at least one of the following:
[0039] The first calculation rule is used to determine the feasibility of the processing procedure;
[0040] The second calculation rule is used to determine the degree of resource consumption or resource saving in the processing flow;
[0041] The third calculation rule is used to determine the time consumption or time saving of the processing flow.
[0042] In the above technical solution, setting a first calculation rule determines the feasibility of the final selected processing flow, thus avoiding processing flow failure. Setting a second calculation rule determines whether the resources of the business cluster meet the execution requirements of the final selected processing flow, thus avoiding processing flow failure due to insufficient resources. Setting a third calculation rule determines the execution duration of the processing flow, so as to determine the appropriate execution method based on the execution duration. In summary, by setting multiple calculation rules, the target processing flow selected by the algorithm model to adapt to resource change events has higher execution reliability, which is beneficial to improving the success rate of handling resource change events based on the target processing flow.
[0043] In one possible implementation, the algorithm model for determining the resource change event includes:
[0044] Determine the type of resource change corresponding to the resource change event;
[0045] Based on the mapping relationship and the resource change type corresponding to the resource change event, the algorithm model corresponding to the resource change event is determined. The mapping relationship includes multiple resource change types and the algorithm model corresponding to each resource change type.
[0046] In the above technical solution, the mapping relationship can be used to select the appropriate algorithm model for each resource change event, which is beneficial to improve the determination efficiency of the algorithm model and the accuracy of the algorithm model in determining each resource change event.
[0047] In one possible implementation, resource change events are processed through a target processing flow, including:
[0048] Identify the executor corresponding to the target processing flow;
[0049] The executor is invoked to execute the target processing flow in order to handle resource change events.
[0050] In the above technical solution, after the target processing flow is determined, the executor is automatically invoked to execute the target processing flow to process resource change events. No manual operation is required, avoiding the error rate of manual operation, which helps to save manpower and time costs and improve the processing efficiency of resource change events in the business cluster.
[0051] Secondly, embodiments of this application provide a cluster management device applied in a computing device, which may include:
[0052] The transceiver module is used to acquire resource change events of the business cluster;
[0053] The processing module is used to determine the algorithm model corresponding to the resource change event and the multiple processing flows corresponding to the resource change event;
[0054] The transceiver module is also used to acquire the operational data of the business cluster. The operational data includes cluster data and / or resource data. The cluster data is the data generated by the business cluster in the computing device on which the business cluster runs, and the resource data is the data generated by the business cluster in the management platform. The management platform is used to manage the business cluster.
[0055] The processing module is also used to determine the input data of the algorithm model based on the running data and multiple processing flows;
[0056] The processing module is also used to determine the target processing flow among multiple processing flows based on the algorithm model and input data;
[0057] The processing module is also used to process resource change events through the target processing flow.
[0058] The cluster management device provided in this application embodiment can execute the technical solution as described in any of the first aspects, and its beneficial effects are similar, so they will not be described again here.
[0059] In one possible implementation, the algorithm model includes:
[0060] Multiple calculation rules;
[0061] Priority order among multiple calculation rules.
[0062] In one possible implementation, the processing module is specifically used for:
[0063] Based on the operational data, identify at least one influencing factor for each of the multiple calculation rules.
[0064] The input data is determined based on at least one influencing factor of each calculation rule, the priority order among multiple calculation rules, and multiple processing flows.
[0065] In one possible implementation, the processing module is further configured to:
[0066] Based on the priority order among multiple calculation rules, a first calculation matrix corresponding to multiple calculation rules is determined. The first calculation matrix is used to determine the weights corresponding to each calculation rule.
[0067] For any given calculation rule, a second calculation matrix is determined based on the degree of influence of at least one influencing factor on the calculation rule. The second calculation matrix is used to determine the weights of each influencing factor in the calculation rule.
[0068] Based on at least one influencing factor of multiple calculation rules and multiple processing flows, determine the third calculation matrix corresponding to each influencing factor in each calculation rule. The third calculation matrix is used to determine the influence weight of the influencing factor on multiple processing flows.
[0069] The input data includes a first calculation matrix, a second calculation matrix corresponding to each calculation rule, and a third calculation matrix corresponding to each influencing factor in each calculation rule.
[0070] In one possible implementation, the processing module is further configured to:
[0071] Based on the algorithm model and input data, the recommended value for each processing step in multiple processing flows is determined.
[0072] The target processing flow is determined based on the recommended values corresponding to multiple processing flows.
[0073] In one possible implementation, the processing module is further configured to:
[0074] Based on the first calculation matrix corresponding to multiple calculation rules in the input data, determine the weight corresponding to each calculation rule, and based on the first calculation matrix and the weight corresponding to each calculation rule, determine the first verification result of the first calculation matrix;
[0075] Based on the second calculation matrix corresponding to each calculation rule in the input data, determine the weights of each influencing factor in each calculation rule, and based on the second calculation matrix corresponding to each calculation rule and the weights of each influencing factor in each calculation rule, determine the second verification result of the second calculation matrix corresponding to each calculation rule.
[0076] Based on the third calculation matrix corresponding to each influencing factor in each calculation rule in the input data, determine the influence weight of each influencing factor in each calculation rule on multiple processing flows of the algorithm model. Based on the third calculation matrix corresponding to each influencing factor in each calculation rule and the influence weight of each influencing factor in each calculation rule on multiple processing flows, determine the third verification result of the third calculation matrix corresponding to each influencing factor in each calculation rule.
[0077] If the first verification result of the first calculation matrix, the second verification result of each second calculation matrix, and the third verification result of each third calculation matrix are verified to be valid, the recommended value for each processing flow in the multiple processing flows is determined based on the weight corresponding to each calculation rule, the weight corresponding to each influencing factor in each calculation rule, and the influence weight of each influencing factor in each calculation rule on the multiple processing flows.
[0078] In one possible implementation, the multiple calculation rules include at least one of the following:
[0079] The first calculation rule is used to determine the feasibility of the processing procedure;
[0080] The second calculation rule is used to determine the degree of resource consumption or resource saving in the processing flow;
[0081] The third calculation rule is used to determine the time consumption or time saving of the processing flow.
[0082] In one possible implementation, the processing module is further configured to:
[0083] Determine the type of resource change corresponding to the resource change event;
[0084] Based on the mapping relationship and the resource change type corresponding to the resource change event, the algorithm model corresponding to the resource change event is determined. The mapping relationship includes multiple resource change types and the algorithm model corresponding to each resource change type.
[0085] In one possible implementation, the processing module is further configured to:
[0086] Identify the executor corresponding to the target processing flow;
[0087] The executor is invoked to execute the target processing flow in order to handle resource change events.
[0088] Thirdly, embodiments of this application provide a computing device, including: a processor and a memory; the processor and the memory are coupled;
[0089] Memory is used to store program instructions;
[0090] The processor is configured to execute program instructions to perform the method as described in any one of the first aspects.
[0091] The computing device provided in the embodiments of this application can execute the technical solutions described in any of the first aspects, and its beneficial effects are similar, so they will not be described again here.
[0092] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions that, when executed by a computer, implement the method as described in any one of the first aspects.
[0093] The computer-readable storage medium provided in the embodiments of this application can perform the technical solutions as described in any of the first aspects, and its beneficial effects are similar, so they will not be repeated here.
[0094] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the method described in any of the first aspects.
[0095] The computer program product provided in the embodiments of this application can execute the technical solutions described in any of the first aspects, and its beneficial effects are similar, so they will not be described again here.
[0096] The cluster management method and computing device provided in this application embodiment can acquire resource change events of the business cluster under various operation and maintenance scenarios, determine the algorithm model corresponding to the resource change event, and combine multiple processing flows corresponding to the resource change event with the running data of the business cluster under various operation and maintenance scenarios. The algorithm model can accurately determine the most suitable target processing flow for the resource change event in each operation and maintenance scenario among multiple processing flows, making the method flexibly applicable to the processing of resource change events under various operation and maintenance scenarios. By combining the cluster data and / or resource data of the business cluster and multiple processing flows corresponding to the resource change event to determine the input data of the algorithm model, the single-dimensional and human factor problems existing in the manual determination of the processing flow corresponding to the resource change event by enterprise employees can be avoided. This is conducive to improving the accuracy of the algorithm model in determining the target processing flow among multiple processing flows, thereby improving the reliability of processing the resource change event based on the target processing flow. Attached Figure Description
[0097] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0098] Figure 1 A schematic diagram of a cluster management system architecture provided in an embodiment of this application;
[0099] Figure 2 One of the flowcharts of the cluster management method provided in the embodiments of this application;
[0100] Figure 3 A comparative schematic diagram illustrating the processing flow of a K8s cluster upgrade event provided in an embodiment of this application;
[0101] Figure 4 A second schematic flowchart illustrating the cluster management method provided in this application embodiment;
[0102] Figure 5 The third flowchart illustrating the cluster management method provided in this application embodiment;
[0103] Figure 6 The fourth flowchart illustrating the cluster management method provided in this application embodiment;
[0104] Figure 7 A schematic diagram illustrating the calculation process of the analytic hierarchy process provided in this application embodiment;
[0105] Figure 8 A schematic diagram illustrating the process of determining recommended values for multiple processing flows provided in an embodiment of this application;
[0106] Figure 9 Fifth flowchart illustrating the cluster management method provided in this application embodiment;
[0107] Figure 10 This is a schematic diagram of the structure of the cluster management device provided in the embodiments of this application;
[0108] Figure 11 This is a schematic diagram of the hardware structure of a computing device provided in an embodiment of this application. Detailed Implementation
[0109] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with those of this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the embodiments of this application as detailed in the appended claims.
[0110] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.
[0111] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in one or more embodiments of this specification are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of related data must comply with relevant laws, regulations and standards, and corresponding operation entry points are provided for users to choose to authorize or refuse.
[0112] It should be noted that in the embodiments of this application, the term "at least one" refers to one or more, and "more than one" refers to two or more.
[0113] First, the terminology used in the embodiments of this application will be introduced.
[0114] Kubernetes (K8s) platform: It is an open-source container orchestration platform that enables automated deployment, scaling and management of containers. It features high automation, strong scalability, cross-platform support, and the ability to effectively improve application availability, elasticity and resource utilization when running in various containers. The K8s platform facilitates the implementation and management of microservice architectures.
[0115] Cluster API (CAPI): CAPI is a crucial component of the Kubernetes ecosystem. Built on top of Kubernetes, it provides a scalable and programmable way to automate cluster provisioning and lifecycle management, including creating, configuring, and upgrading clusters. It features high automation, scalability, and cross-cloud platform compatibility, effectively simplifying cluster management processes. CAPI enables declarative creation, configuration, and management of Kubernetes clusters, including cluster infrastructure (e.g., compute, network, and storage resources) and control plane components. While the Kubernetes platform allows applications to run efficiently in container environments, CAPI further reduces the human resource investment required for cluster management, accelerates cluster delivery, and improves the scalability, consistency, and reliability of cluster management, making large-scale containerized application deployment and cluster management more flexible and efficient.
[0116] Node: In Kubernetes, a Node refers to a worker node in the cluster. During the process of running containers based on the infrastructure, the worker node can receive and execute container (Pod) scheduling tasks from the control plane. The characteristics of the worker node are that it provides computing, storage and network resources, and is the actual physical or virtual work unit that hosts the running of containerized applications (Pods). It is managed by the control plane and reports its status back to it.
[0117] The Analytic Hierarchy Process (AHP) is a multi-criteria decision-making method that decomposes complex decision problems into multiple levels (goal level, criterion level, alternative level, etc.). By constructing a hierarchical model and using methods such as expert scoring to determine the relative importance of elements at each level, it combines qualitative and quantitative analysis to help decision-makers select the optimal solution from multiple options. Specifically, the goal level determines the problem to be solved or the objective to be achieved. For example, in this embodiment, the goal level can be used to determine the target processing flow corresponding to a resource change event. The criterion level decomposes the problem to be solved or the objective to be achieved into multiple measurable criteria. These criteria can be further divided into at least one sub-criterion, which influences the problem to be solved or the objective to be achieved. For example, in this embodiment, the criterion level may include multiple calculation rules (i.e., criteria) that influence the target processing flow corresponding to the resource change event, and may further determine the influencing factors (i.e., sub-criterions) of each calculation rule. The alternative level provides multiple solutions that can solve the problem at the goal level or achieve the goal at the goal level. For example, in this embodiment, the alternative level may include multiple processing flows, all of which can process resource change events.
[0118] To facilitate understanding of the cluster management method provided in the embodiments of this application, the system architecture involved in the embodiments of this application will first be introduced.
[0119] Figure 1 Please refer to the schematic diagram of a cluster management system architecture provided in this application embodiment. Figure 1 The system architecture may include a management platform, a recommendation system, and a business cluster. The management platform can be used to manage the business cluster, and the recommendation system can be used to assist the management platform in managing the business cluster.
[0120] Optionally, the management platform, recommendation system, and business cluster can be deployed in the same computing device or device cluster, which may include multiple computing devices; or, the management platform, recommendation system, and business cluster can be deployed in separate computing devices or separate device clusters; or, the management platform and recommendation system can be deployed in the same computing device or device cluster, while the business cluster is deployed in a separate computing device or device cluster; or, the management platform and business cluster can be deployed in the same computing device or device cluster, while the recommendation system is deployed in a separate computing device or device cluster; or, the recommendation system and business cluster can be deployed in the same computing device or device cluster, while the management platform is deployed in a separate computing device or device cluster.
[0121] It should be noted that, in this embodiment of the application, the management platform manages one business cluster as an example for illustration. In other embodiments, the management platform can be used to manage multiple business clusters.
[0122] In some embodiments, the business cluster, management platform, or recommendation system in this application may also be deployed in a virtual machine of a computing device (or device cluster).
[0123] (1) Management Platform
[0124] For example, the management platform can be a container management platform, which can be a management cluster provided by the Kubernetes platform. The management cluster of the Kubernetes platform can manage the business cluster through the Cluster API (CAPI).
[0125] CAPI can be used to provide basic management of business clusters, lifecycle management of worker nodes, and to coordinate service providers to complete lifecycle management (LCM) of business clusters.
[0126] In some embodiments, the CAPI may include multiple components such as a bootstrap provider, an infrastructure provider, and a control plane provider. The resources of these components may be stored in a specific namespace, and these components may include a controller.
[0127] Bootstrap Providers can be used to deploy Kubernetes nodes. There are two types of Kubernetes nodes: Control Plane nodes and Worker nodes. Their roles and functions differ, and their management also differs. The business logic of Control Plane nodes differs from that of Worker nodes. Control Plane nodes can run components such as kubelet, API Server, and Etcd. Control Plane nodes can be considered the control plane of the application cluster. The CAPI provides KubeadmControlPlane (KCP) by default to manage Control Plane nodes.
[0128] Infrastructure Providers can be used to manage the infrastructure resources required by business clusters, such as computing resources, network resources, and storage resources.
[0129] The Control Plane Provider can be used to implement lifecycle management of Control Plane nodes.
[0130] Optionally, the CAPI may also include the Cluster API bootstrap provider Kubeadm (CABPK), which can be used to generate cloud-init scripts to transform a Machine into a Kubernetes Node. Kubernetes uses Node to represent nodes, while the CAPI uses Machine to represent the managed Kubernetes Nodes, with each Machine associated with one Kubernetes Node.
[0131] CAPI can provide a way for Providers to connect to various infrastructure providers.
[0132] CAPI can involve the following resources: Cluster resources, ControlPlanes resources, Machine resources, MachineDeployment resources, and MachineHealthChecks resources. Cluster resources can include Cluster infrastructure resources, Machine resources can include BootstrapConfig resources and Machine infrastructure resources, MachineDeployment resources can be used to manage MachineSet resources, and MachineSet resources can include BootstrapConfig resources and Machine infrastructure resources.
[0133] Machine Deployment resources can be used to declaratively manage a set of machine instances (MachineSet) resources, ensuring that these instances are automatically created, updated, and destroyed according to user configurations and policies. Each MachineSet resource can manage the same version of nodes.
[0134] (2) Business Cluster
[0135] A business cluster can be a cluster of enterprise resources deployed on the Kubernetes platform using the application programming interface (API) or tools provided by the Kubernetes platform. These resources can include, but are not limited to, at least one of the following: containers (Pods), deployment methods (Deployments), or services (Services).
[0136] (3) Recommendation System
[0137] A recommendation system may include components such as an Original Controller, a Model Function Controller (MFC), an Algorithm Selector, an Algorithm Executor, and a Provisioner Server.
[0138] The original controller can provide a reconciler, which can be used to detect resource change events in the service cluster. Alternatively, the reconciler can also obtain resource change events sent by the management platform and trigger corresponding resource change operations.
[0139] MFC can include algorithm models corresponding to multiple resource change events. These algorithm models can be either built-in models or custom input models. Built-in models are built-in algorithm models provided by business cluster developers, while custom models are algorithm models set by business cluster users according to their own business needs. For any given resource change event, MFC can be used to determine the corresponding algorithm model and obtain the input data for that algorithm model.
[0140] The algorithm selector can include a calculator and a validator. The algorithm selector can interact with the tuner to receive resource change events sent by the tuner. The calculator and validator in the algorithm selector can work together to determine the target processing flow corresponding to the resource change event based on the algorithm model corresponding to the resource change event provided by MFC and the input data of that algorithm model. The algorithm selector can also send the target processing flow corresponding to the resource change event to the tuner.
[0141] The algorithm executor can be used to execute the target processing flow corresponding to a resource change event. The algorithm executor can interact with both the tuner and the Provisioner Server components. The algorithm executor can obtain the target processing flow corresponding to the resource change event sent by the tuner, execute the target processing flow, and obtain the processing result of the resource change event; the algorithm executor can also send the processing result of the resource change event to the Provisioner Server component.
[0142] The Provisioner Server component can also interact with the management platform and the service cluster separately. It can obtain resource data for the service cluster from the management platform and cluster data from the computing device. The Provisioner Server component can send the cluster data and resource data to MFC, and it can also receive algorithm execution results from the algorithm executor and feed those results back to the management platform and computing device.
[0143] In the system architecture provided in this application embodiment, a recommendation system can be deployed in the cluster management system. This recommendation system, when a resource change event occurs in the business cluster, can obtain the resource change event through a tuner and assist the management platform in determining and executing the target processing flow suitable for the resource change event, thereby achieving rapid processing of the resource change event for the business cluster. This recommendation system allows the management platform to flexibly handle resource change events under various operation and maintenance scenarios, adapting to a wider range of management scenarios. This eliminates the need for enterprise employees (e.g., operation and maintenance personnel) to manually determine corresponding processing flows for each resource change event under each operation and maintenance scenario, reducing their workload and improving their efficiency. It also enhances the flexibility of the management platform in managing the business cluster. Furthermore, the recommendation system can recommend target processing flows suitable for resource change events to the management platform, avoiding the limitations of single dimensions and human factors in setting processing flows for each resource change event by enterprise employees. This improves the accuracy of determining the target processing flow, making the management platform's processing of the resource change event based on the target processing flow more reliable.
[0144] based on Figure 1The system architecture shown in this application provides a cluster management method, which may include: acquiring resource change events of a business cluster, determining the algorithm model corresponding to the resource change event and multiple processing flows corresponding to the resource change event, acquiring the running data of the business cluster, determining the input data of the algorithm model based on the running data and multiple processing flows, determining the target processing flow among multiple processing flows based on the algorithm model and the input data, and processing the resource change event through the target processing flow. In this method, the computing device can acquire resource change events of the business cluster under various operation and maintenance scenarios, determine the algorithm model corresponding to the resource change event, and combine multiple processing flows corresponding to the resource change event with the running data of the business cluster under various operation and maintenance scenarios. The algorithm model accurately determines the most suitable target processing flow for the resource change event in each operation and maintenance scenario among multiple processing flows, making the method flexibly applicable to the processing of resource change events under various operation and maintenance scenarios. The running data can include cluster data and / or resource data. Cluster data is the data generated by the business cluster in the computing device running the business cluster, and resource data is the data generated by the business cluster in the management platform. The management platform is used to manage the business cluster. By combining the cluster data and / or resource data of the business cluster, as well as multiple processing flows, the input data of the algorithm model is determined. This avoids the single-dimensional and human factor problems that exist in the manual determination of the processing flow corresponding to the resource change event by enterprise employees. It is beneficial to improve the accuracy of the algorithm model in determining the target processing flow among multiple processing flows, thereby improving the reliability of processing the resource change event based on the target processing flow.
[0145] For example, in Kubernetes (K8S) cluster operation and maintenance scenarios, K8S cluster operation and maintenance is a high-risk operation with high security requirements. In private cloud scenarios, the implementation of a certain action often involves multiple layers (infrastructure layer and container layer) and is based on a balance of various factors. In such scenarios, the cluster management method provided in this application embodiment can be used. This cluster management method can combine the cluster data generated by the business cluster in the computing devices running on the business cluster and the resource data of the business cluster in the management platform to comprehensively determine the target processing flow suitable for resource change events. This can avoid the limitations of single dimensions and human factors in the processing flow set by operation and maintenance personnel for each resource change event, improve the accuracy of the algorithm model in determining the target processing flow among multiple processing flows, and make the processing of the resource change event based on the target processing flow more reliable.
[0146] The technical solutions of this application will be described in detail below with reference to specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will be described below with reference to the accompanying drawings.
[0147] Figure 2 This is one of the flowcharts illustrating the cluster management method provided in this application. Please refer to... Figure 2 The method may include the following steps:
[0148] S201, Obtain resource change events for the business cluster.
[0149] Understandably, this step can be performed by Figure 1 The recommended system shown performs this action. Exemplarily, this step can be performed by the algorithm selector in the recommended system and the tuner in the original controller.
[0150] Optionally, the tuner can also interact with the management platform to obtain resource change events. The management platform can receive event processing requests sent by the service cluster, which request the management platform to process resource change events; the management platform can then send the resource change event to the tuner. Alternatively, the management platform can detect resource change events in the service cluster and, upon detection, send the resource change event to the tuner.
[0151] Optionally, the tuner can detect resource change events in the service cluster and, after detecting such events, send them to the algorithm selector.
[0152] Business clusters can be deployed on computing devices.
[0153] Resource change events can be used to indicate changes to resource objects in a business cluster.
[0154] Resource objects can include, but are not limited to: containers (Pods), deployment methods (Deployments), or services (Services).
[0155] Changes to resource objects can include: adding resource objects, deleting resource objects, and modifying resource objects.
[0156] For example, a resource change event can be a "K8s cluster upgrade event" or a "K8S cluster ETCD data backup event".
[0157] It should be noted that in some embodiments, the terms "resource change event" can be used interchangeably with terms such as "operation," "action," or "Action."
[0158] S202. Determine the algorithm model corresponding to the resource change event and the multiple processing flows corresponding to the resource change event.
[0159] Understandably, this step can be performed by Figure 1The recommendation system shown is executed.
[0160] First, the algorithm model corresponding to the resource change event will be explained.
[0161] For example, this step can be performed by MFC in a recommendation system. MFC can store multiple algorithm models, which can be used to handle various resource change events. After MFC receives a resource change event sent by the algorithm selector, it can determine the most suitable algorithm model for handling the resource change event from among the multiple algorithm models.
[0162] For example, multiple algorithm models may include, but are not limited to, the Analytic Hierarchy Process (AHP) algorithm model and the Fuzzy Comprehensive Evaluation (FCE) algorithm model. For instance, the AHP algorithm model can be adapted to handle resource change events including, but not limited to, the following: K8s cluster upgrade events and K8s cluster ETCD data backup events. Similarly, the FCE algorithm model can be adapted to handle resource change events including, but not limited to, the following: determining the scheduling of the node where the container resides.
[0163] This method allows the management platform to adapt to various resource change events by setting different algorithm models, thus enriching the management scenarios of the platform and solving the problem of the management platform being unable to adapt to different scenarios and applying a one-size-fits-all approach in operation and maintenance (e.g., infrastructure and K8S cluster operation and maintenance).
[0164] Algorithm models can be used to determine the target processing flow corresponding to resource change events.
[0165] In some embodiments, the algorithm model may include, but is not limited to, the following parameters: multiple calculation rules; and the priority order among the multiple calculation rules.
[0166] In this embodiment, MFC can quickly determine the input data of an algorithm model based on multiple parameters pre-configured by the user. Furthermore, in this method, the user can flexibly adjust the pre-configured parameters in each algorithm model according to the processing requirements of resource change events.
[0167] The parameters of the algorithm model will be explained one by one below.
[0168] (1) Multiple calculation rules
[0169] Optionally, the multiple calculation rules may include at least one of the following:
[0170] A. First Calculation Rule
[0171] The first calculation rule can be used to determine the feasibility of the processing procedure.
[0172] The factors influencing the first calculation rule may differ for different business clusters or different resource change events.
[0173] For example, the influencing factors of the first calculation rule may include, but are not limited to: additional data disks, upgrade component detection results, and non-container component detection results.
[0174] B. Second Calculation Rule
[0175] The second calculation rule can be used to determine the resource consumption or resource saving of the processing flow.
[0176] Similarly, the factors influencing the second calculation rule may differ for different business clusters or different resource change events.
[0177] For example, the influencing factors of the second calculation rule can be multiple parameters obtained by detecting the infrastructure resources of the computing device where the business cluster is located. These multiple parameters can include the detection results of computing resources, network resources, storage resources, and storage space.
[0178] C. Third Calculation Rule
[0179] The third calculation rule can be used to determine the time consumption or time saving of the processing flow.
[0180] Similarly, the factors influencing the third computing rules may differ for different business clusters or different resource change events.
[0181] For example, the factors influencing the third calculation rule may include, but are not limited to, the service idleness and network bandwidth of the service cluster.
[0182] In this cluster management method, the feasibility of the final selected processing flow can be determined by setting a first calculation rule to avoid processing flow failures. A second calculation rule can be set to determine whether the resources of the business cluster meet the execution requirements of the final selected processing flow, avoiding processing flow failures due to insufficient resources. A third calculation rule can be set to determine the execution duration of the processing flow, allowing for the determination of an appropriate execution method (e.g., asynchronous or local execution). In summary, by setting multiple calculation rules, the target processing flow selected by the algorithm model for resource change events has higher execution reliability, which helps improve the success rate of handling resource change events based on this target processing flow, thereby improving the efficiency of handling resource change events.
[0183] (2) Priority order among multiple calculation rules
[0184] In this algorithm model, the priority order among multiple calculation rules can be set according to the processing requirements of resource change events.
[0185] Optionally, the algorithm model can determine the weights of multiple calculation rules during calculation based on their priority order. The sum of the weights of multiple calculation rules is a preset value, such as 1 or 100%. For any two calculation rules, if the priority of calculation rule 1 is higher than that of calculation rule 2, then the weight of calculation rule 1 is greater than the weight of calculation rule 2.
[0186] For example, when there are multiple calculation rules including a first calculation rule, a second calculation rule, and a third calculation rule, in order to ensure that the processing flow finally selected by the algorithm model can be executed correctly, the priority of the first calculation rule can be set to the highest priority to avoid the failure of the final selected processing flow. Secondly, the algorithm model can flexibly consider and determine the priority order of the second and third calculation rules according to the maintenance needs of different resource change events.
[0187] In scenarios where resource change events have strict time requirements, the third calculation rule can be given priority to determine the factors affecting the time consumption or time saving of the processing flow, thus avoiding timeouts in the selected processing flow during the handling of resource change events. Optionally, in this scenario, the priority order among multiple calculation rules can be: first calculation rule > third calculation rule > second calculation rule, and the relationship between the weights of these three calculation rules during algorithm model calculation is: weight of the first calculation rule > weight of the third calculation rule > weight of the second calculation rule.
[0188] In scenarios where maintenance personnel want to minimize resource consumption when handling resource change events, the second calculation rule can be prioritized to determine the factors affecting the resource consumption or resource saving of the processing flow, avoiding excessive resource consumption in the selected processing flow when handling resource change events. Optionally, in this scenario, the priority order among multiple calculation rules can be: first calculation rule > second calculation rule > third calculation rule, and the relationship between the weights of these three calculation rules during algorithm model calculation is: weight of the first calculation rule > weight of the second calculation rule > weight of the third calculation rule.
[0189] In some embodiments, the parameters in the algorithm model may also include the recommendation algorithm used by the algorithm model in determining resource change events. For example, the algorithm model is an analytic hierarchy process (AHP) model, and the recommendation algorithm used by the AHP model may be the analytic hierarchy process.
[0190] The following describes the various processing procedures for identifying resource change events.
[0191] In some embodiments, MFC may also store a mapping relationship, which may include multiple resource change events and multiple processing flows corresponding to each resource change event. MFC can determine the multiple processing flows corresponding to a resource change event based on the mapping relationship and the resource change event.
[0192] Optionally, historical operation and maintenance data for multiple resource change events can be obtained, and the corresponding relationship can be pre-generated based on the historical operation and maintenance data of multiple resource change events. For any given resource change event, the historical operation and maintenance data for that resource change event can include multiple historical processing flows corresponding to that resource change event in multiple operation and maintenance scenarios.
[0193] For example, if the resource change event is a Kubernetes cluster upgrade event, the resource change event can correspond to the following three processing flows:
[0194] Rolling upgrade process: This refers to creating a virtual machine template that includes a new operating system (OS) and new Kubernetes component packages. When upgrading the Kubernetes cluster, the virtual machines where the old version nodes reside are deleted one by one, and then the new virtual machines are deployed and added to the cluster according to the new template.
[0195] In-situ upgrade process: This refers to updating the K8s version on the nodes of the original virtual machine where the business cluster is located without deleting the K8s cluster infrastructure.
[0196] Component upgrade process: refers to upgrading some components of the Kubernetes cluster's infrastructure and container layer.
[0197] Figure 3 This is a comparative schematic diagram illustrating the processing flow of a K8s cluster upgrade event provided in an embodiment of this application. Please refer to... Figure 3 In the rolling upgrade process, during the upgrade of the Kubernetes cluster, old version nodes are deleted one by one (represented by dashed lines in the diagram), and new version nodes (represented by solid lines in the diagram) are deployed and added to the cluster according to the new template. In the in-place upgrade process, when upgrading the Kubernetes cluster, old version nodes are not deleted, and the Kubernetes version is updated on the old version nodes.
[0198] For example, if the resource change event is a K8s cluster ETCD data backup, this resource change event can correspond to the following three processing flows:
[0199] Etcd backup process: refers to the backup of data containing K8s cluster resources.
[0200] Disk backup process: refers to backing up a specific storage device on a Kubernetes infrastructure.
[0201] Infrastructure backup process: refers to backing up all data on the K8s cluster and its underlying infrastructure.
[0202] To facilitate understanding, the following uses the data in Table 1 as an example to illustrate the parameters in the algorithm model corresponding to each resource change event and the multiple processing flows corresponding to each resource change event.
[0203] Table 1
[0204]
[0205]
[0206] It should be noted that in some embodiments, "processing flow" can also be used interchangeably with terms such as "solution" or "update algorithm".
[0207] It is understandable that different resource change events may correspond to different algorithm models. It should be noted that the process of determining the algorithm model for each resource change event will be discussed later. Figure 4 Detailed explanation is provided in the embodiments.
[0208] S203. Obtain the operational data of the business cluster.
[0209] Operational data may include cluster data and / or resource data. Cluster data may be data generated by the business cluster in the computing devices on which the business cluster runs, and resource data may be data generated by the business cluster in the management platform, which can be used to manage the business cluster.
[0210] For example, the management platform can be a management cluster provided by the K8s platform, and the K8s platform's management cluster can manage the business cluster through CAPI.
[0211] Cluster data can be data generated by the infrastructure layer managed by the computing devices running on the business cluster. This cluster data can include computing resource data, network resource data, and storage resource data of the business cluster.
[0212] For example, computing resource data may include node information and container data of computing devices. Node information may include: the model, utilization, and load rate of the Central Processing Unit (CPU); the total capacity and usage of memory; and the model and memory usage of the Graphics Processing Unit (GPU). Container data may include container CPU usage information, memory usage information, and runtime information.
[0213] For example, network resource data may include network topology and traffic information of computing devices, wherein the network topology can be used to indicate the network configuration between nodes of the service cluster, and the traffic information may include bandwidth utilization and packet loss rate, etc.
[0214] For example, storage resource data may include parameters of the computing device's storage device, such as the storage device's capacity, throughput, and disk type.
[0215] Resource data can be data generated by the business cluster at the control plane layer managed by the management platform.
[0216] For example, resource data may include: configuration and management data of the business cluster, such as the roles of worker nodes in the business cluster, the list of etcd cluster members, etc.; policy execution data, such as Pod scheduling policies, etc.; service discovery data, such as service routing rules, etc.; monitoring and log data, such as Pod creation failure events; backup and disaster recovery data, such as cluster status snapshots, etc.
[0217] In some embodiments, this step can be performed by Figure 1 The recommendation system shown is executed.
[0218] For example, this step can be performed by the interaction between the Provisioner Server component in the recommendation system and MFC. After determining the algorithm model, MFC can send a data acquisition request to the Provisioner Server component. This data acquisition request can be used to request the Provisioner Server component to obtain the operational data of the business cluster. Specifically, this data acquisition request can be used to request the Provisioner Server component to perform the following steps: requesting the Provisioner Server component to obtain resource data generated by the business cluster at the control plane layer managed by the management platform; and / or, requesting the Provisioner Server component to obtain cluster data generated by the business cluster at the infrastructure layer managed by the computing device. The Provisioner Server component can obtain the corresponding operational data according to the data acquisition request. This operational data includes resource data and / or cluster data, and the Provisioner Server component can send this operational data to MFC.
[0219] S204. Based on the running data and multiple processing flows, determine the input data for the algorithm model.
[0220] In some embodiments, this step can be performed by Figure 1 The recommendation system shown is executed.
[0221] For example, this step can be performed by MFC in a recommendation system. It should be noted that the process by which MFC determines the input data for the algorithm model based on runtime data and multiple processing flows will be performed within the recommended system. Figure 5 Detailed explanation is provided in the embodiments.
[0222] S205. Based on the algorithm model and input data, determine the target processing flow among multiple processing flows.
[0223] Understandably, this step can be performed by Figure 1 The recommended system shown is executed as follows. For example, this step can be executed by the algorithm selector in the recommended system. The algorithm selector can obtain the algorithm model and input data corresponding to the resource change event sent by MFC. The calculator in the algorithm selector can input the input data into the algorithm model and perform calculations. The algorithm selector can verify the calculation result obtained by the calculator, and after the verification is passed, determine the target processing flow based on the calculation result of the algorithm selector.
[0224] It should be noted that the algorithm selector determines the target processing flow among multiple processing flows based on the algorithm model and input data. Figure 6 Detailed explanation is provided in the embodiments.
[0225] S206. Process resource change events through the target processing flow.
[0226] This step can be performed by Figure 1 The recommendation system shown is executed.
[0227] For example, this step can be performed interactively by the algorithm selector, tuner, and algorithm executor in the recommendation system. After determining the target processing flow, Figure 1 In the recommendation system shown, the algorithm selector can send the target processing flow to the tuner, and the tuner can forward the target processing flow to the algorithm executor so that the algorithm executor can process the resource change event through the target processing flow.
[0228] The cluster management method provided in this application allows a computing device to acquire resource change events of a business cluster under various operation and maintenance scenarios, determine the corresponding algorithm model for each resource change event, and combine multiple processing flows corresponding to the resource change event with the operational data of the business cluster under each operation and maintenance scenario. The algorithm model accurately determines the most suitable target processing flow for the resource change event in each operation and maintenance scenario from among multiple processing flows, making the method flexibly applicable to the handling of resource change events in various operation and maintenance scenarios. By combining cluster data and / or resource data of the business cluster to determine the input data of the algorithm model, the single-dimensional and human factor problems existing in the manual determination of the processing flow corresponding to the resource change event by enterprise employees can be avoided. This helps improve the accuracy of the algorithm model in determining the target processing flow among multiple processing flows, thereby improving the reliability of handling the resource change event based on the target processing flow.
[0229] Figure 4 This is a second flowchart illustrating the cluster management method provided in this application's embodiments. Please refer to... Figure 4 The method may include the following steps:
[0230] S401. Determine the resource change type corresponding to the resource change event.
[0231] It is understandable that multiple resource change events can be classified into multiple resource change types based on their different characteristics, with each resource change type having the same characteristics as the corresponding resource change events.
[0232] For example, resource change types may include, but are not limited to, cluster upgrade types or data backup types. Cluster upgrade types may include upgrade events for various resource objects, such as container upgrade events, service upgrade events, etc.; data backup types may include various types of data backup processing, such as ETCD data backup.
[0233] S402. Based on the mapping relationship and the resource change type corresponding to the resource change event, determine the algorithm model corresponding to the resource change event.
[0234] The mapping relationship can include multiple resource change types and the algorithm model corresponding to each resource change type. Among the multiple resource change types, the resource change type corresponding to the resource change event can be included.
[0235] In some embodiments, operations and maintenance personnel can pre-generate this mapping relationship based on historical operations and maintenance data of the business cluster, and store the mapping relationship in MFC. Historical operations and maintenance data may include multiple historical resource change events, as well as the resource change type and algorithm model corresponding to each historical resource change event.
[0236] The cluster management method provided in this application can select an appropriate algorithm model for each resource change event through mapping relationships, which is beneficial to improving the determination efficiency of the algorithm model and the accuracy of the algorithm model in determining each resource change event.
[0237] Figure 5 This is the third flowchart illustrating the cluster management method provided in this application's embodiments. Please refer to... Figure 5 The method may include the following steps:
[0238] S501. Based on the running data, determine at least one influencing factor for each calculation rule among multiple calculation rules.
[0239] In some embodiments, this step can be performed by Figure 1 The recommendation system shown is executed.
[0240] For example, this step can be performed by MFC in a recommendation system. For any given calculation rule, MFC can parse and process the runtime data to determine at least one influencing factor affecting the calculation rule during the processing of the resource change event. For instance, an AI module can run within MFC, which can be used to parse and process the runtime data.
[0241] For example, if the resource change event is a Kubernetes cluster upgrade event, MFC can parse and process the operational data of the business cluster to determine the factors in the business data that affect the first calculation rule (or "feasibility calculation rule") during the processing of the Kubernetes cluster upgrade event. These factors may include whether the infrastructure contains additional data disks, the test results of upgrade components, etc. The factors in the business data that affect the second calculation rule (or "resource-saving calculation rule") during the processing of the Kubernetes cluster upgrade event may include the infrastructure resource test results, etc. The factors in the business data that affect the third calculation rule (or "time-saving calculation rule") may include the current cluster service idle level, etc.
[0242] S502. Determine the input data based on at least one influencing factor of each calculation rule, the priority order among multiple calculation rules, and multiple processing flows.
[0243] In this method, at least one influencing factor of each calculation rule in multiple calculation rules is determined based on the running data to collect multi-factor data of the business cluster. By combining multiple processing flows and the collected multi-factor data, the input data of the algorithm model is determined, which helps to improve the accuracy of the algorithm model in determining the target processing flow.
[0244] In some embodiments, this step can be performed by Figure 1The recommended system shown is executed. For example, this step can be performed by MFC within the recommended system.
[0245] Optionally, the input data may include a first calculation matrix corresponding to multiple calculation rules, a second calculation matrix corresponding to each calculation rule, and a third calculation matrix corresponding to each influencing factor in each calculation rule.
[0246] In some embodiments, MFC can determine the input data of the algorithm model by performing the following steps S5021 to S5023:
[0247] S5021. Determine the first calculation matrix corresponding to the multiple calculation rules according to the priority order among the multiple calculation rules.
[0248] The first calculation matrix can be used to determine the weights corresponding to each calculation rule.
[0249] Optionally, MFC can construct a first calculation matrix based on the priority order among multiple calculation rules and using a pre-defined judgment method.
[0250] For example, the judgment method can be the 1-9 scale method, and the meaning of each scale in the 1-9 scale method can be shown in Table 2.
[0251] Table 2
[0252]
[0253] For example, multiple calculation rules include a first calculation rule, a second calculation rule, and a third calculation rule. The priority order among these three calculation rules can be: first calculation rule > third calculation rule > second calculation rule. Based on this priority order and the 1-9 scaling method mentioned above, the first calculation matrix corresponding to these three calculation rules is determined. This first calculation matrix can be shown in Table 3.
[0254] Table 3
[0255] category First Calculation Rule Second Calculation Rule Third Calculation Rule First Calculation Rule 1 3 5 Second Calculation Rule 1 / 3 1 2 Third Calculation Rule 1 / 5 1 / 2 1
[0256] For example, if the resource change event is a Kubernetes cluster upgrade event, the recommendation algorithm is the Analytic Hierarchy Process (AHP). The priority order of the three calculation rules is: feasibility > resource conservation > time conservation. Based on the priority order of the three calculation rules, a first calculation matrix is constructed using a pre-defined judgment method. In this calculation matrix, the following conditions are set: feasibility scale > resource conservation scale > time conservation scale. This ensures that when selecting the optimal upgrade process for a Kubernetes cluster upgrade event, the AHP prioritizes the impact of feasibility on each process. If the impact of feasibility on each upgrade process is equal, the impact of time conservation can be considered, and so on, until the optimal upgrade process is obtained.
[0257] For example, if the resource change event is a Kubernetes cluster upgrade event, there are three upgrade processes: rolling upgrade, in-situ upgrade, and component upgrade. Feasibility factors can include whether the remaining resources of the business cluster can support the upgrade process for each process. If the remaining resources of the business cluster are insufficient to support the rolling upgrade process but can support the in-situ and component upgrade processes, then feasibility has a greater impact on the rolling upgrade process and a smaller impact on the in-situ and component upgrade processes. The algorithm model can calculate that the recommended value for feasibility based on the rolling upgrade process is less than the recommended value for feasibility based on the in-situ (or component) upgrade process. If the recommended value for feasibility based on the in-situ upgrade process equals the recommended value for feasibility based on the component upgrade process, then the recommended values for resource conservation based on resource efficiency for the in-situ upgrade process and the recommended values for resource efficiency based on resource efficiency for the component upgrade process can be further determined, and so on, until the optimal upgrade process is obtained.
[0258] Similarly, if the resource change event is a K8s cluster ETCD data backup event, the recommended algorithm is the Analytic Hierarchy Process (AHP). The priority order of the three calculation rules is: feasibility > resource conservation > time conservation. Based on the priority order of the three calculation rules, a first calculation matrix is constructed using a pre-defined judgment method. In this calculation matrix, the following conditions are set: feasibility scale > resource conservation scale > time conservation scale. This ensures that when selecting the optimal backup process for the K8s cluster ETCD data backup event, the AHP prioritizes the impact of feasibility on each process. If the impact of feasibility on each upgrade process is equal, the impact of time conservation can be considered, and so on, until the optimal upgrade process is obtained.
[0259] For example, if the resource change event is a Kubernetes cluster ETCD data backup event, feasibility factors can include whether the backup process requires the cluster infrastructure to contain disks not used by containers. If the infrastructure contains disks not used by containers, it means that a full backup of the infrastructure can be supported, which is beneficial to ensuring data integrity. If the infrastructure does not contain disks not used by containers, it means that a full backup of the infrastructure is not supported. For any two of the three backup processing flows (backup process 1 and backup process 2) of the Kubernetes cluster ETCD data backup event, if backup process 1 requires the cluster infrastructure to contain disks not used by containers during the backup process, while backup process 2 does not require the cluster infrastructure to contain disks not used by containers during the backup process, then the recommended feasibility value for backup process 1 can be greater than the recommended feasibility value for backup process 2.
[0260] S5022. For any calculation rule, determine the second calculation matrix corresponding to the calculation rule based on the degree of influence of at least one influencing factor on the calculation rule.
[0261] The second calculation matrix can be used to determine the weights of each influencing factor in the calculation rules.
[0262] If there is an influencing factor in the calculation rule, the second calculation matrix of the calculation rule can be as shown in Table 4.
[0263] Table 4
[0264] category Calculation rules Calculation rules 1
[0265] According to Table 4, the weight of this influencing factor in the calculation rule can be 1.
[0266] If there are multiple influencing factors in the calculation rule, the priority order of the multiple influencing factors can be determined according to the degree of influence of the multiple influencing factors on the calculation rule, and a second calculation matrix corresponding to each calculation rule can be constructed according to the priority order of the multiple influencing factors and a pre-set judgment method.
[0267] For example, for any calculation rule, the calculation rule may include two influencing factors. The priority order between these two influencing factors can be: influencing factor 1 > influencing factor 2. Based on this priority order and the 1-9 scaling method mentioned above, the second calculation matrix corresponding to the calculation rule is determined. The second calculation matrix can be shown in Table 5.
[0268] Table 5
[0269] category Influencing factor 1 Influencing factor 2 Influencing factor 1 1 3 Influencing factor 2 1 / 3 1
[0270] S5023. Based on at least one influencing factor of multiple calculation rules and multiple processing procedures, determine the third calculation matrix corresponding to each influencing factor in each calculation rule.
[0271] The third calculation matrix can be used to determine the influence weight of influencing factors on multiple processing flows.
[0272] For any influencing factor in any calculation rule, the degree of influence of this factor on multiple processing flows may be the same or different. Based on the degree of influence of this factor on multiple processing flows, a pre-defined judgment method can be used to determine the third calculation matrix corresponding to this influencing factor.
[0273] For example, for any influencing factor in any calculation rule, the ranking of the degree of influence of the influencing factor on the three processing flows can be: Processing Flow 1 > Processing Flow 2 = Processing Flow 3. The third calculation matrix corresponding to the influencing factor can be shown in Table 6.
[0274] Table 6
[0275] category Processing flow 1 Processing flow 2 Processing flow 3 Processing flow 1 1 3 3 Processing flow 2 1 / 3 1 1 Processing flow 3 1 / 3 1 1
[0276] In this cluster management method, a first calculation matrix corresponding to multiple calculation rules, a second calculation matrix corresponding to each calculation rule in the multiple calculation rules, and a third calculation matrix corresponding to each influencing factor in each calculation rule can be determined. The input data of the algorithm model is generated by combining the above matrices. The input data takes into account the impact of cluster data at the infrastructure layer and resource data at the control plane layer of the business cluster on the operation of each processing flow. This can avoid the limitations of single dimension and human factors in the processing algorithms corresponding to each resource change event set by operation and maintenance personnel, and is conducive to improving the accuracy of the algorithm model in determining the target processing flow corresponding to the resource change event.
[0277] S503. Based on the algorithm model and input data, determine the target processing flow among multiple processing flows.
[0278] This step can be performed by Figure 1 The recommended system shown performs this step. For example, this step can be performed by an algorithm selector within the recommended system.
[0279] It should be noted that the algorithm selector determines the target processing flow among multiple processing flows based on the algorithm model and input data. Figure 6 Detailed explanation is provided in the embodiments.
[0280] S504. Determine the executor corresponding to the target processing flow.
[0281] This step can be performed by Figure 1The recommended system shown is executed as follows. For example, this step can be performed by the algorithm executor within the recommended system.
[0282] The executors corresponding to different processing flows can be the same or different. The algorithm executor can pre-store multiple processing flows and the identifier of the executor corresponding to each processing flow, so that after receiving the target processing flow sent by the tuner, the identifier of the executor corresponding to the target processing flow can be quickly determined.
[0283] S505: Invoke the executor to execute the target processing flow in order to process resource change events.
[0284] This step can be performed by Figure 1 The recommended system shown is executed as follows. For example, this step can be performed by the algorithm executor within the recommended system.
[0285] Optionally, the algorithm executor can invoke the executor to execute the target processing flow by using the identifier and calling interface of the executor corresponding to the target processing flow.
[0286] The cluster management method provided in this application can combine the operational data of the business cluster and multiple processing flows corresponding to resource change events to determine the input data of the algorithm model. This makes the algorithm model more accurate in determining the target processing flow based on the input data, and more in line with the actual business needs of the business cluster (e.g., lower resource consumption or shorter execution time). After determining the target processing flow, this method can also automatically call the executor to execute the target processing flow to process resource change events, eliminating the need for manual operation, avoiding the error rate of manual operation, saving manpower and time costs, and improving the efficiency of processing resource change events in the business cluster.
[0287] In some embodiments, the process of determining the target processing flow among multiple processing flows based on the algorithm model and input data can be as follows: Figure 6 As shown. Figure 6 This is the fourth flowchart illustrating the cluster management method provided in this application's embodiments. Please refer to... Figure 6 The method may include the following steps:
[0288] S601. Based on the algorithm model and input data, determine the recommended value for each processing flow in multiple processing flows.
[0289] This step can be performed by Figure 1 The recommended system shown performs this step. For example, this step can be performed by an algorithm selector within the recommended system.
[0290] In some embodiments, the algorithm model has a built-in recommendation algorithm, which can be the analytic hierarchy process (AHP). The algorithm model can use the input data to call the recommendation algorithm to determine the recommended value for each processing step.
[0291] Figure 7 This is a schematic diagram illustrating the calculation process of the analytic hierarchy process (AHP) provided in an embodiment of this application. Please refer to [link / reference]. Figure 7 The Analytic Hierarchy Process (AHP) can include a solution layer, a criteria layer, and a target layer. If the resource change event is a Kubernetes cluster upgrade, the solution layer can include: rolling upgrade processes, in-situ upgrade processes, and component upgrade processes. The criteria layer can include: feasibility, resource conservation, and time conservation. The target layer can be the selection of the optimal upgrade process. If the resource change event is a Kubernetes cluster ETCD data backup, the solution layer can include: ETCD backup processes, disk backup processes, and infrastructure backup processes. The criteria layer can include: feasibility, resource conservation, and time conservation. The target layer can be the selection of the optimal backup process.
[0292] In some embodiments, step S601 may further include steps S6011 to S6014 as shown below.
[0293] S6011. Based on the first calculation matrix corresponding to multiple calculation rules in the input data, determine the weight corresponding to each calculation rule, and based on the first calculation matrix and the weight corresponding to each calculation rule, determine the first verification result of the first calculation matrix.
[0294] This step can be performed by Figure 1 The recommended system shown is executed as follows. Exemplarily, this step can be performed by an algorithm selector in the recommended system. The calculator in the algorithm selector can be used to: determine the weights corresponding to each calculation rule based on a first calculation matrix corresponding to multiple calculation rules in the input data; the validator in the algorithm selector can be used to: determine a first verification result of the first calculation matrix based on the first calculation matrix and the weights corresponding to each calculation rule.
[0295] Optionally, the calculator may have a preset weight calculation method, and the calculator may use this weight calculation method to calculate the weights corresponding to each calculation rule based on the first calculation matrix.
[0296] Assume the first computational matrix is as follows:
[0297]
[0298] In the first computational matrix, a ij This can represent the scale of the calculation rule in the i-th row relative to the calculation rule in the j-th column, where i = 1, 2, ..., n, and j = 1, 2, ..., n. For example, a 11This can represent the scale of the calculation rule in the first row relative to the calculation rule in the first column, and so on, a nn It can represent the scale of the calculation rule for the nth row relative to the calculation rule for the nth column.
[0299] For example, the weight calculation method can use the square root method formula shown to calculate the weight.
[0300]
[0301] Among them, w i This can represent the weight corresponding to the calculation rule of the i-th row, i = 1, 2, ..., n, j = 1, 2, ..., n, k = 1, 2, ..., n.
[0302] Optionally, the calculator may have a preset verification algorithm. The verifier may use the verification algorithm to determine the first verification result of the first calculation matrix based on the first calculation matrix and the weights corresponding to each calculation rule. The first verification result may be either verification passed or verification failed.
[0303] For example, the verification algorithm can determine the first verification result using the consistency check calculation formula shown below.
[0304]
[0305] Where A can represent the first computational matrix; w i λ can represent the weight corresponding to the calculation rule of the i-th row of the first calculation matrix; max CI can represent the largest eigenvalue of the first calculation matrix; RI can represent the consistency index; RI can represent the average random consistency index, which can be determined by querying the average random consistency index table; CR can represent the consistency ratio. If CR < preset value, it means that the consistency test is passed, that is, the first test result is passed. For example, the preset value can be 0.1.
[0306] It should be noted that the square root method calculation formula in this embodiment is used to exemplarily illustrate the weight calculation method used in the embodiments of this application, and the consistency check calculation formula is used to exemplarily illustrate the verification algorithm used in the embodiments of this application; in some other embodiments, the weight calculation method may also use other calculation formulas to calculate the weight, and the verification algorithm may also use other calculation formulas for verification. The embodiments of this application do not limit the weight calculation method and the verification algorithm.
[0307] S6012. Based on the second calculation matrix corresponding to each calculation rule in the input data, determine the weights corresponding to each influencing factor in each calculation rule. Based on the second calculation matrix corresponding to each calculation rule and the weights corresponding to each influencing factor in each calculation rule, determine the second verification result of the second calculation matrix corresponding to each calculation rule.
[0308] This step can be performed by Figure 1 The recommended system shown is executed as follows. Exemplarily, this step can be performed by the algorithm selector in the recommended system. The calculator in the algorithm selector can be used to: determine the weights of each influencing factor in each calculation rule based on the second calculation matrix corresponding to each calculation rule in the input data; the validator in the algorithm selector can be used to: determine the second verification result of the second calculation matrix corresponding to each calculation rule based on the second calculation matrix corresponding to each calculation rule and the weights of each influencing factor in each calculation rule.
[0309] Optionally, the calculator may have a preset weight calculation method. The calculator may use this weight calculation method to calculate the weight of each influencing factor in each calculation rule based on the second calculation matrix corresponding to each calculation rule.
[0310] Optionally, the calculator may have a preset verification algorithm. For any calculation rule, the verifier may use the verification algorithm to determine the second verification result of the second calculation matrix corresponding to the calculation rule based on the second calculation matrix corresponding to the calculation rule and the weights of each influencing factor in the calculation rule.
[0311] It should be noted that the weight calculation method and verification algorithm in this step can be found in S6011, and will not be repeated here.
[0312] S6013. Based on the third calculation matrix corresponding to each influencing factor in each calculation rule in the input data, determine the influence weight of each influencing factor in each calculation rule on multiple processing flows of the algorithm model. Based on the third calculation matrix corresponding to each influencing factor in each calculation rule and the influence weight of each influencing factor in each calculation rule on multiple processing flows, determine the third verification result of the third calculation matrix corresponding to each influencing factor in each calculation rule.
[0313] This step can be performed by Figure 1The recommended system shown is executed as follows. Exemplarily, this step can be performed by the algorithm selector in the recommended system. The calculator in the algorithm selector can be used to: determine the influence weight of each influencing factor in each calculation rule on multiple processing flows of the algorithm model based on the third calculation matrix corresponding to each influencing factor in each calculation rule in the input data; the validator in the algorithm selector can be used to: determine the third verification result of the third calculation matrix corresponding to each influencing factor in each calculation rule based on the third calculation matrix corresponding to each influencing factor in each calculation rule and the influence weight of each influencing factor in each calculation rule on multiple processing flows.
[0314] Optionally, the calculator may have a preset weight calculation method. The calculator may use this weight calculation method to calculate the influence weight of each influencing factor in each calculation rule on multiple processing flows of the algorithm model, based on the third calculation matrix corresponding to each influencing factor in each calculation rule.
[0315] Optionally, the calculator may have a preset verification algorithm. For any influencing factor in any calculation rule, the verifier may use the verification algorithm to determine the third verification result of the third calculation matrix corresponding to the influencing factor based on the third calculation matrix corresponding to the influencing factor and the influence weight of the influencing factor on multiple processing flows of the algorithm model.
[0316] It should be noted that the weight calculation method and verification algorithm in this step can be found in S6011, and will not be repeated here.
[0317] S6014. If the first verification result of the first calculation matrix, the second verification result of each second calculation matrix, and the third verification result of each third calculation matrix are verified to be passed, the recommended value corresponding to each processing flow in the multiple processing flows is determined according to the weight corresponding to each calculation rule, the weight corresponding to each influencing factor in each calculation rule, and the influence weight of each influencing factor in each calculation rule on the multiple processing flows.
[0318] If at least one of the verification results of the first verification result of the first calculation matrix, the second verification result of each of the second calculation matrices, and the third verification result of each of the third calculation matrices fails verification, the calculator can report an error so that the user can adjust the input data of the algorithm model in a timely manner.
[0319] To facilitate understanding the process of calculating the recommended values for each processing step, the following section will combine... Figure 8 The process will be illustrated by example.
[0320] Figure 8 This is a schematic diagram illustrating the process of determining recommended values for multiple processing flows, as provided in an embodiment of this application. Please refer to... Figure 8 The algorithm model includes three calculation rules: the first calculation rule, the second calculation rule, and the third calculation rule. The first calculation rule has two influencing factors, while the second and third calculation rules each have one influencing factor.
[0321] For any given calculation rule, the recommended value for each processing step can be determined based on the weight of each influencing factor in the calculation rule and the weight of each influencing factor on multiple processing steps.
[0322] After obtaining the recommended value for each processing flow under each calculation rule, for any given processing flow, the recommended value for that processing flow can be determined based on the recommended value of that processing flow under the above three calculation rules and the weights of the above three calculation rules.
[0323] In this method, by defining the first calculation matrix, the second calculation matrix corresponding to each calculation rule, and the third calculation matrix corresponding to each influencing factor in each calculation rule as the input data of the algorithm model, it is beneficial to improve the accuracy of the algorithm model in calculating the target processing flow based on the input data. Furthermore, this method can also perform verification processing on the first calculation matrix, each of the second calculation matrices, and each of the third calculation matrices. After passing the verification, based on the weights corresponding to each calculation rule, the weights corresponding to each influencing factor in each calculation rule, and the influence weights of each influencing factor in each calculation rule on multiple processing flows, the recommended values corresponding to each processing flow in the multiple processing flows are determined, which is beneficial to improving the accuracy and reliability of the algorithm model in determining the target processing flow.
[0324] S602. Determine the target processing flow based on the recommended values corresponding to multiple processing flows.
[0325] Optionally, the algorithm model can identify the processing flow with the highest recommended value among multiple processing flows as the target processing flow.
[0326] Optionally, the algorithm model can also determine the recommended order of multiple processing flows based on their recommended values. The higher the recommended value of a processing flow, the higher its recommended order. The algorithm model can then identify the processing flow with the highest recommended order as the target processing flow.
[0327] In some embodiments, users can also configure at least one verification rule in the verifier according to their own business needs. After the calculator determines the target processing flow, the verifier can further verify the target processing flow output by the calculator based on the at least one verification rule.
[0328] Optionally, if the verification result of the target processing flow based on at least one verification rule is that the verification fails, the algorithm model can filter out the target processing flow from multiple processing flows, and based on the remaining processing flows in the multiple processing flows, the algorithm model can redetermine the target processing flow from the remaining processing flows.
[0329] In the cluster management method provided in this application embodiment, recommended values for multiple processing flows can be determined based on input data and algorithm models, and the target processing flow can be quickly and accurately determined based on the recommended values of each processing flow, which is beneficial to improving the efficiency of determining the target processing flow.
[0330] Figure 9 This is the fifth flowchart illustrating the cluster management method provided in this application's embodiments. Please refer to... Figure 9 The method may include the following steps:
[0331] S901, The user sends a resource change request to the management platform.
[0332] The client can provide a user interface (Web User Interface, Web UI), on which operations and maintenance personnel can trigger the terminal to send resource change requests.
[0333] The client can be deployed on a terminal device, such as a mobile phone or a computer.
[0334] S902, The management platform sends the resource change event to the recommendation system.
[0335] It is understandable that the management platform may include an API Server component and a ClusterAPI controller. The API Server component can receive the resource change request and perform preprocessing such as verification on the resource change request through the ClusterAPI controller. After the preprocessing is successful, a resource change event corresponding to the resource change request can be generated and sent to the recommendation system.
[0336] S903, The recommendation system determines the algorithm model corresponding to the resource change event and the multiple processing flows corresponding to the resource change event.
[0337] The tuner in the recommendation system can receive the resource change event and send it to the algorithm selector. The algorithm selector can also send the resource change event to MFC, which can be used to determine the algorithm model corresponding to the resource change event.
[0338] It should be noted that the specific execution process of the algorithm model for determining resource change events in MFC can be found in the following steps. Figure 4The specific execution process of the cluster management method shown is not described in detail here.
[0339] S904, The recommendation system sends the first data acquisition request to the management platform.
[0340] The first data retrieval request can be used to request resource data of the business cluster in the management platform. The first data retrieval request may include the identifier of the business cluster.
[0341] The recommendation system may include a Provisioner Server component, which can be used to send the first data retrieval request to the management platform.
[0342] S905, the management platform sends resource data to the recommendation system.
[0343] The Provisioner Server component in the recommendation system can be used to obtain resource data sent by the management platform and forward that resource data to MFC.
[0344] S906, The recommendation system sends a second data retrieval request to the business cluster.
[0345] The second data acquisition request is used to request cluster data generated by the business cluster on the computing device on which the business cluster runs. The second data acquisition request may include the identifier of the business cluster and the identifier of the computing device on which the business cluster runs.
[0346] The Provisioner Server component in the recommendation system can be used to send a second data retrieval request to the computing devices running on the business cluster.
[0347] It should be noted that the execution order of steps S904 and S906 is not limited in the embodiments of this application. Steps S904 and S906 can be executed in an interchangeable order or simultaneously.
[0348] S907, The business cluster sends cluster data to the recommendation system.
[0349] The Provisioner Server component in the recommendation system can be used to obtain cluster data sent by the computing devices running the business cluster and forward the cluster data to MFC.
[0350] S908. The recommendation system determines the input data of the algorithm model based on the running data and multiple processing flows, and determines the target processing flow among multiple processing flows based on the algorithm model and the input data.
[0351] Operational data includes cluster data and / or resource data.
[0352] The recommendation system can perform this step through interaction between the algorithm selector and MFC. MFC can determine the input data of the algorithm model based on cluster data and / or resource data, and send the algorithm model and the input data to the algorithm selector. The algorithm selector can input the input data into the algorithm model. The algorithm model can calculate the input data through the cooperation of the calculator and validator in the algorithm selector to obtain the target processing flow corresponding to the resource change event.
[0353] S909, The recommendation system sends the target processing flow corresponding to the resource change event to the management platform.
[0354] This step can be performed interactively by the algorithm selector and tuner in the recommendation system. The algorithm selector can send the target processing flow to the tuner, and the tuner can forward the target processing flow to the management platform.
[0355] S910, the management platform sends an execution command to the recommendation system.
[0356] Execution instructions can be used to instruct the execution of a target processing flow.
[0357] S911, The recommendation system responds to the execution instruction and executes the target processing flow to handle resource change events.
[0358] The recommendation system includes an algorithm executor, which can be used to execute step S911. It should be noted that the specific execution process of the algorithm executor can be referred to in steps S506 and S507, and will not be repeated here.
[0359] S912, The recommendation system sends the processing results of the resource change event to the management platform.
[0360] The processing result of a resource change event can be used to indicate whether the resource change event has been processed successfully.
[0361] The processing results of resource change events may include the target processing flow selected for the resource change event, as well as the execution process data of the target processing flow.
[0362] S913, The user sends a query request to the management platform.
[0363] A query request can be used to request the processing results of a resource change event.
[0364] S914. The management platform sends the processing results of resource change events to the user terminal.
[0365] Operations and maintenance personnel can view the processing results of the resource change event on the user interface provided on the client side.
[0366] The cluster management method provided in this application can be applied to the field of single Kubernetes cluster management, or to a wider range of fields, such as Kubernetes multi-cluster resource integration computing, to adapt to a wider range of scenarios.
[0367] The cluster management method provided in this application allows operation and maintenance personnel to interact with the management platform through a user terminal, and then interact with the recommendation system through the management platform, so that the recommendation system can assist the management platform in processing resource change events corresponding to resource change requests sent by the user terminal. In this process, the recommendation system can determine the algorithm model corresponding to the resource change event. By combining multiple processing flows corresponding to the resource change event with the operational data of the business cluster under various operational scenarios, the algorithm model accurately determines the most suitable target processing flow for the resource change event in each operational scenario. This allows the method to be flexibly applied to the handling of resource change events in various operational scenarios. By setting different algorithm models, the recommendation system enables the management platform to adapt to richer operational scenarios, solving the problem of the management platform being unable to adapt to different scenarios and applying a one-size-fits-all approach in operational processing (e.g., infrastructure and Kubernetes cluster operational processing). By combining the cluster data and / or resource data of the business cluster with the multiple processing flows corresponding to the resource change event to determine the input data of the algorithm model, it avoids the single-dimensional and human factor problems that exist in the manual determination of the processing flow corresponding to the resource change event by enterprise employees. This helps improve the accuracy of the algorithm model in determining the target processing flow among multiple processing flows, thereby improving the reliability of handling the resource change event based on the target processing flow.
[0368] Figure 10 This is a schematic diagram of the cluster management device provided in an embodiment of this application. Please refer to... Figure 10 Cluster management 10 can include:
[0369] The transceiver module 11 is used to acquire resource change events of the business cluster;
[0370] Processing module 12 is used to determine the algorithm model corresponding to the resource change event and the multiple processing flows corresponding to the resource change event;
[0371] The transceiver module 11 is also used to acquire the running data of the business cluster. The running data includes cluster data and / or resource data. The cluster data is the data generated by the business cluster in the computing device on which the business cluster runs, and the resource data is the data generated by the business cluster in the management platform. The management platform is used to manage the business cluster.
[0372] The processing module 12 is also used to determine the input data of the algorithm model based on the running data and multiple processing flows;
[0373] Processing module 12 is also used to determine the target processing flow among multiple processing flows based on the algorithm model and input data;
[0374] Processing module 12 is also used to process resource change events through the target processing flow.
[0375] The cluster management device provided in this application embodiment can execute the technical solution described in the above method embodiment, and its beneficial effects are similar, so they will not be repeated here.
[0376] In one possible implementation, the algorithm model includes:
[0377] Multiple calculation rules;
[0378] Priority order among multiple calculation rules.
[0379] In one possible implementation, the processing module 12 is specifically used for:
[0380] Based on the operational data, identify at least one influencing factor for each of the multiple calculation rules.
[0381] The input data is determined based on at least one influencing factor of each calculation rule, the priority order among multiple calculation rules, and multiple processing flows.
[0382] In one possible implementation, the processing module 12 is further configured to:
[0383] Based on the priority order among multiple calculation rules, a first calculation matrix corresponding to multiple calculation rules is determined. The first calculation matrix is used to determine the weights corresponding to each calculation rule.
[0384] For any given calculation rule, a second calculation matrix is determined based on the degree of influence of at least one influencing factor on the calculation rule. The second calculation matrix is used to determine the weights of each influencing factor in the calculation rule.
[0385] Based on at least one influencing factor of multiple calculation rules and multiple processing flows, determine the third calculation matrix corresponding to each influencing factor in each calculation rule. The third calculation matrix is used to determine the influence weight of the influencing factor on multiple processing flows.
[0386] The input data includes a first calculation matrix, a second calculation matrix corresponding to each calculation rule, and a third calculation matrix corresponding to each influencing factor in each calculation rule.
[0387] In one possible implementation, the processing module 12 is further configured to:
[0388] Based on the algorithm model and input data, the recommended value for each processing step in multiple processing flows is determined.
[0389] The target processing flow is determined based on the recommended values corresponding to multiple processing flows.
[0390] In one possible implementation, the processing module 12 is further configured to:
[0391] Based on the first calculation matrix corresponding to multiple calculation rules in the input data, determine the weight corresponding to each calculation rule, and based on the first calculation matrix and the weight corresponding to each calculation rule, determine the first verification result of the first calculation matrix;
[0392] Based on the second calculation matrix corresponding to each calculation rule in the input data, determine the weights of each influencing factor in each calculation rule, and based on the second calculation matrix corresponding to each calculation rule and the weights of each influencing factor in each calculation rule, determine the second verification result of the second calculation matrix corresponding to each calculation rule.
[0393] Based on the third calculation matrix corresponding to each influencing factor in each calculation rule in the input data, determine the influence weight of each influencing factor in each calculation rule on multiple processing flows of the algorithm model. Based on the third calculation matrix corresponding to each influencing factor in each calculation rule and the influence weight of each influencing factor in each calculation rule on multiple processing flows, determine the third verification result of the third calculation matrix corresponding to each influencing factor in each calculation rule.
[0394] If the first verification result of the first calculation matrix, the second verification result of each second calculation matrix, and the third verification result of each third calculation matrix are verified to be valid, the recommended value for each processing flow in the multiple processing flows is determined based on the weight corresponding to each calculation rule, the weight corresponding to each influencing factor in each calculation rule, and the influence weight of each influencing factor in each calculation rule on the multiple processing flows.
[0395] In one possible implementation, the multiple calculation rules include at least one of the following:
[0396] The first calculation rule is used to determine the feasibility of the processing procedure;
[0397] The second calculation rule is used to determine the degree of resource consumption or resource saving in the processing flow;
[0398] The third calculation rule is used to determine the time consumption or time saving of the processing flow.
[0399] In one possible implementation, the processing module 12 is further configured to:
[0400] Determine the type of resource change corresponding to the resource change event;
[0401] Based on the mapping relationship and the resource change type corresponding to the resource change event, the algorithm model corresponding to the resource change event is determined. The mapping relationship includes multiple resource change types and the algorithm model corresponding to each resource change type.
[0402] In one possible implementation, the processing module 12 is further configured to:
[0403] Identify the executor corresponding to the target processing flow;
[0404] The executor is invoked to execute the target processing flow in order to handle resource change events.
[0405] Figure 11 This is a schematic diagram of the hardware structure of a computing device provided in an embodiment of this application. Please refer to [link / reference]. Figure 11 The computing device 20 can be the computing device in the above method embodiments. The computing device 20 may include a processor 21 and a memory 22, which are coupled together. The processor 21 and the memory 22 can communicate; for example, the processor 21 and the memory 22 communicate via a communication bus 23.
[0406] Memory 22 is used to store program instructions;
[0407] The processor 21 is used to execute program instructions to perform the technical solution as shown in the above method embodiments.
[0408] Optionally, the aforementioned processor can be a CPU, or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. A general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in the embodiments of this application can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0409] This application provides a computer-readable storage medium storing computer-executable instructions; when executed by a processor, the computer-executable instructions are used to implement the cluster management method shown in the above embodiments.
[0410] This application provides a computer program product, which includes a computer program. When the computer program is executed by a processor, it causes the computer to perform the cluster management method as shown in the above embodiments.
[0411] All or part of the steps in the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a readable memory. When the program is executed, it performs the steps of the above-described method embodiments; and the aforementioned memory (storage medium) includes: read-only memory (ROM), RAM, flash memory, hard disk, solid-state drive, magnetic tape, floppy disk, optical disk, and any combination thereof.
[0412] This application describes embodiments with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processing unit of a general-purpose computer, special-purpose computer, embedded processor, or other programmable device to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable device, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0413] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0414] These computer program instructions may also be loaded onto a computer or other programmable device to cause a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable device for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0415] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the embodiments of this application, and are not intended to limit them. Although the embodiments of this application have been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features therein. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A cluster management method, characterized in that, When applied in a computing device, the method includes: Obtain resource change events for the business cluster; Determine the algorithm model corresponding to the resource change event and the multiple processing flows corresponding to the resource change event; The system acquires the operational data of the business cluster, which includes cluster data and / or resource data. The cluster data is the data generated by the business cluster in the computing device on which the business cluster runs, and the resource data is the data generated by the business cluster in the management platform. The management platform is used to manage the business cluster. Based on the running data and the multiple processing flows, the input data of the algorithm model is determined; Based on the algorithm model and the input data, a target processing flow is determined among the plurality of processing flows; The resource change event is processed through the target processing flow.
2. The method according to claim 1, characterized in that, The algorithm model includes: Multiple calculation rules; The priority order among the multiple calculation rules.
3. The method according to claim 2, characterized in that, Based on the operational data and the multiple processing flows, the input data for the algorithm model is determined, including: Based on the operational data, determine at least one influencing factor for each of the plurality of calculation rules; The input data is determined based on at least one influencing factor of each calculation rule, the priority order among the multiple calculation rules, and the multiple processing flows.
4. The method according to claim 3, characterized in that, The input data is determined based on at least one influencing factor of each calculation rule, the priority order among the multiple calculation rules, and the multiple processing flows, including: Based on the priority order among the multiple calculation rules, a first calculation matrix corresponding to the multiple calculation rules is determined, and the first calculation matrix is used to determine the weight corresponding to each calculation rule; For any given calculation rule, a second calculation matrix is determined based on the degree of influence of the at least one influencing factor on the calculation rule. The second calculation matrix is used to determine the weights of each influencing factor in the calculation rule. Based on at least one influencing factor of the plurality of calculation rules and the plurality of processing flows, a third calculation matrix is determined for each influencing factor in each calculation rule. The third calculation matrix is used to determine the influence weight of the influencing factor on the plurality of processing flows. The input data includes the first calculation matrix, the second calculation matrix corresponding to each calculation rule, and the third calculation matrix corresponding to each influencing factor in each calculation rule.
5. The method according to any one of claims 2-4, characterized in that, Based on the algorithm model and the input data, the target processing flow is determined from the plurality of processing flows: Based on the algorithm model and the input data, the recommended value corresponding to each processing flow in the plurality of processing flows is determined; The target processing flow is determined based on the recommended values corresponding to the multiple processing flows.
6. The method according to claim 5, characterized in that, Based on the algorithm model and the input data, the recommended value corresponding to each processing step in the plurality of processing steps is determined, including: Based on the first calculation matrix corresponding to multiple calculation rules in the input data, determine the weight corresponding to each calculation rule, and based on the first calculation matrix and the weights corresponding to each calculation rule, determine the first verification result of the first calculation matrix; Based on the second calculation matrix corresponding to each calculation rule in the input data, determine the weight of each influencing factor in each calculation rule, and based on the second calculation matrix corresponding to each calculation rule and the weight of each influencing factor in each calculation rule, determine the second verification result of the second calculation matrix corresponding to each calculation rule. Based on the third calculation matrix corresponding to each influencing factor in each calculation rule in the input data, determine the influence weight of each influencing factor in each calculation rule on multiple processing flows of the algorithm model. Based on the third calculation matrix corresponding to each influencing factor in each calculation rule and the influence weight of each influencing factor in each calculation rule on the multiple processing flows, determine the third verification result of the third calculation matrix corresponding to each influencing factor in each calculation rule. If the first verification result of the first calculation matrix, the second verification result of each second calculation matrix, and the third verification result of each third calculation matrix are verified as passed, the recommended value corresponding to each processing flow in the multiple processing flows is determined according to the weight corresponding to each calculation rule, the weight corresponding to each influencing factor in each calculation rule, and the influence weight of each influencing factor in each calculation rule on the multiple processing flows.
7. The method according to any one of claims 2-6, characterized in that, The plurality of calculation rules include at least one of the following: The first calculation rule is used to determine the feasibility of the processing procedure; The second calculation rule is used to determine the degree of resource consumption or resource saving in the processing flow; The third calculation rule is used to determine the time consumption or time saving of the processing flow.
8. The method according to any one of claims 1-7, characterized in that, Determining the algorithm model corresponding to the resource change event includes: Determine the type of resource change corresponding to the resource change event; Based on the mapping relationship and the resource change type corresponding to the resource change event, the algorithm model corresponding to the resource change event is determined. The mapping relationship includes multiple resource change types and the algorithm model corresponding to each resource change type.
9. The method according to any one of claims 1-8, characterized in that, The resource change event is processed through the target processing flow, including: Determine the executor corresponding to the target processing flow; The executor is invoked to execute the target processing flow in order to process the resource change event.
10. A computing device, characterized in that, include: Processor and memory; The processor and the memory are coupled; The memory is used to store program instructions; The processor is used to execute the program instructions to implement the method as described in any one of claims 1 to 9.