Application image management and release method, system, device and storage medium
By applying unified storage and management of image index information, the complexity of image management and distribution in heterogeneous virtualization platforms is solved, enabling unified management and automatic distribution of virtual machines, containers, bare metal, and microvirtual machines, reducing user operational complexity and risk.
Patent Information
- Application Number
- CN202210529338.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-16
- Publication Date
- 2026-01-02
- Estimated Expiration
- 2042-05-16
AI Technical Summary
Existing technologies struggle to efficiently and uniformly manage and automatically distribute application images across heterogeneous virtualization platforms, leading to increased complexity and risk for users.
It uses application image index information to uniformly store and manage images of different architectures and virtualization services, and achieves automatic distribution through image analysis and scheduling modules, supporting unified management of virtual machines, containers, bare metal and micro virtual machines.
It simplifies user operations, reduces the complexity of image management and distribution, supports unified management of heterogeneous architectures and different virtualization methods, reduces user operational risks, and expands the scope of application.
Smart Images

Figure CN115061774B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of cloud computing and virtualization, and particularly relates to an application image management and release method, system, device and storage medium. BACKGROUND
[0002] In recent years, with the development of cloud computing and virtualization technology, cloud computing and its derivative products have been successfully deployed and applied in various industries. With the help of data center hardware, cloud computing technology can provide people with convenient and available infrastructure services, platform services, software services and other capabilities. Compared with the traditional resource service mode, the application of cloud computing technology not only improves the resource utilization rate, but also greatly improves the operation and maintenance capability of the system. As a result, the number of user demand services is increasing, and the types of services are also increasing. How to efficiently manage and distribute virtualized images has become a research hotspot and focus. However, in the current trend of cloud computing and virtualization technology development, the cluster presents the characteristics of large scale, strong heterogeneity and multiple virtualization types. Especially, the coexistence of multiple virtualization methods with obvious heterogeneity and the diversity of node architecture types seriously restrict the efficiency of unified management and automatic distribution of images of heterogeneous virtualization platforms.
[0003] Figure 1 is a schematic diagram of traditional virtualization platform image management and distribution. The virtual machine image management and distribution architecture in the current traditional virtualization platform mainly includes three parts: a virtualization platform, an image repository, and an external image repository file data storage. Among them, the virtualization platform mainly provides virtualization computing services. From the architecture, it includes X86, ARM64, MIPS, etc. Each architecture has differences in instruction set and performance. From the provided virtualization computing services, it includes KVM virtual machines, Docker containers, bare metal, and newly emerging micro virtual machines, etc. Each virtualization computing service has differences in virtualization overhead and isolation strength. The image repository stores image files that provide various computing services. According to the differences in server architecture and the types of services provided, for the same application service APP1, it needs to be split into “the number of server architectures * the number of virtualization computing service types” image files. More seriously, due to the differences in virtualization platforms, multiple image repositories will exist within a data center, such as virtual machine and bare metal image repositories for OpenStack, container and micro virtual machine repositories for Kubernetes, etc.
[0004] When a user needs to deploy an application APP1 according to different virtualization modes, such as KVM virtualization, on a server of a certain architecture, such as ARM64 architecture, the user first needs to deploy a virtualization platform with KVM virtualization on the ARM64 architecture, and then deploy the APP1 application. According to the server architecture and the provided computing service, different architecture application images in the image repository are selected, such as selecting the ARM architecture APP1 in the de-virtualization image repository, and the application deployment and release are performed by specifying the application image. Therefore, the user needs to be very familiar with the platform architecture and the computing category, and needs to find the corresponding image file from a large number of image files for release when performing application release, which is time-consuming and laborious, and increases the platform operation risk of the user.
[0005] In addition, with the development of new virtualization technologies, different architectures and different service images are becoming more and more numerous, and how to uniformly manage and automatically distribute more and more types of images in different virtualization platforms becomes more and more urgent. SUMMARY
[0006] To solve the above problems, the application provides an application image management and release method, system, device and storage medium, which can uniformly manage and automatically distribute application images of different architectures and different virtualization services.
[0007] The technical method is as follows: an application image management and release method, comprising the following steps:
[0008] In response to application release of a user on a virtualization platform, obtaining application information of the release;
[0009] Analyzing whether there is application image information corresponding to the released application in the stored application image, the application image repository uniformly stores images of multiple virtualization modes, and the application image stored in the image repository is arranged with application image index information, and the application image index information is used to find the application image information corresponding to the released application;
[0010] Extracting application image information required when the application image is released from the found application image information;
[0011] Selecting a server node to release the application.
[0012] Further, if there is only one application image information corresponding to the application in the stored application image, the corresponding image information is used as the application image information required when the application image is released;
[0013] If there are multiple image information corresponding to the application in the stored application image, then according to the user's demand, the type of the application, the isolation requirement information, one of the most matching image information is automatically selected from the multiple image information as the application image information required when publishing.
[0014] Further, the user's demand includes server architecture, virtualization mode, the application type includes light load type, computation-intensive type, data processing type, and accelerator support requirement, and the isolation requirement includes exclusive, strong isolation, moderate isolation, and weak isolation.
[0015] Further, according to the scheduling strategy, a specified server node is selected for application publishing, and the scheduling strategy includes: a sequential scheduling mode, which includes:
[0016] All available server nodes are scheduled in sequence, if the idle resources of the current server node scheduled cannot meet the application image requirements, the next server node is scheduled in sequence; when the idle resources of the server node scheduled meet the application image requirements, the image is pulled according to the application image information, and the application is published on the server node scheduled.
[0017] Further, the scheduling strategy includes: an available degree scheduling mode, which includes:
[0018] According to the available degree of the server, the available server node is selected, the image is pulled according to the application image information, and the application is published on the server node meeting the available degree, and the quantitative parameters of the available degree of the server include: CPU idle rate, memory idle rate.
[0019] Further, the virtualization mode of the application image includes virtual machine, container, bare metal and micro virtual machine.
[0020] Among them, for the unified management of the application image of the four virtualization modes, the following management specifications are adopted:
[0021] For the index file, the index file is an optional file, which points to the manifest file of different platforms and different virtualization modes, and the index file can ensure that an image can be used across platforms and provide different virtualization computing services, each platform and each virtualization computing service has different manifest files, and index is used as an index;
[0022] For the manifest file, the manifest file is an index of the config file of the image, and the manifest file saves information related to the current platform, including file layers and additional annotation information.
[0023] For the file system, the file system is a file system saved in a file layer, each file layer saves the changed part between the upper layer, the file layer includes the specific file which should be saved, the file indicating the addition, modification and deletion;
[0024] For the config file: the config file saves the hierarchical information of the file system, including the hash value of each hierarchy and the history information, and the environment variable, working directory, command parameter, mount list required by the virtualization runtime, and specifies the configuration of the image on a certain platform and system.
[0025] Further, the application image index information includes the application name, the server architecture tag information, the virtualization mode, and when analyzing whether there is application image information corresponding to the published application in the stored application image, the application image index information is used to find whether there is application image information corresponding to the published application.
[0026] Further, when arranging the application image index information, according to different architecture types, the same application image is added with the corresponding server architecture tag information after the application name, and the application name and the server architecture tag information are connected by a colon; according to different virtualization modes, the virtualization mode is added after the server architecture tag information of the same application image, and a dash is used for connection.
[0027] An application image management and publishing system, comprising a virtualization platform module, an image analysis module, an image scheduling module, and an image repository module connected in communication,
[0028] The virtualization platform module is used for users to publish applications, the image analysis module receives and analyzes the published application information, the image analysis module obtains the stored application image through the image scheduling module, and analyzes whether there is application image information corresponding to the published application in the stored application image; the image repository module is used for storing application images, the application images are uniformly stored in the image repository module, the application images stored in the image repository module are arranged with application image index information, the application image index information is used to find the application image information corresponding to the published application; the application image information required when the application image is published is extracted from the found application image information; the image scheduling module selects a server node to publish the application.
[0029] A computer device, comprising: a processor, a memory, and a program;
[0030] The program is stored in the memory, and the processor calls the program stored in the memory to execute the above-mentioned application image management and publishing method.
[0031] A computer readable storage medium for storing a program for performing the application image management and release method described above.
[0032] Compared with the prior art, the application has the advantages that: from the actual production needs, the complexity of user use is simplified, the user does not need to find the corresponding specific application image in the numerous application images of the same application, the complexity of virtualization platform image management and automatic distribution is simplified, the unified management and automatic distribution of application images of heterogeneous architectures and different computing services can be supported, the operation risk of the user is reduced, and with the continuous development and expansion of new virtualization technologies, the support of bare metal image and micro virtual machine image management and automatic distribution in the virtualization platform is realized, so that the adaptation and support range is more extensive; and through the support of unified management and automatic distribution of application images of heterogeneous virtualization, the user can flexibly use the related images in the virtualization platform according to own needs. BRIEF DESCRIPTION OF DRAWINGS
[0033] Figure 1 is a schematic diagram of traditional virtualization platform image management and distribution.
[0034] Figure 2 is a schematic diagram of the main steps of the application image management and release method in an embodiment of the application;
[0035] Figure 3 is a block diagram of the composition of the application image management and release system in an embodiment of the application;
[0036] Figure 4 is a specific execution flowchart of the application image management and release system in an embodiment of the application;
[0037] Figure 5 is an internal structure diagram of a computer device in an embodiment. DETAILED DESCRIPTION
[0038] The virtualization platform mainly provides virtualization computing services, and the virtualization computing services can be divided into various types according to different server architectures and different computing service types provided, the server architectures include but are not limited to X86 architecture, AMR64 architecture, MIPS architecture, the virtualization modes include virtual machine, container, bare metal and micro virtual machine, wherein the virtual machine includes but is not limited to KVM, the container includes but is not limited to Docker, LXC, Containerd, the bare metal refers to physical machine service, and the micro virtual machine includes but is not limited to Kata Container, so that the number of virtualization images of the same application is "the number of server architecture types * the number of virtualization modes".
[0039] Although the virtualization platform can support heterogeneous architectures and different virtualization methods, and can provide management and distribution of images, according to the number of server architecture types and the number of virtualization types provided, there are dozens or even dozens of image files for the same application, and for the user, when publishing the application, the corresponding image file in the image repository needs to be found from a large number of image files, which is time-consuming and laborious, and increases the operation risk.
[0040] To this end, see Figure 2 The application provides an application image management and publishing method, including at least the following steps:
[0041] Step 1: In response to the user publishing the application in the virtualization platform, obtaining the application information of the published application;
[0042] Step 2: Analyzing whether there is application image information corresponding to the published application in the stored application image, the application image can uniformly store images of multiple different virtualization methods, and the application image stored in the image repository is arranged with application image index information, which is used to find the application image information corresponding to the published application;
[0043] Step 3: Extracting the application image information required for publishing the application from the found application image information;
[0044] Step 4: Selecting a server node to publish the application.
[0045] Through the method of the embodiment, when the user publishes the application APP1 in the virtualization platform, only the application image name APP1 needs to be filled in the virtualization platform, and the application can be published without specifying the specific architecture type and virtualization method corresponding to the APP1 application according to the server architecture type and the virtualization method.
[0046] Specifically, in one embodiment, when the user publishes the application in the virtualization platform in step 1, the user will receive the application information sent by the virtualization platform;
[0047] In step 2, in order to more conveniently and quickly determine whether there is application image information corresponding to the published application in the stored application image, in one embodiment of the application, the application image is stored in the image repository, and the application image is uniformly stored in the image repository, and in this embodiment, the virtualization method of the application image includes virtual machine, container, bare metal and micro virtual machine.
[0048] At the same time, application images of different virtualization modes are uniformly stored in the image warehouse; what is provided in the storage is various image files of each application in the image warehouse, which ensures the data security of the image files. Moreover, the current virtualization platform cannot support the unified management and distribution of virtual machine images, container images, bare metal images and micro virtual machine images. Through the method of the embodiment, the support for the automatic distribution of application images such as virtual machines, containers, bare metals and micro virtual machines in the virtualization platform is realized.
[0049] In addition, in order to find specific application images more conveniently, in an embodiment, the application image index information is arranged, and the information included in the application image index information includes application name, server architecture tag information and virtualization mode. Through the application image index information, the application images of the same application of different architecture types and different virtualization modes can be uniformly managed and distributed in the image warehouse. The specific application image index information arrangement strategy is as follows:
[0050] According to different architecture types, the corresponding server architecture tag information is added after the application name of the same application image, and the application name and the server architecture tag information are connected by ":";
[0051] According to different virtualization modes, the virtualization mode is added after the server architecture tag information of the same application image, and "-" is used for connection.
[0052] Among them, the unified management of the application images of the four virtualization modes adopts the following management specifications:
[0053] For the index file, the index file is an optional file, which points to the manifest file of different platforms and different virtualization modes. The index file can ensure that an image can be used across platforms and provide different virtualization computing services. Each platform and each virtualization computing service has a different manifest file, and index is used as an index;
[0054] For the manifest file, the manifest file is the config file index of the image. The manifest file saves information related to the current platform, including file layers and additional annotation information;
[0055] For the file system, the file system is a file system saved in the file layer mode. Each file layer saves the part changed from the upper layer. The file layer includes specific files to be saved, indicating the added, modified and deleted files;
[0056] For the config file: the config file saves the hierarchy information of the file system, including the hash value and history information of each hierarchy, as well as the environment variables, working directory, command parameters, mount list required by the virtualization runtime, and specifies the configuration of the image on a certain platform and system.
[0057] Thus, when analyzing whether the stored application image has application image information corresponding to the published application, it can be found whether the application image information corresponding to the published application exists through the application image index information, and the application image existing in the warehouse can be selected according to specific requirements.
[0058] In an embodiment of the present application, in step 3, the application image information required when the application image is published can be extracted from the found application image information, which includes the following cases:
[0059] If there is only one application image information corresponding to the application in the stored application image, the corresponding image information is used as the application image information required when the application image is published.
[0060] If there are multiple image information corresponding to the application in the stored application image, one of the most matched image information is automatically selected from the multiple image information as the application image information required when the application image is published according to the user's requirements, the type of the application, the isolation requirements and the like.
[0061] Specifically, one of the image information meeting the requirements can be selected as the application image information required when the application image is published according to the user's requirements, which include the server architecture, the virtualization mode and the like.
[0062] Specifically, one of the image information meeting the requirements can be selected as the application image information required when the application image is published according to the type of the application, which include the light load type, the computing intensive type, the data processing type, the accelerator support requirement and the like.
[0063] Specifically, one of the image information meeting the requirements can be selected as the application image information required when the application image is published according to the isolation requirements, which include the exclusive, the strong isolation, the moderate isolation, the weak isolation and the like.
[0064] In addition, when there are multiple corresponding image information, the user's requirements can be further met, which usually include the specified server architecture, the virtualization mode, and the application image index information already contains the specific server architecture and the virtualization mode, so that the image information meeting the requirements can be selected as the application image information required when the application image is published through the application image index information.
[0065] In step 4, the server node is selected according to the scheduling strategy to publish the application, and in the embodiment of the application, the scheduling strategy includes a sequential scheduling mode,
[0066] In the sequential scheduling mode, all available server nodes are sequentially scheduled, and if the idle resources of the current server node cannot meet the application image requirement, the next server node is sequentially scheduled; and when the idle resources of the server node meet the application image requirement, the image is pulled according to the application image information, and the application is published on the server node.
[0067] The scheduling strategy further includes an available degree scheduling mode, in which the available server node is selected according to the available degree of the server, the image is pulled according to the application image information, and the application is published on the server node meeting the available degree, and the quantitative parameters of the available degree of the server include a CPU idle rate and a memory idle rate, wherein the CPU idle rate is obtained by the top command corresponding to the CPU scheduling id parameter, and the memory idle rate is obtained by the top command corresponding to the CPU scheduling id parameter; when the CPU idle rate and the memory idle rate meet the set requirement, the server node is considered available.
[0068] The sequential scheduling mode and the available degree scheduling mode can be selected.
[0069] When the specific server node is determined according to the available degree of the server, the image is pulled according to the application image information, and the application is published on the specified server node.
[0070] The method provided in the embodiment of the application simplifies the complexity of user use, the user does not need to find the corresponding specific application image in a plurality of application images of the same application, simplifies the complexity of virtualization platform image management and automatic distribution, can support unified management and automatic distribution of heterogeneous architecture and different virtualization application images, reduces the operation risk of the user, and with the continuous development and expansion of new virtualization technology, supports the management and automatic distribution of bare metal images and micro virtual machine images in the virtualization platform, so that the adaptation and support range is more extensive; and the application supports unified management and automatic distribution of heterogeneous virtualization application images, and the user can flexibly use the related images in the virtualization platform according to the own demand.
[0071] See Figure 3 In the embodiment of the application, an application image management and publishing system is also provided, which includes a communication connected image analysis module 1 and an image scheduling module 2,
[0072] The mirror analysis module 1 is configured to receive and analyze the published application information, the mirror analysis module 1 obtains the stored application mirror through the mirror scheduling module 2, analyzes whether there is application mirror information corresponding to the published application in the stored application mirror; extract the application mirror information required when publishing the application mirror from the found application mirror information;
[0073] The mirror scheduling module 2 selects a specified server node for application publishing according to a scheduling strategy.
[0074] The virtualization platform module 3 is used for users to publish applications;
[0075] The mirror repository module 4 is used for storing application mirrors, the application mirrors are uniformly stored in the mirror repository module 4, and the virtualization modes of the application mirrors include virtual machines, containers, bare metals and micro virtual machines; the application mirrors stored in the mirror repository module are arranged with application mirror index information, the application mirror index information includes application names, server architecture tag information and virtualization modes, and the management specifications of the mirrors in the mirror repository include:
[0076] For the index file, the index file is an optional file, and points to different platforms and different virtualization modes of the manifest file. The index file can ensure that an image can be used across platforms and provide different virtualization computing services. Each platform and each virtualization computing service has a different manifest file, and the index is used as an index;
[0077] For the manifest file, the manifest file is an index of the config file of the image. The manifest file saves information related to the current platform, including file layers and additional annotation information;
[0078] For the file system, the file system is a file system saved in the file layer mode. Each file layer saves the part changed from the upper layer. The file layer includes specific files to be saved, and files indicating addition, modification and deletion;
[0079] For the config file: the config file saves the hierarchical information of the file system, including the hash value and historical information of each level, and the environment variables, working directory, command parameters, mount list required by the virtualization runtime, and specifies the configuration of the image on a specific platform and system.
[0080] When analyzing whether there is application mirror information corresponding to the published application in the stored application mirror, the mirror analysis module finds whether there is application mirror information corresponding to the published application in the mirror repository module 4 through the application mirror index information.
[0081] When the user publishes the application in the virtualization platform module, the virtualization platform module sends the application information to the image analysis module, and the image analysis module obtains the application information, and then obtains the application image index information through the image scheduling module. After obtaining the information, the image analysis module first detects whether the application image information exists in the image warehouse module. If the image warehouse module cannot find the application image information, the application publishing ends and fails. If the application image information exists in the image warehouse module, the image analysis module searches the image warehouse unit for the application image information. If only one kind of application image information exists, the image analysis module synchronizes the application image information to the image scheduling module. After obtaining the information, the image scheduling module selects a specific server node through a scheduling strategy, publishes the application to the specified server node, and the application publishing succeeds. If multiple kinds of application image information exist, the image analysis module selects one kind of application image information according to a related strategy, synchronizes the application image information to the image scheduling module, and the image scheduling module selects a specific server node through a scheduling strategy, publishes the application to the specified server node, and the application publishing succeeds.
[0082] Figure 4 An execution flowchart of the application image management and publishing system in the embodiment is exemplarily illustrated, and the specific flow steps are as follows:
[0083] The user publishes the application in the virtualization platform module 3. The main function of the virtualization platform module 3 mainly includes providing various virtualization computing services. When the user publishes the application, the virtualization platform module 3 provides the application information to the image analysis module 11. When the application corresponding application image cannot be obtained, the publishing process ends, and the user is prompted that the application publishing fails.
[0084] The main task of the image analysis module 1 is to analyze the application information sent by the virtualization platform module 1, select the application image information required when the application is published, and synchronously send the application image information to the image scheduling module 2. The specific implementation of the unit is as follows:
[0085] When receiving the application information, the image analysis module 1 first obtains the application image information in the image warehouse module 4 through the image scheduling module 2.
[0086] The image warehouse module 3 saves all image files and index information. The image warehouse module 3 saves the application images of different architecture types and different virtualization modes of the same application, and performs operations such as adding, deleting, modifying and inquiring the application image files according to the requirements of the image scheduling module 2;
[0087] The mirror analysis module 1 determines whether the mirror information of the application to be published exists in the mirror repository module 4 at this time, and if the mirror information of the application to be published does not exist in the mirror repository module 4, the mirror analysis module 1 synchronizes the related information of the application publishing failure to the virtualization platform module 3, and the application publishing ends; if only one mirror information of the application exists in the mirror repository module 4, the mirror analysis module 1 sends the application mirror information to the mirror scheduling module 2; if multiple mirror information of the application exists in the mirror repository module 4, the mirror analysis module 1 performs the following operations:
[0088] By default, the mirror analysis module 1 automatically selects one application mirror information from the multiple mirror information of the application to be published and sends the application mirror information to the mirror scheduling module 2;
[0089] In addition, the mirror analysis module 1 can select the application mirror information according to the specific needs of the user. When the user publishes the application, the specific needs can include but are not limited to server architecture and virtualization mode. The server architecture includes but is not limited to X86, ARM64, and MIPS. The virtualization mode includes but is not limited to virtual machine computing service, container computing service, bare metal computing service, and micro virtual machine computing service. When the application mirror information corresponding to the specific server architecture or virtualization mode selected by the user does not exist, the mirror scheduling module 2 synchronizes the related information of the application publishing failure to the virtualization platform module 3, and the application publishing ends; otherwise, the mirror scheduling module 2 sends the application mirror information to the mirror scheduling module 2.
[0090] The main functions of the mirror scheduling module 2 include collecting the application mirror index information of all applications in the mirror repository module 3 and scheduling the server nodes after receiving the application mirror information sent by the mirror analysis module 1.
[0091] Through the application mirror index information arrangement, the mirror scheduling module 2 can uniformly manage and distribute the mirrors of different architecture types, different virtualization modes, and different applications in the mirror repository. The specific application mirror index information arrangement strategy is as follows:
[0092] According to different architecture types, the same application is added with corresponding architecture tag information after the application name, and the application name and the tag information are connected by “:”.
[0093] According to different virtualization modes, the virtualization mode is added after the architecture tag information of the same application, and the middle is connected by “-”.
[0094] At the same time, after receiving the application mirror information sent by the mirror analysis module 1, the server nodes are scheduled, and the specific scheduling is as follows:
[0095] By default, the image scheduling module 2 adopts a sequential scheduling mode to select the server node, and sequentially schedules in all available server nodes, and when the idle resources of the scheduled server node cannot meet the application demand, continues to schedule downward, and when it is confirmed that the demand is met, the image is pulled according to the application image information, and the application is published on the scheduled node.
[0096] In addition, the image scheduling module 2 can select the server node according to the availability of the server, and the selectable availability indicators include but are not limited to CPU idle rate and memory idle rate, wherein the CPU idle rate is the value corresponding to the CPU scheduling id parameter obtained by the top command, and the memory idle rate is the value corresponding to the CPU scheduling id parameter obtained by the top command. When the image scheduling module 2 determines the specific server node according to the availability of the server, the image is pulled according to the application image information, and the application is published on the scheduled server node.
[0097] In the embodiments of the present application, a computer device is also provided, which comprises a processor, a memory and a program;
[0098] The program is stored in the memory, and the processor invokes the program stored in the memory to execute the above-mentioned application image management and publishing method.
[0099] The computer device can be a terminal, and its internal structure diagram can be as shown in Figure 5 The computer device comprises a processor, a memory, a network interface, a display screen and an input device connected by a bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device comprises a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operating system and the computer program in the non-volatile storage medium to run. The network interface of the computer device is used to communicate with external terminals through network connection. The computer program is executed by the processor to implement the application image management and publishing method. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen. The input device of the computer device can be a touch layer overlaid on the display screen, or a key, trackball or touchpad arranged on the shell of the computer device, or an external keyboard, touchpad or mouse, etc.
[0100] The memory can be, but is not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), and the like. Among them, the memory is used to store a program, and the processor executes the program after receiving an execution instruction.
[0101] The processor can be an integrated circuit chip with a processing capability of a signal. The processor described above can be a general processor, including a central processing unit (CPU), a network processor (NP), and the like. The processor can also be other general processors, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, and the like. The general processor can be a microprocessor or the processor can also be any conventional processor.
[0102] Those skilled in the art can understand that, Figure 5 Those skilled in the art can understand that,
[0103] In the embodiments of the present application, a computer readable storage medium is also provided, and the computer readable storage medium is used to store a program, and the program is used to execute the application image management and release method described above.
[0104] Those skilled in the art will appreciate that embodiments of the present application can be provided as a method, computer device, or computer program product. Accordingly, embodiments of the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present application can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage devices, and the like) embodying computer-readable program code.
[0105] Embodiments of the present application are described with reference to the flow diagrams according to the methods, computer devices, or computer program products of embodiments of the present application. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processing device, or other programmable data processing terminal devices to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal devices, create means for implementing the functions specified in the flow diagrams.
[0106] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal devices to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means that implement the function specified in the flow diagrams.
[0107] The above describes in detail the application of the application image management and release method, system, computer device, computer readable storage medium provided by the present application, the principle and implementation mode of the present application are described in this paper, the above embodiment is only used to help understand the method of the present application and its core idea; At the same time, for those skilled in the art, according to the idea of the present application, the specific implementation mode and application range will be changed; In view of the above, the content of the specification should not be understood as the limitation of the present application.
Claims
1. A method for managing and publishing application images, characterized in that, Includes the following steps: In response to user application deployments on the virtualization platform, obtain the deployed application information; The system analyzes whether there is application image information corresponding to the published application in the stored application images. The application image repository can uniformly store images of different virtualization methods. The application images stored in the image repository are organized with application image index information, which is used to find application image information corresponding to the published application. Extract the application image information required for application image release from the found application image information; Select a server node for application deployment; If there is only one application image in the stored application images that corresponds to the application, then the corresponding application image information will be used as the application image information required when the application image is released. If there are multiple image information corresponding to an application in the stored application image, then the most matching image information is selected from the multiple image information as the application image information required for release, based on the user's needs, application type, and isolation requirements. The user's requirements include server architecture and virtualization method; the application types include light-load, compute-intensive, data-processing, and applications requiring accelerator support; the isolation requirements include exclusive, strong isolation, medium isolation, and weak isolation. The virtualization methods for the application images include virtual machines, containers, bare metal, and microvirtual machines; Application image index information includes application name, server architecture tag information, and virtualization method. When analyzing whether there is application image information corresponding to the published application in the stored application images, the application image index information is used to find whether there is application image information corresponding to the published application. The application is deployed to a designated server node according to the scheduling strategy, which can be either sequential scheduling mode or availability-based scheduling mode. The sequential scheduling mode includes: scheduling all available server nodes in sequence; The availability scheduling mode includes: selecting available server nodes based on the availability of the servers.
2. The method for managing and publishing application images according to claim 1, characterized in that: The sequential scheduling mode includes: if the idle resources of the current server node cannot meet the application image requirements, the scheduling of the next server node continues in sequence; when the idle resources of the scheduled server node meet the application image requirements, the image is pulled according to the application image information and the application is published on the scheduled server node. The availability scheduling mode includes: pulling the image according to the application image information and deploying the application on the server node that meets the availability requirements. The quantitative parameters of the server availability include: CPU idle rate and memory idle rate.
3. The method for managing and publishing application images according to claim 1, characterized in that: When orchestrating application image index information, based on different architecture types, the corresponding server architecture tag information is added after the application name for the same application image, with a colon connecting the application name and the server architecture tag information; based on different virtualization methods, the virtualization method is added after the server architecture tag information for the same application image, with a dash connecting them.
4. An application image management and publishing system, characterized in that: This includes a virtualization platform module for communication connections, an image analysis module, an image scheduling module, and an image repository module. The virtualization platform module is used for users to publish applications. The image analysis module receives and analyzes the published application information. The image analysis module obtains the stored application images through the image scheduling module and analyzes whether there is application image information corresponding to the published application in the stored application images. The image repository module is used to store application images. The application images are uniformly stored in the image repository module. The application images stored in the image repository module are organized with application image index information. The application image index information is used to find the application image information corresponding to the published application. Extract the application image information required for application image release from the found application image information; The mirror scheduling module selects server nodes for application deployment; If there is only one application image in the stored application images that corresponds to the application, then the corresponding application image information will be used as the application image information required when the application image is released. If there are multiple image information corresponding to an application in the stored application image, then the most matching image information is selected from the multiple image information as the application image information required for release, based on the user's needs, application type, and isolation requirements. The user's requirements include server architecture and virtualization method; the application types include light-load, compute-intensive, data-processing, and applications requiring accelerator support; the isolation requirements include exclusive, strong isolation, medium isolation, and weak isolation. The virtualization methods for the application images include virtual machines, containers, bare metal, and microvirtual machines; The application image index information includes the application name, server architecture tag information, and virtualization method. When analyzing whether there is application image information corresponding to the published application in the stored application images, the application image index information is used to find whether there is application image information corresponding to the published application.
5. A computer device, characterized in that, It includes: a processor, memory, and programs; The program is stored in the memory, and the processor calls the program stored in the memory to execute the application image management and publishing method according to claim 1.
6. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store a program for executing the application image management and publishing method of claim 1.
Citation Information
Patent Citations
Cluster management method and device based on Docker
CN107733977A
User-defined device data processing service hosting method
CN109995590A
Application publishing method and system and storage medium
CN114443114A