Management method, updating method and system of edge device
By running a management container with built-in edge management programs on edge devices and establishing connections with cloud servers, the dependency and complexity of existing edge computing device management solutions is solved, enabling flexible and efficient device management and updates.
Patent Information
- Application Number
- CN202411530780.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-30
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2044-10-30
AI Technical Summary
The existing edge computing device management solutions have problems such as strong dependence on hardware and software environments, high maintenance costs, and complex deployment and management, making it difficult to achieve flexible and efficient equipment management.
Adopting a container and cloud management method, edge devices receive management containers with built-in edge management programs, load and start management containers through container engines, and the management program establishes connection with cloud servers, receives instructions and executes container operations, realizing flexible management of devices and renew.
Reduces dependence on edge device hardware and software environments, simplifies deployment and management processes, improves system scalability and flexibility, and enhances security and maintainability.
Smart Images

Figure CN119512686A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of edge computing, and in particular to management technology of edge devices. Background Art
[0002] This section is intended to provide a background or context for understanding the embodiments of the present application and is for reference only. The applicant should not be considered to admit that this section belongs to the prior art that has been disclosed before the filing date of the present application.
[0003] With the rapid development of the Internet of Things (IoT) and 5G technology, edge computing, as an emerging computing model, is gaining more and more attention. Edge computing can reduce data transmission delays, improve real-time performance, and reduce network bandwidth pressure by deploying computing and storage resources at the edge of the network.
[0004] In edge computing environments, edge devices play a key role. These devices are usually deployed close to data sources and are responsible for tasks such as data collection, preprocessing, and preliminary analysis. However, the management of edge devices faces many challenges:
[0005] 1. Complex device environment: Edge devices may be located in various network environments, such as Network Address Translation (NAT) or behind a firewall, which increases the difficulty of device management.
[0006] 2. Diverse hardware models: Edge devices often have diverse hardware models and lack unified standards, which leads to high device management and maintenance costs.
[0007] 3. Limited computing resources: In order to control costs, the computing power of edge devices is usually weak, which limits the deployment of complex management software.
[0008] 4. Network bandwidth limitation: Edge devices may not have high-speed network access capabilities, which creates certain difficulties for device updates and management.
[0009] At present, there are some management solutions in the field of edge computing. For example, KubeEdge is an open source system that extends the orchestration capabilities of containerized applications to edge devices. KubeEdge can manage edge-side applications in the form of containers, including application deployment, operation, and updates. In addition, there are some non-containerized solutions, such as managing application deployment, operation, and updates of edge devices through firmware over-the-air (FOTA) or differential firmware over-the-air (DFOTA) technology.
[0010] However, these existing solutions still have some limitations. For example, container-based solutions such as KubeEdge usually require the installation of complex software environments on the customer host, which may lead to problems such as complex installation or poor compatibility when the edge device software and hardware environments vary greatly. Traditional solutions such as FOTA are more dependent on the device software and hardware environment, and due to the dispersion of device types, they may lead to high maintenance costs.
[0011] FOTA is a technology for remotely updating the firmware of embedded devices. Its basic working principle is: the server prepares a new firmware version, the device checks for updates through a network connection, downloads the new firmware, verifies the integrity of the downloaded firmware, installs the new firmware, and restarts the device to apply the update. Traditional solutions such as FOTA have the following disadvantages:
[0012] 1. Stronger reliance on the device's hardware and software environment: This is because FOTA directly updates the device firmware and needs to be customized for specific hardware platforms and operating systems. Different devices may require different versions of firmware, which increases compatibility requirements.
[0013] 2. The dispersion of device types leads to higher maintenance costs: This is because FOTA needs to develop and maintain firmware update packages for each different model of device separately. Due to the diversity of edge devices, this will lead to the need to maintain a large number of different versions of firmware, increasing the complexity and cost of development, testing and deployment.
[0014] Therefore, how to implement a more flexible and efficient edge device management method in an edge computing environment to reduce dependence on the edge device hardware and software environment, while simplifying the deployment and management process of edge devices and improving the scalability and flexibility of the system has become a technical problem that needs to be solved urgently. Summary of the invention
[0015] The purpose of this application is to provide an edge device management method, an update method and a system thereof, which can reduce the dependence on the edge device hardware and software environment, while simplifying the deployment and management process of the edge device and improving the scalability and flexibility of the system.
[0016] The present application discloses a method for managing an edge device, including:
[0017] The edge device receives a management container having an edge hypervisor built in;
[0018] The container engine of the edge device loads and starts the management container, and the management container runs the edge management program therein after starting;
[0019] The edge management program registers with the cloud server and establishes a connection with the cloud server; and,
[0020] The edge management program receives instructions from the cloud server through the connection, and executes corresponding container operations on the edge device through the container engine according to the received instructions.
[0021] In a preferred example, executing corresponding container operations on the edge device through the container engine includes executing operations on the business container on the edge device and operations on the management container itself.
[0022] In a preferred example, the connection established between the edge management program and the cloud server is a long connection.
[0023] In a preferred embodiment, it also includes:
[0024] The edge management program performs device capability detection to obtain hardware information, computing capability, and network capability of the edge device; and
[0025] The edge management program sends the acquired device capability information to the cloud server.
[0026] The present application also discloses a hot update method for an edge device, wherein a first management container exists in the edge device to be updated, and a first edge management program runs in the first management container, and the method includes:
[0027] A second management container with a new version of a second edge management program built in is downloaded to the edge device;
[0028] The cloud server sends a first request to the first edge management program in the edge device to start the second management container;
[0029] In response to the first request, the first edge management program instructs the container engine on the edge device to start the second management container;
[0030] After the second management container is started, the second edge management program is run;
[0031] The second edge management program initiates a registration request to the cloud server;
[0032] In response to the registration request, the cloud server adds the second edge management program to a set of available instances;
[0033] The cloud server removes the first edge management program from the set of available instances;
[0034] The cloud server sends a second request to the second edge management program to delete the management container;
[0035] In response to receiving the second request, the second edge management program instructs the container engine on the edge device to delete the first management container.
[0036] In a preferred example, after the cloud server adds the second edge management program to the available instance set, the cloud server dispatches the received service request belonging to the edge device to the second edge management program.
[0037] The present application also discloses an edge device, comprising:
[0038] Container engine, used to operate containers in edge devices;
[0039] A management container having an edge management program built therein, and the management container automatically runs the edge management program after being loaded by the container engine;
[0040] The edge management program is used to register with the cloud server and establish a connection with the cloud server, receive instructions from the cloud server through the connection, and execute corresponding container operations on the edge device through the container engine according to the received instructions.
[0041] The present application also discloses a management system for edge devices, including:
[0042] Cloud servers, and
[0043] At least one edge device as described above.
[0044] The present application also discloses a non-transitory computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, the steps in the method described above are implemented.
[0045] The present application also discloses a computer program product, comprising computer executable instructions, which can implement the steps in the method described above when executed by a processor.
[0046] In the implementation of the present application, the dependence on the hardware and software environment of the edge device can be reduced, and flexible and efficient management of the edge device can be achieved. Specifically:
[0047] Simplified deployment process: Using preconfigured management containers can greatly simplify the initialization and deployment process of edge devices, reduce manual intervention, and improve deployment efficiency.
[0048] Improved portability: Because the hypervisor is encapsulated in a container, this approach reduces the dependency on the underlying hardware and operating system of the edge device, improving the portability and applicability of the solution.
[0049] Enhanced security: The hypervisor runs in an independent container, which can provide better isolation and enhance the security of the system.
[0050] Improved flexibility: Containerization makes it easier to update and control versions of management programs, improving the flexibility and maintainability of the system.
[0051] Centralized management is achieved: By establishing a connection with the cloud server, centralized management of decentralized edge devices is achieved, improving the manageability and consistency of the entire system.
[0052] Adaptable to complex networks: This approach can better adapt to complex network environments in edge computing, such as devices behind NAT or firewalls, improving the applicability of the system.
[0053] Optimized resource utilization: Dynamically managing containers by issuing instructions from the cloud can more effectively utilize the resources of edge devices and improve resource utilization.
[0054] Support dynamic business deployment: This method allows the cloud to dynamically deploy or adjust business containers on edge devices according to demand, improving the dynamic adaptability of the system.
[0055] In general, this container- and cloud-based management approach provides a flexible, efficient, and secure management solution for edge computing environments, effectively solving many challenges in edge device management and laying the foundation for large-scale application and management of edge computing.
[0056] Furthermore, by using persistent connections for communication, the communication efficiency and real-time performance between edge devices and cloud servers can be improved. This approach can reduce the overhead of connection establishment and better adapt to complex network environments, such as devices behind NAT or firewalls, while also facilitating near-real-time control and monitoring.
[0057] Furthermore, by performing device capability detection and sending the information to the cloud server, it is possible to accurately grasp and effectively utilize the edge device resources. This approach enables the cloud server to perform task allocation and resource scheduling based on the actual capabilities of the edge device, improving the efficiency and performance of the entire system.
[0058] In addition, the embodiment of the present application can realize the modular upgrade of the edge device management program by using container technology for updating. This method greatly reduces the complexity of the update process and improves the reliability and efficiency of the update. By running the new and old versions of the management container at the same time during the update process, a true hot update can be achieved. This method ensures that the functions of the edge device will not be interrupted during the update process, thereby improving the availability and stability of the system. By allowing the old version of the management program to start the new version of the management container, the continuity and controllability of the update process can be ensured. This method reduces the risk of update failure and enhances the robustness of the system. Through the mechanism of re-registering the new version of the management program with the cloud server, real-time perception and management of the edge device version can be achieved in the cloud. This method improves the manageability and consistency of the entire system. By controlling the switching process between the old and new versions through the cloud server, centralized version management can be achieved. This method makes the version control of large-scale edge devices more efficient and reliable. By deleting the old version container by the new version management program after the update is completed, an automated cleanup process can be achieved. This method reduces the need for human intervention, reduces maintenance costs, and ensures the effective use of system resources. Through fine-grained control of the entire update process, the rollback of the update process can be achieved. If problems are found during the update process, the system can quickly roll back to the old version, thereby improving the reliability and fault tolerance of the system. This software-defined update method can greatly simplify the hardware requirements of edge devices. This approach enables resource-constrained edge devices to implement complex update operations, thereby expanding the scope of application of this technology.
[0059] Business continuity during the update process can be achieved by dispatching service requests to the new version immediately after the new version of the edge management program is registered. This approach ensures that system functions are not interrupted during the update process, improving system reliability and user experience.
[0060] Each technical feature disclosed in the above invention content, each technical feature disclosed in each implementation mode and example below, and each technical feature disclosed in the accompanying drawings can be freely combined with each other to form various new technical solutions (these technical solutions should be deemed to have been recorded in this specification), unless such combination of technical features is technically infeasible. For example, in one example, feature A+B+C is disclosed, and in another example, feature A+B+D+E is disclosed, and features C and D are equivalent technical means that play the same role. Technically, only one of them can be used, and it is impossible to use them at the same time. Feature E can be combined with feature C technically. Then, the solution of A+B+C+D should not be deemed to have been recorded because it is technically infeasible, while the solution of A+B+C+E should be deemed to have been recorded. BRIEF DESCRIPTION OF THE DRAWINGS
[0061] Figure 1 is a flowchart of a method for managing an edge device according to a first embodiment of the present application;
[0062] Figure 2 is a schematic flow chart of a hot update method for an edge device according to a second embodiment of the present application;
[0063] Figure 3 This is a flow chart of a hot update method for an edge device according to an embodiment of the present application;
[0064] Figure 4 It is a schematic diagram of the management system structure of the edge device according to the fourth embodiment of the present application. DETAILED DESCRIPTION
[0065] In the following description, many technical details are provided to help readers better understand the present application. However, those skilled in the art can understand that the technical solution claimed in the present application can be implemented even without these technical details and various changes and modifications based on the following embodiments.
[0066] Description of some concepts:
[0067] Container: A container is a lightweight, portable, self-contained software packaging technology that packages an application and all its dependencies (including binary files, library files, configuration files, etc.) together. The container provides an independent operating environment, ensuring that the application can run consistently in different computing environments without being affected by the underlying infrastructure. Containers use operating system-level virtualization to run multiple isolated user space instances on the same operating system kernel.
[0068] Container Engine: A container engine is a software system used to create, run, and manage containers. It is responsible for the lifecycle management of containers, including operations such as creating, starting, stopping, and deleting containers. The container engine is also responsible for managing container images, handling container networks and storage, and providing the isolation and resource management functions required for container runtime. The container engine usually contains a daemon process that interacts with the operating system kernel to implement the underlying functions of the container.
[0069] Edge Device: Edge devices refer to computing and network devices deployed at the edge of the network, close to data sources or users. These devices have certain data processing, storage and network communication capabilities, and can perform computing tasks, data analysis and decision-making locally without transmitting all data to centralized cloud servers. Edge devices are usually located at the junction of the physical world and the digital world, responsible for tasks such as data collection, preprocessing, and preliminary analysis, and are an important carrier for realizing edge computing.
[0070] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below in conjunction with the accompanying drawings.
[0071] The first embodiment of the present application relates to a method for managing edge devices, the process of which is as follows: Figure 1 As shown, the method comprises the following steps:
[0072] In step 101, the edge device receives a management container with an edge management program built in. Optionally, in one embodiment, the edge device obtains an installation command line including a user unique ID, a device unique ID, and an instance unique ID from a website or an application, and executes the installation command line to receive and start the management container.
[0073] Then, the process proceeds to step 102 , where the container engine of the edge device loads and starts the management container, and the management container runs the edge management program therein after it is started.
[0074] Then, the process proceeds to step 103 , where the edge management program registers with the cloud server and establishes a connection with the cloud server.
[0075] Then, step 104 is entered, where the edge management program receives instructions from the cloud server through the established connection, and executes corresponding container operations on the edge device through the container engine according to the received instructions. Executing corresponding container operations on the edge device through the container engine includes executing operations on the business container on the edge device and operations on the management container itself.
[0076] The container operations performed by the edge management program through the container engine include: starting a container, stopping a container, updating a container, and deleting a container, etc.
[0077] Business programs run in business containers, and specific businesses are executed in edge devices. An edge device can have one or more business containers, each running different business programs. One or more business programs can run in a business container.
[0078] In an alternative embodiment, the edge management program and the cloud server use a long connection communication mode. The advantages of long connection are: strong real-time performance, suitable for scenarios requiring frequent communication or real-time control. Easy to penetrate NAT and firewalls, adapt to complex network environments. Reduce the overhead of connection establishment and improve communication efficiency.
[0079] However, the present application is not limited to the long connection mode. In other embodiments, other communication modes may also be used according to specific application scenarios and requirements, for example:
[0080] Short connection: suitable for intermittent communication and consumes less resources.
[0081] Periodic polling: simple to implement and suitable for certain restricted environments.
[0082] Message queue: High reliability, suitable for processing large amounts of asynchronous messages.
[0083] WebSocket: full-duplex communication, suitable for Web environment.
[0084] MQTT: A lightweight protocol suitable for IoT scenarios.
[0085] The choice of communication method should take into account factors such as network environment, equipment capabilities, real-time requirements, and communication frequency.
[0086] Optionally, in one embodiment, after step 103, the edge management program performs device capability detection, obtains the hardware information, computing power and network capability of the edge device, and sends the obtained device capability information to the cloud server. Device capability detection includes: obtaining the CPU, memory, hard disk, graphics card and network card information of the device. Running a benchmark test program to test the computing power of the device. Running a program to test the network input and output speed of the device. And running a program to test the network intranet exposure capability, and dividing the internal and external network IP and NAT levels according to the exposure capability, etc.
[0087] In order to better understand the technical solution of the present application, a specific example is provided below for illustration. The details listed in the example are mainly for ease of understanding and are not intended to limit the scope of protection of the present application. The example includes the following steps:
[0088] 1. Initial Installation
[0089] The edge device receives a management container with an edge management program built in. Specifically, the user first registers an account on the website or application. Then, the user obtains the installation command line through the website or application. The command line contains the unique ID of the specific user, the unique ID of the device, the unique ID of the instance, and other configuration information (such as whether to use a GPU, the type of operating system, etc.) and the command to start the container. The user runs the installation command line manually or automatically through the application to complete the reception of the management container.
[0090] 2. Manage container initialization
[0091] The container engine of the edge device loads and starts the management container. After the management container is started, the edge management program in it automatically runs. The edge management program performs the following initialization process:
[0092] a) Obtain the device's hardware information, including CPU, memory, hard disk, graphics card, and network card information;
[0093] b) Run benchmark tests to test the computing capabilities of the equipment;
[0094] c) Run the program to test the network input and output speed of the equipment;
[0095] d) Run the program to test the network's internal network exposure capability, and classify the internal and external network IP and network address translation (NAT) levels according to the exposure capability.
[0096] 3. Device Registration
[0097] The edge management program registers with the cloud server and establishes a persistent connection. Specifically:
[0098] a) The edge management program submits the device unique ID, user unique ID, instance ID and device capability information to the cloud server;
[0099] b) The cloud server associates these IDs and information and responds to the edge management program registered on the device side;
[0100] c) The edge management program establishes a long communication connection with the cloud server.
[0101] 4. Business Operation
[0102] Through the long connection established with the cloud server, the edge management program receives instructions from the cloud server and executes corresponding container operations on the edge device through the container engine according to the received instructions. Specifically:
[0103] a) The edge management program actively initiates a long connection to connect to the cloud server;
[0104] b) The cloud server sends a startup command to the edge management program through a persistent connection;
[0105] c) The edge management program initiates a container startup request to the container engine;
[0106] d) After the business container is started, the corresponding business is executed;
[0107] e) The edge management program obtains a stop instruction from the cloud server;
[0108] f) The edge management program initiates a container stop request to the container engine.
[0109] These container operations include not only operations on business containers on edge devices, but also operations on the management container itself.
[0110] 5. Equipment capability detection
[0111] After the device registration is completed, the edge management program can optionally run the device capability detection process periodically. Specifically, the edge management program performs device capability detection, obtains the hardware information, computing power and network capabilities of the edge device, and sends the obtained device capability information to the cloud server. This ensures that the cloud server can be updated in time when the device capabilities change.
[0112] Through the above method, this example achieves efficient management and updating of edge devices, reduces dependence on the hardware and software environment of edge devices, simplifies the deployment and management process of edge devices, and improves the scalability and flexibility of the system.
[0113] The second embodiment of the present application relates to a hot update method for an edge device, wherein a first management container exists in the edge device to be updated, and a first edge management program runs in the first management container. Figure 2 As shown, the hot update method includes:
[0114] In step 201, a second management container with a new version of the second edge management program built in is downloaded to the edge device. Optionally, the edge device can download the second edge management program with a new version built in from a cloud server. The cloud server can have one or more physical servers, or one or more logical servers.
[0115] Then, the process proceeds to step 202 , where the cloud server sends a first request to start a second management container to a first edge management program in the edge device.
[0116] Thereafter, the process proceeds to step 203 , where, in response to the first request, the first edge management program instructs the container engine on the edge device to start the second management container.
[0117] Then, the process proceeds to step 204 , where the second management container is started and runs the second edge management program.
[0118] Then, the process proceeds to step 205 , where the second edge management program initiates a registration request to the cloud server.
[0119] Then, in step 206, in response to receiving the registration request, the cloud server adds the second edge management program to the set of available instances. Thereafter, the cloud server dispatches the newly received service request belonging to the edge device to the new version of the second edge management program instead of the old version of the first edge management program.
[0120] Optionally, in one embodiment, the edge management program will provide its own version number and the edge device ID to which it belongs when registering, and the cloud server will carry its version number and the edge device ID to which it belongs when adding the edge management program as an available instance to the available instance set. When the cloud server receives a service request for a certain edge device, it searches for the corresponding edge device ID in the available instance set. Under normal circumstances, only one available instance will be found, and the service request can be dispatched to the available instance. If two available instances are found (for example, a new instance has just been registered and the old instance has not yet been removed from the available instance set), the version numbers of the two available instances can be compared, and the service request can be dispatched to the available instance with the latest version number.
[0121] After that, step 207 is entered, and the cloud server removes the first edge management program from the set of available instances. The set of available instances can be implemented by a variety of data structures, the most common of which is to use a list or a dictionary (hash table). The list implementation is simple and intuitive, suitable for small-scale systems, and can store objects containing information such as device ID, instance ID, version number, and last heartbeat time. The dictionary implementation can use the device ID as the key and the relevant information as the value, providing faster search and update speeds, which is suitable for medium-sized systems. For large-scale or distributed systems, you can consider using a database table or distributed cache (such as Redis) to store this information to provide better scalability, persistence, and concurrent processing capabilities. The choice of which implementation method depends mainly on the scale, performance requirements, and complexity of the system.
[0122] Then, the process proceeds to step 208 , where the cloud server sends a second request to delete the management container to the second edge management program.
[0123] Thereafter, the process proceeds to step 209 , where, in response to receiving the second request, the second edge management program instructs the container engine on the edge device to delete the first management container.
[0124] In order to better understand the technical solution of the second embodiment, a specific example is used for explanation below. The details listed in this example are mainly for ease of understanding and are not intended to limit the scope of protection of this application.
[0125] A management container already exists in the edge device to be updated, and a first edge management program is running in the management container. Figure 3 As shown, this example includes the following steps:
[0126] In step 301 , a second management container (new edge management container) having a built-in new version of a second edge management program (new edge management program) is downloaded from a cloud server to an edge device.
[0127] Then, the process proceeds to step 302 , where the cloud server sends a request to start a second management container to the first edge management program (old edge management program) in the first management container (old edge management container) of the edge device.
[0128] Then, step 303 is entered. In response to receiving the request to start the second management container, the first edge management program instructs the container engine on the edge device to start the second management container. After the second management container is started, the second edge management program therein is automatically run.
[0129] Then, the process proceeds to step 304 , where the second edge management program in the second management container initiates a registration request to the cloud server.
[0130] Then, the process proceeds to step 305, where the cloud server accepts the registration of a new edge management program instance. The remote server can obtain the version information of the registered edge management program instance from the registration information. Therefore, the cloud server knows the version information of each edge management program.
[0131] In response to the registration request, the cloud server adds the second edge management program to the set of available instances. After the cloud server adds the second edge management program to the set of available instances, when the cloud server receives a new service container running request, it performs the following processing:
[0132] -Get the edge devices to be scheduled through the scheduler.
[0133] - List all edge hypervisor instances on the current edge device.
[0134] - Select the instance with the latest version (ie the second edge hypervisor) as the target.
[0135] -Schedule the service request to the second edge management program.
[0136] Then, the process proceeds to step 306 , where the cloud server sends a de-registration notification to the first edge management program.
[0137] Then, the process proceeds to step 307 , where the first edge management program initiates a de-registration request to the cloud server.
[0138] Then, the process proceeds to step 308 , where the cloud server executes the deregistration request of the first edge management program, and removes the first edge management program from the set of available instances.
[0139] Then, the process proceeds to step 309 , where the cloud server sends a request to the second edge management program to delete the first management container.
[0140] Thereafter, the process proceeds to step 310 . In response to receiving the request to delete the first management container, the second edge management program instructs the container engine on the edge device to delete the first management container.
[0141] Then, the process proceeds to step 311 , where the container engine deletes the first management container, completing the self-update process.
[0142] In this way, edge devices can be hot-updated, that is, the edge management program can be updated without interrupting the current business. The new version of the edge management program can seamlessly take over the work of the old version, ensuring business continuity and system stability. At the same time, this update method also minimizes the impact of the update process on the performance of edge devices.
[0143] A third embodiment of the present application relates to an edge device, including:
[0144] The container engine is used to operate containers in edge devices.
[0145] The management container has an edge management program built in it. After the management container is loaded by the container engine, the edge management program automatically runs.
[0146] The edge management program is used to register with the cloud server and establish a connection with the cloud server, receive instructions from the cloud server through the connection, and execute corresponding container operations on the edge device through the container engine according to the received instructions;
[0147] A service container runs service programs and executes specific services in edge devices. An edge device can have one or more service containers, each running different service programs. One service container can run one or more service programs.
[0148] The first embodiment is a method embodiment corresponding to this embodiment, the technical details in the first embodiment can be applied to this embodiment, and the technical details in this embodiment can also be applied to the first embodiment. The method of the second embodiment can also be applied to this embodiment.
[0149] A fourth embodiment of the present application relates to a management system for edge devices, such as Figure 4 As shown, the system includes a cloud server and at least one edge device as described in the third embodiment.
[0150] The cloud server provides a cluster management API similar to Kubernetes, registration and management of edge devices, and management of edge services.
[0151] The edge management program itself runs in the container of the edge device, but by exposing the host container device management node, it can manage other containers on the host. The functions of the edge management program include: managing business-related containers of edge devices; communicating with cloud servers and receiving instructions from cloud servers in real time.
[0152] The edge management program can run one or more containers (i.e., business containers) on the edge device to complete edge computing services. These business containers can be the final edge computing services or the supporting middle-layer software for the final services.
[0153] In addition, the management system of the edge device also has the edge self-update mechanism described in the second embodiment.
[0154] Accordingly, the embodiments of the present application also provide a computer-readable storage medium, in which computer executable instructions are stored, and when the computer executable instructions are executed by the processor, the various method embodiments of the present application are implemented. Computer-readable storage media include permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. Information can be a computer-readable instruction, a data structure, a module of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, read-only compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. According to the definition herein, computer-readable storage media do not include transient computer-readable media (transitory media), such as modulated data signals and carriers.
[0155] In addition, the embodiments of the present application also provide an edge device, which includes a memory for storing computer executable instructions, and a processor; the processor is used to implement the steps in the above-mentioned method implementation methods when executing the computer executable instructions in the memory. Among them, the processor can be a central processing unit (Central Processing Unit, referred to as "CPU"), a graphic processing unit (Graphic Processing Unit, referred to as "GPU"), a digital signal processor (Digital Signal Processor, referred to as "DSP"), a microcontroller unit (Microcontroller Unit, referred to as "MCU"), a neural network processor (referred to as "NPU"), an application specific integrated circuit (Application Specific Integrated Circuit, referred to as "ASIC"), a field programmable gate array (Field Programmable Gate Array, referred to as "FPGA") or other programmable logic devices, etc. The aforementioned memory can be a read-only memory (read-only memory, referred to as "ROM"), a random access memory (random access memory, referred to as "RAM"), a flash memory (Flash), a hard disk or a solid-state hard disk, etc. The steps of the method disclosed in each embodiment of the present invention can be directly embodied as a hardware processor to be executed, or a combination of hardware and software modules in the processor can be executed.
[0156] In addition, an embodiment of the present application further provides a computer program product, which includes computer executable instructions, and when the computer executable instructions are executed by a processor, the steps in the above-mentioned method embodiments are implemented.
[0157] It should be noted that, in the present application, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that there is any such actual relationship or order between these entities or operations. Moreover, the term "include", "comprise" or any other variant thereof is intended to cover non-exclusive inclusion, so that the process, method, article or equipment including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or equipment. In the absence of more restrictions, the elements defined by the sentence "include one" do not exclude the existence of other identical elements in the process, method, article or equipment including the elements. In the present application, if it is mentioned that a certain action is performed according to a certain element, it means at least the meaning of performing the action according to the element, which includes two situations: performing the action only according to the element and performing the action according to the element and other elements. Multiple, multiple, multiple, etc. expressions include 2, 2 times, 2 kinds and more than 2, more than 2 times, more than 2 kinds.
[0158] The serial numbers used in describing the steps of the method do not themselves constitute any limitation on the order of these steps. For example, the step with a larger serial number does not necessarily have to be executed after the step with a smaller serial number. The step with a larger serial number may be executed first and then the step with a smaller serial number. They may also be executed in parallel, as long as this execution order is reasonable for those skilled in the art. For another example, multiple steps with consecutive serial numbers (e.g., step 101, step 102, step 103, etc.) do not limit other steps that can be executed in between. For example, there may be other steps between step 101 and step 102.
[0159] This specification includes combinations of the various embodiments described herein. Individual references to embodiments (e.g., "one embodiment" or "some embodiments" or "preferred embodiments"); however, these embodiments are not mutually exclusive unless indicated as mutually exclusive or it is clear to a person skilled in the art that they are mutually exclusive. It should be noted that the word "or" is used in this specification in a non-exclusive sense unless the context clearly indicates or requires otherwise.
[0160] All documents mentioned in this specification are considered to be included in the disclosure of this application as a whole, so that they can be used as a basis for modification when necessary. In addition, it should be understood that the above is only a preferred embodiment of this specification and is not intended to limit the scope of protection of this specification. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of one or more embodiments of this specification should be included in the scope of protection of one or more embodiments of this specification.
[0161] In some cases, the actions or steps described in the claims may be performed in a different order than in the embodiments and still achieve the desired results. In addition, the processes depicted in the drawings do not necessarily require the specific order or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
Claims
1. A method for managing an edge device, characterized in that: include: The edge device receives a management container having an edge hypervisor built in; The container engine of the edge device loads and starts the management container, and the management container runs the edge management program therein after starting; The edge management program registers with the cloud server and establishes a connection with the cloud server; and, The edge management program receives instructions from the cloud server through the connection, and executes corresponding container operations on the edge device through the container engine according to the received instructions.
2. The edge device management method according to claim 1, characterized in that: The performing of corresponding container operations on the edge device by the container engine includes performing operations on the business container on the edge device and operations on the management container itself.
3. The edge device management method according to claim 1, characterized in that: The connection established between the edge management program and the cloud server is a long connection.
4. The edge device management method according to claim 1, characterized in that: Also includes: The edge management program performs device capability detection to obtain hardware information, computing capability, and network capability of the edge device; as well as The edge management program sends the acquired device capability information to the cloud server.
5. A hot update method for an edge device, characterized in that: A first management container exists in the edge device to be updated, and a first edge management program runs in the first management container. The method includes: A second management container with a new version of a second edge management program built in is downloaded to the edge device; The cloud server sends a first request to the first edge management program in the edge device to start the second management container; In response to the first request, the first edge management program instructs the container engine on the edge device to start the second management container; After the second management container is started, the second edge management program is run; The second edge management program initiates a registration request to the cloud server; In response to the registration request, the cloud server adds the second edge management program to a set of available instances; The cloud server removes the first edge management program from the set of available instances; The cloud server sends a second request to the second edge management program to delete the management container; In response to receiving the second request, the second edge management program instructs the container engine on the edge device to delete the first management container.
6. The hot update method of edge device as claimed in claim 5, characterized in that: After the step of adding the second edge management program to the available instance set, the cloud server dispatches the received service request belonging to the edge device to the second edge management program.
7. An edge device, characterized in that: include: Container engine, used to operate containers in edge devices; A management container, having an edge management program built therein, which automatically runs the edge management program after being loaded by the container engine; The edge management program is used to register with the cloud server and establish a connection with the cloud server, receive instructions from the cloud server through the connection, and execute corresponding container operations on the edge device through the container engine according to the received instructions.
8. A management system for edge devices, characterized in that: include: Cloud servers, and At least one edge device as claimed in claim 7.
9. A non-transitory computer-readable storage medium, characterized in that: The non-transitory computer-readable storage medium stores computer-executable instructions, and when the computer-executable instructions are executed by a processor, the steps in the method according to any one of claims 1 to 6 are implemented.
10. A computer program product comprising computer executable instructions, characterized in that: When the computer executable instructions are executed by a processor, the steps in the method described in any one of claims 1 to 6 are implemented.
Citation Information
Patent Citations
Application management methods and system
CN109302483A
Container arrangement method, device and system and storage medium
CN113296882A
Edge application management method based on cloud computing
CN114201263A
Method and system for controlling algorithm application of edge computing equipment
CN115344347A
Distributed container cluster management method and device, electronic equipment and storage medium
CN116155979A