CN108595316B - Lifecycle management method, manager, device, and medium for distributed application - Google Patents

Lifecycle management method, manager, device, and medium for distributed application Download PDF

Info

Publication number
CN108595316B
CN108595316B CN201810361329.9A CN201810361329A CN108595316B CN 108595316 B CN108595316 B CN 108595316B CN 201810361329 A CN201810361329 A CN 201810361329A CN 108595316 B CN108595316 B CN 108595316B
Authority
CN
China
Prior art keywords
application
issuing
list
manager
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810361329.9A
Other languages
Chinese (zh)
Other versions
CN108595316A (en
Inventor
韩冰
陈夏明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Transwarp Technology Shanghai Co Ltd
Original Assignee
Transwarp Technology Shanghai Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Transwarp Technology Shanghai Co Ltd filed Critical Transwarp Technology Shanghai Co Ltd
Priority to CN201810361329.9A priority Critical patent/CN108595316B/en
Publication of CN108595316A publication Critical patent/CN108595316A/en
Priority to PCT/CN2019/071385 priority patent/WO2019200984A1/en
Application granted granted Critical
Publication of CN108595316B publication Critical patent/CN108595316B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

The embodiment of the invention discloses a life cycle management method, a manager, equipment and a medium for distributed application. Wherein, the method comprises the following steps: responding to a distribution instruction of a distribution object, calculating to obtain a distribution list of the distribution object, wherein the distribution object comprises a product or an application, the distribution list comprises a plurality of application examples and a distribution sequence among the application examples, and the life cycle manager is distributed on a distributed cluster management platform in advance; sending the release list to an application instance manager which is released on the distributed cluster management platform in advance, wherein the application instance manager is used for releasing the application instance according to the release list and monitoring the running state data of the released application instance; collecting running state data monitored by an application instance manager, and storing the running state data and release data related to a release object; and analyzing the performance of the published object according to the stored data. The embodiment of the invention has complete life cycle management capability.

Description

Lifecycle management method, manager, device, and medium for distributed application
Technical Field
The embodiment of the invention relates to the technical field of computers, in particular to a life cycle management method, a life cycle management device, life cycle management equipment and life cycle management media for distributed application.
Background
Distributed applications are different from traditional single applications deployed by a single execution entity, multiple execution entities are respectively deployed on common servers connected through a network, and the distributed applications are a mode for realizing high-performance computing by using a large number of computing resources through distributed organizations. The distributed application can balance cost and benefit, but at the same time, the complexity of the distributed application brings great challenges to work such as publishing, monitoring, upgrading and fault handling, and a complete set of life cycle management mechanisms and technologies are needed to process.
In the prior art, a distributed system is usually built by adopting a virtual machine technology, and a container virtualization technology is a solution capable of replacing a traditional virtualization technology, so that the efficiency and reliability of the container virtualization technology are rapidly developed. The container virtualization technology can isolate different processes running on a host computer, so that the processes, the process and a host operating system are isolated from each other and do not influence each other. Currently, the mainstream container technology focuses on the isolation of a single container and resources, and relies on a container cluster management technology for supporting cluster management.
In particular, a container cluster management technique is a technique for managing a large number of containers on distributed hardware resources. The problem of distributed management brought by distribution can be shielded through a container cluster management technology, a higher-layer view is provided to carry out unified management on resources such as containers, calculation, storage, networks and the like, and the method has representatives such as Kubernets, media marthons and the like. Among them, Kubernetes is a container-oriented cluster management platform developed based on Google borg (cluster manager), which performs unified management on underlying hosts, networks and storage resources based on container technology and the like. The media (distributed resource management framework) realizes unified management and monitoring of the underlying distributed computing resources, the release and management of the distributed application on the media can be realized through marathon (management framework realized based on the media), the cooperation of the media and the marathon is used, the two-stage scheduling of the distributed resources is realized, and different object-oriented use interfaces are provided.
However, in the existing container cluster management technologies, some technologies mainly face template control and configuration generation of application configuration, and some technologies tend to be single package management systems, focus on packaging, publishing and version management of applications, and do not monitor running data of published applications, and have no complete lifecycle management capability.
Disclosure of Invention
Embodiments of the present invention provide a lifecycle management method, a manager, a device, and a medium for distributed applications, so as to solve a problem that the prior art does not have a complete lifecycle management capability.
In a first aspect, an embodiment of the present invention provides a lifecycle management method for distributed applications, where the lifecycle management method is applied to a lifecycle manager, and the method includes:
responding to an issuing instruction of an issuing object, calculating to obtain an issuing list of the issuing object, wherein the issuing object comprises a product or an application, the issuing list comprises a plurality of application instances and issuing sequences among the application instances, and the life cycle manager is issued on a distributed cluster management platform in advance;
sending the release list to an application instance manager, wherein the application instance manager is pre-released on the distributed cluster management platform and is used for releasing an application instance according to the release list and monitoring running state data of the released application instance;
collecting running state data monitored by the application instance manager, and storing the running state data and release data related to the release object;
and analyzing the performance of the issued object according to the stored data.
In a second aspect, an embodiment of the present invention further provides a lifecycle management method for a distributed application, where the lifecycle management method is applied to an application instance manager, and the method includes:
issuing an application instance according to an issuing plan sent by a life cycle manager issued on a distributed cluster management platform in advance, wherein the application instance manager is issued on the distributed cluster management platform in advance;
monitoring the running state data of the published application instance, and feeding back the running state data to the life cycle manager so that the life cycle manager can store and analyze the performance of the published object according to the running state data.
In a third aspect, an embodiment of the present invention further provides a lifecycle manager, where the lifecycle manager is issued on a distributed cluster management platform, and the lifecycle manager includes:
the interface layer is used for receiving an issuing instruction of an issuing object;
the data scheduling layer is used for responding to the issuing instruction and calculating to obtain an issuing list of the issuing object, wherein the issuing object comprises a product or an application, and the issuing list comprises a plurality of application examples and issuing sequences among the application examples;
the data scheduling layer is further configured to send the publishing list to an application instance manager published on the distributed cluster management platform in advance, where the application instance manager is configured to publish an application instance according to the publishing list and monitor running state data of the published application instance;
the data scheduling layer is also used for collecting running state data monitored by the application instance manager;
the data management layer is used for managing the running state data acquired by the data scheduling layer and the release data related to the release object;
the data persistence layer is used for storing the running state data and the release data;
the data scheduling layer is also used for analyzing the performance of the release object according to the data stored in the data persistence layer.
In a fourth aspect, an embodiment of the present invention further provides an application instance manager, where the application instance manager is issued on a distributed cluster management platform, and the application instance manager includes:
the issuing component is used for issuing the application examples according to the issuing list;
the monitoring component is used for monitoring the running state data of the published application example;
and the communication component is used for communicating with a life cycle manager which is published on the distributed cluster management platform in advance, acquiring the publishing list and sending monitoring data.
In a fifth aspect, an embodiment of the present invention further provides a distributed cluster management platform, including the lifecycle manager according to any embodiment of the present invention and the application instance manager according to any embodiment of the present invention.
In a sixth aspect, an embodiment of the present invention further provides a computer device, including:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a lifecycle management method for a distributed application applied to a lifecycle manager, as described in any embodiment of the invention.
In a seventh aspect, an embodiment of the present invention further provides a computer device, including:
one or more processors;
a storage device for storing one or more programs,
when the one or more programs are executed by the one or more processors, the one or more processors implement the lifecycle management method for a distributed application applied to an application instance manager according to any embodiment of the present invention.
In an eighth aspect, the embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the lifecycle management method applied to a distributed application of a lifecycle manager according to any embodiment of the present invention.
In a ninth aspect, the embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the life cycle management method for a distributed application applied to an application instance manager according to any embodiment of the present invention is implemented.
The embodiment of the invention publishes the life cycle manager and the application instance manager on the distributed cluster management platform in advance, responds to the publishing instruction of the publishing object through the life cycle manager, calculates the publishing plan of the publishing object, publishes through the application instance manager, monitors the running state data of the published application instance, collects the running state data through the life cycle manager, stores the running state data together with the publishing data related to the publishing object, and analyzes the performance of the publishing object according to the stored data, thereby realizing not only the publishing, configuration and version management of the application, but also the publishing, monitoring and management of the published application and having complete life cycle management capability.
Drawings
Fig. 1 is a flowchart of a lifecycle management method for a distributed application according to an embodiment of the present invention;
fig. 2 is a flowchart of a lifecycle management method for a distributed application according to a second embodiment of the present invention;
fig. 3 is a flowchart of a lifecycle management method for a distributed application according to a third embodiment of the present invention;
fig. 4 is a flowchart of a lifecycle management method for a distributed application according to a fourth embodiment of the present invention;
fig. 5 is a flowchart of a lifecycle management method for a distributed application according to a fifth embodiment of the present invention;
FIG. 6 is a schematic structural diagram of a lifecycle manager according to a sixth embodiment of the present invention;
fig. 7 is a schematic structural diagram of an application instance manager according to a seventh embodiment of the present invention;
fig. 8 is a schematic structural diagram of a distributed cluster management platform according to an eighth embodiment of the present invention;
fig. 9 is a schematic structural diagram of a computer device according to a ninth embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be further noted that, for the convenience of description, only some of the structures related to the present invention are shown in the drawings, not all of the structures.
Example one
Fig. 1 is a flowchart of a lifecycle management method for a distributed application according to an embodiment of the present invention, where this embodiment is applicable to a situation of performing full lifecycle management on a product and an application published on a distributed cluster management platform, and the method may be applied to a lifecycle manager, which is executed by the lifecycle manager, and the lifecycle manager may be published in advance on the distributed cluster management platform and implemented in a software and/or hardware manner. The distributed cluster management platform is a platform for managing a large number of containers on distributed hardware resources, including but not limited to kubernets and media marathon, and can be integrated in a computer device or distributed device. As shown in fig. 1, the method specifically includes:
s110, responding to an issuing instruction of an issuing object, calculating to obtain an issuing list of the issuing object, wherein the issuing object comprises a product or an application, the issuing list comprises a plurality of application instances and issuing sequences among the application instances, and the life cycle manager is issued on a distributed cluster management platform in advance.
The application defines a set of complete distributed applications, which is different from the fine-grained concepts defined in the container cluster management technology in the prior art, such as a service or a container group, and the application is a combination and high-level abstraction of the fine-grained concepts, and is a distribution set formed by dynamically combining the fine-grained concepts in the prior container cluster management technology by using configuration data, and provides distribution, scheduling, monitoring and analysis capabilities to the outside by using the set as a unit. The product is a combination of applications, is positioned at a complete solution package level, provides a view of a high-level solution to the outside, and can manage a plurality of sets of associated distributed applications at a higher level.
The notion that an application corresponds at runtime is an instance, which is a collection of truly running program entities. Taking a kubernets platform as an example, the most basic issuing entity on the kubernets platform is Pod, and concepts such as delivery, stateful, Service and the like are constructed on the Pod, so that the concepts need to be integrated and issued together when a complete and available distributed Service is issued on the kubernets. The embodiment of the invention defines and realizes the concept of the application example as a basic scheduling unit by adopting a customized resource definition mode provided by Kubernetes. In the embodiment of the invention, the application instance can be used for completely issuing a set of distributed application services by one operation on the basis of providing simple parameter configuration, for example, the components of Namenode, DataNode, Secon dNamenodenode and the like of the HDFS of the distributed file system are issued by one key, so that the HDFS distributed application instance which is used in an open box is obtained.
The product application instances are usually multiple and have certain relevance, and before being published, the publication sequence of the product application instances needs to be determined in a publication list so as to implement parallel or sequential publication according to the publication sequence.
In addition, it should be noted that the issue instruction may be issued by a developer when a product or an application needs to be issued, or may be issued by an already issued application. For example, when an already published application needs to depend on a certain function or needs to dynamically start one or more applications to complete a certain job during running, a target application capable of realizing the function may be created in the application, that is, the target application or job is taken as a publishing object, and a publishing instruction for the target application or job is issued. The applications published by the applications are called child applications of the source application, the source application is called a parent application of the child application, the publishing relationship of the applications is organized by using a tree relationship, and the life cycle of each child application can be managed by the parent application of the child application.
And S120, sending the release list to an application instance manager, wherein the application instance manager is pre-released on the distributed cluster management platform and is used for releasing the application instance according to the release list and monitoring the running state data of the released application instance.
The application instance manager and the life cycle manager are the same and are pre-issued on the distributed cluster management platform, and during implementation, the application instance manager can be customized according to the distributed cluster management platform, so that function expansion and management of the distributed cluster management platform are realized. The lifecycle manager may communicate with the application instance manager to obtain the operating state data it monitors.
S130, collecting the running state data monitored by the application instance manager, and storing the running state data and the release data related to the release object.
And S140, analyzing the performance of the release object according to the stored data.
Specifically, the lifecycle manager may communicate with the application instance manager to collect the operation state data monitored by the application instance manager, and store the operation state data and the release data related to the release object, for example, in a database. The running state data includes, for example, a product publishing state (e.g., publishing, running, restarting, suspending, recovering, deleting, etc.), a resource consumption state (e.g., real-time CPU, memory, storage, network bandwidth, etc.) in running of each instance in the product, a task state (e.g., running time, restarting times, task time consumption, error times, etc.) included in each instance in the product, publishing data related to a publishing object includes, for example, version information of the product and application instance, and various configuration parameters (e.g., CPU, memory, disk, bandwidth, etc.) of the product and application instance.
The stored data can be used for analyzing the performance of the published objects, and the health condition of the published objects can be evaluated by analyzing the performance of the published objects, so that reference or early warning is provided for technicians.
The embodiment of the invention publishes the life cycle manager and the application instance manager on the distributed cluster management platform in advance, responds to the publishing instruction of the publishing object through the life cycle manager, calculates the publishing plan of the publishing object, publishes through the application instance manager, monitors the running state data of the published application instance, collects the running state data through the life cycle manager, stores the running state data together with the publishing data related to the publishing object, and analyzes the performance of the publishing object according to the stored data, thereby realizing not only the publishing, configuration and version management of the application, but also the publishing, monitoring and management of the published application and having complete life cycle management capability.
Example two
Fig. 2 is a flowchart of a lifecycle management method for distributed applications according to a second embodiment of the present invention, and the second embodiment is further optimized based on the foregoing embodiments. As shown in fig. 2, the method specifically includes:
s210, receiving an issue instruction for an issue object, wherein the issue instruction carries configuration parameters of the issue object. The configuration parameters correspond to user requirements, and include, for example, the number of applications issued in the product, various configuration parameters (including, for example, CPU, memory, disk, and bandwidth) of the product and the applications, an externally exposed service interface in the product, and specific configuration parameters that the user needs to apply to each application in the product.
For example, if the user instructs to publish on another service, the other service may make a function call through the HTTP protocol in connection with the RESTFul interface provided by the lifecycle manager, and the lifecycle manager thus receives a publishing instruction of the publishing object issued by the user on the other service. The lifecycle manager may also provide a management means in the form of a client through which the user may directly use the various functions of the application lifecycle manager.
S220, analyzing the issuing instruction to obtain the configuration parameters of the issuing object.
And S230, calculating a target resource quota required by the instantiation deployment according to the configuration parameters and the configuration template.
S240, acquiring the used resource quota of the current distributed cluster through the application instance manager, and if the used resource quota meets the requirement of the target resource quota, calculating to obtain the issuing list of the issuing object according to the configuration parameters and a predefined configuration template.
The configuration template may be predefined, the configuration template may define a logical relationship between different applications, and a target resource quota required by the instantiated deployment, for example, how many containers and other cluster resources are required, is determined by calculation according to the configuration parameters and the configuration template. If the used resource quota cannot meet the requirement of the target resource quota, the successful release is indicated, and failure information and failure reasons can be fed back to the user; if the requirement can be met, the process is continued, and the release list is calculated, so that the correctness of the release is ensured, the success rate is improved, and the waste of resources is avoided.
Further, if the used resource quota meets the requirement of the target resource quota, a distribution list of the distribution object is obtained by calculation according to the configuration parameters and the configuration template, which specifically includes:
if the issuing instruction is an updating issuing instruction, acquiring configuration parameters of the issued object corresponding to the issued object, and generating an updating issuing list through comparison operation of the configuration parameters;
if the issuing instruction is an issuing instruction for the first time and the issuing object is a target product, calculating an issuing list of the target product according to configuration parameters and a configuration template of the target product;
if the issuing instruction is the first issuing instruction and the issuing object is the target application, whether the target application is deployed in the issued product is judged, if yes, issuing data related to the issued product is obtained, the issuing data related to the issued product is injected into the issuing list of the target application after the issuing list of the target application is calculated, and if not, the issuing list of the target application is calculated according to the configuration parameters and the configuration template of the target application.
The issue instruction may include various instructions, such as an update issue instruction and a first issue instruction. Wherein, for the update issue instruction, the updated part of the product application is identified through the comparison operation, and the issue list is generated based on the updated part, and meanwhile, the updated part is saved. Aiming at a first-time issuing instruction, different processing modes are adopted for different issuing objects, an issuing list can be directly calculated for the first-time issuing of a product, and for the first-time issuing of an application, whether the application is deployed in an issued product needs to be judged firstly, then different strategies are adopted, and meanwhile issuing related data are stored, so that issuing processes with different granularities are realized.
Specifically, coarse-grained application publishing and management is mainly aimed at a product level, a whole set of product instances can be published one key by using the process to form a publishing cluster, fine-grained application publishing and management is mainly aimed at an application level, and application can be finely and flexibly controlled by using the process.
In addition, for the case of the release failure, retry can be performed according to the configuration, if retry failure occurs, all previous releases need to be cancelled, and the reply state fails and exits.
And S250, sending the release list to the application instance manager.
And S260, collecting the running state data monitored by the application instance manager, and storing the running state data and the release data related to the release object.
And S270, analyzing the performance of the release object according to the stored data.
According to the embodiment of the invention, the lifecycle manager is used for realizing issuing processes with different granularities aiming at different issuing instructions and issuing objects, and specifically, for complex applications formed by multiple sets of distributed application services, the coarse granularity concept is used for abstracting and managing the complex applications (such as multiple sets of distributed applications with incidence relations), so that the management difficulty of the complex applications is reduced; for the bottom-layer application needing fine control, the application is flexibly controlled by using fine-grained concept abstraction and management capability. Therefore, the method is oriented to the end user, and can be released by one key and used after being opened; the distributed service life cycle management scheme is comprehensive and flexible and faces to system managers or developers.
EXAMPLE III
Fig. 3 is a flowchart of a lifecycle management method for distributed applications according to a third embodiment of the present invention, and the third embodiment is further optimized based on the foregoing embodiments. As shown in fig. 3, the method includes:
s310, responding to an issuing instruction of an issuing object, calculating to obtain an issuing list of the issuing object, wherein the issuing object comprises a product or an application, the issuing list comprises a plurality of application instances and issuing sequences among the application instances, and the life cycle manager is issued on the distributed cluster management platform in advance.
S320, sending the release list to an application instance manager, wherein the application instance manager is pre-released on the distributed cluster management platform and used for releasing the application instance according to the release list and monitoring the running state data of the released application instance.
S330, collecting the running state data monitored by the application instance manager, and storing the running state data and the release data related to the release object.
S340, analyzing the operation health condition of the distribution object and the distributed cluster, the task key node or the time consumption ratio according to the stored data, and generating a report according to the analysis result.
Of course, the analysis of the property of the published object not only includes the above, but also can be other content to be analyzed configured in advance.
S350, responding to a query instruction of the issued object, calculating a query result according to the stored running state data and the issued data related to the issued object, and feeding back the query result; or
And responding to the query instruction of the issued object, and acquiring and feeding back a query result through the application instance manager.
For the state query and management instructions of the product or the application, the life cycle manager can directly acquire or communicate with the application instance manager to acquire information such as the running state, configuration, task running and resource use conditions of the cluster or the application instance, and respond to the query instructions after calculation.
S360, monitoring the state change of the published object according to the stored running state data and the preset triggering rule, and notifying or alarming when the state change of the published object meets the triggering rule.
Specifically, after the product or the application is successfully released, the process enters a state management and application analysis process, including but not limited to the operations of S340-S360. For instance clusters or application instances running after the product or application is released, the state management and application analysis process starts from the successful release of the product or application for the first time until the product or application exits successfully or fails.
In the process of state management and application analysis, firstly, an application instance manager issues a list according to a cluster/instance, and inquires the state according to the list, when a product or application issuing process is successful, the application instance manager needs to be passed, the state management and application analysis process monitors whether all entities really running on a distributed container cluster corresponding to the cluster/application are completely and normally running, and reporting is needed through a life cycle manager or rescheduling is needed for a failure condition. The life cycle manager can collect and record all monitored events of the cluster/instance and update the result of application analysis in real time according to the events; and if the event needing to be reported is a cluster and application end event, triggering to generate a final application analysis report and reporting the final application analysis report together with the event, otherwise, reporting the event independently.
The embodiment of the invention functionally covers not only the packaging, distribution, configuration and version management of products and applications, but also the release, monitoring, management, upgrading/rollback and the like of the released products and applications through the state management and application analysis process, and has complete life cycle management capability.
Example four
Fig. 4 is a flowchart of a lifecycle management method for a distributed application according to a fourth embodiment of the present invention, where this embodiment is applicable to a case of performing full lifecycle management on a product and an application published on a distributed cluster management platform, and this method may be applied to an application instance manager, which is executed by the application instance manager, where the application instance manager may be published on the distributed cluster management platform in advance and implemented in a software and/or hardware manner, and the distributed cluster management platform may be integrated in a computer device. As shown in fig. 4, the method specifically includes:
s410, issuing an application instance according to an issuing plan sent by a life cycle manager issued on a distributed cluster management platform in advance, wherein the application instance manager is issued on the distributed cluster management platform in advance.
And S420, monitoring the running state data of the published application example, and feeding back the running state data to the life cycle manager so that the life cycle manager can store and analyze the performance of the published object according to the running state data.
Specifically, the application instance manager publishes the abstract concept product and the application in the embodiment of the invention as an instance cluster and an application instance running on a distributed cluster management platform. The application instance manager can realize the release of the entity provided on the distributed cluster management platform by calling the service interface of the distributed cluster management platform, thereby realizing the release of the abstract concept product and the application in the embodiment of the invention, monitoring the running state of the released product and the application instance and providing the monitoring and management capability.
As a specific implementation manner, taking a kubernets platform as an example, in a distributed container cluster managed by kubernets, an application instance manager is published on kubernets in a Deployment (publishing component) form, the distribution is realized based on kubernets CRD (customized resource), an interface of an APIServer is extended to provide services to the outside, existing concepts of kubernets such as Pod, delivery, Stateful and Service are combined and defined as a resource entity capable of being managed uniformly, and the abstract concept "application" defined by the embodiment of the invention is realized based on the entity.
As another specific embodiment, taking a mess marathon as an example, in a distributed container cluster managed by the mess + marathon, an application instance manager is published on the mess through marathon in a task form, an independent interface is used to provide services for a life cycle manager, and an app and a group in the marathon are combined and defined as a resource entity that can be uniformly managed, and the abstract concept "application" defined by the embodiment of the present invention is implemented based on this entity.
On the basis of the above embodiment, the lifecycle manager defines "application" in an abstract way, and provides services for the application instance to the outside through the release of the application instance manager. Therefore, the distributed container platform is expanded and managed, and meanwhile, the self instance is also handed to the platform for management, and resources and other management capabilities of the cluster are reused.
The embodiment of the invention publishes the life cycle manager and the application instance manager on the distributed cluster management platform in advance, responds to the publishing instruction of the publishing object through the life cycle manager, calculates the publishing plan of the publishing object, publishes through the application instance manager, monitors the running state data of the published application instance, collects the running state data through the life cycle manager, stores the running state data together with the publishing data related to the publishing object, and analyzes the performance of the publishing object according to the stored data, thereby realizing not only the publishing, configuration and version management of the application, but also the publishing, monitoring and management of the published application and having complete life cycle management capability.
EXAMPLE five
Fig. 5 is a flowchart of a lifecycle management method for a distributed application according to a fifth embodiment of the present invention, and this embodiment is further optimized based on the foregoing embodiment. As shown in fig. 5, the method includes:
s510, issuing an application instance according to an issuing plan sent by a life cycle manager issued on a distributed cluster management platform in advance, wherein the application instance manager is issued on the distributed cluster management platform in advance.
S520, monitoring the running state data of the published application examples, and feeding back the running state data to the life cycle manager so that the life cycle manager can store and analyze the performance of the published object according to the running state data.
Preferably, the method further comprises:
and collecting the resource quota of the distributed cluster and feeding the resource quota back to the life cycle manager.
Specifically, the method and the system can communicate with the lifecycle manager so that the lifecycle manager can acquire the collected resource quota situation, and the lifecycle manager can judge whether the release of the release object can be completed according to the resource quota situation.
And S530, acquiring a query result according to the query instruction of the life cycle manager and feeding the query result back to the life cycle manager. Wherein the query instruction may include a query for a running state.
The embodiment of the invention publishes the life cycle manager and the application instance manager on the distributed cluster management platform in advance, responds to the publishing instruction of the publishing object through the life cycle manager, calculates the publishing plan of the publishing object, publishes through the application instance manager, monitors the running state data of the published application instance, collects the running state data through the life cycle manager, stores the running state data together with the publishing data related to the publishing object, and analyzes the performance of the publishing object according to the stored data, thereby realizing not only the publishing, configuration and version management of the application, but also the publishing, monitoring and management of the published application and having complete life cycle management capability.
EXAMPLE six
Fig. 6 is a schematic structural diagram of a lifecycle manager according to a sixth embodiment of the present invention, where this embodiment is applicable to a case of performing full lifecycle management on products and applications published on a distributed cluster management platform. The lifecycle manager provided by the embodiment of the present invention can execute the lifecycle management method for distributed applications provided by any embodiment of the present invention, and has functional modules and beneficial effects corresponding to the execution method. The lifecycle manager adopts a layered, modular design internally, and as shown in fig. 6, the lifecycle manager includes an interface layer 610, a data scheduling layer 620, a data management layer 630, and a data persistence layer 640, wherein:
the interface layer 610 is configured to receive a publishing instruction for a publishing object, and specifically, the interface layer 610 provides an interface service for the outside and is responsible for communicating with a user, a client and an application instance manager;
the data scheduling layer 620 is configured to calculate, in response to the issue instruction, an issue list of the issue object, where the issue object includes a product or an application, and the issue list includes multiple application instances and an issue order between the multiple application instances;
preferably, the data scheduling layer 620 is further configured to send the publishing list to an application instance manager published on the distributed cluster management platform in advance, where the application instance manager is configured to publish an application instance according to the publishing list and monitor running state data of the published application instance;
preferably, the data scheduling layer 620 is further configured to collect running state data monitored by the application instance manager;
a data management layer 630, configured to manage the running state data collected by the data scheduling layer and the release data related to the release object;
a data persistence layer 640, configured to store the running state data and the release data;
the data scheduling layer is also used for analyzing the performance of the release object according to the data stored in the data persistence layer;
preferably, the data scheduling layer 620 is further configured to analyze the performance of the published object according to the data stored by the data persistence layer.
Further, the data management layer 630 is responsible for receiving the instruction and data issued by the data scheduling layer 620, and performing operations such as creating, reading, updating, deleting and the like on data such as products, components, applications, examples and the like; data persistence is performed using the capabilities of the data persistence layer 640. The data management layer 630 provides a service data view for the data scheduling layer 620, and internally decomposes and combines the service data in a most reasonable manner for data manipulation. The logical data management layer 630 may be divided into two modules, configuration management and status management, according to the type of data to be processed, and respectively maintain configuration data and status data.
The data persistence layer 640 is responsible for performing persistence processing on data sent by the data management layer 630, and supports using a relational database such as mysql, oracle, postgradsql, and the like, and a NoSQL database such as hbase, mongodb, redis, and the like to perform data persistence, and isolates influences of different underlying data persistence technologies on upper-layer applications.
In one embodiment, preferably, the data scheduling layer 620 includes:
a publication management module comprising:
the device comprises a receiving unit, a processing unit and a processing unit, wherein the receiving unit is used for receiving an issuing instruction of an issuing object, and the issuing instruction carries configuration parameters of the issuing object;
the analysis calculation unit is used for analyzing the issuing instruction to obtain the configuration parameters of the issued object and calculating to obtain an issuing list of the issued object according to the configuration parameters and a predefined configuration template;
the sending unit is used for sending the release list to an application instance manager which is released on the distributed cluster management platform in advance;
the state management module is used for acquiring running state data monitored by the application instance manager;
and the analysis management module is used for analyzing the performance of the release object according to the data stored in the data persistence layer.
Preferably, the analysis calculation unit includes:
the analysis subunit is used for analyzing the issuing instruction to acquire the configuration parameters of the issuing object;
the quota calculation subunit is used for calculating a target resource quota required by the instantiation deployment according to the configuration parameters and the configuration template;
the demand judgment subunit is configured to acquire, by using the application instance manager, a used resource quota of the current distributed cluster, and judge, according to the used resource quota, whether the current distributed cluster meets a demand of a target resource quota;
and the distribution list calculation subunit is configured to, after determining that the requirement of the target resource quota is met, calculate a distribution list of the distribution object according to the configuration parameter and the configuration template.
Preferably, the distribution list calculating subunit includes:
the first calculation subunit is configured to, if the issue instruction is an update issue instruction, obtain a configuration parameter of a published object corresponding to the published object, and generate an update issue list through a comparison operation of the configuration parameter;
the second calculation subunit is configured to calculate, if the issue instruction is a first issue instruction and the issue object is a target product, an issue list of the target product according to the configuration parameters and the configuration template of the target product;
and the third calculating subunit is used for judging whether the target application is deployed in the published product or not if the publishing instruction is a first publishing instruction and the publishing object is the target application, acquiring publishing data related to the published product if the target application is deployed in the published product, injecting the publishing data related to the published product into the publishing list of the target application after the publishing list of the target application is calculated, and calculating the publishing list of the target application according to the configuration parameters and the configuration template of the target application if the target application is not deployed in the published product.
The embodiment of the invention publishes the life cycle manager and the application instance manager on the distributed cluster management platform in advance, responds to the publishing instruction of the publishing object through the life cycle manager, calculates the publishing plan of the publishing object, publishes through the application instance manager, monitors the running state data of the published application instance, collects the running state data through the life cycle manager, stores the running state data together with the publishing data related to the publishing object, and analyzes the performance of the publishing object according to the stored data, thereby realizing not only the publishing, configuration and version management of the application, but also the publishing, monitoring and management of the published application and having complete life cycle management capability.
EXAMPLE seven
Fig. 7 is a schematic structural diagram of an application instance manager according to a seventh embodiment of the present invention, where this embodiment is applicable to a case where full-lifecycle management is performed on products and applications published on a distributed cluster management platform. The application instance manager provided by the embodiment of the invention can execute the life cycle management method of the distributed application provided by any embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method. As shown in fig. 7, the application instance manager includes:
a publishing component 710 for publishing the application instance according to a publishing list;
a listening component 720 for listening to run state data of the published application instance;
and a communication component 730, configured to communicate with a lifecycle manager issued on the distributed cluster management platform in advance, obtain the issue list, and send monitoring data.
Preferably, the application instance manager further comprises:
and the acquisition component is used for acquiring the resource quota of the distributed cluster and sending the resource quota to the life cycle manager through the communication component.
Preferably, the communication component is further configured to obtain a corresponding query result according to the query instruction of the life cycle manager and feed back the query result.
The embodiment of the invention publishes the life cycle manager and the application instance manager on the distributed cluster management platform in advance, responds to the publishing instruction of the publishing object through the life cycle manager, calculates the publishing plan of the publishing object, publishes through the application instance manager, monitors the running state data of the published application instance, collects the running state data through the life cycle manager, stores the running state data together with the publishing data related to the publishing object, and analyzes the performance of the publishing object according to the stored data, thereby realizing not only the publishing, configuration and version management of the application, but also the publishing, monitoring and management of the published application and having complete life cycle management capability.
Example eight
Fig. 8 is a schematic structural diagram of a distributed cluster management platform according to an eighth embodiment of the present invention, where this embodiment is applicable to a case where full-lifecycle management is performed on products and applications released on the distributed cluster management platform. As shown in FIG. 8, the distributed cluster management platform 8 includes a lifecycle manager 810 and an application instance manager 820.
The embodiment of the invention realizes the full life cycle management of products and applications, realizes the product management function, the application management function, the configuration management function, the state management function and the application analysis management function through the life cycle manager and the application instance manager which are released on the distributed cluster management platform, and has the corresponding functional modules and the beneficial effects of the life cycle management method of the distributed applications provided by any embodiment of the invention.
Example nine
Fig. 9 is a schematic structural diagram of a computer device according to a ninth embodiment of the present invention. FIG. 9 illustrates a block diagram of an exemplary computer device 912 suitable for use in implementing embodiments of the invention. The computer device 912 shown in fig. 9 is only an example and should not bring any limitations to the function and scope of use of the embodiments of the present invention.
As shown in fig. 9, computer device 912 is shown in the form of a general purpose computer. Components of computer device 912 may include, but are not limited to: one or more processors 916, a memory device 928, and a bus 918 that couples various system components including the memory device 928 and the processors 916.
Bus 918 represents one or more of any of several types of bus structures, including a memory device bus or memory device controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, such architectures include, but are not limited to, Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MAC) bus, enhanced ISA bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.
Computer device 912 typically includes a variety of computer system readable media. Such media can be any available media that is accessible by computer device 912 and includes both volatile and nonvolatile media, removable and non-removable media.
The storage 928 may include computer system readable media in the form of volatile Memory, such as Random Access Memory (RAM) 930 and/or cache Memory 932. Computer device 912 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 934 may be used to read from and write to non-removable, nonvolatile magnetic media (not shown in FIG. 9, and typically referred to as a "hard disk drive"). Although not shown in FIG. 9, a magnetic disk drive for reading from and writing to a removable, nonvolatile magnetic disk (e.g., a "floppy disk") and an optical disk drive for reading from or writing to a removable, nonvolatile optical disk such as a Compact disk Read-Only Memory (CD-ROM), Digital Video disk Read-Only Memory (DVD-ROM) or other optical media may be provided. In these cases, each drive may be connected to the bus 918 through one or more data media interfaces. Storage 928 may include at least one program product having a set (e.g., at least one) of program modules configured to carry out the functions of embodiments of the invention.
A program/utility 940 having a set (at least one) of program modules 942, which may include but is not limited to an operating system, one or more application programs, other program modules, and program data, each of which examples or some combination thereof may include an implementation of a network environment, may be stored in, for example, the storage device 928. The program modules 942 generally perform the functions and/or methodologies of the described embodiments of the invention.
Computer device 912 may also communicate with one or more external devices 914 (e.g., keyboard, pointing device, display 624, etc.), with one or more devices that enable a user to interact with computer device 912, and/or with any devices (e.g., network card, modem, etc.) that enable computer device 912 to communicate with one or more other computing devices. Such communication may occur via input/output (I/O) interfaces 922. Moreover, computer device 912 can also communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public Network such as the internet) via Network adapter 920. As shown in FIG. 9, network adapter 920 communicates with the other modules of computer device 912 via bus 918. It should be appreciated that although not shown, other hardware and/or software modules may be used in conjunction with computer device 912, including but not limited to: microcode, device drivers, Redundant processors, external disk drive Arrays, disk array (RAID) systems, tape drives, and data backup storage systems, among others.
The processor 916 executes various functional applications and data processing by running a program stored in the storage device 928, for example, implementing a lifecycle management method applied to a distributed application of a lifecycle manager provided by an embodiment of the present invention, the method including:
responding to an issuing instruction of an issuing object through a life cycle manager, and calculating to obtain an issuing list of the issuing object, wherein the issuing object comprises a product or an application, the issuing list comprises a plurality of application instances and an issuing sequence among the application instances, and the life cycle manager is issued on a distributed cluster management platform in advance;
sending the release list to an application instance manager through the life cycle manager, wherein the application instance manager is pre-released on the distributed cluster management platform and is used for releasing the application instance according to the release list and monitoring running state data of the released application instance;
collecting running state data monitored by the application instance manager through the life cycle manager, and storing the running state data and release data related to the release object;
and analyzing the performance of the release object according to the stored data through the life cycle manager.
An embodiment of the present invention further provides another computer device, including: one or more processors; a storage device, configured to store one or more programs, where when the one or more programs are executed by the one or more processors, the one or more processors implement the lifecycle management method applied to the distributed application of the application instance manager, according to the embodiment of the present invention, the lifecycle management method applied to the distributed application of the application instance manager includes:
issuing an application instance according to an issuing plan sent by a life cycle manager issued on a distributed cluster management platform in advance through an application instance manager, wherein the application instance manager is issued on the distributed cluster management platform in advance;
and monitoring the running state data of the published application instance through the application instance manager, and feeding back the running state data to the life cycle manager so that the life cycle manager can store and analyze the performance of the published object according to the running state data.
Of course, those skilled in the art can understand that the processor can also implement the technical solution of the lifecycle management method applied to the distributed application of the application instance manager, which is provided by any embodiment of the present invention. The hardware structure and functions of the electronic device can be explained with reference to the contents of the ninth embodiment.
Example ten
An embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements a lifecycle management method applied to distributed applications of a lifecycle manager, the method including:
responding to an issuing instruction of an issuing object through a life cycle manager, and calculating to obtain an issuing list of the issuing object, wherein the issuing object comprises a product or an application, the issuing list comprises a plurality of application instances and an issuing sequence among the application instances, and the life cycle manager is issued on a distributed cluster management platform in advance;
sending the release list to an application instance manager through the life cycle manager, wherein the application instance manager is pre-released on the distributed cluster management platform and is used for releasing the application instance according to the release list and monitoring running state data of the released application instance;
collecting running state data monitored by the application instance manager through the life cycle manager, and storing the running state data and release data related to the release object;
and analyzing the performance of the release object according to the stored data through the life cycle manager.
Computer storage media for embodiments of the invention may employ any combination of one or more computer-readable media. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable Read-Only Memory (EPROM, or flash Memory), an optical fiber, a portable compact disc Read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, Radio Frequency (RF), etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or terminal. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
Embodiments of the present invention also provide another computer-readable storage medium, where the computer-executable instructions, when executed by a computer processor, are configured to perform a lifecycle management method for a distributed application applied to an application instance manager, the method comprising:
issuing an application instance according to an issuing plan sent by a life cycle manager issued on a distributed cluster management platform in advance through an application instance manager, wherein the application instance manager is issued on the distributed cluster management platform in advance;
and monitoring the running state data of the published application instance through the application instance manager, and feeding back the running state data to the life cycle manager so that the life cycle manager can store and analyze the performance of the published object according to the running state data.
Of course, the storage medium containing the computer-executable instructions provided by the embodiments of the present invention is not limited to the method operations described above, and may also perform related operations in the lifecycle management method of the distributed application applied to the application instance manager, provided by any embodiment of the present invention. The description of the storage medium is explained with reference to the contents of embodiment ten.
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims (13)

