Method and device for generating running state plan of application program and related product

By collecting and analyzing the application's running data in real time, generating the latest running plan, it solves the problem of application planning changes in the actual environment, and improves the efficiency and user experience of version upgrades and problem repairs.

CN119201199APending Publication Date: 2024-12-27TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202310774537.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-27
Publication Date
2024-12-27

AI Technical Summary

Technical Problem

After the application is delivered to the user side, its planning in the actual operating environment may change, resulting in the inability to meet user needs when the version is upgraded or the problem is fixed, affecting the user experience.

Method used

By collecting application operation data in real time, identifying changes in planning related data, generating the latest operating plan of the application, ensuring that the planning matches the actual environment.

Benefits of technology

Improve the efficiency of application version upgrade and problem repair, meet user needs, improve user experience, and speed up processing speed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119201199A_ABST
    Figure CN119201199A_ABST
Patent Text Reader

Abstract

The invention discloses a method and device for generating an application program running state plan and a related product. The invention relates to data storage and data reading in the technical field of cloud. The method comprises the following steps: collecting operation data of an application program in an actual operation environment; identifying change data related to the planning of the application program in the acquired operation data; and generating a latest running state plan of the application program according to the change data and the plan deployed for the application program last time. Due to the fact that the running data of the application program are collected in real time, the change data related to planning in the running data can be recognized in time, the newest running state planning better meeting user requirements can be generated on the basis of the change data, and the use experience of the user on the application program is improved. Besides, the latest running state plan of the application program can be generated in real time, and the generation efficiency of the running state plan is improved, so that the processing speed of services such as version upgrading and problem repairing is accelerated, and the use experience of a user is further improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a method, device and related products for generating an application program operation state plan. Background Art

[0002] With the rapid development of Internet technology, the functional diversity and convenience of applications have been achieved. Applications have become an indispensable part of people's work, study and daily life. With the evolution and upgrading of user-side needs, after developers complete the development of applications and deliver them to the user side, the applications may face different business needs such as version upgrades or problem repairs.

[0003] After the application is delivered to the user, the application plan may change in the actual operating environment. If the developer only upgrades the application version or fixes problems based on the original plan when the application is delivered to the user, it is easy for the upgraded or repaired application to fail to meet user needs, affecting the user experience of the application.

[0004] Therefore, how to collect the running data of the application in real time and generate the running state plan of the application in real time has become an urgent problem to be solved. Summary of the invention

[0005] The embodiments of the present application provide a method, device and related products for generating an application running state plan, aiming to provide a solution for real-time collection of application running data and real-time generation of an application running state plan, so as to meet user needs and improve user experience of the application.

[0006] The first aspect of the present application provides a method for generating an application running state plan, comprising:

[0007] Collect the running data of the application in the actual running environment;

[0008] Identifying change data related to the planning of the application in the collected operation data; the planning includes information on resources used by the application and information on devices deployed in the actual operation environment;

[0009] The latest running state plan of the application is generated according to the change data and the plan most recently deployed for the application.

[0010] A second aspect of the present application provides a device for generating an application program running state plan, including:

[0011] The operation data collection module is used to collect the operation data of the application in the actual operation environment;

[0012] a change data identification module, used to identify change data related to the planning of the application in the collected operation data; the planning includes information on resources used by the application and information on devices deployed in the actual operation environment;

[0013] The operation state plan generating module is used to generate the latest operation state plan of the application according to the change data and the plan most recently deployed for the application.

[0014] A third aspect of the present application provides a device for generating an application running state plan, the device comprising a processor and a memory:

[0015] The memory is used to store a computer program and transmit the computer program to the processor;

[0016] The processor is used to execute the steps of the method for generating an application running state plan provided in the first aspect according to the instructions in the computer program.

[0017] In a fourth aspect, the present application provides a computer-readable storage medium, which is used to store a computer program. When the computer program is executed by a device that generates an application running state plan, it implements the steps of the method for generating an application running state plan provided in the first aspect.

[0018] In a fifth aspect, the present application provides a computer program product, including a computer program, which, when executed by a device for generating an application running state plan, implements the steps of the method for generating an application running state plan provided in the first aspect.

[0019] It can be seen from the above technical solutions that the embodiments of the present application have the following advantages:

[0020] The embodiment of the present application provides a method, device and related products for generating an application running state plan. In the method, the running data of the application in the actual running environment is first collected. Then, the change data related to the planning of the application in the collected running data is identified; wherein, the planning of the application includes information about the resources used by the application and information about the devices deployed in the actual running environment. Finally, according to the change data and the plan deployed for the application the most recently, the latest running state plan of the application can be generated. Since the present application collects the running data of the application in the actual running environment in real time, the change data related to the plan generated when the application is running in the actual environment can be identified in time. The change data reflects the changes generated when the application is running. Based on the change data and the plan deployed for the application the most recently, the latest running state plan of the application that better meets the needs of the user can be generated. It can be seen that the latest running state plan of the application generated by the present application is more suitable for business scenarios such as version upgrades or problem repairs of the application, which can meet the needs of users and improve the user experience of the application. In addition, the latest running state plan of the application can be generated in real time, and the generation efficiency of the running state plan can be improved, thereby accelerating the processing speed of services such as version upgrades and problem repairs, and further improving the user experience of the application. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] Figure 1 A scenario architecture diagram of a method for generating an application program running state plan provided in an embodiment of the present application;

[0022] Figure 2 A flowchart of a method for generating an application program running state plan provided in an embodiment of the present application;

[0023] Figure 3 A schematic diagram of collecting a configuration package or a planning package by using a configuration package and planning package collection tool provided in an embodiment of the present application;

[0024] Figure 4 A schematic diagram of collecting a configuration package or a planning package through a configuration package and planning package collection controller provided in an embodiment of the present application;

[0025] Figure 5 A schematic diagram of storing application program operation data into an application collection data storage table provided in an embodiment of the present application;

[0026] Figure 6 A schematic diagram of generating the latest running state plan of an application provided in an embodiment of the present application;

[0027] Figure 7 A schematic diagram of a running state planning generation process provided in an embodiment of the present application;

[0028] Figure 8 A schematic diagram of generating the latest running state plan of an application for a slave cluster through a master cluster provided in an embodiment of the present application;

