Container management method, device, server, storage medium and computer program product

By collecting multi-cloud information from a primary server and dynamically adjusting the number of container replicas on local and third-party clouds, the problem of inflexible container scheduling mechanisms across multiple clouds is solved, achieving efficient multi-cloud container management and resource utilization.

CN118802922BActive Publication Date: 2026-01-27CHINA MOBILE COMM LTD RES INST +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410295228.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-03-14
Publication Date
2026-01-27
Estimated Expiration
2044-03-14

AI Technical Summary

Technical Problem

Existing technologies lack flexible container scheduling mechanisms across multiple clouds, and the scalability and customizability of multi-cloud scheduling strategies are insufficient, resulting in low efficiency in multi-cloud container management.

Method used

By collecting or reading relevant information from multiple clouds through a first server, scheduling or managing containers according to configuration information, including monitoring metric data and trigger conditions, dynamically adjusting the number of container replicas in the local cloud and third-party clouds, and using interfaces, services, tools or middleware to obtain and process information, cross-cloud container management can be achieved.

Benefits of technology

It improves the flexibility of container scheduling and the scalability of management across multiple clouds, enabling efficient scheduling of multi-cloud containers and rational utilization of resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118802922B_ABST
    Figure CN118802922B_ABST
Patent Text Reader

Abstract

The application discloses a container management method and device, a server, a storage medium and a computer program product. The method comprises the following steps: a first server schedules or manages containers of one or more clouds according to first information. The first information represents relevant information of the one or more clouds collected or read by the first server.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication technology, and in particular to a container management method, apparatus, server, storage medium, and computer program product. Background Technology

[0002] In related technologies, multi-cloud infrastructure can be used for business deployment and support, but there is a lack of mechanisms for managing or scheduling containers across multiple clouds. Summary of the Invention

[0003] To address the related technical issues, embodiments of this application provide a container management method, apparatus, server, storage medium, and computer program product.

[0004] The technical solution of this application embodiment is implemented as follows:

[0005] This application provides a container management method applied to a first server, the method comprising:

[0006] Based on the first information, containers of one or more clouds are scheduled or managed; wherein the first information represents relevant information of one or more clouds collected or read by the first server.

[0007] In the above scheme, scheduling or managing containers in one or more clouds based on the first information includes:

[0008] If the first information satisfies the first condition, schedule or manage containers in one or more clouds.

[0009] The method in the above scheme further includes:

[0010] Based on the configuration information, the first information is obtained, wherein the configuration information represents the relevant configuration for collecting or obtaining the first information, and the first information includes data of monitoring indicators.

[0011] The method in the above scheme further includes:

[0012] Obtain or receive the configuration information.

[0013] In the above scheme, the configuration information includes one or more of the following:

[0014] Information used to obtain primary information from interfaces, services, tools, or middleware;

[0015] Metadata;

[0016] Access address;

[0017] Access protocol;

[0018] The name of the monitoring indicator;

[0019] Trigger threshold;

[0020] first condition;

[0021] The first interval represents the interval at which data of the monitoring indicators are acquired;

[0022] Cooling time, during which the first condition fails;

[0023] The second information is the operation or action performed when the data representing the monitoring indicator in the second information meets the first condition.

[0024] The second interval represents the time interval at which the number of replicas of the container application is adjusted;

[0025] Authentication information;

[0026] Numeric type.

[0027] In the above scheme, the second information includes one or more of the following:

[0028] The third piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud;

[0029] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on a third-party cloud;

[0030] The fifth piece of information is used to indicate that the number of replicas of the container application on the local cloud and the third-party cloud should be adjusted according to a first ratio, wherein the first ratio represents the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0031] In the above scheme, the third information includes one or more of the following:

[0032] First percentage;

[0033] The maximum number of replicas of a container application on the local cloud;

[0034] The minimum number of replicas of a container application on the local cloud;

[0035] The first value represents the number of replicas of the container application added or removed on the local cloud.

[0036] In the above scheme, the fourth information includes one or more of the following:

[0037] Second percentage;

[0038] The maximum number of replicas of a container application on a third-party cloud;

[0039] The minimum number of replicas of a container application on a third-party cloud;

[0040] The second value represents the number of replicas of the container application added or removed on a third-party cloud.

[0041] In the above scheme, scheduling or managing containers in one or more clouds based on the first information includes:

[0042] Adjust the number of replicas of the container application in the container cluster on the local cloud; and / or

[0043] Adjust the number of replicas of the container application in the container cluster of the third-party cloud; and / or

[0044] Send a sixth message to one or more second servers. The sixth message is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second servers.

[0045] In the above scheme, adjusting the number of replicas of the container application in the container cluster of the local cloud includes:

[0046] Based on the third or fifth piece of information, adjust the number of replicas of the container application in the container cluster on the local cloud; among which,

[0047] The third information is used to indicate the adjustment of the number of replicas of the container application in the local cloud; the fifth information is used to indicate the adjustment of the number of replicas of the container application in the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application in the local cloud and the third-party cloud.

[0048] In the above scheme, sending the sixth information to one or more second servers includes:

[0049] Based on the fourth or fifth information, send the sixth information to one or more second servers; wherein...

[0050] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; the fifth piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0051] In the above scheme, adjusting the number of replicas of the container application in the container cluster of the third-party cloud includes:

[0052] Based on the fourth or fifth piece of information, adjust the number of replicas of the container application in the container cluster of the third-party cloud; among which,

[0053] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; the fifth piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0054] In the above scheme, the data of the monitoring indicators include one or more of the following:

[0055] The number of replicas of a containerized application deployed across clouds;

[0056] The deployment location of a copy of the container application;

[0057] Data on monitoring metrics for container clusters in the local cloud;

[0058] Monitoring metrics data for container clusters from third-party cloud providers;

[0059] Data of monitoring metrics read through interfaces, services, tools, or middleware used to obtain primary information.

[0060] In the above scheme, the monitoring metrics for the container cluster include one or more of the following:

[0061] The number of container clusters;

[0062] The number of containers in a single container cluster;

[0063] The capacity of the container.

[0064] This application embodiment also provides a container management method applied to a second server, the method comprising:

[0065] Receive the sixth message sent by the first server. The sixth message is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server.

[0066] In the above scheme, the sixth piece of information includes one or more of the following:

[0067] Second percentage;

[0068] The maximum number of replicas of a container application on a third-party cloud;

[0069] The minimum number of replicas of a container application on a third-party cloud;

[0070] The first multiple, which is determined according to the first ratio, is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud by the first multiple. The first ratio represents the ratio of the number of replicas of the container application on the local cloud to the number of replicas on the third-party cloud.

[0071] The second value represents the number of replicas of the container application added or removed on the third-party cloud, where the third-party cloud represents the cloud corresponding to the second server.

[0072] This application also provides a container management device, including:

[0073] A management unit is configured to schedule or manage containers of one or more clouds based on first information; wherein the first information represents relevant information of one or more clouds collected or read by the first server.

[0074] This application also provides a container management device, including:

[0075] The receiving unit is used to receive the sixth information sent by the first server. The sixth information is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server.

[0076] This application embodiment also provides a first server, including: a first processor and a first communication interface; wherein,

[0077] The first processor is configured to schedule or manage containers of one or more clouds based on first information; wherein the first information represents relevant information of one or more clouds collected or read by the first server.

[0078] This application embodiment also provides a second server, including: a second processor and a second communication interface; wherein,

[0079] The second communication interface is used to receive the sixth information sent by the first server. The sixth information is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server.

[0080] This application also provides a server, including a processor and a memory for storing computer programs that can run on the processor.

[0081] When the processor runs the computer program, it executes the steps of either the first server-side method or the second server-side method.