1. A lifecycle management method for a distributed application, applied to a lifecycle manager, the method comprising:
responding to an issuing instruction of an issuing object, calculating to obtain an issuing list of the issuing object, wherein the issuing object comprises a product or an application, the issuing list comprises a plurality of application instances and issuing sequences among the application instances, and the life cycle manager is issued on a distributed cluster management platform in advance; the application is a complete distributed application, is a combination and high abstraction of fine-grained concepts defined in a container cluster management technology, is a release set formed by dynamically combining the fine-grained concepts in the container cluster management technology by using configuration data, and provides the capabilities of release, scheduling, monitoring and analysis for the outside by using the set as a unit; the product is a combination of applications; the issuing instruction is issued by a developer when a product or an application is required to be issued, or issued by an issued application; the applications released by the applications are called child applications of the source applications, the source applications are called parent applications of the child applications, the releasing relation of the applications is organized by using a tree relation, and the life cycle of each child application is managed by the parent application of the child application;
sending the release list to an application instance manager, wherein the application instance manager is pre-released on the distributed cluster management platform and is used for releasing an application instance according to the release list and monitoring running state data of the released application instance;
collecting running state data monitored by the application instance manager, and storing the running state data and release data related to the release object;
and analyzing the performance of the issued object according to the stored data.
2. The method of claim 1, wherein computing an issue list of issued objects in response to an issue instruction for the issued objects comprises:
receiving an issuing instruction of an issuing object, wherein the issuing instruction carries configuration parameters of the issuing object;
and analyzing the issuing instruction to obtain the configuration parameters of the issued object, and calculating to obtain an issuing list of the issued object according to the configuration parameters and a predefined configuration template.
3. The method according to claim 2, wherein before calculating the distribution list of the distribution object according to the configuration parameters and the predefined configuration template, the method further comprises:
calculating a target resource quota required by instantiation deployment according to the configuration parameters and the configuration template;
and acquiring the used resource quota of the current distributed cluster through the application instance manager, and if the used resource quota meets the requirement of the target resource quota, continuing to execute the calculation operation of the issuing list.
4. The method of claim 3, wherein if the used resource quota meets the requirement of a target resource quota, calculating the publication list of the publication object according to the configuration parameter and the configuration template comprises:
if the issuing instruction is an updating issuing instruction, acquiring configuration parameters of the issued object corresponding to the issued object, and generating an updating issuing list through comparison operation of the configuration parameters;
if the issuing instruction is an issuing instruction for the first time and the issuing object is a target product, calculating an issuing list of the target product according to configuration parameters and a configuration template of the target product;
if the issuing instruction is the first issuing instruction and the issuing object is the target application, whether the target application is deployed in the issued product is judged, if yes, issuing data related to the issued product is obtained, the issuing data related to the issued product is injected into the issuing list of the target application after the issuing list of the target application is calculated, and if not, the issuing list of the target application is calculated according to the configuration parameters and the configuration template of the target application.
5. The method of claim 1, further comprising:
responding to a query instruction of the issued object, calculating a query result according to the stored running state data and the issued data related to the issued object, and feeding back the query result; or
And responding to the query instruction of the issued object, and acquiring and feeding back a query result through the application instance manager.
6. The method of claim 1, further comprising:
and monitoring the state change of the published object according to the stored running state data and a preset trigger rule, and notifying or alarming when the state change of the published object meets the trigger rule.
7. The method of claim 1, wherein analyzing the performance of the published object based on the saved data comprises:
and analyzing the operation health condition of the distribution object and the distributed cluster and the task key node or time consumption ratio according to the stored data, and generating a report according to the analysis result.
8. A lifecycle manager, wherein the lifecycle manager is published on a distributed cluster management platform, the lifecycle manager comprising:
the interface layer is used for receiving an issuing instruction of an issuing object;
the data scheduling layer is used for responding to the issuing instruction and calculating to obtain an issuing list of the issuing object, wherein the issuing object comprises a product or an application, and the issuing list comprises a plurality of application examples and issuing sequences among the application examples; the application is a complete distributed application, is a combination and high abstraction of fine-grained concepts defined in a container cluster management technology, is a release set formed by dynamically combining the fine-grained concepts in the container cluster management technology by using configuration data, and provides the capabilities of release, scheduling, monitoring and analysis for the outside by using the set as a unit; the product is a combination of applications; the issuing instruction is issued by a developer when a product or an application is required to be issued, or issued by an issued application; the applications released by the applications are called child applications of the source applications, the source applications are called parent applications of the child applications, the releasing relation of the applications is organized by using a tree relation, and the life cycle of each child application is managed by the parent application of the child application;
the data scheduling layer is further configured to send the publishing list to an application instance manager published on the distributed cluster management platform in advance, where the application instance manager is configured to publish an application instance according to the publishing list and monitor running state data of the published application instance;
the data scheduling layer is also used for collecting running state data monitored by the application instance manager;
the data management layer is used for managing the running state data acquired by the data scheduling layer and the release data related to the release object;
the data persistence layer is used for storing the running state data and the release data;
the data scheduling layer is also used for analyzing the performance of the release object according to the data stored in the data persistence layer.
9. The lifecycle manager according to claim 8, wherein the data scheduling layer comprises:
a publication management module comprising:
the device comprises a receiving unit, a processing unit and a processing unit, wherein the receiving unit is used for receiving an issuing instruction of an issuing object, and the issuing instruction carries configuration parameters of the issuing object;
the analysis calculation unit is used for analyzing the issuing instruction to obtain the configuration parameters of the issued object and calculating to obtain an issuing list of the issued object according to the configuration parameters and a predefined configuration template;
the sending unit is used for sending the release list to an application instance manager which is released on the distributed cluster management platform in advance;
the state management module is used for acquiring running state data monitored by the application instance manager;
and the analysis management module is used for analyzing the performance of the release object according to the data stored in the data persistence layer.
10. The lifecycle manager according to claim 9, wherein the parsing computation unit comprises:
the analysis subunit is used for analyzing the issuing instruction to acquire the configuration parameters of the issuing object;
the quota calculation subunit is used for calculating a target resource quota required by the instantiation deployment according to the configuration parameters and the configuration template;
the demand judgment subunit is configured to acquire, by using the application instance manager, a used resource quota of the current distributed cluster, and judge, according to the used resource quota, whether the current distributed cluster meets a demand of a target resource quota;
and the distribution list calculation subunit is configured to, after determining that the requirement of the target resource quota is met, calculate a distribution list of the distribution object according to the configuration parameter and the configuration template.
11. The lifecycle manager, as defined in claim 10, wherein the release list calculation subunit, comprises
The first calculation subunit is configured to, if the issue instruction is an update issue instruction, obtain a configuration parameter of a published object corresponding to the published object, and generate an update issue list through a comparison operation of the configuration parameter;
the second calculation subunit is configured to calculate, if the issue instruction is a first issue instruction and the issue object is a target product, an issue list of the target product according to the configuration parameters and the configuration template of the target product;
and the third calculating subunit is used for judging whether the target application is deployed in the published product or not if the publishing instruction is a first publishing instruction and the publishing object is the target application, acquiring publishing data related to the published product if the target application is deployed in the published product, injecting the publishing data related to the published product into the publishing list of the target application after the publishing list of the target application is calculated, and calculating the publishing list of the target application according to the configuration parameters and the configuration template of the target application if the target application is not deployed in the published product.
12. A computer device, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a lifecycle management method for a distributed application as recited in any of claims 1-7.
13. A computer-readable storage medium, on which a computer program is stored, which program, when being executed by a processor, is adapted to carry out the method for lifecycle management for a distributed application according to any of the claims 1-7.
CN201810361329.9A 2018-04-20 2018-04-20 Lifecycle management method, manager, device, and medium for distributed application Active CN108595316B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810361329.9A CN108595316B (en) 2018-04-20 2018-04-20 Lifecycle management method, manager, device, and medium for distributed application
PCT/CN2019/071385 WO2019200984A1 (en) 2018-04-20 2019-01-11 Life cycle management method for distributed application, managers, device and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810361329.9A CN108595316B (en) 2018-04-20 2018-04-20 Lifecycle management method, manager, device, and medium for distributed application