[0029] Fig. 9 A schematic diagram of generating an application program running state plan provided in an embodiment of the present application;

[0030] Fig.10 A schematic diagram of the structure of a device for generating an application program running state plan provided in an embodiment of the present application;

[0031] Fig.11 A schematic diagram of the structure of the server in the embodiment of the present application;

[0032] Fig.12 A schematic diagram of the structure of a terminal device in an embodiment of the present application. DETAILED DESCRIPTION

[0033] When an application is running in an actual environment, its plan may change due to the influence of the external environment or to meet the user's usage needs. That is, compared with the original state plan of the application when the developer delivers the application to the user end, the running state plan of the application in the actual environment will change. As the application develops and is used, there may be business needs such as version upgrades, problem fixes, or configuration changes. At this time, it is necessary to generate the latest running state plan of the application. If the developer only upgrades the version or fixes the problem of the application based on the original state plan when the application is delivered to the user end, it is easy to make the upgrade or repair of the application inconsistent with the user's needs, resulting in failure to meet user needs and affecting the user's experience of the application.

[0034] In view of the above problems, a method, device and related products for generating an application running state plan are provided in the present application, the purpose of which is to provide a solution for real-time collection of application running data and real-time generation of application running state plan, which can meet user needs and improve user experience of the application. In the technical solution provided in the present application, the running data of the application in the actual running environment is collected; the change data related to the planning of the application in the collected running data is identified; the planning includes information about the resources used by the application and the information about the equipment deployed in the actual running environment; according to the change data and the plan most recently deployed for the application, the latest running state plan of the application is generated. It can be seen that the latest running state plan of the application generated by the present application is more suitable for business scenarios such as version upgrades or problem repairs of the application, which can meet user needs and improve user experience. In addition, it can also ensure the real-time generation of the running state plan of the application, improve the generation efficiency of the running state plan, speed up the processing speed of business such as version upgrades and problem repairs, thereby further improving the user experience of the application.

[0035] The execution subject of the method for generating the application running state plan provided in the embodiment of the present application may be a terminal device. For example, the application runs on the terminal device, and the terminal device can collect the running data of the application in the actual environment. As an example, the terminal device may specifically include but is not limited to mobile phones, desktop computers, tablet computers, laptops, PDAs, intelligent voice interaction devices, smart home appliances, vehicle terminals, aircraft, etc. The execution subject of the method for generating the application running state plan provided in the embodiment of the present application may also be a server, that is, the server may collect the running data of the application in the actual running environment. In addition, the method for generating the application running state plan provided in the embodiment of the present application may also be executed collaboratively by the terminal device and the server. For example, the application runs on the terminal device, and the terminal device collects the running data of the application in the actual running environment, and sends the collected running data to the server; the server identifies the change data related to the planning of the application in the collected running data, and generates the latest running state plan of the application according to the change data and the plan deployed for the application the most recently. Among them, the terminal and the server may be directly or indirectly connected by wired or wireless communication, and the present application does not limit it here. Therefore, the implementation subject of the implementation of the technical solution of the present application is not limited in the embodiment of the present application.

[0036] See also Figure 1 , which is a scenario architecture diagram of a method for generating an application running state plan provided in an embodiment of the present application. The diagram includes a server and various forms of terminal devices. Figure 1The server shown can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. In addition, the server can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms.

[0037] Next, from the perspective of a terminal device, the method for generating an application running state plan provided in an embodiment of the present application is specifically introduced.

[0038] See also Figure 2 , which is a flow chart of a method for generating an application running state plan provided by an embodiment of the present application. Figure 2 The method for generating an application running state plan shown includes:

[0039] S201: Collecting operation data of the application in the actual operation environment.

[0040] In an embodiment of the present application, an application may generate a variety of different operating data in an actual environment. In order to subsequently generate an operating state plan for the application, it is necessary to collect data related to the planning of the application from the operating data generated when the application runs in the actual environment.

[0041] Therefore, in a possible implementation of the present application, the running data of the application and the data related to the planning of the application may include kubernetes resource data. Among them, kubernetes, which can be referred to as K8s, is an abbreviation formed by replacing the 8 characters "ubernete" in the middle of the name with 8. Kubernetes is an open source application for deploying and managing cloud-native applications. It can automatically manage the deployment, expansion and reduction of applications, thereby improving the scalability and availability of applications. That is, the running state planning of applications is closely related to kubernetes resource data. As an example, kubernetes resource data may include one or more of service instance resource data, service binding resource data, configuration resource data and deployment resource data, which is not limited in the present application. Accordingly, S201 can specifically be: collecting one or more of the service instance resource data, service binding resource data, configuration resource data and deployment resource data of the application in the actual operating environment.

[0042] In addition, when the application is delivered to the user end, the corresponding planning package and / or configuration package will be configured for the application. Therefore, it is also necessary to collect changes in the planning package and / or configuration package when the application is running in the actual environment. In a possible implementation of the present application, S201 can specifically be: collecting the operating data of the application in the actual operating environment includes collecting changes in the configuration package or the planning package.

[0043] In the embodiment of the present application, there are multiple possible implementations of S201 mentioned above, which are introduced below. It should be noted that the implementations given in the following introduction are only for illustrative purposes and do not represent all implementations of the embodiment of the present application.

[0044] The first optional implementation method is: first receive the collection task data, and determine whether it is a change in the collection configuration package or a change in the collection planning package according to the type of collection task in the collection task data. In addition, the collection task data also includes information about the equipment to be collected. Then input the collection task data into the configuration package and planning package collection tool, and run the pre-built collection program through the configuration package and planning package collection tool to obtain the collection result of the collection task. Among them, the collection result can be a change in the configuration package or a change in the planning package.

[0045] As an example, see Figure 3 , this figure is a schematic diagram of collecting configuration packages or planning packages through a configuration package and planning package collection tool provided in an embodiment of the present application. Figure 3 The data page 310 includes data page 310, which displays the collection task data received by the terminal device. For example, the collection Type indicates the type of the collection task, the collectionMachines indicates the information of the device to be collected, and the ip under the collectionMachines indicates the address of the device to be collected. Of course, the collection task data may also include other data as shown in the data page 310, which is not limited in this application. Figure 3 As shown, the major version upgrade planning and calibration classmate refers to the developer who is responsible for the version upgrade of the application. The developer first builds the collection task data displayed on the data page 310, and sends the collection task data to the terminal device. After the terminal device receives the collection task data, it can execute the collection task data through the configuration package and planning package collection tool, run the pre-built collection program, and obtain the collection results corresponding to the collection task data.