[0082] This application embodiment also provides a storage medium storing a computer program thereon, wherein when the computer program is executed by a processor, it implements the steps of the method described in any of the first server-side methods described above, or implements the steps of any of the second server-side methods described above.

[0083] This application also provides a computer program product, characterized in that it includes a computer program, wherein the computer program, when executed by a processor, implements the steps of the method described in any of the above-mentioned embodiments.

[0084] In the container management method, apparatus, server, storage medium, and computer program product provided in the embodiments of this application, a first server schedules or manages containers of one or more clouds based on first information; the first information represents relevant information of one or more clouds collected or read by the first server; a second server receives sixth information sent by the first server, the sixth information being used to adjust the number of replicas of the container application in the third-party cloud and / or the container cluster of the second server. It can be seen that in the embodiments of this application, the first server can collect or read relevant information of one or more clouds, and schedule or manage the relevant information of one or more clouds based on the collected or read information. The above scheme can realize the management or scheduling of containers across multiple clouds. Since the first information can be collected or read by the first server on demand, the flexibility of the container scheduling mechanism across multiple clouds can also be improved. Attached Figure Description

[0085] Figure 1 This is a schematic diagram of a container management method according to an embodiment of this application;

[0086] Figure 2 This is a schematic diagram of a container management method according to an embodiment of this application;

[0087] Figure 3 This is an interactive schematic diagram of a container management method according to an application embodiment of this application;

[0088] Figure 4 This is an interactive schematic diagram of a container management method according to an application embodiment of this application;

[0089] Figure 5 This is a schematic diagram of a container management device according to an embodiment of this application;

[0090] Figure 6 This is a schematic diagram of a container management device according to an embodiment of this application;

[0091] Figure 7 This is a schematic diagram of the first server structure according to an embodiment of this application;

[0092] Figure 8 This is a schematic diagram of the first server structure in an embodiment of this application. Detailed Implementation

[0093] With the development of cloud computing, the scale and layout of cloud resource pools and cloud resource services have become increasingly sophisticated, and utilizing multi-cloud infrastructure for business deployment and support has become a technological trend. An application can be deployed in a distributed manner across the resource pools of different cloud service providers.

[0094] Multi-cloud management involves processes and mechanisms across multiple resource pools and service providers. In the industry and open-source space, technical solutions for unified scheduling and management of multi-container cluster resource pools have emerged. For example, the open-source project Karmada achieves control over multiple clusters and cross-resource pool scheduling of resources within multiple container pools by building a unified control plane on top of multiple container clusters.

[0095] In terms of standardization, international standards organizations have already conducted research on cloud computing standards, particularly in the areas of container management and multi-cloud container management. While related technologies define the container management architecture for single-container clusters and the requirements for inter-cloud container management functions (including container scheduling, container application management (cross-cloud container application management), resource management (cross-cloud resource management), and inter-cloud interaction management (cross-cloud information interaction management), and container applications can be understood as containerized applications that support full lifecycle management using containers, specific implementation methods, functions, and interfaces for multi-cloud container management have not yet been clearly defined or specified.

[0096] In related technologies, the main drawback of applying distributed operation or deployment in containers across multiple clouds is:

[0097] 1. The scheduling mechanism for containers across multiple clouds is not flexible enough, and it mainly relies on common indicators obtained at the resource level for scheduling reference and decision-making.

[0098] 2. Multi-cloud scheduling strategies are often built into the system, and due to the complexity of multi-cloud system processes, they lack scalability and customizability.

[0099] Based on this, in various embodiments of this application, a first server schedules or manages containers in one or more clouds according to first information; the first information represents relevant information about one or more clouds collected or read by the first server; a second server receives sixth information sent by the first server, the sixth information being used to adjust the number of replicas of the container application in the third-party cloud and / or the container cluster of the second server. It can be seen that in the embodiments of this application, the first server can collect or read relevant information about one or more clouds, and schedule or manage the relevant information about one or more clouds according to the collected or read information. The above scheme can realize the management or scheduling of containers across multiple clouds. Since the first information can be collected or read by the first server on demand, the flexibility of the container scheduling mechanism across multiple clouds can also be improved.

[0100] The present application will now be described in further detail with reference to the accompanying drawings and embodiments.

[0101] This application provides a container management method applied to a first server; the first server can be understood as a cloud server, a cloud service provider's device or server, or a device or server providing services to a cloud service or cloud; different cloud services deployed on the same server can belong to the same cloud. Figure 1 As shown, the method includes:

[0102] Step 101: Based on the first information, schedule or manage containers in one or more clouds.

[0103] The first information represents one or more cloud-related information collected or read by the first server.

[0104] Here, the first server collects or acquires first information and schedules or manages containers in one or more clouds based on this first information. Specifically, the first server can schedule or manage containers in a local cloud and / or containers in a third-party cloud based on the first information. "First server" generally refers to any server capable of collecting or acquiring the first information; for the first server, "local cloud" refers to the cloud provided by the first server; "third-party cloud" generally refers to any cloud other than the local cloud, provided by a second server. "Second server" generally refers to any server other than the first server; a second server can also be called another server, and the number of second servers can be one or more. Containers (Docker) are isolated from each other and have lifecycles.

[0105] To achieve dynamic container management, improve the flexibility of container scheduling, and rationally utilize container resources, trigger conditions or events related to initiating container management can be set. Based on this, in one embodiment, scheduling or managing one or more cloud containers according to the first information includes:

[0106] If the first information satisfies the first condition, schedule or manage containers in one or more clouds.

[0107] Here, upon obtaining the first information, it is determined whether the first information satisfies the first condition. If the first information satisfies the first condition, containers in one or more clouds are scheduled or managed, or containers in one or more clouds are scheduled or managed based on the first information. If the first information does not satisfy the first condition, the existing settings or configurations are maintained, and containers in any cloud are not scheduled or managed, or the relevant configurations of containers in any cloud are not changed. The first condition can be understood as a constraint condition of the first information, or a trigger condition or trigger event for container management; the first information satisfying the first condition can be understood as the occurrence of a trigger event.

[0108] To obtain rich primary information and improve the scalability of the container management solution, users are allowed to customize or configure which information the primary server needs to collect based on actual conditions or requirements. Therefore, in one embodiment, the method further includes:

[0109] Based on the configuration information, the first information is obtained, wherein the configuration information represents the relevant configuration for collecting or obtaining the first information; the first information includes data of monitoring indicators.

[0110] Here, the first server obtains configuration information and uses this information to acquire or collect first information. Configuration information can be understood as the configuration information for triggers, and triggers can be understood as interfaces, services, instances, tools, or middleware used to acquire the first information. Triggers include custom triggers and / or third-party triggers. For example, triggers may include: the server resource monitoring and optimization tool Prometheus, and / or the message middleware Kafka.

[0111] It should be noted that monitoring metrics include container-related monitoring metrics for one or more clouds, and / or container application-related monitoring metrics. Container-related monitoring metrics may include the number and / or capacity of containers. Container application-related monitoring metrics may include the number of replicas of the container application, the identifier of the container and / or cloud in which the container application is deployed, and / or the cloud. A container application represents an application deployed or running in a container; a container application can be understood as a containerized application that supports full lifecycle management of applications using containers; a container application can be simply referred to as an application.

[0112] To achieve dynamic management of containers, improve the flexibility of container scheduling, and make rational use of container resources, in one embodiment, the monitoring metrics data includes one or more of the following:

[0113] The number of replicas of a containerized application deployed across clouds;

[0114] The deployment location of a copy of the container application;

[0115] Data on monitoring metrics for container clusters in the local cloud;

[0116] Monitoring metrics data for container clusters from third-party cloud providers;

[0117] Data of monitoring metrics read through interfaces, services, tools, or middleware used to obtain primary information.

[0118] Here, since a container application can be deployed or run in one or more containers, the deployment location of a container application replica can include the identifier of the container deploying the replica, and / or the identifier of the cloud to which the container deploying the replica belongs. A container application can have one or more replicas. A replica of a container application can be described as a container application replica. The number of container application replicas deployed across clouds, and the deployment locations of the container application replicas, can be collectively referred to as the container application's state information.

[0119] As mentioned above, for the first server, the third-party cloud represents the cloud provided by the second server, or the cloud corresponding to the second server. Therefore, the monitoring metrics data of the container cluster of the third-party cloud can be understood as the monitoring metrics data of the container cluster of the second server.

[0120] The monitoring metrics data read through the interface, service, tool, or middleware used to obtain the first information can be understood as monitoring metrics data read from a third-party trigger, or monitoring metrics data of one or more clouds read through a third-party interface, service, tool, or middleware.

[0121] To further enhance the flexibility and scalability of container management, in one embodiment, the monitoring metrics for the container cluster include one or more of the following:

[0122] The number of container clusters;

[0123] The number of containers in a single container cluster;

[0124] The capacity of the container.

[0125] Here, the number of containers in a single container cluster can be described as the total number of containers in a single container cluster, which refers to the total number of containers contained in a single container cluster.

[0126] The number of container clusters, the number of containers in a single container cluster, and the capacity of the containers can be collectively referred to as the cloud's resource status.

[0127] Before obtaining the first information based on the configuration information, it is necessary to obtain the configuration information first. Based on this, in one embodiment, the method further includes:

[0128] Obtain or receive the configuration information.

[0129] Here, the configuration information can be pre-configured, for example, configured in the first server at the factory; or it can be customized according to actual needs or user requirements, which can be obtained after the first server is manufactured. This further improves the flexibility and scalability of container management.

[0130] To further improve the flexibility and scalability of container management, in one embodiment, the configuration information includes one or more of the following:

[0131] Information used to obtain primary information from interfaces, services, tools, or middleware;

[0132] Metadata;

[0133] Access address;

[0134] Access protocol;

[0135] The name of the monitoring indicator;

[0136] Trigger threshold;

[0137] first condition;

[0138] The first interval represents the interval at which data of the monitoring indicators are acquired;

[0139] Cooling time, during which the first condition fails;

[0140] The second information is the operation or action performed when the data representing the monitoring indicator in the second information meets the first condition.

[0141] The second interval represents the time interval at which the number of replicas of the container application is adjusted;

[0142] Authentication information;

[0143] Numeric type.

[0144] Here, the information of the interface, service, tool, or middleware used to obtain the first information may include one or more of the following: the type of the interface, service, tool, or middleware used to obtain the first information, the name, call address, and / or access address of the interface, service, tool, or middleware used to obtain the first information.

[0145] Metadata represents data, parameters, or information that describe primary information, or represents parameters required to collect or acquire primary information. Metadata can correspond to an interface, service, tool, or middleware used to acquire the primary information, and different metadata can be configured for different interfaces, services, tools, or middleware. Different metadata can be understood as metadata containing at least partially different content.

[0146] Metadata may include one or more of the following: access address, access protocol, name of monitoring metric, value type, authentication information, trigger threshold, and trigger condition. The access address may include the access address of the interface used to obtain the first information, and / or the access address of the first data. Authentication information is used to authenticate the visitor; the authentication information may be a token. The trigger threshold can be understood as a trigger limit, a threshold for the data of the monitoring metric, or a limit on the data of the monitoring metric. The first condition can be set according to the trigger threshold; the first condition may be that the data of the monitoring metric is greater than and / or equal to the trigger threshold, or that the data of the monitoring metric is less than and / or equal to the trigger threshold. The trigger threshold may include one or more of the following: a threshold for the number of replicas of the container application on the local cloud, a threshold for the number of replicas of the container application on a third-party cloud, and a threshold for the container capacity.

[0147] The first interval can be understood as the data reading interval, data acquisition interval, or data acquisition interval. The cooldown time can be understood as the cooldown interval or cooldown period.

[0148] To further enhance the flexibility of container management, multiple operations or actions can be configured to be performed when the data of the monitoring metrics meet a first condition. Based on this, in one embodiment, the second information includes one or more of the following:

[0149] The third piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud;

[0150] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on a third-party cloud;

[0151] The fifth piece of information is used to indicate that the number of replicas of the container application on the local cloud and the third-party cloud should be adjusted according to a first ratio, wherein the first ratio represents the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0152] Here, the fifth piece of information can be used to instruct the scaling up or down of the number of replicas of the container application on the local cloud and the third-party cloud according to the first ratio. The first ratio can be understood as a weight ratio, a weight ratio, or a weight proportion. The first ratio represents the ratio between the number of replicas of the same container application on the local cloud and the number of replicas on the third-party cloud. The first ratio is used to scale up or down the number of replicas of the container application on the local cloud and the third-party cloud. The first ratio can include a scaling up ratio and / or a scaling down ratio. The scaling up ratio can be understood as the ratio used when scaling up the container application, and the scaling down ratio can be understood as the ratio used when scaling down the container application. The scaling up ratio and the scaling down ratio can be the same or different.