Publications (2)

Publication Number Publication Date
CN108595316A CN108595316A (en) 2018-09-28
CN108595316B true CN108595316B (en) 2020-02-21

Family

ID=63613720

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810361329.9A Active CN108595316B (en) 2018-04-20 2018-04-20 Lifecycle management method, manager, device, and medium for distributed application

Country Status (2)

Country Link
CN (1) CN108595316B (en)
WO (1) WO2019200984A1 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108595316B (en) * 2018-04-20 2020-02-21 星环信息科技(上海)有限公司 Lifecycle management method, manager, device, and medium for distributed application
CN109636304B (en) * 2018-10-29 2021-04-06 浙江口碑网络技术有限公司 Business system publishing method and device, storage medium and electronic device
CN110647318B (en) * 2019-09-29 2020-08-04 星环信息科技(上海)有限公司 Method, device, equipment and medium for creating instance of stateful application
CN111176930B (en) * 2019-12-10 2023-02-07 未鲲(上海)科技服务有限公司 Component operation data processing method and device, computer equipment and storage medium
CN111556114A (en) * 2020-04-26 2020-08-18 天津中新智冠信息技术有限公司 Information interaction method and device and server
CN111813440B (en) * 2020-07-21 2024-04-19 北京千丁互联科技有限公司 Multithreading application release method and device
CN112181779B (en) * 2020-09-28 2024-06-04 北京云歌科技有限责任公司 Comprehensive processing method and system for AI metadata
CN113760409B (en) * 2021-09-09 2024-06-18 广州市百果园网络科技有限公司 Service instance management method, device, equipment and storage medium
CN114265618A (en) * 2021-11-30 2022-04-01 重庆富民银行股份有限公司 Method for publishing and rolling back by applying one key
CN117271152B (en) * 2023-09-04 2024-07-26 中电金信软件有限公司 Registration and query method for application instance information

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106371918A (en) * 2016-08-23 2017-02-01 北京云纵信息技术有限公司 Task cluster scheduling management method and apparatus
CN107479863A (en) * 2016-06-07 2017-12-15 阿里巴巴集团控股有限公司 The configuration information management method and system of proprietary cloud
CN107766157A (en) * 2017-11-02 2018-03-06 山东浪潮云服务信息科技有限公司 Distributed container cluster framework implementation method based on domestic CPU and OS

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9116735B2 (en) * 2012-03-07 2015-08-25 Microsoft Technology Licensing, Llc Offline provisioning of virtual machines
CN106548288B (en) * 2016-11-04 2019-06-11 环球大数据科技有限公司 The polymorphic instance management system and method for the more scenes of electric power
CN107562522A (en) * 2017-10-12 2018-01-09 国电南瑞科技股份有限公司 A kind of Distributed Application management method based on ZooKeeper
CN107870845B (en) * 2017-10-19 2020-10-27 北京工业大数据创新中心有限公司 Management method and system for micro-service architecture application
CN108595316B (en) * 2018-04-20 2020-02-21 星环信息科技(上海)有限公司 Lifecycle management method, manager, device, and medium for distributed application

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107479863A (en) * 2016-06-07 2017-12-15 阿里巴巴集团控股有限公司 The configuration information management method and system of proprietary cloud
CN106371918A (en) * 2016-08-23 2017-02-01 北京云纵信息技术有限公司 Task cluster scheduling management method and apparatus
CN107766157A (en) * 2017-11-02 2018-03-06 山东浪潮云服务信息科技有限公司 Distributed container cluster framework implementation method based on domestic CPU and OS