[0046] The second optional implementation method is to set the custom resource of the collection task as the trigger source in advance. When the collection task is triggered, the collection result of the collection task can be obtained by running the pre-built collection program through the configuration package and planning package collection controller. The collection result also includes: changes in the configuration package or changes in the planning package.

[0047] As an example, see Figure 4 , this figure is a schematic diagram of collecting configuration packages or planning packages through a configuration package and planning package collection controller provided in an embodiment of the present application. Figure 4 The data page 410 includes data page 410, which displays the collection task data received by the terminal device. Similarly, the collection Type can indicate the type of the collection task, and the collection Machines can indicate the information of the device to be collected. Of course, the collection task data can also include other data as shown in the data page 410, which is not limited in this application. Figure 4 As shown, the developer creates a collection task in advance through the upstream service, and uses the custom resource (Custom Resource, CR) of the collection task as the trigger source to trigger the ListAndWatch mechanism of the configuration package and planning package collection controller, so that the terminal device can run the pre-built collection program through the configuration package and planning package collection controller to obtain the collection result of the collection task.

[0048] It should be noted that for the above two optional implementations, the terminal device can choose one or a combination of multiple implementations, and this application does not limit this. In addition, the pre-built collection programs in the two optional implementations can be the same and can be reused in multiple collections in each of the two optional methods. In other words, the developer only needs to pre-build the collection program once.

[0049] S202: Identify change data related to the planning of the application program in the collected operation data.

[0050] Among them, the planning of the application includes information about the resources used by the application and the information about the devices deployed in the actual operating environment. That is, the planning of the application includes information about the resources used by the application when it is running in the actual environment, such as the kubernetes resource data mentioned in the above example, including service instance resource data, service binding resource data, configuration resource data, and deployment resource data. The planning of the application also includes information about the devices deployed in the actual environment in order for the application to run normally, such as the address of the device to be collected mentioned in the above example. This application does not limit this.

[0051] In order to meet user needs, when generating the latest planning data of an application, it is necessary to base it on the running data of the application in the actual environment. However, the running data of an application includes both data related to the planning of the application and data not related to the planning of the application. At the same time, only a part of the data related to the planning may have changed. If the running planning of the application is generated directly based on the running data of the application in the actual environment collected in real time, it may increase the steps of screening and filtering the running data, resulting in a decrease in the generation efficiency of the running planning.

[0052] Therefore, in the embodiment of the present application, the collected running data of the application in the actual environment is identified, and the change data related to the planning of the application is identified. If no change data is identified, it means that the running data of the application in the actual running environment has not changed, and the application version upgrade or problem repair and other services can be performed according to the previous running state planning of the application.

[0053] In the embodiment of the present application, the above-mentioned S202 also has multiple possible implementations, which are introduced below. It should be noted that the implementations given in the following introduction are only for exemplary purposes and do not represent all implementations of the embodiment of the present application.

[0054] Considering that in the embodiment of the present application, after the application is delivered to the user end, the running data of the application in the actual environment is collected in real time. That is to say, in order to ensure the real-time nature of the running data, the running data of the application will be collected multiple times. Among them, the first collection is carried out after the application is delivered to the user end and the original state plan is deployed for the application. At this time, the running data has not been collected, so the change data in the running data collected for the first time needs to be based on the original state plan of the application. In the multiple collections after the first collection, the running data has been collected before, so the identification of the change data can be based on the running data collected last time and the running data collected this time.

[0055] Therefore, S201 may specifically include: after delivering the application to the user end and deploying the original state plan for the application, the terminal device initially collects the operation data of the application in the actual operation environment.

[0056] Accordingly, a first optional implementation method of S202 is: based on the original state plan deployed for the application and the data related to the planning of the application in the running data of the application in the actual environment collected for the first time by the terminal device, identify the change data related to the planning in the running data collected for the first time compared with the original state plan.

[0057] The second optional implementation method of S202 is: after the initial collection is completed, the second and even subsequent collections already have the operating data collected last time. Therefore, based on the difference in data related to the planning of the application in the operating data of the application collected this time and the operating data of the application collected last time, the change data related to the planning in the operating data collected this time can be identified.

[0058] In addition, in actual applications, when in the business scenario of version upgrade and problem repair of the application, it is necessary to generate the operation state plan of the application based on the operation data of the application in the actual environment. For other business scenarios, there may also be a need to collect the operation data of the application, but there is no need to generate an operation state plan. Therefore, the collected operation data of the application can be stored so that it can be used at any time in other business scenarios. In other words, the collected operation data of the application is stored separately, and the stored operation data can be directly applied whether it is to generate the operation state plan of the application or other scenarios.

[0059] Therefore, in a possible implementation of the present application, after collecting the running data of the application in the actual running environment, the method for generating the running state plan of the application may further include: storing the collected running data of the application into the application collection data storage table. The application collection data storage table includes a plurality of different categories of collection fields, and the data related to the plan in the collected running data of the application may be specifically stored in these collection fields. In addition, the application collection data storage table may further include an update field, and the update field is used to identify whether there is a collection field in the application collection data storage table whose data has changed; that is, when the data corresponding to the collection field in the application collection data storage table changes, the update field will also change accordingly to prompt that there is changed data in the application collection data storage table.

[0060] Accordingly, S202 may specifically include: when the running data of the application in the actual environment is collected and the running data is stored in the application collection data storage table, and the value of the update field in the application collection data storage table is the first state value, it can be determined that there are collection fields with changed data among the multiple different categories of collection fields in the application collection data storage table. The collection field with changed data can be determined by comparing the data stored in the same collection field in the application collection data storage table after two consecutive collections. That is, in the application collection data storage table, the data under the same collection field of the running data collected this time and the running data collected last time are compared to see whether they have changed. The latest data stored in the collection field with changed data is determined as the change data related to the plan in the running data. On the contrary, when the value of the update field in the application collection data storage table is the second state value, it can be determined that the data of the multiple different categories of collection fields in the application collection data storage table have not changed. Among them, the first state value and the second state value can be any custom value. It should be noted that the two are different values, and the change in the value of the update field needs to be reflected to reflect whether there is a collection field with changed data. For example, the first state value may be 1, and the second state value may be 0, which is not limited in the present application.