[0153] To flexibly adjust the number of replicas of container applications on the local cloud, in order to add, remove, or expand the functionality of container applications, in one embodiment, the third information includes one or more of the following:

[0154] First percentage;

[0155] The maximum number of replicas of a container application on the local cloud;

[0156] The minimum number of replicas of a container application on the local cloud;

[0157] The first value represents the number of replicas of the container application added or removed on the local cloud.

[0158] Here, the first percentage can be used to indicate whether to scale up or down the number of replicas of a container application in the local cloud by a first percentage. The number of replicas of any container application in the local cloud is less than or equal to the upper limit of the number of replicas of the container application in the local cloud, and the number of replicas of any container application in the local cloud is greater than or equal to the lower limit of the number of replicas of the container application in the local cloud. The first value is a fixed value used to indicate whether to scale up or down the number of replicas of the container application in the local cloud by the first value; that is, for the same container application, the number of replicas added or removed in the local cloud each time is the first value.

[0159] It should be noted that the first percentage can include both the scale-up percentage and the scale-down percentage. The scale-up percentage can be understood as the percentage used when scaling up the container application, and the scale-down percentage can be understood as the percentage used when scaling down the container application. The scale-up percentage and the scale-down percentage can be the same or different. The parameters included in the third information can be set according to the actual situation.

[0160] To flexibly adjust the number of replicas of container applications on the local cloud, in order to add, remove, or expand the functionality of container applications, in one embodiment, the fourth information includes one or more of the following:

[0161] Second percentage;

[0162] The maximum number of replicas of a container application on a third-party cloud;

[0163] The minimum number of replicas of a container application on a third-party cloud;

[0164] The second value represents the number of replicas of the container application added or removed on a third-party cloud.

[0165] Here, the second percentage can be used to indicate scaling up or down the number of replicas of a container application on a third-party cloud by a second percentage. The number of replicas of any container application on the third-party cloud is less than or equal to the upper limit of the number of replicas of the container application on the third-party cloud, and the number of replicas of any container application on the third-party cloud is greater than or equal to the lower limit of the number of replicas of the container application on the third-party cloud. The second percentage can include a scale-up percentage and / or a scale-down percentage. The scale-up percentage and the scale-down percentage can be the same or different. The number of replicas of a container application on a third-party cloud can be described as the number of replicas of the container application in the container cluster on the third-party cloud.

[0166] The second value is a fixed value, used to indicate whether to scale up or down the number of replicas of the container application on the third-party cloud according to the second value. In other words, for the same container application, the number of replicas added or removed on the third-party cloud each time is the first number. The parameters included in the fourth information can be set according to the actual situation.

[0167] To dynamically monitor, manage, and schedule the number of replicas of container applications across multi-cloud container clusters, in one embodiment, scheduling or managing containers in one or more clouds based on first information includes:

