An application deployment method and device, an electronic terminal and a storage medium
By combining container management and virtual management services in a server cluster, efficient application deployment and automated testing are achieved, solving the problems of complex and inefficient application deployment processes in existing technologies, and improving the flexibility and efficiency of the testing process.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-22
- Publication Date
- 2026-06-12
AI Technical Summary
Existing technologies have complex and inefficient application deployment processes, requiring the writing of multiple pipeline scripts, which leads to cumbersome steps.
This paper provides an application deployment method suitable for server clusters. It deploys different forms of application images on compute nodes through container management services and virtual management services, and realizes service building, deployment and testing through a workflow engine. It uses Kubernetes and Kubevirt to connect the entire process of service building, deployment and testing.
It improves the flexibility of application testing processes and the efficiency of automated testing, reduces the complexity of test process maintenance, and enables efficient use of cluster resources.
Smart Images

Figure CN122195455A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computers, and in particular to an application deployment method, apparatus, electronic terminal, and computer-readable storage medium. Background Technology
[0002] In existing technologies, each application deployment requires the writing of a pipeline script, which is cumbersome. If multiple applications need to be deployed, multiple pipeline scripts need to be written, resulting in cumbersome deployment steps and low deployment efficiency. Summary of the Invention
[0003] The main technical problem addressed by this application is to provide an application deployment method, apparatus, electronic terminal, and computer-readable storage medium, thereby solving the problems of complex application deployment processes and low implementation efficiency in the prior art.
[0004] To address the aforementioned technical problems, the first technical solution adopted in this application is: to provide an application deployment method applicable to server clusters, wherein the server cluster includes at least one management node and multiple compute nodes; the management node is equipped with container management services and virtual management services; the application deployment method includes: Obtain the application service information registered by the application to be deployed, including the storage address of the application in the storage repository; the application has images of different forms; Based on the application's storage address in the storage repository, the container management service and / or virtual management service are used to deploy different types of images of the application on the compute nodes.
[0005] The application service information also includes the application deployment method, which includes containerized deployment and virtualized deployment. Different types of application images are deployed on compute nodes using container management services and / or virtual management services, including: Build applications from the storage repository into container images and virtual machine images; The container management service publishes container images to compute nodes using a containerized deployment method; The virtual management service publishes virtual machine images to compute nodes through virtualization deployment. Application deployment methods also include: Associate the container images and virtual machine images corresponding to the applications deployed on the compute nodes; Once all the different types of images corresponding to the application have been deployed, the application's access port will be generated.
[0006] The application service information also includes the first target address and the second target address where the application is to be deployed to the target computing node; Before the steps of deploying different forms of application images on compute nodes using container management services and / or virtual management services, the process also includes: Obtain the IP address of each compute node in the server cluster used to deploy the application; The first target address and the second target address are compared with the IP addresses of each computing node in the server cluster to determine the target computing node where the application is to be deployed.
[0007] The container management service deploys container images to compute nodes using containerized deployment methods, including: If the IP address of any compute node in the server cluster matches the first target address, a container is created in the compute node through the container management service, and the container image is published into the container of the compute node through containerized deployment.
[0008] The virtual management service deploys virtual machine images to compute nodes via virtualization, including: If the IP address of any compute node in the server cluster matches the second target address, a virtual machine is created in the compute node through the virtual management service, and the virtual machine image is deployed to the virtual machine in the compute node through virtualization.
[0009] The application deployment methods also include: Workflows are created based on a server cluster-based workflow engine, and these workflows include service building, service deployment, and service testing. Start the workflow, call the target script, and execute the service build, service deployment, and service testing in sequence; the target script is an automatically executed script.
[0010] The application deployment methods also include: In response to the execution service build, the task configuration information of the application to be deployed is obtained through the container management service; the task configuration information includes the address information of the application's corresponding program code in the Git repository and the storage address of the application in the storage repository; The target script accesses the address information in the Git repository, pulls the application's program code from the Git repository, and compiles it to obtain the application. The compiled application is stored according to its storage address in the storage repository.
[0011] The task configuration information also includes compilation templates; Pulling the application's code from the Git repository and compiling it yields the application, which includes: The application's program code is compiled according to the compilation template to obtain the application. Different compilation templates correspond to different language types.
[0012] The application deployment methods also include: In response to the execution of service tests, the test configuration information of the application to be tested is obtained through the container management service; the test configuration information includes the address information of the program code corresponding to the test script in the Git repository; the test script is an automatically executed script; Create a test container on the compute node, and pull the test script from the Git repository and deploy it to the test container based on the address information of the program code corresponding to the test script in the Git repository; This allows for automated testing of applications deployed on a server cluster by accessing the access ports of the application under test using test scripts within the test container.
[0013] To solve the above-mentioned technical problems, the second technical solution adopted in this application is: to provide an application deployment device, the application deployment device comprising: The acquisition module is used to obtain the application service information registered by the application to be deployed; the application service information includes the storage address of the application in the storage repository; the application has different forms of images; The deployment module is used to deploy different types of images corresponding to the application on the compute nodes according to the application's storage address in the storage repository, through container management service and / or virtual management service.
[0014] To solve the above-mentioned technical problems, the third technical solution adopted in this application is: to provide an electronic terminal, which includes a memory and a processor coupled to each other, the processor being used to execute program instructions stored in the memory, and the processor being used to execute program data to implement the steps in the application deployment method described above.
[0015] To solve the above-mentioned technical problems, the fourth technical solution adopted in this application is: to provide a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps in the application deployment method described above.
[0016] The beneficial effects of this application are as follows: Unlike existing technologies, this application provides an application deployment method, apparatus, electronic terminal, and computer-readable storage medium. The application deployment method is applicable to server clusters, which include at least one management node and multiple compute nodes. The management node includes a container management service and a virtual management service. The application deployment method includes: obtaining application service information registered by the application to be deployed, wherein the application service information includes the application's storage address in a storage repository; the application has images of different forms; and, based on the application's storage address in the storage repository, deploying the different forms of images corresponding to the application on the compute nodes through the container management service and / or the virtual management service. This application, by simultaneously deploying the different forms of images corresponding to the application on compute nodes, helps improve the flexibility of the application's testing process; it also helps improve the efficiency of automated testing process implementation and significantly reduces the complexity of test process maintenance; and through the advantages of the server cluster, it achieves efficient use of cluster resources during application testing. Attached Figure Description
[0017] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This is a flowchart illustrating an embodiment of the application deployment method provided in this application; Figure 2 yes Figure 1 A flowchart illustrating an embodiment of step S2 in the provided application deployment method; Figure 3 This is a schematic diagram of the framework of an embodiment of the application deployment apparatus provided in this application; Figure 4 This is a schematic diagram of the framework of an embodiment of the electronic terminal provided in this application; Figure 5 This is a schematic diagram of a framework of an embodiment of the computer-readable storage medium provided in this application. Detailed Implementation
[0019] The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0020] In the following description, specific details such as particular system architectures, interfaces, and technologies are presented for illustrative purposes rather than for limiting purposes, in order to provide a thorough understanding of this application.
[0021] In this article, the term "and / or" simply describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. Additionally, the character " / " generally indicates that the preceding and following related objects have an "or" relationship. Furthermore, "more" in this article means two or more objects.
[0022] To enable those skilled in the art to better understand the technical solution of this application, the following describes in further detail an application deployment method provided by this application in conjunction with the accompanying drawings and specific embodiments.
[0023] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.
[0024] Before providing a further detailed description of the embodiments of this application, the nouns and terms involved in the embodiments of this application will be explained, and the nouns and terms involved in the embodiments of this application shall be interpreted as follows.
[0025] Kubernetes, or K8s for short, is an abbreviation formed by using "8" to represent the eight characters of "ubernete". K8s is a production-grade container orchestration platform, a powerful and easily scalable platform in the cloud-native community, capable of elegantly automating deployment and dynamically scaling. K8s is used for automating the deployment, scaling, and management of containerized applications. A K8s cluster typically consists of a group of nodes (servers), divided into a control plane and worker nodes. Each worker node contains multiple container groups (Plain Old Documentation, Pods), and a Pod is the smallest unit of management and scheduling in K8s. A Pod can contain one or more closely related containers. Containers are used to encapsulate large-scale services.
[0026] Argo Engine is a container-native workflow engine based on the Kubernetes (K8s) platform, used for orchestrating parallel jobs on K8s. As a K8s Custom Resource Definition (CRD) implementation, Argo Engine can describe the process steps of a workflow and can customize and automate multi-step, process-oriented, and other operations.
[0027] CRD is a built-in feature of Kubernetes that allows you to define your own resource types, just like Pod, Service, and Deployment are native Kubernetes resource types.
[0028] Although the Argo workflow engine based on Kubernetes has enabled containerized development operations (DevOps) in the industry, there is a significant trade-off between the complexity and high cost of transformation and the inherent advantages of containerization and cloud-native technologies for DevOps processes. This is especially true for traditional businesses that have always relied heavily on virtual machines (KVM) or businesses that have their own needs for system-level services (system daemons, kernel parameters, etc.).
[0029] Kubevirt is a virtualization platform that runs virtual machines in containers. Based on Kubernetes (K8s), it seamlessly extends existing clusters using CRDs and other K8s functionalities, providing a set of programming interfaces for managing virtual machine virtualization. In short, Kubevirt is based on the K8s platform, virtual machines, and other virtualization technologies, using CRDs to manage the lifecycle of virtual machines. Kubevirt's management interface is similar to the process of managing Pods in K8s, thus its deployment and dynamic adjustment behaviors are highly aligned with cloud-native operations. Kubevirt itself cannot define complex processes and relies on the scheduling, networking, and storage capabilities provided by the K8s platform. Kubevirt is a cloud-native technology support solution for virtualization and does not possess capabilities beyond virtualization itself.
[0030] Therefore, this application creates a Kubevirt management platform within a K8s cluster. This allows the container management platform within the K8s cluster to overcome the barrier inherent in traditional business applications that heavily rely on virtualization and cannot implement automated continuous integration (CI) testing processes on the K8s platform. Through a workflow engine, it connects the entire process of service building, deployment, and testing, and possesses high customization capabilities to handle various scenarios and products. Ultimately, this significantly improves the efficiency of automated testing process implementation and greatly reduces the complexity of test process maintenance. Leveraging the advantages of the K8s platform, it enables efficient and practical use of cluster resources during CI testing.
[0031] The following uses a server cluster implementation as an example to illustrate the application deployment method provided in this application embodiment.
[0032] This embodiment provides a server cluster, which includes at least one management node and multiple compute nodes. The management node is equipped with a container management service and a virtual management service. The virtual management service is a Kubevirt component used to manage the lifecycle of virtual machines. The container management service is the initial management component in the server cluster, used to manage the lifecycle of containers. The server cluster can be a Kubernetes (K8s) cluster.
[0033] The workflow engine for the server cluster can be Argo, which natively runs multi-step, parallel task flows on Kubernetes.
[0034] The application deployment method provided in this application embodiment can be implemented by a server or terminal alone, or by a server and terminal working together. In some embodiments, the terminal or server can implement the application deployment method provided in this application embodiment by running a computer program. For example, the computer program can be a native program or software module in an operating system; it can be a native application (APP), that is, a program that needs to be installed in the operating system to run, such as a client that supports virtual scenes, such as a game APP; it can also be a mini-program, that is, a program that only needs to be downloaded to a browser environment to run; or it can be a mini-program that can be embedded in any APP. In short, the above-mentioned computer program can be any form of application, module or plugin.
[0035] The following uses a server implementation as an example to illustrate the application deployment method provided in this application embodiment.
[0036] Please see Figure 1 , Figure 1 This is a flowchart illustrating an embodiment of the application deployment method provided in this application.
[0037] This embodiment provides an application deployment method, which includes the following steps.
[0038] S1: Obtain the application service information registered by the application to be deployed, including the storage address of the application in the storage repository; the application has different forms of images.
[0039] S2: Based on the application's storage address in the storage warehouse, deploy the application's corresponding images of different forms on the compute nodes through container management service and / or virtual management service.
[0040] The server cluster in this embodiment is a K8s cluster.
[0041] In one embodiment, the application deployment method further includes the following specific steps.
[0042] Specifically, a workflow engine based on a server cluster creates a workflow, which includes multiple task flows, such as service building, service deployment, and service testing. The workflow is started by invoking a target script, which executes service building, service deployment, and service testing sequentially; the target script is an automatically executed script.
[0043] Custom workflows enable highly customized CI automated testing processes, facilitating a complete workflow solution from service building and deployment to subsequent automated testing. It boasts advantages such as strong practicality, unified access control, and standardized network and storage infrastructure. Suitable for various business testing scenarios and rapid verification for compatibility testing across diverse system environments.
[0044] In one embodiment, the application deployment method further includes the following specific steps.
[0045] Specifically, in response to the execution service build, the task configuration information of the application to be deployed is obtained through the container management service; the task configuration information includes the target script, the address information of the program code corresponding to the application in the Git repository, and the storage address of the application in the storage repository.
[0046] The target script accesses the address information in the Git repository, pulls the application's program code from the Git repository, and compiles it to obtain the application.
[0047] The compiled application is stored according to its storage address in the storage repository.
[0048] In one specific embodiment, the task configuration information also includes a compilation template. The application's program code can be compiled according to the compilation template to obtain the application, wherein different compilation templates correspond to different language types.
[0049] In one embodiment, obtaining the application service information registered by the application to be deployed in step S1 specifically includes the following detailed implementation methods.
[0050] Specifically, application service information includes the storage address of the application in the storage repository. The application exists in different forms of images. For example, the application has corresponding container images and virtual machine images. The storage address of the container image corresponding to the application in the storage repository is different from the storage address of the virtual machine image corresponding to the application.
[0051] Specifically, the application service information also includes the application deployment method, which includes containerized deployment and virtualized deployment.
[0052] Specifically, the application service information also includes the first and second target addresses where the application will be deployed to the target computing node. The target address is specifically an Internet Protocol (IP) address.
[0053] In one embodiment, step S2, which involves deploying images of different forms of the application on the compute nodes through container management services and / or virtual management services based on the application's storage address in the storage warehouse, specifically includes the following detailed implementation methods.
[0054] Please see Figure 2 , Figure 2 yes Figure 1 A flowchart illustrating an embodiment of step S2 in the provided application deployment method.
[0055] S21: Build the compiled application into container images and virtual machine images.
[0056] In one specific embodiment, the IP address of each computing node in the server cluster used to deploy the application is obtained; the first target address and the second target address are compared with the IP addresses of each computing node in the server cluster to determine the target computing node where the application is to be deployed.
[0057] In one specific embodiment, the container image and the virtual machine image have corresponding deployment configurations. For example, the deployment configuration includes required resources (Central Processing Unit (CPU), memory, GPU, IP address, etc.), service-required configuration variables, number of replicas, etc. Required resources include Central Processing Unit (CPU), memory, Graphics Processing Unit (GPU), IP address, etc. The target compute nodes for deploying the container image are determined based on its deployment configuration. The target compute nodes for deploying the virtual machine image are also determined based on its deployment configuration.
[0058] S22: The container management service publishes container images to compute nodes through containerized deployment.
[0059] In one specific embodiment, in response to the IP address of any compute node in the server cluster being consistent with the first target address, a container is created in the compute node through the container management service, and the container image is published into the container of the compute node through containerized deployment.
[0060] In one specific embodiment, in response to the fact that the remaining configuration of any compute node in the server cluster meets the deployment requirements of the container image deployment configuration, a container is created in the compute node through the container management service, and the container image is published to the container of the compute node through containerized deployment.
[0061] S23: The Virtual Management Service publishes virtual machine images to compute nodes through virtualization deployment.
[0062] In one specific embodiment, in response to the IP address of any computing node in the server cluster being consistent with the second target address, a virtual machine is created in the computing node through the virtual management service, and the virtual machine image is published to the virtual machine of the computing node through virtualization deployment.
[0063] In one specific embodiment, in response to the fact that the remaining configuration of any compute node in the server cluster meets the deployment requirements of the virtual machine image deployment configuration, a virtual machine is created in the compute node through the virtual management service, and the virtual machine image is published to the virtual machine of the compute node through virtualization deployment.
[0064] In one specific embodiment, the container image and virtual machine image corresponding to the application deployed on the compute node are associated; once the different forms of images corresponding to the application have been deployed, the application's access port is generated.
[0065] In one embodiment, the application deployment method further includes the following specific steps.
[0066] Specifically, in response to the execution of service tests, the test configuration information of the application to be tested is obtained through the container management service. The test configuration information includes the address information of the program code corresponding to the test script in the Global Information Tracker (Git) repository. The test script is an automatically executed script. A test container is created on the compute node, and the test script is pulled from the Git repository and deployed to the test container based on the address information of the program code corresponding to the test script in the Git repository. The application's access port is accessed based on the test script in the test container to perform automated testing on the application deployed in the server cluster.
[0067] This embodiment utilizes idle resources on compute nodes to perform low-cost activities such as build tasks and execute test scripts, while ensuring the basic resources required for application scenarios (container services and virtualization applications). This reduces the cost of physical resources and enables more automated CI testing under the same cluster size, resulting in significant cost reduction and efficiency improvement advantages.
[0068] This embodiment utilizes Kubeevir and containerization technologies to decouple the application under test from platform dependencies, configuring and launching the corresponding environment on demand. Compared to historical scenarios that required the advance or long-term use of various types and versions of virtual machine instances, the dynamic creation and destruction method in this embodiment is more conducive to the resource utilization of the server cluster. It reduces repetitive and time-consuming actions, significantly lowering the manpower costs associated with changes to test scenarios and test plans.
[0069] This embodiment provides an application deployment method applicable to server clusters. The server cluster includes at least one management node and multiple compute nodes. A container management service and a virtual management service are deployed on the management node. The application deployment method includes: obtaining application service information registered by the application to be deployed, wherein the application service information includes the storage address of the application in a storage repository; the application has images of different forms; and deploying the images of the application of different forms on the compute nodes respectively through the container management service and / or the virtual management service, based on the storage address of the application in the storage repository. This application, by simultaneously deploying images of different forms corresponding to the application on compute nodes, helps improve the flexibility of the application's testing process; it also helps improve the efficiency of automated testing process implementation and significantly reduces the complexity of test process maintenance; and through the advantages of the server cluster, it achieves efficient use of cluster resources during application testing.
[0070] Please see Figure 3 , Figure 3 This is a schematic diagram of a framework of an embodiment of the linkage zoom device provided in this application. This embodiment provides an application deployment device 60, which includes an acquisition module 61 and a deployment module 62.
[0071] The acquisition module 61 is used to acquire the application service information registered by the application to be deployed, wherein the application service information includes the storage address of the application in the storage repository; the application has different forms of images.
[0072] The deployment module 62 is used to deploy different forms of images corresponding to the application on the compute nodes according to the storage address of the application in the storage warehouse, through container management service and / or virtual management service.
[0073] The application deployment device 60 provided in this embodiment helps improve the flexibility of the application testing process by simultaneously deploying images of different forms corresponding to the application on computing nodes; it also helps improve the efficiency of automated testing process implementation and significantly reduces the complexity of test process maintenance; and it achieves efficient use of cluster resources during application testing by leveraging the advantages of server clusters.
[0074] Please see Figure 4 , Figure 4 This is a schematic diagram of a framework of an embodiment of the electronic terminal provided in this application. The electronic terminal 80 includes a memory 81 and a processor 82 coupled to each other. The processor 82 is used to execute program instructions stored in the memory 81 to implement the steps of any of the above-described application deployment method embodiments. In a specific implementation scenario, the electronic terminal 80 may include, but is not limited to, a microcomputer or a server. In addition, the electronic terminal 80 may also include mobile devices such as laptops and tablets, which are not limited here.
[0075] Specifically, processor 82 controls itself and memory 81 to implement the steps of any of the above-described application deployment method embodiments. Processor 82 may also be referred to as a CPU (Central Processing Unit). Processor 82 may be an integrated circuit chip with signal processing capabilities. Processor 82 may also be a general-purpose processor, digital signal processor (DSP), application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component. A general-purpose processor may be a microprocessor or any conventional processor. Furthermore, processor 82 may be implemented using integrated circuit chips.
[0076] Please see Figure 5 , Figure 5 This is a schematic diagram of a framework of an embodiment of the computer-readable storage medium provided in this application. The computer-readable storage medium 90 stores program instructions 901 that can be executed by a processor. The program instructions 901 are used to implement the steps of any of the above-described application deployment method embodiments.
[0077] In some embodiments, the functions or modules of the apparatus provided in this disclosure can be used to perform the methods described in the above method embodiments. The specific implementation can be referred to the description of the above method embodiments, and for the sake of brevity, it will not be repeated here.
[0078] The description of the various embodiments above tends to emphasize the differences between the various embodiments. The similarities or similarities between them can be referred to, and for the sake of brevity, they will not be repeated here.
[0079] In the several embodiments provided in this application, it should be understood that the disclosed methods and apparatus can be implemented in other ways. For example, the apparatus implementations described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection of devices or units may be electrical, mechanical, or other forms.
[0080] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0081] If the integrated unit is implemented as 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 this application, in essence, 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. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute all or part of the steps of the methods of various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0082] The above are merely embodiments of this application and do not limit the scope of patent protection of this application. Any equivalent structural or procedural changes made using the content of this application’s specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the scope of patent protection of this application.
Claims
1. An application deployment method, characterized in that, Applicable to server clusters, wherein the server cluster includes at least one management node and multiple computing nodes; The management node is equipped with container management services and virtual management services. The application deployment method includes: Obtain the application service information registered by the application to be deployed; wherein, the application service information includes the storage address of the application in the storage repository; the application has images of different forms; Based on the storage address of the application in the storage warehouse, the container management service and / or the virtual management service respectively deploy the image of the application in different forms on the computing node.
2. The application deployment method according to claim 1, characterized in that, The application service information also includes the deployment method of the application, which includes containerized deployment and virtualized deployment. The step of deploying the images of different forms corresponding to the application on the computing node through the container management service and / or the virtual management service includes: The application in the storage repository is built into a container image and a virtual machine image; The container management service publishes the container image to the compute node through the containerized deployment method; The virtual management service publishes the virtual machine image to the computing node through the virtualization deployment method; The application deployment method also includes: Associate the container image and the virtual machine image corresponding to the application deployed on the compute node; Once all the different forms of the image corresponding to the application have been deployed, the access port for the application is generated.
3. The application deployment method according to claim 2, characterized in that, The application service information also includes the first target address and the second target address to which the application is to be deployed on the target computing node; Before the step of deploying the images of different forms corresponding to the application on the compute node through the container management service and / or the virtual management service, the method further includes: Obtain the IP address of each of the computing nodes in the server cluster used to deploy the application; The first target address and the second target address are compared with the IP addresses of each computing node in the server cluster to determine the target computing node where the application is to be deployed.
4. The application deployment method according to claim 3, characterized in that, The container management service publishes the container image to the compute node through the containerized deployment method, including: If the IP address of any of the computing nodes in the server cluster matches the first target address, a container is created in the computing node through the container management service, and the container image is published into the container of the computing node through the containerized deployment method. And / or, the virtual management service publishes the virtual machine image to the compute node through the virtualization deployment method, including: If the IP address of any of the computing nodes in the server cluster matches the second target address, a virtual machine is created in the computing node through the virtual management service, and the virtual machine image is published to the virtual machine of the computing node through the virtualization deployment method.
5. The application deployment method according to claim 1, characterized in that, The application deployment method also includes: Workflows are created based on the workflow engine of the server cluster, and the workflows include service building, service deployment, and service testing. The workflow is initiated, the target script is invoked, and the service construction, service deployment, and service testing are executed sequentially; the target script is an automatically executed script.
6. The application deployment method according to claim 5, characterized in that, The application deployment method also includes: In response to the execution of the service build, the task configuration information of the application to be deployed is obtained through the container management service; the task configuration information includes the address information of the program code corresponding to the application in the Git repository and the storage address of the application in the storage repository. The target script accesses the address information in the Git repository, pulls the application's program code from the Git repository, and compiles it to obtain the application. The compiled application is stored according to its storage address in the storage repository.
7. The application deployment method according to claim 6, characterized in that, The application deployment method further includes: in response to executing the service test, obtaining test configuration information of the application to be tested through the container management service; the test configuration information includes the address information of the program code corresponding to the test script in the Git repository; the test script is an automatically executed script; creating a test container on the compute node, and pulling the test script from the Git repository based on the address information of the program code corresponding to the test script in the Git repository and deploying it to the test container; accessing the access port of the application to be tested based on the test script in the test container, and performing automated testing on the application deployed in the server cluster; Alternatively, the task configuration information may also include a compilation template; The step of pulling the application's program code from the Git repository and compiling it to obtain the application includes: compiling the application's program code according to the compilation template to obtain the application, wherein different compilation templates correspond to different language types.
8. An application deployment apparatus, characterized in that, The application deployment device includes: The acquisition module is used to acquire application service information registered by the application to be deployed; wherein, the application service information includes the storage address of the application in the storage repository; the application has images of different forms; The deployment module is used to deploy the image of the application in different forms on the computing node according to the storage address of the application in the storage warehouse, through container management service and / or virtual management service.
9. An electronic terminal, characterized in that, The electronic terminal includes a memory and a processor coupled to each other, the processor being used to execute program instructions stored in the memory, and the processor being used to execute program data to implement the steps in the application deployment method as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the application deployment method as described in any one of claims 1 to 7.