[0061] It can be seen that the collected application running data is stored in the application collection data storage table. When processing other businesses that do not require the generation of running state plans, the application running data can also be directly obtained from the application collection data storage table. It can reduce the coupling degree between the running data collection step and the running state plan generation step, and expand the applicable business scenarios of the application running data, not only limited to business scenarios such as service application version upgrades and problem repairs that require the generation of application running state plans.

[0062] As an example, see Figure 5 , which is a schematic diagram of storing the running data of an application program into the application collection data storage table provided by an embodiment of the present application. Figure 5 As shown, the running data of the application collected by the terminal device (such as Figure 5The collection objects shown in the figure can include collecting service instance resource data (ServiceInstance), service binding resource data (ServiceBinding), configuration resource data (Deployment) and deployment resource data (Config). Specifically, the collection controller Operator corresponding to each type of Kubernetes resource data in the running state planning collection service can be used to collect it, which can trigger the ListAndWatch mechanism of the collection Operator. For example, the terminal device can collect ServiceInstance resource data through the ServiceInstance collection Operator. Finally, the four types of Kubernetes resource data collected can be stored in the corresponding fields in the application collection data storage table.

[0063] Table 1 exemplarily shows an application collection data storage table. As shown in Table 1, the application collection data storage table may include field classification, field name, data type of data corresponding to the field name, field description and field notes. The field classification may include basic fields corresponding to the basic information of the application, collection fields corresponding to the collected running data of the application, and update fields corresponding to whether the data corresponding to the collection field has changed. For example, the basic fields may include: CreatedAt field, used to indicate the creation time of the application; ApplicationName field, used to indicate the application name of the application. Other basic fields are shown in Table 1 and are not repeated here. The collection field may include: Private field, used to indicate the private configuration of the collected application when running in the actual environment; Iplist field, used to indicate the device information of the production component of the application, wherein the device information is the information of the device deployed in the actual running environment included in the planning of the application mentioned in the above example. Other collection fields are shown in Table 1 and are not repeated here. The update field may be the IsChange field. As described above, when the data corresponding to the IsChange field is 1, it can be indicated that after the running data collected twice are stored in the collection field, the data corresponding to the collection field has changed. On the contrary, if the data corresponding to the IsChange field is 0, it may indicate that the data corresponding to the acquisition field has not changed. It should be noted that the application acquisition data storage table shown in Table 1 is only an example, and the present application does not limit the specific content of the application acquisition data storage table.

[0064] Table 1 Application collection data storage table

[0065]

[0066]

[0067] S203: Generate the latest running state plan of the application program according to the change data and the plan most recently deployed for the application program.

[0068] It should be noted that the plan most recently deployed for the application does not refer to the running state plan generated for the application last time, but refers to the running state plan base plate that is regularly deployed for the application.

[0069] In an embodiment of the present application, based on the change data related to the application plan in the identified operation data and the plan most recently deployed for the application, the latest operation state plan of the application is generated for application to business scenarios such as version upgrades or problem repairs of the application.

[0070] Among them, when the latest running state plan of the application is generated, the latest running state plan can be stored in the application running state plan storage table for display and use. As an example, Table 2 exemplarily shows an application running state plan storage table. In combination with Table 2, the application running state plan storage table may include field classification, field name, data type of data corresponding to the field name, field description and field remarks. The field classification may include basic fields corresponding to the basic information of the application, and the running state plan field of the latest running state plan of the generated application. For example, the basic fields may include: field RegionName, used to indicate the regional name of the region where the application is running; field ApplicationName is used to indicate the application name of the application. Other basic fields are shown in Table 1 and will not be repeated here. The running state plan field may include: field Content, used to indicate the running state plan stored in yaml format. It should be noted that the application running state plan storage table shown in Table 2 is only an example, and this application does not limit the specific content in the application running state plan storage table.

[0071] Table 2 Application running state planning storage table

[0072]

[0073]

[0074] Based on the application collection data storage table storing the running data of the application in the above example, by comparing the same collection field in the application collection data storage table, the data stored after two consecutive collections are compared to determine the collection field where the data has changed, thereby determining the latest data stored under the collection field where the data has changed as the change data related to the planning of the application in the running data of the application. Accordingly, in a possible implementation of the present application, after determining the change data related to the planning in the running data, the S203 may specifically include: first find the data under the field corresponding to the determined change data in the plan deployed for the application the most recently, and change the data of the corresponding field in the plan deployed for the application the most recently to the change data, so as to obtain the latest running state plan of the application.

[0075] As an example, see Figure 6 , which is a schematic diagram of generating the latest operating state plan of an application provided in an embodiment of the present application. Figure 6 The update field page 610, the deployment plan page 620 and the operation state plan page 630 are included. Figure 6 As shown, the update field page 610 displays the data corresponding to the update field in the application acquisition data storage table obtained by the terminal device at regular intervals, which is used to determine whether it is necessary to generate the latest running state plan of the application; the deployment plan page 620 displays the last deployment plan for the application obtained by the terminal device; the running state plan page 630 displays the latest running state plan of the generated application. Figure 6As shown, after the running data of the application is stored in the application acquisition data storage table, the data corresponding to the update field in the application acquisition data storage table displayed on the update field page 610 is first obtained periodically. If the update field is 1, that is, IsChange = True, it means that there are change data related to the application plan in the running data of the application. At this time, the most recent plan for the application deployment displayed in the deployment plan page 620 can be obtained from the operation and maintenance center service in the product market of the application; then, the application operation plan synthesis module can be used to determine the field corresponding to the change data in the application acquisition data storage table, and the data of the field corresponding to the change data in the most recent plan for the application deployment is changed to the change data in the application acquisition data storage table, so as to generate the latest running state plan of the application displayed on the running state plan page 630. Finally, the latest running state plan of the application can be stored in the application running state plan storage table. For example, if the changed data is the data corresponding to the replicas field, the cpu field, and the memory field, then the data "2" corresponding to the replicas field in the deployment planning page 620 can be changed to data "1", the data "3" corresponding to the cpu field can be changed to data "1", and the data "11000Mi" corresponding to the memory field can be changed to data "2000Mi". The result after the change is shown in the running state planning page 630.

[0076] In addition, in actual applications, as applications are continuously upgraded, the plans deployed for applications are likely to have multiple different versions of plan formats. Therefore, the plan formats of the data related to the plan of the application in the collected operation data may include different versions of plan formats. If the data in the latest running state plan of the generated application also includes data in different versions of plan formats, it will cause difficulties in the subsequent processing of application version upgrades or problem repairs.

[0077] Therefore, in a possible implementation of the present application, the plan for the most recent application deployment mentioned above is a plan that conforms to the plan format of the target version. The most recent application deployment plan is a plan base for regular application deployment, that is, the application plan is deployed as a plan that conforms to the plan format of the target version.

[0078] As an example, the planning package in the running data of the application may include at least one of the following planning packages: a planning package that conforms to the planning format of the target version and a planning package that does not conform to the planning format of the target version; wherein the planning package that does not conform to the planning format of the target version has a planning format version earlier than the target version. For example, the planning package that conforms to the planning format of the target version may be a planning package in the Aurora Next planning format, and the planning package that does not conform to the planning format of the target version may be a planning package in the Aurora 2.0 planning format, and the version of the Aurora 2.0 planning format is earlier than the version of the Aurora Next planning format.

[0079] It can be seen that when generating the latest running state plan of the application, the application can unify the plans of different versions of the plan format existing in the collected data related to the plan of the application into a plan of the plan format that conforms to the target version. The plan of different versions of the plan format can be compatible, thereby enhancing the convenience of subsequent business processing.

[0080] As an example, see Figure 7 , which is a schematic diagram of a running state planning generation process provided by an embodiment of the present application. Figure 7 As shown, the running data of the application in the actual running environment is collected. The collected running data includes configuration packages, planning packages in the Aurora 2.0 planning format, and four types of Kubernetes resource data: ServiceInstance resource data, ServiceBinding resource data, Deployment resource data, and Config resource data. The collection results can be obtained by running the pre-built code (the collection program mentioned in the above example) through the planning generation service (the configuration package and planning package collection controller mentioned in the above example) or through the planning generation tool (the configuration package and planning package collection tool mentioned in the above example). Generate the latest running state plan for the application based on the change data in the collection results and the most recent plan deployed for the application. The planning format of the latest running state plan can be the Aurora Next planning format. The latest running state plan can include the global configuration, product configuration, and application configuration of the application, which is not limited in this application.

[0081] In addition, in actual applications, applications will be delivered to multiple user terminals, and different user terminals may be in different regions. The differences in different regions may also bring differences to the latest operating state planning of the application. It is necessary to generate corresponding latest operating state planning for user terminals in different regions. Therefore, in a possible implementation of the present application, the method for generating the operating state planning of the application may also include the following steps 1 and 2:

[0082] Step 1: Get multiple region information from custom resources.

[0083] When delivering an application to a user terminal in different regions, the corresponding region information can be recorded in the custom resource of the application in advance. Thus, the terminal device can directly obtain multiple region information from the custom resource. Among them, the region information has a one-to-one relationship with the cluster.

[0084] Step 2: Create multiple clusters one-to-one based on the information of multiple regions, including a master cluster and slave clusters.

[0085] As an example, if the multiple region information includes region A, region B, and region C, three clusters can be created one-to-one for the three regions. The cluster of region A can be used as the master cluster, and the clusters of regions B and C can be used as slave clusters, which is not limited in this application.

[0086] The main cluster is deployed with a collection program; a synchronization source object with a cache is created in the slave cluster; the cache is used to store change data related to the planning of the application program in the running data collected by the synchronization source.

[0087] Accordingly, S201 may specifically include: after the master cluster runs the collection program, the running data of the application in the actual running environment of the slave cluster may be collected through the synchronization source object created in the slave cluster. S203 may specifically include: generating the latest running state plan of the application for the slave cluster.

[0088] It can be seen that this application does not need to collect operation data and generate the latest operation state plan in each region. Simply by creating a synchronization source object with cache, you can run the collection program in the main cluster to collect the operation data of the application in the actual operation environment of the slave cluster. This enables cross-cluster data collection, which can avoid the consumption of additional computing resources, reduce maintenance costs, and reduce the complexity of collecting operation data and generating the latest operation state plan.

[0089] As an example, see Figure 8 , which is a schematic diagram of an embodiment of the present application providing a method of generating the latest running state plan of an application for a slave cluster through a master cluster. Among them, corresponding cluster custom resources ClusterCR can be created for multiple clusters respectively through a variety of different methods, such as manually creating ClusterCR, atomic operation creating ClusterCR, or using the planning data of the application to create ClusterCR, which is not limited by the present application. Figure 8As shown in the figure, first initialize multiple cluster custom resources (Dawn-ClusterCR); each ClusterCR records the corresponding regional Region information and the configuration KubeConfig for accessing the cluster, so multiple Region information can be obtained through multiple ClusterCRs, and multiple clusters Cluster can be created one-to-one based on multiple Region information; then, after the main cluster runs the collection program, the ListAndWatch mechanism can be triggered by the synchronization source objects pre-created in different slave clusters, the configuration package and planning package collection controllers, and the collection controllers corresponding to the kubernetes data resources to collect the running data of the applications in the actual running environment of different slave clusters, and generate the latest running state plans for the applications for different slave clusters.

[0090] Fig. 9 The following is a schematic diagram showing an example of generating an application runtime plan. Fig. 9 As shown, after collecting the running data of the application in the actual running environment, the running data can be first stored in the application collection data storage table; then the change data in the application collection data storage table can be determined, and the most recent deployment plan for the application can be obtained from the operation and maintenance center service of the application in the product market; then the latest running state plan of the application is generated based on the change data and the most recent deployment plan for the application; then the latest running state plan of the application can be stored in the application running state plan storage table.

[0091] Based on the method for generating an application program running state plan provided in the above embodiment, the present application also provides a device for generating an application program running state plan. Fig.10 Provide explanation.

[0092] See also Fig.10 , which is a schematic diagram of the structure of a device for generating an application program running state plan provided in an embodiment of the present application. Fig.10 The device 100 for generating an application program running state plan shown includes:

[0093] The operation data collection module 110 is used to collect the operation data of the application in the actual operation environment;

[0094] The change data identification module 120 is used to identify the change data related to the planning of the application in the collected operation data; the planning includes information on the resources used by the application and the information on the devices deployed in the actual operation environment;

[0095] The operation state plan generating module 130 is used to generate the latest operation state plan of the application program according to the change data and the plan most recently deployed for the application program.

[0096] As an implementation manner, running the data acquisition module 110 may specifically include:

[0097] The operation data initial collection unit is used to collect the operation data of the application in the actual operation environment for the initial time after the application is deployed in the original state plan;

[0098] Accordingly, the change data identification module 120 may be specifically configured to identify change data related to the plan in the operating data according to the original plan and the data related to the plan of the application program in the operating data collected for the first time.

[0099] As an implementation mode, the change data identification module 120 can be specifically used to identify the change data related to the planning in the operation data collected this time based on the difference between the data related to the planning of the application in the operation data collected this time and the operation data collected last time.

[0100] As an implementation manner, the device 100 for generating an application program running state plan may further include:

[0101] An operation data storage module is used to store the operation data into the application collection data storage table, wherein the data related to the plan in the operation data is specifically stored in a plurality of different types of collection fields of the application collection data storage table; the application collection data storage table also includes an update field, which is used to identify whether there is a collection field in the application collection data storage table with changed data;

[0102] Accordingly, the change data identification module 120 may specifically include:

[0103] A collection field determination module, used for determining, when the value of the updated field in the application collection data storage table is a first state value after the operation data is stored in the application collection data storage table, whether there is a collection field with changed data among a plurality of different types of collection fields in the application collection data storage table;

[0104] The changed data determination unit is used to determine the collection field whose data has changed by comparing the data stored in the same collection field after two consecutive collections, and determine the latest data stored in the collection field whose data has changed as the changed data in the operation data related to the plan.

[0105] As an implementation mode, the operation state plan generation module is specifically used to change the data of the field corresponding to the changed data in the plan most recently deployed for the application to the changed data, and generate the latest operation state plan of the application.

[0106] As an implementation method, the data related to the planning of the application in the operation data includes: kubernetes resource data;

[0107] Accordingly, the operation data collection module includes a module for collecting one or more of the following kubernetes resource data:

[0108] Service instance resource data, service binding resource data, configuration resource data, and deployment resource data.

[0109] As an implementation mode, the data related to the planning of the application program in the operation data further includes: a configuration package, and / or a planning package;

[0110] Accordingly, the running data collection module can also be used to receive collection task data; the collection task data includes: the type of collection task and information of the device to be collected, and the type of collection task indicates that the content to be collected is a configuration package or a planning package;

[0111] Input the collection task data into the configuration package and planning package collection tool, run the pre-built collection program through the configuration package and planning package collection tool, and obtain the collection results of the collection task; the collection results include: changes in the configuration package or changes in the planning package.

[0112] As an implementation mode, the data related to the planning of the application program in the operation data may also include: a configuration package, and / or a planning package;

[0113] Correspondingly, the data collection module can also be used to use the custom resources of the collection task as the trigger source, run the collection program through the configuration package and planning package collection controller, and obtain the collection results of the collection task; the collection results include: changes in the configuration package or changes in the planning package.

[0114] As an implementation mode, the plan most recently deployed for the application in the running state plan generation module is a plan in a plan format that conforms to the target version;

[0115] The planning package includes at least one of the following planning packages:

[0116] Planning packages that conform to the planning format of the target version and planning packages that do not conform to the planning format of the target version; the planning format of the planning package that does not conform to the planning format of the target version has a version earlier than the target version.

[0117] As an implementation manner, the device 100 for generating an application program running state plan may further include:

[0118] The region information acquisition module is used to obtain multiple region information from custom resources; the region information has a one-to-one relationship with the cluster;

[0119] The cluster creation module is used to create multiple clusters one-to-one based on multiple regional information, including a master cluster and a slave cluster; the master cluster is deployed with a collection program; a synchronization source object with a cache is created in the slave cluster; the cache is used to store change data related to the planning of the application program in the running data collected by the synchronization source;

[0120] Accordingly, the running data collection module can be specifically used to collect the running data of the application program in the actual running environment of the slave cluster through the synchronization source object created from the cluster after the main cluster runs the collection program;

[0121] Accordingly, the operating state plan generation module can be specifically used to generate the latest operating state plan for the application from the cluster.

[0122] An embodiment of the present application provides a device for generating an application program running state plan, and the device for generating an application program running state plan may be a server. Fig.11 : is a schematic diagram of a server structure provided in an embodiment of the present application. The server 900 may have relatively large differences due to different configurations or performances, and may include one or more central processing units (CPU) 922 (for example, one or more processors) and memory 932, and one or more storage media 930 (for example, one or more mass storage devices) storing application programs 942 or data 944. Among them, the memory 932 and the storage medium 930 can be short-term storage or permanent storage. The program stored in the storage medium 930 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the server. Furthermore, the central processing unit 922 can be configured to communicate with the storage medium 930 to execute a series of instruction operations in the storage medium 930 on the server 900.

[0123] The server 900 may also include one or more power supplies 926, one or more wired or wireless network interfaces 950, one or more input and output interfaces 958, and / or one or more operating systems 941, such as Windows Server 2000. TM , Mac OS X TM , Unix TM , Linux TM , FreeBSD TM etc.

[0124] The CPU 922 is used to execute the following steps:

[0125] Collect the running data of the application in the actual running environment;

[0126] Identify changes in the collected operational data that are relevant to the planning of the application; the planning includes information about the resources used by the application and the devices deployed in the actual operating environment;

[0127] Generate the latest running state plan for the application based on the change data and the plan most recently deployed for the application.

[0128] The embodiment of the present application also provides another device for generating an application program running state plan, and the device for generating an application program running state plan may be a terminal device. Fig.12 For the sake of convenience, only the parts related to the embodiments of the present application are shown. For specific technical details not disclosed, please refer to the method part of the embodiments of the present application. Take the terminal device as a mobile phone as an example:

[0129] Fig.12 The block diagram shows a partial structure of a mobile phone provided in an embodiment of the present application. Fig.12 The mobile phone includes: a radio frequency (RF) circuit 1010, a memory 1020, an input unit 1030, a display unit 1040, a sensor 1050, an audio circuit 1060, a wireless fidelity (WiFi) module 1070, a processor 1080, and a power supply 1090. Those skilled in the art can understand that Fig.12 The mobile phone structure shown in the figure does not constitute a limitation on the mobile phone, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0130] Combine the following Fig.12 A detailed introduction to the various components of the mobile phone:

[0131] The RF circuit 1010 can be used for receiving and sending signals during information transmission or calls. In particular, after receiving the downlink information of the base station, it is sent to the processor 1080 for processing; in addition, the designed uplink data is sent to the base station. Generally, the RF circuit 1010 includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (full name: LowNoiseAmplifier, English abbreviation: LNA), a duplexer, etc. In addition, the RF circuit 1010 can also communicate with the network and other devices through wireless communication. The above-mentioned wireless communications can use any communication standard or protocol, including but not limited to Global System of Mobile communications (Global System of Mobile communication, English abbreviation: GSM), General Packet Radio Service (General Packet Radio Service, GPRS), Code Division Multiple Access (Code Division Multiple Access, English abbreviation: CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (Long Term Evolution, English abbreviation: LTE), e-mail, Short Messaging Service (SMS), etc.

[0132] The memory 1020 can be used to store software programs and modules. The processor 1080 executes various functional applications and data processing of the mobile phone by running the software programs and modules stored in the memory 1020. The memory 1020 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area can store data created according to the use of the mobile phone (such as audio data, a phone book, etc.), etc. In addition, the memory 1020 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.

[0133] The input unit 1030 can be used to receive input digital or character information, and to generate key signal input related to the user settings and function control of the mobile phone. Specifically, the input unit 1030 may include a touch panel 1031 and other input devices 1032. The touch panel 1031, also known as a touch screen, can collect the user's touch operation on or near it (such as the user's operation on the touch panel 1031 or near the touch panel 1031 using any suitable object or accessory such as a finger, stylus, etc.), and drive the corresponding connection device according to a pre-set program. Optionally, the touch panel 1031 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch orientation, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into contact coordinates, and then sends it to the processor 1080, and can receive and execute commands sent by the processor 1080. In addition, the touch panel 1031 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves. In addition to the touch panel 1031, the input unit 1030 may further include other input devices 1032. Specifically, the other input devices 1032 may include but are not limited to one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, and the like.