[0168] Adjust the number of replicas of the container application in the container cluster on the local cloud; and / or

[0169] Adjust the number of replicas of the container application in the container cluster of the third-party cloud; and / or

[0170] Send a sixth message to one or more second servers. The sixth message is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second servers.

[0171] Here, the number of replicas of the same container application on a third-party cloud can be understood as the sum of the number of replicas of the same container application in the container clusters of various second servers.

[0172] To flexibly adjust the number of replicas of a container application in the local cloud to add, remove, or expand the functionality of the container application, in one embodiment, adjusting the number of replicas of the container application in the container cluster of the local cloud includes:

[0173] Based on the third or fifth piece of information, adjust the number of replicas of the container application in the container cluster on the local cloud; among which,

[0174] The third information is used to indicate the adjustment of the number of replicas of the container application in the local cloud; the fifth information is used to indicate the adjustment of the number of replicas of the container application in the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application in the local cloud and the third-party cloud.

[0175] Here, the first server can, based on the third or fifth information, reduce the number of replicas of the container application in the container cluster of the local cloud when the capacity of the container in the local cloud is less than or equal to the first threshold; and increase the number of replicas of the container application in the container cluster of the local cloud when the capacity of the container in the local cloud is greater than or equal to the second threshold. Both the first and second thresholds are the trigger thresholds mentioned above, and the first threshold can be less than or equal to the second threshold.

[0176] If the number of containers in the container cluster of the first server is less than or equal to the third threshold, the first server may, based on the third or fifth information, reduce the number of replicas of the container application in the container cluster of the local cloud, or increase the number of containers in the container cluster of the first server to increase the number of replicas of the container application in the container cluster of the local cloud. Alternatively, if the number of containers in the container cluster of the first server is greater than or equal to the fourth threshold, the first server may, based on the third or fifth information, increase the number of replicas of the container application in the container cluster of the local cloud. Both the third and fourth thresholds are trigger thresholds as described above, and the third threshold can be less than or equal to the fourth threshold.

[0177] It should be noted that before adjusting the number of replicas of the container application in the container cluster of the local cloud according to the fifth information, it is necessary to first determine the number of replicas of the container application in the local cloud and the third-party cloud respectively, and determine the first ratio, so as to adjust the number of replicas of the container application in the container cluster of the local cloud according to the first ratio.

[0178] To flexibly adjust the number of replicas of container applications on third-party clouds, and to add, remove, or expand the functionality of container applications, in one embodiment, sending the sixth information to one or more second servers includes:

[0179] Based on the fourth or fifth information, send the sixth information to one or more second servers; wherein...

[0180] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; the fifth piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0181] Here, the first server can determine the sixth information based on the fourth or fifth information, and send the sixth information to one or more second servers. The sixth information is used to adjust the number of replicas of the container application in the third-party cloud and / or the container clusters of the second servers. The number of replicas of the same container application in the third-party cloud can be understood as the sum of the number of replicas of that container application in the container clusters of various second servers. The sixth information may include one or more of the following:

[0182] Second percentage;

[0183] The maximum number of replicas of a container application on a third-party cloud;

[0184] The minimum number of replicas of a container application on a third-party cloud;

[0185] The first multiple, which is determined according to the first ratio, is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud by the first multiple. The first ratio represents the ratio of the number of replicas of the container application on the local cloud to the number of replicas on the third-party cloud.

[0186] The second value represents the number of replicas of the container application added or removed on the third-party cloud, where the third-party cloud represents the cloud corresponding to the second server.

[0187] Here, the first multiple can be an integer or a decimal. The sixth piece of information may also include the identifier of the third-party cloud, and / or the identifier of the second server to which the third-party cloud belongs.

[0188] To flexibly adjust the number of replicas of a container application on a third-party cloud to add, remove, or expand the functionality of the container application, in one embodiment, adjusting the number of replicas of the container application in the container cluster of the third-party cloud includes:

[0189] Based on the fourth or fifth piece of information, adjust the number of replicas of the container application in the container cluster of the third-party cloud; among which,

[0190] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; the fifth piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0191] Here, the first server can, based on the third or fifth information, reduce the number of replicas of the container application in the container cluster of the third-party cloud if the container capacity of the third-party cloud is less than or equal to the fifth threshold; and increase the number of replicas of the container application in the container cluster of the third-party cloud if the container capacity of the third-party cloud is greater than or equal to the sixth threshold. Both the fifth and sixth thresholds are the trigger thresholds mentioned above, and the fifth threshold can be less than or equal to the sixth threshold.

[0192] To flexibly adjust the number of replicas of a container application on a third-party cloud to add, remove, or expand the functionality of the container application, in one embodiment, adjusting the number of replicas of the container application in the container cluster of the third-party cloud includes:

[0193] Based on the fourth or fifth piece of information, adjust the number of replicas of the container application in the container cluster of the third-party cloud; among which,

[0194] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; the fifth piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0195] Correspondingly, this application also provides a container management method applied to a second server, which can be understood as a cloud server, a cloud service provider's device, or a server; different cloud services deployed on the same server can belong to the same cloud. For example... Figure 2 As shown, the method includes:

[0196] Step 201: Receive the sixth message sent by the first server.

[0197] The sixth piece of information is used to adjust the number of replicas of the container application in the container cluster on the third-party cloud and / or the second server.

[0198] Here, the second server receives the sixth message sent by the first server and adjusts the number of replicas of the container application in the third-party cloud and / or the container cluster of the second server according to the sixth message. The replicas of the container application in the third-party cloud include replicas of the container application in the container cluster of the second server, and may also include replicas of the container application in the container clusters of other second servers. The sixth message may carry the identifier of the third-party cloud. When the replicas of the container application in the third-party cloud include replicas of the container application in the container clusters of other second servers, the second server may also forward the sixth message to other second servers according to the identifier of the third-party cloud.

[0199] To facilitate the second server in adjusting the number of local replicas of the container application, in one embodiment, the sixth information includes one or more of the following:

[0200] Second percentage;

[0201] The maximum number of replicas of a container application on a third-party cloud;

[0202] The minimum number of replicas of a container application on a third-party cloud;

[0203] The first multiple, which is determined according to the first ratio, is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud by the first multiple. The first ratio represents the ratio of the number of replicas of the container application on the local cloud to the number of replicas on the third-party cloud.

[0204] The second value represents the number of replicas of the container application added or removed on the third-party cloud, where the third-party cloud represents the cloud corresponding to the second server.

[0205] Here, the sixth piece of information may also include the identifier of the third-party cloud, and / or the identifier of the second server to which the third-party cloud belongs.

[0206] The present application will be further described in detail below with reference to application examples.

[0207] like Figure 3 As shown, container management methods include:

[0208] Step 1: The first server obtains or receives configuration information, which represents the relevant configuration for collecting or acquiring the first information.

[0209] Here, the configuration information can be pre-configured or customized according to actual or user needs. The configuration information can be obtained after the first server leaves the factory.

[0210] Configuration information can be understood as the configuration information for triggers. A trigger can be understood as an interface, service, instance, tool, or middleware used to obtain initial information. Triggers include custom triggers and / or third-party triggers. For example, triggers may include: the server resource monitoring and optimization tool Prometheus, and / or the message middleware Kafka.

[0211] The configuration information may include one or more of the following:

[0212] Information used to obtain primary information from interfaces, services, tools, or middleware;

[0213] Metadata;

[0214] Access address;

[0215] Access protocol;

[0216] The name of the monitoring indicator;

[0217] Trigger threshold;

[0218] first condition;

[0219] The first interval represents the interval at which data of the monitoring indicators are acquired;

[0220] Cooling time, during which the first condition fails;

[0221] The second information is the operation or action performed when the data representing the monitoring indicator in the second information meets the first condition.