Also Published As

Publication number Publication date
CN108595316A (en) 2018-09-28
WO2019200984A1 (en) 2019-10-24

Similar Documents

Publication Publication Date Title
CN108595316B (en) Lifecycle management method, manager, device, and medium for distributed application
US20210160307A1 (en) Probability-distribution-based log-file analysis
US20200329091A1 (en) Methods and systems that use feedback to distribute and manage alerts
US9712410B1 (en) Local metrics in a service provider environment
US8140591B2 (en) Enabling workflow awareness within a business process management (BPM) system
US9442817B2 (en) Diagnosis of application server performance problems via thread level pattern analysis
US9092278B2 (en) Determining the processing order of a plurality of events
US12014216B2 (en) Method for platform-based scheduling of job flow
CN110309108A (en) Data acquisition and storage method, device, electronic equipment, storage medium
CN110874272A (en) Resource allocation method and device, computer readable storage medium and electronic device
CN110427258A (en) Scheduling of resource control method and device based on cloud platform
CN114090378A (en) Custom monitoring and alarming method based on Kapacitor
CN114691050B (en) Cloud native storage method, device, equipment and medium based on kubernets
CN113656102A (en) Data point burying method and device, storage medium and electronic equipment
US12035156B2 (en) Communication method and apparatus for plurality of administrative domains
CN113127050A (en) Application resource packaging process monitoring method, device, equipment and medium
CN113760491A (en) Task scheduling system, method, equipment and storage medium
Büyüktanır et al. Provisioning system for application virtualization environments
Bianchi et al. An ASM-based model for grid job management
US20180107723A1 (en) Content oriented analysis of dumps
CN116594752A (en) Flow scheduling method, device, equipment, medium and program product
US20120311117A1 (en) Object Pipeline-Based Virtual Infrastructure Management
CN113407429B (en) Task processing method and device
KR20170122874A (en) Apparatus for managing log of application based on data distribution service
CN115237547A (en) Unified container cluster hosting system and method for non-intrusive HPC computing cluster

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 200233 11th floor, building B, 88 Hongcao Road, Xuhui District, Shanghai

Patentee after: Star link information technology (Shanghai) Co.,Ltd.

Address before: 200233 11th floor, building B, 88 Hongcao Road, Xuhui District, Shanghai

Patentee before: TRANSWARP TECHNOLOGY (SHANGHAI) Co.,Ltd.