[0134] The display unit 1040 can be used to display information input by the user or information provided to the user and various menus of the mobile phone. The display unit 1040 may include a display panel 1041. Optionally, the display panel 1041 may be configured in the form of a liquid crystal display (full name in English: Liquid Crystal Display, English abbreviation: LCD), an organic light-emitting diode (full name in English: Organic Light-Emitting Diode, English abbreviation: OLED), etc. Further, the touch panel 1031 may cover the display panel 1041. When the touch panel 1031 detects a touch operation on or near it, it is transmitted to the processor 1080 to determine the type of touch event. Subsequently, the processor 1080 provides a corresponding visual output on the display panel 1041 according to the type of touch event. Although in Fig.12 In the embodiment, the touch panel 1031 and the display panel 1041 are used as two independent components to realize the input and output functions of the mobile phone, but in some embodiments, the touch panel 1031 and the display panel 1041 can be integrated to realize the input and output functions of the mobile phone.

[0135] The mobile phone may also include at least one sensor 1050, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 1041 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 1041 and / or the backlight when the mobile phone is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that identify the posture of the mobile phone (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.; as for other sensors that can be configured in the mobile phone, such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc., they will not be repeated here.

[0136] The audio circuit 1060, the speaker 1061, and the microphone 1062 can provide an audio interface between the user and the mobile phone. The audio circuit 1060 can transmit the received audio data to the speaker 1061 after converting the received audio data into an electrical signal, which is converted into a sound signal for output; on the other hand, the microphone 1062 converts the collected sound signal into an electrical signal, which is received by the audio circuit 1060 and converted into audio data, and then the audio data is output to the processor 1080 for processing, and then sent to another mobile phone through the RF circuit 1010, or the audio data is output to the memory 1020 for further processing.

[0137] WiFi is a short-range wireless transmission technology. The mobile phone can help users send and receive emails, browse web pages and access streaming media through the WiFi module 1070. It provides users with wireless broadband Internet access. Fig.12 A WiFi module 1070 is shown, but it is understandable that it is not an essential component of the mobile phone and can be omitted as needed without changing the essence of the invention.

[0138] The processor 1080 is the control center of the mobile phone. It uses various interfaces and lines to connect various parts of the entire mobile phone. By running or executing software programs and / or modules stored in the memory 1020, and calling data stored in the memory 1020, it executes various functions of the mobile phone and processes data, thereby collecting overall data and information of the mobile phone. Optionally, the processor 1080 may include one or more processing units; preferably, the processor 1080 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 1080.

[0139] The mobile phone also includes a power supply 1090 (such as a battery) for supplying power to various components. Preferably, the power supply can be logically connected to the processor 1080 through a power management system, so that the power management system can manage functions such as charging, discharging, and power consumption.

[0140] Although not shown, the mobile phone may also include a camera, a Bluetooth module, etc., which will not be described in detail here.

[0141] In the embodiment of the present application, the processor 1080 included in the mobile phone also has the following functions:

[0142] Collect the running data of the application in the actual running environment;

[0143] Identify changes in the collected operational data that are relevant to the planning of the application; the planning includes information about the resources used by the application and the devices deployed in the actual operating environment;

[0144] Generate the latest running state plan for the application based on the change data and the plan most recently deployed for the application.

[0145] An embodiment of the present application also provides a computer-readable storage medium for storing a computer program. When the computer program is run on a device for generating an application running state plan, the device for generating an application running state plan executes any one of the implementation methods of generating an application running state plan described in the aforementioned embodiments.

[0146] An embodiment of the present application also provides a computer program product including a computer program, which, when executed on a device for generating an application running state plan, enables the device for generating an application running state plan to execute any one of the implementation methods for generating an application running state plan described in the aforementioned embodiments.

[0147] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems and devices described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0148] In the several embodiments provided in the present application, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are only schematic. For example, the division of the system is only a logical function division. There may be other division methods in actual implementation, such as multiple systems can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.