[0222] The second interval represents the time interval at which the number of replicas of the container application is adjusted;

[0223] Authentication information;

[0224] Numeric type.

[0225] The second piece of information includes one or more of the following:

[0226] The third piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud;

[0227] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on a third-party cloud;

[0228] The fifth piece of information is used to indicate how to adjust the number of replicas of the container application on the local cloud and the third-party cloud according to a first ratio. The first ratio represents the ratio of the number of replicas of the container application on the local cloud to the number of replicas on the third-party cloud. The first ratio may include an expansion ratio and / or a reduction ratio. The expansion ratio and the reduction ratio may be the same or different.

[0229] The third information includes one or more of the following:

[0230] The first percentage may include an expansion percentage and / or a reduction percentage. The expansion percentage and the reduction percentage may be the same or different.

[0231] The maximum number of replicas of a container application on the local cloud;

[0232] The minimum number of replicas of a container application on the local cloud;

[0233] The first value represents the number of replicas of the container application added or removed on the local cloud.

[0234] The fourth piece of information includes one or more of the following:

[0235] The second percentage may include the percentage of expansion and / or the percentage of reduction. The expansion percentage and the reduction percentage may be the same or different.

[0236] The maximum number of replicas of a container application on a third-party cloud;

[0237] The minimum number of replicas of a container application on a third-party cloud;

[0238] The second value represents the number of replicas of the container application added or removed on a third-party cloud.

[0239] For example, the minimum number of replicas of a container application on the local cloud can be 1, and the maximum number of replicas of a container application on the local cloud can be 20; the minimum number of replicas of a container application on a third-party cloud can be 1; the maximum number of replicas of a container application on the local cloud can be 20, and the maximum number of replicas of a container application on a third-party cloud can be 20; the first percentage can be 10%, and the second percentage can be 10%.

[0240] Step 2: The first server obtains the first information based on the configuration information. The first information includes data on monitoring metrics.

[0241] In one embodiment, the data for the monitoring metrics includes one or more of the following:

[0242] The number of replicas of a containerized application deployed across clouds;

[0243] The deployment location of a copy of the container application;

[0244] Data on monitoring metrics for container clusters in the local cloud;

[0245] Monitoring metrics data for container clusters from third-party cloud providers;

[0246] Data of monitoring metrics read through interfaces, services, tools, or middleware used to obtain primary information.

[0247] The monitoring metrics for container clusters include one or more of the following:

[0248] The number of container clusters;

[0249] The number of containers in a single container cluster;

[0250] The capacity of the container.

[0251] Step 3: The first server schedules or manages one or more cloud containers if the first information meets the first condition.

[0252] The scheduling or management of containers in one or more clouds includes one or more of the following:

[0253] The first server adjusts the number of replicas of the container application in the container cluster of the local cloud based on the third or fifth information.

[0254] The first server sends a sixth message to one or more second servers based on the fourth or fifth message; wherein,

[0255] The third information is used to indicate the adjustment of the number of replicas of the container application in the local cloud; the fifth information is used to indicate the adjustment of the number of replicas of the container application in the local cloud and the third-party cloud according to the first ratio, the first ratio representing the ratio of the number of replicas of the container application in the local cloud and the third-party cloud; the sixth information is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server.

[0256] The sixth piece of information includes one or more of the following:

[0257] Second percentage;

[0258] The maximum number of replicas of a container application on a third-party cloud;

[0259] The minimum number of replicas of a container application on a third-party cloud;

[0260] The first multiple, determined according to the first ratio, is used to indicate the number of replicas of the container application on the third-party cloud to be adjusted by the first multiple. The first ratio represents the ratio of the number of replicas of the container application on the local cloud to the number of replicas on the third-party cloud.

[0261] The second value represents the number of replicas of the container application added or removed on the third-party cloud, where the third-party cloud represents the cloud corresponding to the second server.

[0262] The sixth message received by different second servers may contain the same or different content.

[0263] Step 4: The second server receives the sixth message.

[0264] Step 5: Based on the sixth information, the second server adjusts the number of replicas of the container application in the container cluster of the third-party cloud, or adjusts the number of replicas of the container application in the container cluster of the second server.

[0265] It should be noted that "first server" refers to any server in general, and "second server" refers to any server other than the first server. After executing step 5, the second server can also return the execution result to the first server, so that the first server can update the number of replicas of the container application on the local cloud and the third-party cloud.

[0266] Different servers can correspond to different cloud service providers or different cloud providers.

[0267] It should be noted that, as Figure 4 As shown, the first and second servers include the following functions or modules: cross-cloud container application management module, cross-cloud container scheduling module, cross-cloud resource management module, cross-cloud information interaction management module, and local cloud container management module.

[0268] The cross-cloud container scheduling module may include a cross-cloud event-driven controller and a cross-cloud metrics server. These two functions or modules are newly added. The cross-cloud event-driven controller and the cross-cloud metrics server can be named otherwise. The cross-cloud event-driven controller is used to obtain or collect first information based on configuration information. The cross-cloud metrics server is used to receive or obtain configuration information (the configuration information can be user-defined configuration information according to actual conditions), and to trigger the management or scheduling of containers in one or more clouds when the first information meets the first condition.

[0269] The cross-cloud container application management module manages information related to container applications deployed across clouds, such as the number of container application replicas and their deployment locations. The cross-cloud container scheduling module schedules containers across clouds. The cross-cloud resource management module communicates with the cross-cloud information interaction management module and the local cloud container management module to forward information, such as forwarding fourth and / or fifth information. The cross-cloud information interaction management module interacts with information across clouds. The local cloud container management module manages containers in the local cloud or adjusts the number of replicas of container applications in the local container cluster.

[0270] The following is combined Figure 4 The container management method will be further explained.

[0271] ① The cross-cloud container scheduling module in the first server includes a cross-cloud metrics server that acquires or receives configuration information. The cross-cloud event-driven controller in the first server acquires or collects first information based on the configuration information. The cross-cloud metrics server in the first server determines whether the first information meets a first condition, and if the first information meets the first condition, triggers the management or scheduling of containers in one or more clouds. The cross-cloud metrics server in the first server can send third and / or fourth and / or fifth information to the cross-cloud information interaction management module in the first server based on second information. The second information represents the operation or action performed when the data of the monitoring metrics meets the first condition. The third information is used to indicate the adjustment of the number of replicas of the container application in the local cloud. The fourth information is used to indicate the adjustment of the number of replicas of the container application in the third-party cloud. The fifth information is used to indicate the adjustment of the number of replicas of the container application in the local cloud and the third-party cloud according to a first ratio. The first ratio represents the ratio of the number of replicas of the container application in the local cloud and the third-party cloud. For the first server, the number of replicas of the container application in the local cloud can be understood as the number of replicas of the container application in the container cluster of the first server. The number of replicas of the container application in the third-party cloud can be understood as the sum of the number of replicas of the container application in the container clusters of each second server.

[0272] ② The cross-cloud information interaction management module in the first server interacts with the cross-cloud information interaction management module in the second server, sending fourth and / or fifth information. It should be noted that the cross-cloud information interaction management module in the first server can also send third and / or fifth information to the local cloud container management module in the first server, so that the local cloud container management module in the first server can adjust the number of replicas of the container application in the local cloud based on the third and / or fifth information.

[0273] ③ The fourth and / or fifth information sent by the cross-cloud information interaction management module in the second server to the cross-cloud resource management module in the second server.

[0274] ④ The cross-cloud resource management module in the second server sends the received fourth and / or fifth information to the local cloud container management module in the second server.

[0275] ⑤ The local cloud container management module in the second server adjusts the number of replicas of the container application in the container cluster of the second server based on the fourth and / or fifth information. For example, the local cloud container management module in the second server deploys or deletes replicas of the container application in the container cluster of the second server. The number of replicas of the container application in the container cluster of the second server can be understood as the number of replicas of the container application in the corresponding third-party cloud on the second server.

