Plug-in synchronization method and device of cloud computing management platform
By directly comparing and modifying device configuration files and importing devices in the cloud computing management platform, the problems of device hang-ups and synchronization time consumption are solved, achieving efficient and consistent synchronization.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HANGZHOU DPTECH TECH
- Filing Date
- 2023-01-30
- Publication Date
- 2026-08-04
AI Technical Summary
Existing technologies in cloud computing management platforms often cause devices to hang due to frequent calls to device RESTful interfaces, and the consistency synchronization process is time-consuming under large data volumes, which may lead to configuration chaos.
The device configuration file is obtained by the device through a plugin of the cloud computing management platform. It is compared with the configuration file of the cloud platform and modified when there is a discrepancy. Then, it is directly imported into the device through a preset interface to complete the synchronization, avoiding frequent calls to RESTful interfaces and message queue processing.
It solves the problem of device hang-up, reduces the time spent in the synchronization process, avoids configuration loss that may be caused by serial configuration distribution, and improves synchronization efficiency.
Smart Images

Figure CN116244003B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of computer information processing, and more specifically, to a plug-in synchronization method, apparatus, electronic device, and computer-readable medium for a cloud computing management platform. Background Technology
[0002] OpenStack is an open-source cloud computing management platform project, a collection of open-source software projects. It was developed and initiated by NASA (National Aeronautics and Space Administration) and Rackspace, and is licensed under the Apache License. Although OpenStack has matured significantly since its inception and can now meet most of the needs of cloud computing users, it will inevitably require continuous improvement as cloud computing technology evolves.
[0003] As an extension of the OpenStack Service Plugin, the plugin connects firewall devices and the cloud platform. Configurations sent to the firewall device are first processed on the cloud platform by the plugin before being distributed to the device. Device configurations and cloud platform configurations should correspond one-to-one. However, if the configuration on the firewall device is accidentally deleted, it can cause service traffic disruption or chaos. Therefore, periodic consistency synchronization is essential. Consistency synchronization compares the configurations on the device and the cloud platform, using the cloud platform configuration as a benchmark to perform operations such as adding, deleting, and modifying configurations on the device.
[0004] Existing technical solutions frequently request device RESTful APIs when acquiring and distributing configurations. With large amounts of existing data, this can potentially cause device crashes, impacting business operations. Furthermore, existing solutions employ a one-by-one comparison approach, sending necessary configuration changes to a message queue. The driver then retrieves tasks from the queue and distributes them sequentially to the devices. With large amounts of existing data, this process is time-consuming, potentially preventing synchronization tasks from completing within the interval of a single consistency synchronization, leading to configuration inconsistencies when the next synchronization task arrives.
[0005] Therefore, there is a need for a new method, apparatus, electronic device, and computer-readable medium for synchronizing plug-ins in a cloud computing management platform.
[0006] The information disclosed in the background section is only intended to enhance the understanding of the background of this application, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0007] In view of this, this application provides a plug-in synchronization method, apparatus, electronic device, and computer-readable medium for a cloud computing management platform, which can solve the problem of device hang-up caused by a large number of calls to the device's RESTful interface, reduce the time consumption of the synchronization process, and avoid the configuration loss problem that may be caused by serial configuration distribution.
[0008] Other features and advantages of this application will become apparent from the following detailed description, or may be learned in part from practice of this application.
[0009] According to one aspect of this application, a plugin synchronization method for a cloud computing management platform is proposed. The method includes: obtaining a device configuration file from the device side; obtaining a cloud platform configuration file of a virtual system in the cloud computing management platform; comparing the device configuration file and the cloud platform configuration file; modifying the device configuration file according to the cloud platform configuration file when the comparison is inconsistent; and importing the modified device configuration file into the device through a preset interface to complete the synchronization.
[0010] In one exemplary embodiment of this application, the plugin of the cloud computing management platform obtains the device configuration file from the device, including: the plugin of the cloud computing management platform periodically obtains the device configuration file from the device; and / or the plugin of the cloud computing management platform obtains the device configuration file from the device according to instructions.
[0011] In one exemplary embodiment of this application, the plugin of the cloud computing management platform obtains the device configuration file from the device, including: the plugin of the cloud computing management platform sending a configuration file request to the device; obtaining the configuration file of the device based on the configuration file request; and decrypting the configuration file.
[0012] In one exemplary embodiment of this application, requesting to obtain the configuration file of the device based on the configuration file includes: obtaining the configuration files of the external wall device common system, the internal wall device common system, and all virtual systems of the internal wall device during full synchronization; and obtaining the configuration files of the external wall device common system, the internal wall device common system, and a specified virtual system of the internal wall device when not performing full synchronization.
[0013] In one exemplary embodiment of this application, obtaining the cloud platform configuration file of the virtual system in the cloud computing management platform includes: obtaining the cloud platform configuration files of multiple modules corresponding to the device in the virtual system of the cloud computing management platform.
[0014] In one exemplary embodiment of this application, obtaining cloud platform configuration files of multiple modules corresponding to the devices in the virtual system of the cloud computing management platform includes: obtaining cloud platform configuration files of multiple modules corresponding to all devices during full synchronization; obtaining cloud platform configuration files of multiple modules corresponding to a specified device when not performing full synchronization; and converting the format of the cloud platform configuration files according to mapping rules.
[0015] In one exemplary embodiment of this application, comparing the device configuration file and the cloud platform configuration file includes: multiple modules comparing their respective device configuration files and cloud platform configuration files.
[0016] In one exemplary embodiment of this application, importing the modified device configuration file into the device through a preset interface to complete synchronization includes: encrypting the modified device configuration file; and importing the encrypted device configuration file into the device through the preset interface to complete synchronization.
[0017] In one exemplary embodiment of this application, importing the encrypted device configuration file into the device through a preset interface to complete synchronization includes: importing the inner wall file of the encrypted device configuration file into the device through a first proxy through a preset interface to complete synchronization; and importing the outer wall file of the encrypted device configuration file into the device through a second proxy through a preset interface to complete synchronization.
[0018] According to one aspect of this application, a plug-in synchronization device for a cloud computing management platform is proposed. The device includes: a device module for obtaining device configuration files from the device side of the cloud computing management platform plug-ins; a platform module for obtaining cloud platform configuration files of virtual systems in the cloud computing management platform; a comparison module for comparing the device configuration files and the cloud platform configuration files; a modification module for modifying the device configuration files according to the cloud platform configuration files when the comparison is inconsistent; and an import module for importing the modified device configuration files into the device through a preset interface to complete the synchronization.
[0019] According to one aspect of this application, an electronic device is provided, comprising: one or more processors; a storage device for storing one or more programs; and, when the one or more programs are executed by the one or more processors, causing the one or more processors to implement the method as described above.
[0020] According to one aspect of this application, a computer-readable medium is provided having a computer program stored thereon that, when executed by a processor, implements the method described above.
[0021] According to the plug-in synchronization method, apparatus, electronic device, and computer-readable medium of the cloud computing management platform of this application, the device end obtains the device configuration file through the plug-in of the cloud computing management platform; obtains the cloud platform configuration file of the virtual system in the cloud computing management platform; compares the device configuration file and the cloud platform configuration file; when the comparison is inconsistent, the device configuration file is modified according to the cloud platform configuration file; and the modified device configuration file is imported into the device through a preset interface to complete the synchronization. This method can solve the problem of device hangs caused by a large number of calls to the device's RESTful interface, reduce the time consumption of the synchronization process, and avoid the configuration loss problem that may be caused by serial configuration distribution.
[0022] It should be understood that the above general description and the following detailed description are merely exemplary and do not limit this application. Attached Figure Description
[0023] The above and other objects, features, and advantages of this application will become more apparent from the detailed description of exemplary embodiments with reference to the accompanying drawings. The drawings described below are merely some embodiments of this application, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort.
[0024] Figure 1 This is a system block diagram illustrating a plug-in synchronization method and apparatus for a cloud computing management platform according to an exemplary embodiment.
[0025] Figure 2 This is a flowchart illustrating a plug-in synchronization method for a cloud computing management platform according to an exemplary embodiment.
[0026] Figure 3 This is a flowchart illustrating a plug-in synchronization method for a cloud computing management platform according to another exemplary embodiment.
[0027] Figure 4 This is a flowchart illustrating a plug-in synchronization method for a cloud computing management platform according to another exemplary embodiment.
[0028] Figure 5 This is a block diagram illustrating a plug-in synchronization device for a cloud computing management platform according to an exemplary embodiment.
[0029] Figure 6 This is a block diagram illustrating an electronic device according to an exemplary embodiment.
[0030] Figure 7 This is a block diagram illustrating a computer-readable medium according to an exemplary embodiment. Detailed Implementation
[0031] Exemplary embodiments will now be described more fully with reference to the accompanying drawings. However, these exemplary embodiments can be implemented in many forms and should not be construed as limited to the embodiments set forth herein; rather, they are provided so that this application will be thorough and complete, and will fully convey the concept of the exemplary embodiments to those skilled in the art. The same reference numerals in the drawings denote the same or similar parts, and therefore repeated descriptions of them will be omitted.
[0032] Furthermore, the described features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. Numerous specific details are provided in the following description to give a thorough understanding of embodiments of this application. However, those skilled in the art will recognize that the technical solutions of this application can be practiced without one or more of the specific details, or other methods, components, apparatuses, steps, etc., can be employed. In other instances, well-known methods, apparatuses, implementations, or operations are not shown or described in detail to avoid obscuring various aspects of this application.
[0033] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities can be implemented in software, in one or more hardware modules or integrated circuits, or in different network and / or processor devices and / or microcontroller devices.
[0034] The flowcharts shown in the accompanying drawings are merely illustrative and do not necessarily include all content and operations / steps, nor do they necessarily have to be performed in the described order. For example, some operations / steps can be broken down, while others can be combined or partially combined; therefore, the actual execution order may change depending on the specific circumstances.
[0035] It should be understood that although the terms first, second, third, etc., may be used herein to describe various components, these components should not be limited by these terms. These terms are used to distinguish one component from another. Therefore, the first component discussed below may be referred to as the second component without departing from the teachings of this application. As used herein, the term "and / or" includes all combinations of any one and more of the associated listed items.
[0036] Those skilled in the art will understand that the accompanying drawings are merely schematic diagrams of exemplary embodiments, and the modules or processes in the drawings are not necessarily essential for implementing this application, and therefore cannot be used to limit the scope of protection of this application.
[0037] The technical abbreviations used in this application are explained as follows:
[0038] RESTful is a design style and development approach for web applications. It is based on HTTP and can be defined using XML or JSON formats.
[0039] agent: The OpenStack plugin's agent on the device, which receives business operations and parameters from the corresponding plugin notifications and translates them into specific command-line operations.
[0040] router: A virtual system on the OpenStack cloud platform, corresponding to a firewall device.
[0041] The applicant discovered that in existing technologies, during cloud platform configuration synchronization, the cloud platform first obtains the configurations of the internal and external wall devices via a RESTful interface, and then determines whether a full synchronization is required. If a full synchronization is required, all routers on the cloud platform are retrieved; otherwise, a specified router is retrieved, and consistency synchronization is initiated on a router-by-router basis. Each plugin module compares the configurations on the cloud platform and the devices to determine which configurations need to be updated, added, or deleted. Configurations requiring processing are sent to a designated agent via RPC messages, and the agent then distributes them to the devices via a RESTful interface.
[0042] This method frequently requests data from the device interface, which can cause the device to crash when the data volume is large, and can also cause long processing times when the amount of stored data is large.
[0043] In view of the technical deficiencies in the prior art, this application proposes a plug-in synchronization method for a cloud computing management platform, aiming to solve the problem of device hangs caused by frequent device requests during the consistency synchronization process, and the problem of long consistency synchronization time when the data volume is large. The content of this application will be described in detail below with the aid of specific embodiments.
[0044] Figure 1 This is a system block diagram illustrating a plug-in synchronization method and apparatus for a cloud computing management platform according to an exemplary embodiment.
[0045] like Figure 1 As shown, system architecture 10 may include terminal devices 101, 102, and 103, network 104, and cloud computing management platform 105. Network 104 serves as the medium for providing communication links between terminal devices 101, 102, and 103 and cloud computing management platform 105. Network 104 may include various connection types, such as wired or wireless communication links or fiber optic cables, etc.
[0046] Users can use terminal devices 101, 102, and 103 to interact with the cloud computing management platform 105 via network 104 to receive or send configuration data, etc. Various communication client applications can be installed on terminal devices 101, 102, and 103, such as firewall applications, security services, shopping applications, web browser applications, search applications, instant messaging tools, email clients, social media platform software, etc.
[0047] Terminal devices 101, 102, and 103 can be various electronic devices with displays and web browsing capabilities, including but not limited to firewall devices, smartphones, tablets, laptops, and desktop computers.
[0048] The cloud computing management platform 105 can be a server that provides various services, such as a backend management server that supports security service websites browsed by users using terminal devices 101, 102, and 103 (for example only). The backend management server can perform security configuration on terminal devices 101, 102, and 103 and return the processing results (whether the configuration was successful) to the administrator.
[0049] The plugins of the cloud computing management platform 105 can, for example, obtain device configuration files from terminal devices 101, 102, and 103; they can, for example, obtain cloud platform configuration files of virtual systems in the cloud computing management platform 105; the cloud computing management platform 105 can, for example, compare the device configuration files with the cloud platform configuration files; if the comparison is inconsistent, the cloud computing management platform 105 can, for example, modify the device configuration files according to the cloud platform configuration files; the cloud computing management platform 105 can, for example, import the modified device configuration files into terminal devices 101, 102, and 103 through a preset interface to complete synchronization.
[0050] The cloud computing management platform 105 can be a single physical server, or it can be composed of multiple servers. It should be noted that the plug-in synchronization method of the cloud computing management platform provided in this application embodiment can be executed by the cloud computing management platform 105. Accordingly, the plug-in synchronization device of the cloud computing management platform can be set in the cloud computing management platform 105.
[0051] Figure 2 This is a flowchart illustrating a plug-in synchronization method for a cloud computing management platform according to an exemplary embodiment. The plug-in synchronization method 20 for the cloud computing management platform includes at least steps S202 to S210.
[0052] like Figure 2As shown in S202, the cloud computing management platform plugin obtains the device configuration file from the device. The cloud computing management platform plugin may, for example, periodically obtain the device configuration file from the device; or, for example, obtain the device configuration file from the device based on instructions.
[0053] In this application embodiment, a firewall device is used as an example for the configuration description below. It is worth mentioning that the method in this application can also be applied to the configuration of other devices.
[0054] In step S204, the cloud platform configuration file of the virtual system in the cloud computing management platform is obtained. This allows obtaining the cloud platform configuration files of multiple modules corresponding to the devices in the virtual system within the cloud computing management platform.
[0055] More specifically, when performing a full synchronization, the cloud platform configuration files of multiple modules corresponding to all devices are obtained; when not performing a full synchronization, the cloud platform configuration files of multiple modules corresponding to a specified device are obtained; and the cloud platform configuration files are converted into a new format according to the mapping rules.
[0056] The cloud platform configuration requires querying the configurations of the firewall, underlay ACL, DCI, QoS, VPN, and NAT gateway modules corresponding to a single router through the plugin's native database query interface. For a full synchronization, the configurations for all routers must be retrieved. After obtaining the configurations, they need to be converted into the device configuration file format according to the mapping rules.
[0057] Mapping rules can be pre-defined. Taking natgateway as an example, the corresponding configurations on the cloud platform and on the device are as follows:
[0058] natgateway qos route addrpool addrobj addrobj session snat 1to1nat dnat
[0059] In practical applications, the configured mapping rules are not static and can be modified according to specific business needs. For example, in the case of 1to1 NAT for a public external wall system, the decision is made based on whether the floating IP used by SNAT is shared with DNAT.
[0060] In S206, the device configuration file and the cloud platform configuration file are compared. Multiple modules compare their respective device configuration files and cloud platform configuration files.
[0061] In step S208, when discrepancies are found, the device configuration file is modified according to the cloud platform configuration file. After the configuration processing on the cloud platform is completed, the configuration comparison process begins. Unlike the existing approach of comparing one module at a time, this method calculates the checksum for each module. If the checksum of the current module's cloud platform configuration differs from the checksum of the device configuration, the configuration file is directly modified; otherwise, the configuration file is not modified.
[0062] In step S210, the modified device configuration file is imported into the device via a preset interface to complete synchronization. The modified device configuration file can be encrypted; the encrypted device configuration file is then imported into the device via the preset interface to complete synchronization.
[0063] After the configuration file is processed, it is encrypted into a device-readable format. Existing solutions require sending the processed business logic, after each comparison, to a designated driver via a message queue. Due to device limitations, configurations can only be distributed serially to the device via a RESTful interface. This results in lengthy consistency synchronization times, and if a configuration distribution fails at any point, subsequent distributions may depend on previously distributed configurations, causing a cascading error. This invention directly imports the configuration file to the device via an interface, eliminating the message queue processing step, significantly reducing synchronization time, and avoiding configuration loss issues that can occur with serial distribution.
[0064] In one embodiment, the encrypted inner wall file of the device configuration file can be imported into the device through a preset interface via a first proxy to complete synchronization; alternatively, the encrypted outer wall file of the device configuration file can be imported into the device through a preset interface via a second proxy to complete synchronization.
[0065] In one embodiment of this application, two agents can be configured to be responsible for configuring the inner and outer walls respectively, so as to realize the parallel distribution of configurations for the inner and outer walls and speed up the synchronization process.
[0066] According to the plug-in synchronization method of the cloud computing management platform of this application, the device configuration file is obtained by the device through the plug-in of the cloud computing management platform; the cloud platform configuration file of the virtual system in the cloud computing management platform is obtained; the device configuration file and the cloud platform configuration file are compared; if they are inconsistent, the device configuration file is modified according to the cloud platform configuration file; and the modified device configuration file is imported into the device through a preset interface to complete the synchronization. This method can solve the problem of device hangs caused by a large number of calls to the device's RESTful interface, reduce the time consumption of the synchronization process, and avoid the configuration loss problem that may be caused by serial configuration distribution.
[0067] It should be clearly understood that this application describes how specific examples are formed and used, but the principles of this application are not limited to any details of these examples. Rather, based on the teachings of the disclosure of this application, these principles can be applied to many other embodiments.
[0068] Figure 3 This is a flowchart illustrating a plug-in synchronization method for a cloud computing management platform according to another exemplary embodiment. Figure 3 The process shown in step 30 is... Figure 2 The process shown in the diagram includes a detailed description of S202, "The plugin of the cloud computing management platform obtains the device configuration file from the device."
[0069] like Figure 3 As shown in S302, the plugin of the cloud computing management platform sends a configuration file request to the device.
[0070] In S304, the configuration file of the device is requested based on the configuration file. More specifically, during full synchronization, the configuration files of the external wall device common system, the internal wall device common system, and all virtual systems of the internal wall device are obtained; when not performing full synchronization, the configuration files of the external wall device common system, the internal wall device common system, and the specified virtual system of the internal wall device are obtained.
[0071] In S306, the configuration file is decrypted.
[0072] After receiving the synchronization command, the plugin on the cloud platform requests the configuration file from the device. Once the configuration file is obtained, it is decrypted. If the synchronization command is for a full synchronization, the configurations of the common system for the external wall devices, the common system for the internal wall devices, and all virtual systems of the internal wall devices are extracted. If the command is to synchronize a specific router, the configurations of the common system for the external wall devices, the common system for the internal wall devices, and the specific virtual system of the internal wall devices are extracted.
[0073] Figure 4 This is a flowchart illustrating a plug-in synchronization method for a cloud computing management platform according to another exemplary embodiment. Figure 4 The process shown in step 40 is... Figure 2 A detailed description of the process shown.
[0074] like Figure 4 As shown, synchronization is triggered in S402.
[0075] In S404, export the configuration files for the internal and external walls of the equipment.
[0076] In S406, the configuration file is decrypted.
[0077] In S408, decrypt the configuration of each system for the exterior and interior walls.
[0078] In S410, is full synchronization required?
[0079] In S412, all interior wall virtual system configurations are parsed.
[0080] In S414, the configuration of the specified interior wall virtual system is parsed.
[0081] In S416, different modules obtain cloud configurations from their respective cloud platforms.
[0082] In S418, the configurations on different module devices and cloud platforms are compared separately.
[0083] In S420, the configuration files of different modules are modified and verified based on the cloud platform configuration data on the cloud platform.
[0084] In S422, the configuration file is encrypted.
[0085] In S424, import the configuration file into the device.
[0086] The plugin synchronization method of this application's cloud computing management platform solves the problem of device hangs caused by excessively frequent requests to the device's RESTful interface by changing the interaction method between the device and the plugin during the consistency synchronization process and using configuration files instead of RESTful interfaces. During the configuration comparison process, the method optimizes the configuration comparison time by verifying and comparing configuration differences module by module, thereby reducing the time consumed in a single consistency synchronization.
[0087] The plugin synchronization method of this application's cloud computing management platform abandons the traditional approach of frequently using RESTful interfaces to obtain device configurations. Instead, it directly verifies and compares specific configurations in the configuration file with the cloud platform configuration, modifying any mismatched configurations. This solves the problem of device hangs caused by numerous calls to the device's RESTful interfaces. Furthermore, compared to traditional methods, when distributing configurations, it does not use message queues but directly uploads the configuration file, reducing the synchronization time and avoiding configuration loss issues that may result from serial configuration distribution.
[0088] Those skilled in the art will understand that all or part of the steps of the above embodiments are implemented as a computer program executed by a CPU. When the computer program is executed by the CPU, it performs the functions defined by the method provided in this application. The program can be stored in a computer-readable storage medium, such as a read-only memory, a magnetic disk, or an optical disk.
[0089] Furthermore, it should be noted that the above figures are merely illustrative representations of the processes included in the method according to exemplary embodiments of this application, and are not intended to be limiting. It is readily understood that the processes shown in the above figures do not indicate or limit the temporal order of these processes. Additionally, it is readily understood that these processes may be executed synchronously or asynchronously, for example, in multiple modules.
[0090] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.
[0091] Figure 5 This is a block diagram illustrating a plug-in synchronization device for a cloud computing management platform according to an exemplary embodiment. Figure 5 As shown, the plug-in synchronization device 50 of the cloud computing management platform includes: device module 502, platform module 504, comparison module 506, modification module 508, and import module 510.
[0092] Device module 502 is used for the cloud computing management platform's plugin to obtain device configuration files from the device; device module 502 is also used for the cloud computing management platform's plugin to send configuration file requests to the device; obtain the device's configuration file based on the configuration file request; and decrypt the configuration file. Device module 502 is also used to obtain the configuration files of the external wall device common system, the internal wall device common system, and all virtual systems of the internal wall device during full synchronization; and to obtain the configuration files of the external wall device common system, the internal wall device common system, and a specified virtual system of the internal wall device when not performing full synchronization.
[0093] Platform module 504 is used to obtain the cloud platform configuration file of the virtual system in the cloud computing management platform; platform module 504 is also used to obtain the cloud platform configuration files of multiple modules corresponding to the devices in the virtual system of the cloud computing management platform. Platform module 504 is also used to obtain the cloud platform configuration files of multiple modules corresponding to all devices when performing full synchronization; and to obtain the cloud platform configuration files of multiple modules corresponding to a specified device when not performing full synchronization.
[0094] The comparison module 506 is used to compare the device configuration file and the cloud platform configuration file; the comparison module 506 is also used for multiple modules to compare their corresponding device configuration files and cloud platform configuration files respectively.
[0095] The modification module 508 is used to modify the device configuration file according to the cloud platform configuration file when there is a discrepancy in the comparison.
[0096] The import module 510 is used to import the modified device configuration file into the device through a preset interface to complete synchronization. The import module 510 is also used to encrypt the modified device configuration file; and import the encrypted device configuration file into the device through the preset interface to complete synchronization.
[0097] According to the plug-in synchronization device of the cloud computing management platform of this application, the device end obtains the device configuration file through the plug-in of the cloud computing management platform; obtains the cloud platform configuration file of the virtual system in the cloud computing management platform; compares the device configuration file and the cloud platform configuration file; when the comparison is inconsistent, the device configuration file is modified according to the cloud platform configuration file; and imports the modified device configuration file into the device through a preset interface to complete the synchronization. This method can solve the problem of device hangs caused by a large number of calls to the device's RESTful interface, reduce the time consumption of the synchronization process, and avoid the configuration loss problem that may be caused by serial configuration distribution.
[0098] Figure 6 This is a block diagram illustrating an electronic device according to an exemplary embodiment.
[0099] The following reference Figure 6 To describe an electronic device 600 according to this embodiment of the present application. Figure 6 The electronic device 600 shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.
[0100] like Figure 6 As shown, the electronic device 600 is presented in the form of a general-purpose computing device. The components of the electronic device 600 may include, but are not limited to: at least one processing unit 610, at least one storage unit 620, a bus 630 connecting different system components (including storage unit 620 and processing unit 610), a display unit 640, etc.
[0101] The storage unit stores program code that can be executed by the processing unit 610, causing the processing unit 610 to perform the steps described in this specification according to various exemplary embodiments of this application. For example, the processing unit 610 can perform actions such as... Figure 2 , Figure 3 , Figure 4 The steps are shown in the figure.
[0102] The storage unit 620 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 6201 and / or a cache storage unit 6202, and may further include a read-only memory unit (ROM) 6203.
[0103] The storage unit 620 may also include a program / utility 6204 having a set (at least one) program module 6205, such program module 6205 including but not limited to: an operating system, one or more application programs, other program modules and program data, each or some combination of these examples may include an implementation of a network environment.
[0104] Bus 630 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.
[0105] Electronic device 600 can also communicate with one or more external devices 600' (e.g., keyboard, pointing device, Bluetooth device, etc.), enabling users to communicate with devices that interact with electronic device 600, and / or any device that allows electronic device 600 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 650. Furthermore, electronic device 600 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 660. Network adapter 660 can communicate with other modules of electronic device 600 via bus 630. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 600, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0106] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software, or by combining software with necessary hardware. Therefore, as... Figure 7 As shown, the technical solution according to the embodiments of this application can be embodied in the form of a software product. The software product can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, mobile hard drive, etc.) or on a network, and includes several instructions to cause a computing device (such as a personal computer, server, or network device, etc.) to execute the above-described method according to the embodiments of this application.
[0107] The software product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: electrical connections with one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0108] The computer-readable storage medium may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. The readable storage medium may also be any readable medium other than a readable storage medium, capable of transmitting, propagating, or transmitting programs for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the readable storage medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0109] Program code for performing the operations of this application can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0110] The aforementioned computer-readable medium carries one or more programs. When one or more of these programs are executed by a device, the computer-readable medium performs the following functions: the plug-in of the cloud computing management platform obtains a device configuration file from the device; obtains a cloud platform configuration file of the virtual system in the cloud computing management platform; compares the device configuration file and the cloud platform configuration file; if the comparison is inconsistent, modifies the device configuration file according to the cloud platform configuration file; and imports the modified device configuration file into the device through a preset interface to complete synchronization.
[0111] Those skilled in the art will understand that the above modules can be distributed in the device as described in the embodiments, or they can be modified accordingly and placed in one or more devices that are unique to this embodiment. The modules in the above embodiments can be combined into one module, or they can be further divided into multiple sub-modules.
[0112] Through the description of the above embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, mobile terminal, or network device, etc.) to execute the methods according to the embodiments of this application.
[0113] Exemplary embodiments of this application have been specifically shown and described above. It should be understood that this application is not limited to the detailed structures, arrangements, or implementation methods described herein; rather, this application is intended to cover various modifications and equivalent arrangements contained within the spirit and scope of the appended claims.
Claims
1. A plug-in synchronization method of a cloud computing management platform, characterized in that, include: The plugin of the cloud computing management platform obtains the device configuration file from the device side, including: the plugin of the cloud computing management platform sends a configuration file request to the device, obtains the configuration file of the device based on the configuration file request, and decrypts the configuration file. The process of obtaining the configuration file of the device based on the configuration file request includes: obtaining the configuration files of the common system of the external wall device, the common system of the internal wall device, and all virtual systems of the internal wall device during full synchronization, and obtaining the configuration files of the common system of the external wall device, the common system of the internal wall device, and the specified virtual system of the internal wall device when not performing full synchronization. Obtain the cloud platform configuration file of the virtual system in the cloud computing management platform; Compare the device configuration file and the cloud platform configuration file; If discrepancies are found, the device configuration file shall be modified according to the cloud platform configuration file. Importing the modified device configuration file into the device via a preset interface to complete synchronization includes: encrypting the modified device configuration file, and importing the encrypted device configuration file into the device via a preset interface to complete synchronization. Importing the encrypted device configuration file into the device via the preset interface includes: importing the inner wall file of the encrypted device configuration file into the device via a first proxy via the preset interface to complete synchronization, and importing the outer wall file of the encrypted device configuration file into the device via a second proxy via the preset interface to complete synchronization.
2. The method as described in claim 1, characterized in that, The plugin for the cloud computing management platform obtains the device configuration file from the device itself, including: The cloud computing management platform's plugin periodically retrieves device configuration files from the device; and / or The cloud computing management platform's plugins retrieve device configuration files from the device based on instructions.
3. The method as described in claim 1, characterized in that, Obtain the cloud platform configuration file of the virtual system in the cloud computing management platform, including: Obtain the cloud platform configuration files for multiple modules corresponding to the devices in the virtual system of the cloud computing management platform.
4. The method as described in claim 3, characterized in that, Obtain the cloud platform configuration files for multiple modules corresponding to the devices in the virtual system of the cloud computing management platform, including: During full synchronization, cloud platform configuration files for multiple modules corresponding to all devices are obtained; Without performing a full synchronization, obtain the cloud platform configuration files of multiple modules corresponding to the specified device; The cloud platform configuration file is converted according to the mapping rules.
5. The method as described in claim 3, characterized in that, The device configuration file and the cloud platform configuration file are compared, including: Multiple modules compare their corresponding device configuration files and cloud platform configuration files.
6. A plug-in synchronization device for a cloud computing management platform, characterized in that, include: The device module, used by the plugin of the cloud computing management platform, obtains the device configuration file from the device side. This includes: the plugin of the cloud computing management platform sending a configuration file request to the device, obtaining the configuration file of the device based on the configuration file request, and decrypting the configuration file. The process of obtaining the configuration file of the device based on the configuration file request includes: obtaining the configuration files of the common system of the external wall device, the common system of the internal wall device, and all virtual systems of the internal wall device during full synchronization, and obtaining the configuration files of the common system of the external wall device, the common system of the internal wall device, and the specified virtual system of the internal wall device when not performing full synchronization. The platform module is used to obtain the cloud platform configuration file of the virtual system in the cloud computing management platform; The comparison module is used to compare the device configuration file and the cloud platform configuration file; The modification module is used to modify the device configuration file according to the cloud platform configuration file when inconsistencies are found. An import module is used to import the modified device configuration file into the device through a preset interface to complete synchronization. This includes: encrypting the modified device configuration file, and importing the encrypted device configuration file into the device through the preset interface to complete synchronization. Importing the encrypted device configuration file into the device through the preset interface includes: importing the inner wall file of the encrypted device configuration file into the device through a first proxy through the preset interface to complete synchronization, and importing the outer wall file of the encrypted device configuration file into the device through a second proxy through the preset interface to complete synchronization.