[0149] The systems described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0150] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0151] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (full name in English: Read-Only Memory, English abbreviation: ROM), random access memory (full name in English: Random Access Memory, English abbreviation: RAM), disk or optical disk and other media that can store computer programs.

[0152] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A method for generating an application program running state plan, characterized in that: include: Collect the running data of the application in the actual running environment; Identifying change data related to the planning of the application in the collected operation data; the planning includes information on resources used by the application and information on devices deployed in the actual operation environment; The latest running state plan of the application is generated according to the change data and the plan most recently deployed for the application.

2. The method for generating an application program operation state plan according to claim 1, characterized in that: The collecting of the running data of the application in the actual running environment specifically includes: After the application is deployed in an original state, the operation data of the application in the actual operation environment is initially collected; The identifying the change data in the operation data related to the planning of the application program specifically includes: According to the original state plan and the data related to the plan of the application program in the initially collected operation data, the change data related to the plan in the operation data is identified.

3. The method for generating an application program operation state plan according to claim 1, characterized in that: The identifying the change data in the operation data related to the planning of the application program specifically includes: According to the difference between the data related to the planning of the application program in the operation data collected this time and the operation data collected last time, the change data related to the planning in the operation data collected this time is identified.

4. The method for generating an application program operation state plan according to claim 1, characterized in that: After collecting the running data of the application in the actual running environment, the method further includes: The operation data is stored in an application acquisition data storage table, wherein the planning-related data in the operation data is specifically stored in a plurality of different types of acquisition fields in the application acquisition data storage table; the application acquisition data storage table further includes an update field, and the update field is used to identify whether there is a collection field in the application acquisition data storage table whose data has changed; The identifying the change data in the operation data related to the planning of the application program specifically includes: After the operation data is stored in the application acquisition data storage table, when the value of the update field in the application acquisition data storage table is a first state value, determining that there is a collection field whose data has changed among a plurality of different types of collection fields in the application acquisition data storage table; By comparing the data stored in the same collection field after two consecutive collections, the collection field with changed data is determined, and the latest data stored in the collection field with changed data is determined as the change data related to the plan in the operation data.