[0276] ⑤ The cross-cloud resource management module in the second server feeds back or returns the execution results related to the fourth and / or fifth information to the cross-cloud resource management module in the second server. For example, it feeds back the number of replicas of the container application in the container cluster of the second server, the deployment location of the replicas of the container application, etc.

[0277] ⑥ The cross-cloud resource management module in the second server forwards the execution results related to the fourth and / or fifth information to the cross-cloud information interaction management module in the second server.

[0278] ⑦ The cross-cloud information interaction management module in the second server forwards the execution results related to the fourth and / or fifth information to the cross-cloud information interaction management module in the first server.

[0279] ⑧ The cross-cloud information interaction management module in the first server forwards the execution results related to the fourth and / or fifth information to the cross-cloud container application management module in the first server. The cross-cloud container application management module in the first server updates the relevant information of the container application based on the received execution results.

[0280] To implement the method on the first server side of this application embodiment, this application embodiment also provides a container management device, which is set on the first server, such as... Figure 5 As shown, the device includes:

[0281] Management unit 501 is used to schedule or manage containers of one or more clouds based on first information; wherein the first information represents relevant information of one or more clouds collected or read by the first server.

[0282] In one embodiment, the management unit 501 is specifically used to schedule or manage containers of one or more clouds when the first information satisfies the first condition.

[0283] In one embodiment, the device further includes:

[0284] The first acquisition unit is configured to acquire the first information based on configuration information, wherein the configuration information represents the relevant configuration for collecting or acquiring the first information; the first information includes data of monitoring indicators.

[0285] In one embodiment, the device further includes:

[0286] The second acquisition unit is used to acquire or receive the configuration information.

[0287] In one embodiment, the configuration information includes one or more of the following:

[0288] Information used to obtain primary information from interfaces, services, tools, or middleware;

[0289] Metadata;

[0290] Access address;

[0291] Access protocol;

[0292] The name of the monitoring indicator;

[0293] Trigger threshold;

[0294] first condition;

[0295] The first interval represents the interval at which data of the monitoring indicators are acquired;

[0296] Cooling time, during which the first condition fails;

[0297] The second information is the operation or action performed when the data representing the monitoring indicator in the second information meets the first condition.

[0298] The second interval represents the time interval at which the number of replicas of the container application is adjusted;

[0299] Authentication information;

[0300] Numeric type.

[0301] In one embodiment, the second information includes one or more of the following:

[0302] The third piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud;

[0303] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on a third-party cloud;

[0304] The fifth piece of information is used to indicate that the number of replicas of the container application on the local cloud and the third-party cloud should be adjusted according to a first ratio, wherein the first ratio represents the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0305] In one embodiment, the third information includes one or more of the following:

[0306] First percentage;

[0307] The maximum number of replicas of a container application on the local cloud;

[0308] The minimum number of replicas of a container application on the local cloud;

[0309] The first value represents the number of replicas of the container application added or removed on the local cloud.

[0310] In one embodiment, the fourth information includes one or more of the following:

[0311] Second percentage;

[0312] The maximum number of replicas of a container application on a third-party cloud;

[0313] The minimum number of replicas of a container application on a third-party cloud;

[0314] The second value represents the number of replicas of the container application added or removed on a third-party cloud.

[0315] In one embodiment, the management unit 501 is specifically used for:

[0316] Adjust the number of replicas of the container application in the container cluster on the local cloud; and / or

[0317] Adjust the number of replicas of the container application in the container cluster of the third-party cloud; and / or

[0318] Send a sixth message to one or more second servers. The sixth message is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second servers.

[0319] In one embodiment, the management unit 501 is specifically used to adjust the number of replicas of the container application in the container cluster of the local cloud based on third or fifth information; wherein,

[0320] The third information is used to indicate the adjustment of the number of replicas of the container application in the local cloud; the fifth information is used to indicate the adjustment of the number of replicas of the container application in the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application in the local cloud and the third-party cloud.

[0321] In one embodiment, the management unit 501 is specifically configured to send sixth information to one or more second servers based on fourth or fifth information; wherein,

[0322] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; the fifth piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0323] In one embodiment, the management unit 501 is specifically used to adjust the number of replicas of the container application in the container cluster of a third-party cloud based on the fourth or fifth information; wherein,

[0324] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; the fifth piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0325] In one embodiment, the data of the monitoring metric includes one or more of the following:

[0326] The number of replicas of a containerized application deployed across clouds;

[0327] The deployment location of a copy of the container application;

[0328] Data on monitoring metrics for container clusters in the local cloud;

[0329] Monitoring metrics data for container clusters from third-party cloud providers;

[0330] Data of monitoring metrics read through interfaces, services, tools, or middleware used to obtain primary information.

[0331] In one embodiment, the monitoring metrics for the container cluster include one or more of the following:

[0332] The number of container clusters;

[0333] The number of containers in a single container cluster;

[0334] The capacity of the container.

[0335] In practical applications, the management unit 501, the first acquisition unit, and the second acquisition unit can be implemented by a processor in the container management device combined with a communication interface.

[0336] To implement the method on the second server side of this application embodiment, this application embodiment also provides a container management device, which is set on the second server, such as... Figure 6 As shown, the device includes:

[0337] The receiving unit 601 is used to receive the sixth information sent by the first server, which is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server.

[0338] In one embodiment, the sixth information includes one or more of the following:

[0339] Second percentage;

[0340] The maximum number of replicas of a container application on a third-party cloud;

[0341] The minimum number of replicas of a container application on a third-party cloud;

[0342] The first multiple, which is determined according to the first ratio, is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud by the first multiple. The first ratio represents the ratio of the number of replicas of the container application on the local cloud to the number of replicas on the third-party cloud.

[0343] The second value represents the number of replicas of the container application added or removed on the third-party cloud, where the third-party cloud represents the cloud corresponding to the second server.

[0344] In practical applications, the receiving unit 601 can be implemented by a processor in the container management device combined with a communication interface.

[0345] It should be noted that the container management device provided in the above embodiments is only illustrated by the division of the above program modules when performing container management. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the processing described above. In addition, the container management device and the container management method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0346] Based on the hardware implementation of the above program modules, and in order to implement the method on the first server side of the embodiments of this application, the embodiments of this application also provide a first server, such as... Figure 7 As shown, the first server 700 includes:

[0347] The first communication interface 701 is capable of exchanging information with other network nodes;

[0348] The first processor 702 is connected to the first communication interface 701 to enable information interaction with other network nodes. When running a computer program, it executes the methods provided by one or more technical solutions on the first server side. The computer program is stored in the first memory 703.

[0349] Specifically, the first processor 702 is configured to schedule or manage containers of one or more clouds based on first information; wherein the first information represents relevant information of one or more clouds collected or read by the first server.

[0350] In one embodiment, the first processor 702 is specifically configured to schedule or manage containers of one or more clouds when the first information satisfies a first condition.

[0351] In one embodiment, the first processor 702 is further configured to acquire the first information based on configuration information, wherein the configuration information represents the relevant configuration for collecting or acquiring the first information; the first information includes data of monitoring indicators.

[0352] In one embodiment, the first communication interface 701 is used to obtain or receive the configuration information.

[0353] In one embodiment, the configuration information includes one or more of the following:

[0354] Information used to obtain primary information from interfaces, services, tools, or middleware;

[0355] Metadata;

[0356] Access address;

[0357] Access protocol;

[0358] The name of the monitoring indicator;

[0359] Trigger threshold;

[0360] first condition;

[0361] The first interval represents the interval at which data of the monitoring indicators are acquired;

[0362] Cooling time, during which the first condition fails;