5. The method for generating an application program operation state plan according to claim 4, characterized in that: The step of generating the latest running state plan of the application program according to the change data and the plan most recently deployed for the application program comprises: The data of the field corresponding to the changed data in the plan most recently deployed for the application is changed to the changed data, so as to generate the latest running state plan of the application.

6. The method for generating an application program operation state plan according to claim 1, characterized in that: The data related to the planning of the application in the operation data includes: kubernetes resource data; the collection of the operation data of the application in the actual operation environment includes collecting one or more of the following kubernetes resource data: Service instance resource data, service binding resource data, configuration resource data, and deployment resource data.

7. The method for generating an application program running state plan according to claim 6, characterized in that: The data related to the planning of the application in the operation data also includes: a configuration package and / or a planning package; the collection of the operation data of the application in the actual operation environment also includes: Receive collection task data; the collection task data includes: the type of collection task and information of the device to be collected, the type of collection task indicates that the content to be collected is a configuration package or a planning package; The collection task data is input into the configuration package and planning package collection tool, and the pre-built collection program is run through the configuration package and planning package collection tool to obtain the collection result of the collection task; the collection result includes: changes in the configuration package or changes in the planning package.

8. The method for generating an application program operation state plan according to claim 6, characterized in that: The data related to the planning of the application in the operation data also includes: a configuration package and / or a planning package; the collection of the operation data of the application in the actual operation environment also includes: The user-defined resource of the collection task is used as a trigger source, and the collection program is run through the configuration package and planning package collection controller to obtain the collection result of the collection task; the collection result includes: changes in the configuration package or changes in the planning package.

9. The method for generating an application program operation state plan according to claim 7 or 8, characterized in that: The plan most recently deployed for the application is a plan that complies with the plan format of the target version; The planning package includes at least one of the following planning packages: Planning packages that conform to the planning format of the target version and planning packages that do not conform to the planning format of the target version; The planning package that does not conform to the planning format of the target version has a planning format version earlier than the target version.

10. The method for generating an application program running state plan according to any one of claims 1 to 8, characterized in that: The method further comprises: Get multiple region information from custom resources; region information has a one-to-one relationship with clusters; Multiple clusters are created one-to-one according to the multiple regional information, including a master cluster and a slave cluster; the master cluster is deployed with a collection program; a synchronization source object with a cache is created in the slave cluster; the cache is used to store change data related to the planning of the application in the running data collected by the synchronization source; Collect the running data of the application in the actual running environment, including: After the master cluster runs the collection program, the running data of the application program in the actual running environment of the slave cluster is collected through the synchronization source object created in the slave cluster; Generate the latest running state plan of the application, including: Generate an updated running state plan for the application program for the slave cluster.

11. A device for generating an application program running state plan, characterized in that: include: The operation data collection module is used to collect the operation data of the application in the actual operation environment; a change data identification module, used to identify change data related to the planning of the application in the collected operation data; the planning includes information on resources used by the application and information on devices deployed in the actual operation environment; The operation state plan generating module is used to generate the latest operation state plan of the application according to the change data and the plan most recently deployed for the application.

12. A device for generating an application program running state plan, characterized in that: The device comprises a processor and a memory: The memory is used to store a computer program and transmit the computer program to the processor; The processor is used to execute the steps of the method for generating an application runtime plan according to any one of claims 1 to 10 according to the instructions in the computer program.

13. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store a computer program, and when the computer program is executed by a device for generating an application program running state plan, the computer program implements the steps of the method for generating an application program running state plan according to any one of claims 1 to 10.

14. A computer program product, characterized in that It comprises a computer program, which, when executed by a device for generating an application program running state plan, implements the steps of the method for generating an application program running state plan as described in any one of claims 1 to 10.

Citation Information

Patent Citations

  • Application parameter adjusting method and device

    CN108014499A

  • Underlying resource state synchronization method and device, cloud platform system and storage medium

    CN110572464A

  • Method and device for dynamically configuring service, medium and server

    CN112235132A

  • Application program publishing method and device, equipment, storage medium and program product

    CN115080060A