[0363] The second information is the operation or action performed when the data representing the monitoring indicator in the second information meets the first condition.

[0364] The second interval represents the time interval at which the number of replicas of the container application is adjusted;

[0365] Authentication information;

[0366] Numeric type.

[0367] In one embodiment, the second information includes one or more of the following:

[0368] The third piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud;

[0369] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on a third-party cloud;

[0370] The fifth piece of information is used to indicate that the number of replicas of the container application on the local cloud and the third-party cloud should be adjusted according to a first ratio, wherein the first ratio represents the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0371] In one embodiment, the third information includes one or more of the following:

[0372] First percentage;

[0373] The maximum number of replicas of a container application on the local cloud;

[0374] The minimum number of replicas of a container application on the local cloud;

[0375] The first value represents the number of replicas of the container application added or removed on the local cloud.

[0376] In one embodiment, the fourth information includes one or more of the following:

[0377] Second percentage;

[0378] The maximum number of replicas of a container application on a third-party cloud;

[0379] The minimum number of replicas of a container application on a third-party cloud;

[0380] The second value represents the number of replicas of the container application added or removed on a third-party cloud.

[0381] In one embodiment, the first processor 702 is specifically configured to adjust the number of replicas of the container application in the container cluster of the local cloud; and / or, adjust the number of replicas of the container application in the container cluster of a third-party cloud; and / or

[0382] The first communication interface 701 is also used to send a sixth message to one or more second servers, the sixth message being used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server.

[0383] In one embodiment, the first processor 702 is specifically configured to adjust the number of replicas of the container application in the container cluster of the local cloud based on third or fifth information; wherein,

[0384] The third information is used to indicate the adjustment of the number of replicas of the container application in the local cloud; the fifth information is used to indicate the adjustment of the number of replicas of the container application in the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application in the local cloud and the third-party cloud.

[0385] In one embodiment, the first processor 702 is specifically configured to send sixth information to one or more second servers based on fourth or fifth information; wherein,

[0386] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; the fifth piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0387] In one embodiment, the first processor 702 is specifically configured to adjust the number of replicas of the container application in the container cluster of a third-party cloud based on fourth or fifth information; wherein,

[0388] The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; the fifth piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

[0389] In one embodiment, the data of the monitoring metric includes one or more of the following:

[0390] The number of replicas of a containerized application deployed across clouds;

[0391] The deployment location of a copy of the container application;

[0392] Data on monitoring metrics for container clusters in the local cloud;

[0393] Monitoring metrics data for container clusters from third-party cloud providers;

[0394] Data of monitoring metrics read through interfaces, services, tools, or middleware used to obtain primary information.

[0395] In one embodiment, the monitoring metrics for the container cluster include one or more of the following:

[0396] The number of container clusters;

[0397] The number of containers in a single container cluster;

[0398] The capacity of the container.

[0399] It should be noted that the specific processing procedures of the first processor 702 and the first communication interface 701 can be understood by referring to the above method.

[0400] Of course, in practical applications, the various components in the first server 700 are coupled together through the bus system 704. It can be understood that the bus system 704 is used to implement communication between these components. In addition to the data bus, the bus system 704 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 7 The general designated all buses as Bus System 704.

[0401] The first memory 703 in this embodiment is used to store various types of data to support the operation of the first server 700. Examples of such data include any computer program used to operate on the first server 700.

[0402] The methods disclosed in the embodiments of this application can be applied to the first processor 702, or implemented by the first processor 702. The first processor 702 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in the first processor 702. The first processor 702 may be a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The first processor 702 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in the first memory 703. The first processor 702 reads the information in the first memory 703 and completes the steps of the aforementioned method in combination with its hardware.

[0403] In an exemplary embodiment, the first server 700 may be implemented by one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers (MCUs), microprocessors, or other electronic components to perform the aforementioned method.

[0404] Based on the hardware implementation of the above program modules, and in order to implement the method on the second server side of the embodiments of this application, the embodiments of this application also provide a second server. For example... Figure 8 As shown, the second server 800 includes:

[0405] The second communication interface 801 is capable of exchanging information with other network nodes;

[0406] The second processor 802 is connected to the second communication interface 801 to enable information interaction with other network nodes. When running a computer program, it executes the methods provided by one or more technical solutions on the second server side. The computer program is stored in the second memory 803.

[0407] Specifically, the second communication interface 801 is used to receive the sixth information sent by the first server, which is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server.

[0408] In one embodiment, the sixth information includes one or more of the following:

[0409] Second percentage;

[0410] The maximum number of replicas of a container application on a third-party cloud;

[0411] The minimum number of replicas of a container application on a third-party cloud;

[0412] The first multiple, which is determined according to the first ratio, is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud by the first multiple. The first ratio represents the ratio of the number of replicas of the container application on the local cloud to the number of replicas on the third-party cloud.

[0413] The second value represents the number of replicas of the container application added or removed on the third-party cloud, where the third-party cloud represents the cloud corresponding to the second server.

[0414] It should be noted that the specific processing procedures of the second processor 802 and the second communication interface 801 can be understood by referring to the above method.

[0415] Of course, in practical applications, the various components in the second server 800 are coupled together through the bus system 804. It can be understood that the bus system 804 is used to implement communication between these components. In addition to the data bus, the bus system 804 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 8 The general labeled all buses as Bus System 804.

[0416] The second memory 803 in this embodiment is used to store various types of data to support the operation of the second server 800. Examples of such data include any computer program used to operate on the second server 800.

[0417] The methods disclosed in the embodiments of this application can be applied to the second processor 802, or implemented by the second processor 802. The second processor 802 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware or by instructions in the form of software in the second processor 802. The second processor 802 may be a general-purpose processor, a DSP, or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The second processor 802 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in the second memory 803. The second processor 802 reads the information in the second memory 803 and completes the steps of the aforementioned method in combination with its hardware.

[0418] In an exemplary embodiment, the second server 800 may be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic components to perform the aforementioned method.

[0419] It is understood that the memories (first memory 703 and second memory 803) in the embodiments of this application can be volatile memories or non-volatile memories, or both. Non-volatile memories can be read-only memories (ROM), programmable read-only memories (PROM), erasable programmable read-only memories (EPROM), electrically erasable programmable read-only memories (EEPROM), magnetic random access memories (FRAM), flash memories, magnetic surface memories, optical discs, or compact disc read-only memories (CD-ROM); magnetic surface memories can be disk storage or magnetic tape storage. Volatile memories can be random access memories (RAM), which are used as external caches. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memories described in the embodiments of this application are intended to include, but are not limited to, these and any other suitable types of memories.

[0420] In an exemplary embodiment, this application also provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium, such as a first memory 703 storing a computer program, which can be executed by a first processor 702 of a first server 700 to complete the steps described in the aforementioned first server-side method. Another example is a second memory 803 storing a computer program, which can be executed by a second processor 802 of a second server 800 to complete the steps described in the aforementioned second server-side method. The computer-readable storage medium can be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM.

[0421] For example, this application also provides a computer program product, including a computer program that can be executed by a first processor 702 of a first server 700 to complete the steps described in the first server-side method; the computer program can also be executed by a second processor 802 of a second server 800 to complete the steps described in the second server-side method.

[0422] It should be noted that terms like "first" and "second" are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. "Multiple" can refer to two or more items, and "multiple" can refer to two or more items.

[0423] Furthermore, the technical solutions described in the embodiments of this application can be combined arbitrarily without conflict.

[0424] The above description is merely a preferred embodiment of this application and is not intended to limit the scope of protection of this application.

Claims

1. A container management method, characterized in that, Applied to a first server, the method includes: Based on the configuration information, obtain the first information; Based on the first information, schedule or manage containers in one or more clouds; wherein, The configuration information represents the relevant configuration for collecting or acquiring the first information, and the first information represents the relevant information of one or more clouds collected or read by the first server. The configuration information includes second information, which represents the operation or action to be performed when the data of the monitoring indicator meets the first condition. The second information includes one or more of the following: The third piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud; The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on a third-party cloud; The fifth piece of information is used to indicate that the number of replicas of the container application on the local cloud and the third-party cloud should be adjusted according to a first ratio, wherein the first ratio represents the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

2. The method according to claim 1, characterized in that, The step of scheduling or managing containers in one or more clouds based on the first information includes: If the first information satisfies the first condition, schedule or manage containers in one or more clouds.

3. The method according to claim 1, characterized in that, The first piece of information includes data on monitoring metrics.

4. The method according to claim 1, characterized in that, The method further includes: Obtain or receive the configuration information.

5. The method according to claim 1, characterized in that, The configuration information also includes one or more of the following: Information used to obtain primary information from interfaces, services, tools, or middleware; Metadata; Access address; Access protocol; The name of the monitoring indicator; Trigger threshold; first condition; The first interval represents the interval at which data of the monitoring indicators are acquired; Cooling time, during which the first condition fails; The second interval represents the time interval at which the number of replicas of the container application is adjusted; Authentication information; Numeric type.

6. The method according to claim 1, characterized in that, The third information includes one or more of the following: First percentage; The maximum number of replicas of a container application on the local cloud; The minimum number of replicas of a container application on the local cloud; The first value represents the number of replicas of the container application added or removed on the local cloud.

7. The method according to claim 1, characterized in that, The fourth piece of information includes one or more of the following: Second percentage; The maximum number of replicas of a container application on a third-party cloud; The minimum number of replicas of a container application on a third-party cloud; The second value represents the number of replicas of the container application added or removed on a third-party cloud.

8. The method according to any one of claims 1 to 7, characterized in that, The step of scheduling or managing containers in one or more clouds based on the first information includes: Adjust the number of replicas of the container application in the container cluster on the local cloud; and / or Adjust the number of replicas of the container application in the container cluster of the third-party cloud; and / or Send a sixth message to one or more second servers. The sixth message is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second servers.

9. The method according to claim 8, characterized in that, Adjusting the number of replicas of a container application in a container cluster on the local cloud includes: Adjust the number of replicas of the container application in the container cluster of the local cloud based on the third or fifth information.

10. The method according to claim 8, characterized in that, Sending the sixth message to one or more second servers includes: Based on the fourth or fifth information, send the sixth information to one or more second servers.

11. The method according to claim 8, characterized in that, The adjustment of the number of replicas of the container application in the container cluster of the third-party cloud includes: Based on the fourth or fifth information, adjust the number of replicas of the container application in the container cluster of the third-party cloud.

12. The method according to claim 3, characterized in that, The data for the monitoring metrics include one or more of the following: The number of replicas of a container application deployed across clouds; The deployment location of a copy of the container application; Data on monitoring metrics for container clusters in the local cloud; Monitoring metrics data for container clusters from third-party cloud providers; Data of monitoring metrics read through interfaces, services, tools, or middleware used to obtain primary information.

13. The method according to claim 12, characterized in that, The monitoring metrics for container clusters include one or more of the following: The number of container clusters; The number of containers in a single container cluster; The capacity of the container.

14. A container management method, characterized in that, Applied to a second server, the method includes: Receive the sixth message sent by the first server. The sixth message is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server; wherein, The sixth information is determined based on the fourth or fifth information, the fourth and fifth information being included in the second information, the second information representing the operation or action performed when the data of the monitoring indicator meets the first condition; the fourth information is used to indicate the adjustment of the number of replicas of the container application in the third-party cloud; the fifth information is used to indicate the adjustment of the number of replicas of the container application in the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application in the local cloud and the third-party cloud.

15. The method according to claim 14, characterized in that, The sixth piece of information includes one or more of the following: Second percentage; The maximum number of replicas of a container application on a third-party cloud; The minimum number of replicas of a container application on a third-party cloud; The first multiple, which is determined according to the first ratio, is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud by the first multiple. The first ratio represents the ratio of the number of replicas of the container application on the local cloud to the number of replicas on the third-party cloud. The second value represents the number of replicas of the container application added or removed on the third-party cloud, where the third-party cloud represents the cloud corresponding to the second server.

16. A container management device, characterized in that, include: The first acquisition unit is used to acquire first information based on the configuration information; The management unit is used to schedule or manage containers in one or more clouds based on the first information; wherein, The configuration information represents the relevant configuration for collecting or acquiring the first information, and the first information represents the relevant information of one or more clouds collected or read by the first server; The configuration information includes second information, which represents the operation or action to be performed when the data of the monitoring indicator meets the first condition. The second information includes one or more of the following: The third piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud; The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on a third-party cloud; The fifth piece of information is used to indicate that the number of replicas of the container application on the local cloud and the third-party cloud should be adjusted according to a first ratio, wherein the first ratio represents the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

17. A container management device, characterized in that, include: The receiving unit is used to receive the sixth information sent by the first server. This sixth information is used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server. The sixth information is determined based on the fourth or fifth information, the fourth and fifth information being included in the second information, the second information representing the operation or action to be performed when the data of the monitoring indicator meets the first condition; the fourth information is used to indicate the adjustment of the number of replicas of the container application on the third-party cloud; The fifth piece of information is used to indicate that the number of replicas of the container application on the local cloud and the third-party cloud be adjusted according to a first ratio, whereby the first ratio represents the ratio of the number of replicas of the container application on the local cloud to the number of replicas on the third-party cloud.

18. A first server, characterized in that, include: A first processor and a first communication interface; wherein... The first processor is configured to acquire first information based on configuration information; and to schedule or manage containers of one or more clouds based on the first information; wherein the configuration information represents the relevant configuration for collecting or acquiring the first information, and the first information represents the relevant information of one or more clouds collected or read by the first server; The configuration information includes second information, which represents the operation or action to be performed when the data of the monitoring indicator meets the first condition. The second information includes one or more of the following: The third piece of information is used to indicate the adjustment of the number of replicas of the container application on the local cloud; The fourth piece of information is used to indicate the adjustment of the number of replicas of the container application on a third-party cloud; The fifth piece of information is used to indicate that the number of replicas of the container application on the local cloud and the third-party cloud should be adjusted according to a first ratio, wherein the first ratio represents the ratio of the number of replicas of the container application on the local cloud and the third-party cloud.

19. A second server, characterized in that, include: A second processor and a second communication interface; wherein... The second communication interface is used to receive sixth information sent by the first server, the sixth information being used to adjust the number of replicas of the container application in the container cluster of the third-party cloud and / or the second server; wherein, The sixth information is determined based on the fourth or fifth information, the fourth and fifth information being included in the second information, the second information representing the operation or action performed when the data of the monitoring indicator meets the first condition; the fourth information is used to indicate the adjustment of the number of replicas of the container application in the third-party cloud; the fifth information is used to indicate the adjustment of the number of replicas of the container application in the local cloud and the third-party cloud by a first ratio, the first ratio representing the ratio of the number of replicas of the container application in the local cloud and the third-party cloud.

20. A server, characterized in that, This includes a processor and memory for storing computer programs that can run on the processor. When the processor is used to run the computer program, it performs the steps of the method according to any one of claims 1 to 13, or performs the steps of the method according to any one of claims 14 to 15.

21. A storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 13, or the steps of the method according to any one of claims 14 to 15.

22. A computer program product, characterized in that, The method includes a computer program, characterized in that, when executed by a processor, the computer program implements the steps of the method according to any one of claims 1 to 15.

Citation Information

Patent Citations

  • Hybrid multi-cloud management method and system in container cloud environment, equipment and medium

    CN113553139A

  • Resource scheduling method and device, cloud server, server and readable storage medium

    CN115344375A