Method and apparatus for remote upgrade of virtualization device

CN117492781BActive Publication Date: 2026-08-21HONOR DEVICE CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210887569.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-26
Publication Date
2026-08-21
Estimated Expiration
2042-07-26

AI Technical Summary

Technical Problem

[0003]上述升级方式操作复杂,且人力成本高

Benefits of technology

[0018]结合第一方面,在第一方面的某些实现方式中,方法还包括:版本设备基于管理终端的第二配置信息,确定第二目标虚拟化设备,并获取第二目标虚拟化设备的回滚版本号,第二目标虚拟化设备是至少一个虚拟化设备中的全部或部分;版本设备根据回滚版本号,获取第二目标虚拟化设备的待回滚版本的版本镜像;版本设备向第二目标虚拟化设备发送回滚指示信息,该回滚指示信息用于指示第二目标虚拟化设备进行版本回滚,该回滚指示信息包括该待回滚版本的版本镜像。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117492781B_ABST
    Figure CN117492781B_ABST
Patent Text Reader

Abstract

The application provides a remote upgrading method and device of virtualization equipment, relates to the technical field of virtualization, and can reduce the influence on the performance of the virtualization equipment during the upgrading process while reducing the labor cost. The method comprises the following steps: a version equipment determines a first target virtualization equipment based on the first configuration information of a management terminal; the version equipment acquires the version number of the current version of the first target virtualization equipment according to the equipment identifier of the first target virtualization equipment; the version equipment compares whether the version number of the current version and the version number of the latest version are the same; in the case that the version number of the current version is different from the version number of the latest version, the version equipment compiles the source code of the latest version to obtain a compiled file, and makes a latest version image based on the compiled file; and the version equipment sends upgrading indication information to the first target virtualization equipment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of virtualization technology, and in particular to a method and apparatus for remotely upgrading virtualization devices. Background Technology

[0002] The demands of the communications industry are constantly evolving. As users' needs for terminal service capabilities continue to grow, device software versions iterate rapidly, leading to frequent upgrade requirements for virtualized devices. Currently, upgrading virtualized devices typically requires on-site technical personnel. For example, technicians import upgrade files into the virtualized device and manually perform the upgrade step-by-step.

[0003] The aforementioned upgrade methods are complex and costly in terms of manpower. Therefore, there is an urgent need for a remote upgrade method for virtualized devices that can reduce manpower costs while minimizing the impact on the performance of the virtualized devices during the upgrade process. Summary of the Invention

[0004] This application provides a method and apparatus for remotely upgrading virtualized devices, which can reduce labor costs while minimizing the impact on the performance of virtualized devices during the upgrade process.

[0005] In a first aspect, a remote upgrade method for a virtualized device is provided, applicable to a system including a management terminal, a version device, and at least one virtualized device, comprising: the version device determining a first target virtualized device based on first configuration information of the management terminal, wherein the first target virtualized device is all or part of the at least one virtualized device; the version device obtaining the version number of the current version of the first target virtualized device according to the device identifier of the first target virtualized device; the version device comparing whether the version number of the current version is the same as the version number of the latest version; if the version number of the current version is different from the version number of the latest version, the version device compiles the source code of the latest version to obtain a compiled file, and creates a latest version image based on the compiled file; the version device sending upgrade instruction information to the first target virtualized device, the upgrade instruction information being used to instruct the first target virtualized device to perform a version upgrade, the upgrade instruction information including the latest version image.

[0006] The remote upgrade method for virtualization devices provided in this application involves the user configuring upgrade configuration information on a management terminal. The management terminal then sends this configuration information to the version device, which compiles the latest source code and creates the latest version image based on the configuration information. The latest version image is then sent to the target virtualization device. On the one hand, the user does not need to go to the upgrade site to perform the upgrade operation step by step, reducing the labor cost and operational complexity of the upgrade process. On the other hand, the target virtualization device can directly upgrade based on the latest version image from the version device without additional processing, thereby reducing the impact on the performance of the target virtualization device during the upgrade process.

[0007] It should be understood that in this application, the version device stores version update records for each virtualization device. These record includes both version upgrade and version rollback records, representing the association between the device identifier of each virtualization device and the version number of its historical updates. The version device can determine the updated version number of the first target virtualization device using its device identifier; the most recently updated version number is the current version number of the first target virtualization device.

[0008] Optionally, the version device can obtain the latest version of the source code in various ways. In one possible implementation, the version device can actively obtain the latest version of the source code from a third-party server after receiving the first configuration information. In another possible implementation, the third-party server can periodically send the latest version of the source code to the version device. This application does not restrict the method of obtaining the latest version of the source code. It should be understood that obtaining the latest version of the source code can also be called "source code retrieval" or "source code cloning," and this application does not limit the terminology used.

[0009] In conjunction with the first aspect, in some implementations of the first aspect, after the version device sends upgrade instruction information to the first target virtualization device, the method further includes: the version device receiving upgrade response information from the first target virtualization device, the upgrade response information being used to indicate whether the first target virtualization device has successfully upgraded or failed to upgrade; if the upgrade response information indicates that the first target virtualization device has successfully upgraded, the version device adding a first version update record, the first version update record being used to represent the association between the device identifier of the first target virtualization device and the version number of the latest version.

[0010] This application adds version update records to the version device side, so that the version device can obtain the current version number of the first target virtualization device based on the version update records without accessing the first target virtualization device, without requiring the first target virtualization device to respond, thus reducing the impact on the performance of the first target virtualization device during the upgrade process.

[0011] In conjunction with the first aspect, in some implementations of the first aspect, after creating the latest version image based on the compiled file, the method further includes: the version device adds tags to the latest version image based on the category of the latest version, with different tags corresponding to different storage paths; the version device stores the latest version image in memory according to the storage path corresponding to the tag.

[0012] It should be understood that the latest version of the category can refer to different types of virtualization devices, such as refrigerators, washing machines, and mobile phones, or different brands of virtualization devices, or different models of virtualization devices. This application does not limit this.

[0013] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: when the number of version images stored under the storage path corresponding to the tag is greater than or equal to a preset threshold, the version device deletes the version image with the earliest storage time.

[0014] This application reduces the storage pressure on version devices and saves memory by setting a preset threshold for the number of version images under the storage path.

[0015] In conjunction with the first aspect, in some implementations of the first aspect, the aforementioned first configuration information includes the upgrade mode of the first target virtualization device and the device identifier of the first target virtualization device, wherein the upgrade mode is a single upgrade.

[0016] In conjunction with the first aspect, in some implementations of the first aspect, the aforementioned first configuration information includes the upgrade mode of the first target virtualization device, the device identifier of the first target virtualization device, and the upgrade time interval, wherein the upgrade mode is periodic upgrade.

[0017] In the periodic upgrade mode, the upgrade process of the first target virtualization device does not require the user to issue upgrade commands multiple times, reducing the user's workload.

[0018] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: the version device determining a second target virtualization device based on the second configuration information of the management terminal, and obtaining the rollback version number of the second target virtualization device, wherein the second target virtualization device is all or part of at least one virtualization device; the version device obtaining a version image of the version to be rolled back of the second target virtualization device according to the rollback version number; and the version device sending rollback instruction information to the second target virtualization device, wherein the rollback instruction information is used to instruct the second target virtualization device to perform version rollback, and the rollback instruction information includes the version image of the version to be rolled back.

[0019] This application allows users to configure rollback configuration information on a management terminal. The management terminal then sends this rollback configuration information to the version device. The version device determines the version image of the version to be rolled back based on this rollback configuration information and sends the rollback version image to the target virtualization device. On the one hand, users do not need to perform rollback operations on-site step by step, reducing the manpower cost and operational complexity of the rollback process. On the other hand, the target virtualization device can directly perform version rollback based on the rollback version image from the version device without additional processing, thereby reducing the impact on the performance of the target virtualization device during the rollback process.

[0020] In conjunction with the first aspect, in some implementations of the first aspect, the method further includes: after the version device sends rollback indication information to the second target virtualization device, the method further includes: the version device receiving rollback response information from the second target virtualization device, the rollback response information being used to indicate whether the second target virtualization device has successfully rolled back or failed to roll back; if the rollback response information indicates that the second target virtualization device has successfully rolled back, the version device adds a second version update record, the second version update record being used to represent the association between the device identifier of the second target virtualization device and the rollback version number.

[0021] In a second aspect, a remote upgrade apparatus for a virtualized device is provided, comprising: a method for performing any possible implementation of the first aspect described above. Specifically, the apparatus includes a module for performing the method in any possible implementation of the first aspect described above.

[0022] In one design, the device may include modules that perform the methods / operations / steps / actions described in the foregoing aspects one by one. These modules may be hardware circuits, software, or a combination of hardware circuits and software.

[0023] In another design, the device is a communication chip, which may include input circuitry or interface for transmitting information or data, and output circuitry or interface for receiving information or data.

[0024] In another design, the device is a communication device, which may include a transmitter for sending information or data and a receiver for receiving information or data.

[0025] Thirdly, a remote upgrade device for another virtualized device is provided, comprising: a processor and a memory for storing a computer program, the processor for calling and running the computer program from the memory, such that the device performs the method in any of the possible implementations of the first aspect described above.

[0026] Optionally, the processor may be one or more, and the memory may be one or more.

[0027] Optionally, the memory may be integrated with the processor, or the memory may be separated from the processor.

[0028] Optionally, the remote upgrade device for the virtualization device also includes a transmitter and a receiver, which can be set separately or integrated together and referred to as a transceiver.

[0029] Fourthly, a remote upgrade system is provided, including any of the devices that can be implemented in the second aspect above, or any of the devices that can be implemented in the third aspect above.

[0030] In one possible design, the remote upgrade system for the virtualized device may also include a management terminal and at least one virtualized device.

[0031] Optionally, the remote upgrade system for the virtualized device may also include other devices that interact with the version device.

[0032] Fifthly, a computer program product is provided, the computer program product comprising: a computer program (also referred to as code or instructions), which, when the computer program is run, causes a computer to perform the method in any possible implementation of the first aspect described above.

[0033] In a sixth aspect, a computer-readable medium is provided that stores a computer program (also referred to as code or instructions) that, when run on a computer, causes the computer to perform the methods in any of the possible implementations of the first aspect described above. Attached Figure Description

[0034] Figure 1 This is a schematic diagram of the application scenario provided in the embodiments of this application;

[0035] Figure 2 This is a schematic flowchart illustrating a remote upgrade method for a virtualized device provided in an embodiment of this application;

[0036] Figure 3 This is a schematic diagram of a configuration interface of a management terminal provided in an embodiment of this application;

[0037] Figure 4 This is a schematic diagram of another configuration interface of the management terminal provided in the embodiments of this application;

[0038] Figure 5 This is a schematic diagram of another configuration interface of the management terminal provided in the embodiments of this application;

[0039] Figure 6 This is a schematic flowchart illustrating a remote rollback method for a virtualized device provided in an embodiment of this application;

[0040] Figure 7 This is a schematic block diagram of a remote upgrade device for a virtualized device provided in an embodiment of this application;

[0041] Figure 8 This is a schematic block diagram of another remote upgrade device for a virtualized device provided in the embodiments of this application. Detailed Implementation

[0042] The technical solutions in this application will now be described with reference to the accompanying drawings.

[0043] To facilitate a clear description of the technical solutions in the embodiments of this application, the terms "first" and "second" are used in the embodiments of this application to distinguish identical or similar items with essentially the same function and effect. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and the terms "first" and "second" are not necessarily different.

[0044] It should be noted that, in this application, the words "exemplarily" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplarily" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of words such as "exemplarily" or "for example" is intended to present the relevant concepts in a specific manner.

[0045] Furthermore, "at least one" refers to one or more, while "more than one" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, and c can mean: a, or b, or c, or a and b, or a and c, or b and c, or a, b, and c, where a, b, and c can be single or multiple.

[0046] In the embodiments of this application, descriptions such as "when," "under the circumstances," "if," and "if" all refer to the device making corresponding processing under certain objective circumstances, and are not limited to a specific time. They do not require the device to make a judgment action during implementation, nor do they imply any other limitations.

[0047] Below, let's first combine Figure 1 The application scenarios of the embodiments of this application will be described in detail.

[0048] Figure 1 This is a schematic diagram illustrating application scenario 100 provided in an embodiment of this application. For example... Figure 1 As shown, the application scenario 100 includes a management terminal 101, a version device 102, and virtualization devices 103-105. The management terminal 101 and the version device 102 can communicate with each other, and the version device 102 and the virtualization devices 103-105 can communicate with each other.

[0049] In this embodiment of the application, the management terminal 101 is the user's operating platform. The user can configure version upgrade or version rollback through the management terminal 101. The management terminal 101 sends the configuration information to the version device 102. The version device 102 receives the configuration information and determines the target virtualization device to be upgraded or rolled back (all or part of the virtualization devices 103-105) based on the configuration information, and then instructs the target virtualization device to perform version upgrade or version rollback.

[0050] It should be understood that the aforementioned version upgrade refers to the process of replacing the software version of the virtualization device from the current version to a higher version. The aforementioned version rollback refers to the process of replacing the software version of the virtualization device from the current version to an earlier version. Version rollback is generally used in scenarios where the current version has a major defect or a catastrophic incident.

[0051] The management terminal in this application embodiment can be a device that provides data connectivity to users, such as a mobile phone, tablet computer, laptop computer, handheld computer, mobile internet device (MID), wearable device, virtual reality (VR) device, augmented reality (AR) device, etc. This application embodiment does not limit this.

[0052] The version device in this application embodiment can be a device with management and storage functions. The version device can be, for example, a server. This application embodiment does not limit this.

[0053] The virtualization devices in this application embodiment can be devices that employ virtualization technology, such as virtualized small base stations in indoor scenarios like hospitals, schools, and shopping malls, supervised consortium blockchain virtualization nodes, devices in virtualized laboratory environments, virtualized smart home devices, virtualized terminal devices, etc. This application embodiment does not limit these.

[0054] In this embodiment, the management terminal or version device includes a hardware layer, an operating system layer running on top of the hardware layer, and an application layer running on top of the operating system layer. The hardware layer includes hardware such as a central processing unit (CPU), a memory management unit (MMU), and memory (also called main memory). The operating system can be any one or more computer operating systems that implement business processing through processes, such as Linux, Unix, Android, iOS, or Windows. The application layer includes applications such as browsers, address books, word processing software, and instant messaging software. Furthermore, this embodiment does not specifically limit the structure of the execution entity of the method provided in this embodiment, as long as it can communicate according to the method provided in this embodiment by running a program that records the code of the method provided in this embodiment. For example, the execution entity of the method provided in this embodiment can be a version device, or a functional module within the version device capable of calling and executing a program.

[0055] Furthermore, various aspects or features of this application can be implemented as methods, apparatus, or articles of manufacture using standard programming and / or engineering techniques. The term "article of manufacture" as used herein encompasses a computer program accessible from any computer-readable device, carrier, or medium. For example, computer-readable media may include, but are not limited to: magnetic storage devices (e.g., hard disks, floppy disks, or magnetic tapes), optical discs (e.g., compact discs (CDs), digital versatile discs (DVDs), etc.), smart cards, and flash memory devices (e.g., erasable programmable read-only memory (EPROMs), cards, sticks, or key drives, etc.). Additionally, the various storage media described herein may represent one or more devices and / or other machine-readable media for storing information. The term "machine-readable medium" may include, but is not limited to, wireless channels and various other media capable of storing, containing, and / or carrying instructions and / or data.

[0056] The following will combine Figures 2-6 The various embodiments provided in this application are described in detail.

[0057] It should be understood that the technical solutions of this application embodiment can be applied to upgrade scenarios of various types of virtualized devices, such as version upgrades of virtualized small base stations in indoor scenarios such as hospitals, schools, and shopping malls, version upgrades of supervised consortium blockchain virtualized nodes, version upgrades of equipment in virtualized laboratory environments, version upgrades of virtualized smart home devices, version upgrades of virtualized terminal devices, etc.

[0058] It should also be understood that the embodiments of this application are described using a management terminal, a version device, and a target virtualization device as examples. In other possible implementations, the management terminal can be replaced with a device or chip that can perform similar functions to the management terminal, the version device can be replaced with a device or chip that can perform similar functions to the version device, and the target virtualization device can be replaced with a device or chip that can perform similar functions to the target virtualization device. The names of these devices are not limited in the embodiments of this application.

[0059] Figure 2 This is a schematic flowchart illustrating a remote upgrade method 200 for a virtualized device provided in an embodiment of this application. This method 200 can be applied to... Figure 1 The application scenario 100 shown is not limited to this, but the embodiments of this application are not limited thereto. Figure 2 As shown, the method 200 may include the following steps:

[0060] S201, Management terminal configuration first configuration information.

[0061] Specifically, the management terminal can configure the first configuration information according to user needs. Users can operate on the management terminal to configure the first configuration information based on the configuration parameters input by the user. In one possible implementation, the management terminal can display a configuration interface for the user, which displays configuration options or configuration boxes. Users can input configuration parameters by clicking on options or manually entering them in the configuration boxes.

[0062] S202, the management terminal sends the first configuration information to the version device, and the version device receives the first configuration information accordingly.

[0063] Specifically, sending the first configuration information from the management terminal to the version device means that after the user completes the configuration of the first configuration information, the management terminal sends the first configuration information to the version device based on the user's trigger operation. In one possible implementation, the management terminal is equipped with an upgrade control, which is triggered by the user clicking the upgrade button to send the first configuration information to the version device.

[0064] S203, the version device determines the first target virtualization device based on the first configuration information, and obtains the version number of the current version of the first target virtualization device according to the device identifier of the first target virtualization device.

[0065] Specifically, the first target virtualization device is all or part of at least one virtualization device in the current application scenario, for example, all or part of virtualization devices 103-105 in application scenario 100 above. The version device can obtain the version number of the current version of the first target virtualization device based on the device identifier of the first target virtualization device.

[0066] It should be understood that the version device stores version update records for each virtualization device. These records include both version upgrades and version rollbacks, and represent the association between the device identifier of each virtualization device and the version number of its historical updates. The version device can determine the updated version number of the first target virtualization device through its device identifier; the most recently updated version number is the current version number of the first target virtualization device.

[0067] S204, the version device compares the version number of the current version with the version number of the latest version.

[0068] S205: When the version number of the current version is different from the version number of the latest version, the version device compiles the source code of the latest version to obtain the compiled file, and creates the latest version image based on the compiled file.

[0069] In this embodiment of the application, the version device can obtain the source code of the latest version only when it is determined that the version number of the current version is different from the version number of the latest version, or it can obtain the source code of the latest version in advance and use it directly when it is determined that the version number of the current version is different from the version number of the latest version. This embodiment of the application does not limit this.

[0070] Furthermore, the version device can obtain the latest version of the source code through various methods. In one possible implementation, the version device can actively obtain the latest version of the source code from a third-party server after receiving the first configuration information. In another possible implementation, the third-party server can periodically send the latest version of the source code to the version device. This application embodiment does not limit the method of obtaining the latest version of the source code.

[0071] It should be understood that obtaining the latest version of the source code can also be called "source code retrieval" or "source code cloning," and this application embodiment does not limit the terminology used.

[0072] S206, the version device sends an upgrade instruction to the first target virtualization device. The upgrade instruction is used to instruct the first target virtualization device to perform a version upgrade. The upgrade instruction includes the latest version image.

[0073] S207, the first target virtualization device receives the upgrade instruction information and performs a version upgrade using the latest version image included in the upgrade instruction information.

[0074] The remote upgrade method for virtualization devices provided in this application involves the user configuring upgrade configuration information on a management terminal. The management terminal then sends this configuration information to the version device, which compiles the latest source code and creates the latest version image based on the configuration information. The latest version image is then sent to the target virtualization device. On the one hand, the user does not need to go to the upgrade site to perform the upgrade operation step by step, reducing the labor cost and operational complexity of the upgrade process. On the other hand, the target virtualization device can directly upgrade based on the latest version image from the version device without additional processing, thereby reducing the impact on the performance of the target virtualization device during the upgrade process.

[0075] As an optional embodiment, the first configuration information may include the upgrade mode and the device identifier of the virtualization device. Users can configure the upgrade mode and the first target virtualization device through the configuration interface of the management terminal, either by clicking or by manually entering the information.

[0076] Figure 3 This is a schematic diagram of a configuration interface 300 for a management terminal. (For example...) Figure 3 As shown, in Figure 3 In the configuration interface shown (a), when the user clicks the drop-down arrow in the upgrade mode configuration box, the management terminal responds to the user's click by displaying a drop-down menu. The user selects "Single Upgrade" as the upgrade mode from the menu, and the management terminal confirms the upgrade mode as single upgrade and displays the selected information. Figure 3 The configuration interface shown is b. Figure 3 In the configuration interface b shown, when the user clicks the drop-down arrow in the device identifier configuration box, the management terminal responds to the user's click by displaying a drop-down menu. The user selects the device identifier "RY-0001" from the drop-down menu. The management terminal, in response to the user's selection, identifies the first target virtualization device as device RY-0001 and displays it. Figure 3 The configuration interface shown is c. Figure 3In the configuration interface c shown, the user clicks the "Upgrade" button, triggering an upgrade event. The management terminal responds to the user's click by sending an upgrade command to the version device. This upgrade command carries the identifier RY-0001 of the first target virtualization device (i.e., the aforementioned first configuration information). Based on this identifier RY-0001, the version device obtains the current version number of RY-0001 and executes the subsequent corresponding operations of method 200 described above, which will not be elaborated further here.

[0077] Figure 4 This is a schematic diagram of another configuration interface 400 for the management terminal. (For example...) Figure 4 As shown, in Figure 4 In the configuration interface shown (a), when the user clicks the drop-down arrow in the upgrade mode configuration box, the management terminal responds to the user's click by displaying a drop-down menu. The user selects "Periodic Upgrade" as the upgrade mode from the menu, and the management terminal confirms the upgrade mode as periodic upgrade and displays the selected information. Figure 4 Configuration interface b. Figure 4 In the configuration interface b shown, when the user clicks the drop-down arrow in the time interval configuration box, the management terminal responds to the user's click by displaying a drop-down menu. The user selects "15 days" as the upgrade time interval from the menu, and the management terminal confirms the upgrade time interval as 15 days and displays the information. Figure 4 The configuration interface shown is c. Figure 4 In the configuration interface c shown, when the user clicks the drop-down arrow in the device identifier configuration box, the management terminal responds to the user's click by displaying a drop-down menu. The user selects the device identifier "RY-0001" from the drop-down menu. The management terminal, in response to the user's selection, identifies the first target virtualization device as device RY-0001 and displays it. Figure 4 The configuration interface d shown is shown. Figure 4 In the configuration interface d shown, when the user clicks the "Upgrade" button, an upgrade event is triggered. In response to the user's click, the management terminal sends an upgrade command to the version device. This command carries the identifier RY-0001 of the first target virtualization device and an upgrade interval of 15 days. Based on this upgrade command, the version device starts a timer with a duration of 15 days. When the timer completes its 15-day cycle, it retrieves the current version number of RY-0001 based on the identifier RY-0001 and executes the subsequent corresponding operations of method 200 described above; these will not be elaborated further here.

[0078] In the periodic upgrade mode, the upgrade process of the first target virtualization device does not require the user to issue upgrade commands multiple times, reducing the user's workload.

[0079] It should be understood that the aforementioned first target virtualization device can be one or more. Figure 3 and Figure 4 This illustration uses only one first target virtualization device as an example, but the embodiments of this application are not limited thereto. When there are multiple first target virtualization devices, the method of the embodiments of this application can improve upgrade efficiency.

[0080] As an optional embodiment, the first configuration information may further include the upgrade mode and the category of the virtualization device. The category here can refer to different types of virtualization devices, such as refrigerators, washing machines, and mobile phones; it can also refer to different brands or models of virtualization devices; this embodiment does not limit this. Users can configure the upgrade mode and the first target virtualization device through clicking or manual input on the configuration interface of the management terminal.

[0081] Figure 5 This is a schematic diagram of another configuration interface 500 for the management terminal. (See diagram 500.) Figure 5 As shown, in Figure 5 In the configuration interface shown (a), when the user clicks the drop-down arrow in the upgrade mode configuration box, the management terminal responds to the user's click by displaying a drop-down menu. The user selects "Single Upgrade" as the upgrade mode from the menu, and the management terminal confirms the upgrade mode as single upgrade and displays the selected information. Figure 5 Configuration interface b. Figure 5 In the configuration interface b shown, when the user clicks the drop-down arrow in the device category configuration box, the management terminal responds to the user's click by displaying a drop-down menu. The user selects "Refrigerator" as the device category from the drop-down menu, and the management terminal, in response to the user's selection, confirms the device category as "Refrigerator" and displays... Figure 5 The configuration interface shown is c. Figure 5 In the configuration interface c shown, when the user clicks the drop-down arrow in the device model configuration box, the management terminal responds to the user's click by displaying a drop-down menu. The user selects refrigerator models "BCD-228S2" and "BCD-225SE" from the menu. The management terminal, in response to the user's selection, identifies the aforementioned first target virtualization device as the refrigerators with models "BCD-228S2" and "BCD-225SE" and displays the information. Figure 5 The configuration interface d shown is shown. Figure 5In the configuration interface d shown, when the user clicks the "Upgrade" button, an upgrade event is triggered. The management terminal responds to the user's click by sending an upgrade command to the version device. This command carries the information that the first target virtualization device is a refrigerator, and its model is "BCD-228S2" and "BCD-225SE". Based on the device category (refrigerator) and model "BCD-228S2" and "BCD-225SE", the version device obtains the current version number of the refrigerators with models "BCD-228S2" and "BCD-225SE", and executes the subsequent corresponding operations of method 200 described above, which will not be elaborated here.

[0082] It should be understood that Figures 3-5 In the example shown, the user configures parameters by selecting upgrade mode, time interval, device identifier, etc. from the drop-down list. In other possible implementations, the user can also directly enter the upgrade mode at the cursor position shown in the figure, and / or enter the device identifier, time interval, and other parameters at the cursor position. This application embodiment does not limit this.

[0083] As an optional embodiment, after the version device sends upgrade instruction information to the first target virtualization device, the method further includes: the version device receiving upgrade response information from the first target virtualization device, the upgrade response information being used to indicate whether the first target virtualization device has been successfully upgraded or failed to upgrade; if the upgrade response information indicates that the first target virtualization device has been successfully upgraded, the version device adds a first version update record, the first version update record being used to represent the association between the device identifier of the first target virtualization device and the version number of the latest version.

[0084] Specifically, after the first target virtualization device is successfully upgraded, the version device can establish an association between the device identifier of the first target virtualization device and the version number of the latest version. The association is added as a version update record (i.e., the first version update record) to the version update record of the first target virtualization device, and the version update time, i.e. the time of this version upgrade, is added to the first version update record.

[0085] For example, the device identifier of the first target virtualization device is RY0001, and the above version update record can be shown in Table 1.

[0086] Table 1

[0087]

[0088] The embodiments of this application add version update records to the version device side, so that the version device can obtain the current version number of the first target virtualization device based on the version update records without accessing the first target virtualization device, without requiring the first target virtualization device to respond, thus reducing the impact on the performance of the first target virtualization device during the upgrade process.

[0089] As an optional embodiment, after the version device creates the latest version image based on the compiled file, the method of this application further includes: the version device adding tags to the latest version image based on the category of the latest version, with different tags corresponding to different storage paths; and the version device storing the latest version image in memory according to the storage path corresponding to the tag.

[0090] Specifically, the category of the latest version has the same meaning as the category in the aforementioned method 200, and will not be repeated here. In this embodiment, tags are added to the latest version image based on the latest version category. Different tags correspond to different storage paths, making it convenient for the first target virtualization device to directly obtain the version image to be rolled back based on the tag classification when performing version rollback.

[0091] For example, as shown in Table 2, the first target virtualization device category can be the refrigerator model. The version device sets the label of the latest version image V3.0 as refrigerator BCD-228S2 according to the refrigerator model and stores it under the storage path C: / refrigerator / BCD-228S2.

[0092] Table 2

[0093] V1.0 version image Refrigerator BCD-228S2 C: / Refrigerator / BCD-228S2 V2.0 version image Refrigerator BCD-228S2 C: / Refrigerator / BCD-228S2 Version 3.0 image (latest) Refrigerator BCD-228S2 C: / Refrigerator / BCD-228S2

[0094] As an optional embodiment, the method further includes: when the number of version images stored under the storage path corresponding to the tag is greater than or equal to a preset threshold, the version device deletes the version image with the earliest storage time.

[0095] For example, when the preset threshold is set to 3, as shown in Table 3, the current version device already stores 3 version images under the path C: / Refrigerator / BCD-228S2. If the latest version image V4.0 is also needed to be stored, the version device can delete version V1.0 so that the storage path C: / Refrigerator / BCD-228S2 still stores 3 version images, as shown in Table 4.

[0096] Table 3

[0097]

[0098] Table 4

[0099]

[0100] The embodiments of this application reduce the storage pressure on the version device and save memory by setting a preset threshold for the number of version images under the storage path.

[0101] As an optional embodiment, the method also includes a remote rollback method for virtualized devices. Figure 6 This is a schematic flowchart illustrating a remote rollback method 600 for a virtualized device provided in an embodiment of this application. This method 600 can be applied to... Figure 1 The application scenario 100 shown is not limited to this, but the embodiments of this application are not limited thereto. Figure 6 As shown, the method 600 may include the following steps:

[0102] S601, the management terminal configures the second configuration information.

[0103] S602, the management terminal sends the second configuration information to the version device, and correspondingly, the version device receives the second configuration information.

[0104] Specifically, the implementation method for configuring the management terminal and sending the second configuration information is the same as the implementation method for configuring the management terminal and sending the first configuration information in method 200, and will not be described in detail here.

[0105] S603, the version device determines the second target virtualization device based on the second configuration information and obtains the rollback version number of the second target virtualization device.

[0106] It should be understood that the first target virtualization device in the second target virtualization device and method 200 can be the same virtualization device, or it can be multiple virtualization devices including the same virtualization device, or it can be completely different virtualization devices. This application embodiment does not limit this. For example, the second virtualization device can also be all or part of the virtualization devices 103-105 in the above application scenario 100.

[0107] The rollback version number of the second target virtualization device is obtained based on the second configuration information. In one possible implementation, the user can configure the second configuration information on the management terminal based on actual needs. The second configuration information may include the rollback version number and the device identifier of the second target virtualization device; alternatively, the second configuration information may also include the rollback version number and the category of the second target virtualization device.

[0108] It should be understood that the category of the second target virtualization device has the same meaning as the category of the aforementioned virtualization devices, and will not be repeated here.

[0109] S604, the version device obtains the version image of the version to be rolled back from the second target virtualization device based on the rollback version number.

[0110] Specifically, the rollback version number has the same meaning as the version number mentioned above, and is only used to indicate the version number of a certain version image. It can be any of the version numbers of the historical version updates of the second target virtualization device.

[0111] It should be understood that the version device stores various version images and index information of the version images. This index information can have many different forms of representation, which are not limited here.

[0112] In one possible implementation, the aforementioned index information is used to represent the device identifiers of each virtualization device and the associations between each version image. The version device can first determine the version images supported by the second target virtualization device based on its device identifier, and then determine the version image corresponding to the rollback version number from among the version images supported by the second target virtualization device based on the rollback version number.

[0113] For example, Table 5 shows the index information of the version images supported by the virtualization devices with device identifiers RY0001 and RY0002. The index information records the version images supported by the devices with device identifiers RY0001 and RY0002. When the user configures the device identifier of the second target virtualization device as RY0001 and the rollback version number as V2.0, the version device can first determine the version images supported by the second target virtualization device as version V2.0 and version V3.0 based on the device identifier RY0001, and then determine the version image of the version to be rolled back as version V2.0 based on the rollback version number V2.0.

[0114] Table 5

[0115] 1 RY0001 V2.0 version image 2 RY0001 V3.0 version image 3 RY0002 V2.0 version image

[0116] In another possible implementation, the index information includes the association between tags and version images. The version device can first determine the tag corresponding to the second target virtualization device based on the category of the second target virtualization device, then determine the version images supported by the tag based on the tag of the second target virtualization device, and finally determine the version image corresponding to the rollback version number from the version images supported by the target virtualization device corresponding to the tag based on the rollback version number.

[0117] For example, Table 6 shows the index information of virtualization devices labeled Refrigerator BCD-228S2 and Refrigerator BCD-225SE. This index information records the version images supported by the virtualization devices labeled Refrigerator BCD-228S2 and Refrigerator BCD-225SE. When a user configures the category of the second target virtualization device as Refrigerator BCD-228S2 and the rollback version number as V2.0, the version device can determine the supported version images of the second target virtualization device as V2.0 and V4.0 based on the label Refrigerator BCD-228S2, and then determine the version image of the version to be rolled back as V2.0 based on the rollback version number V2.0.

[0118] Table 6

[0119] 1 Refrigerator BCD-228S2 V2.0 version image 2 Refrigerator BCD-228S2 V4.0 version image 3 Refrigerator BCD-225SE V2.0 version image

[0120] S605, the version device sends rollback instruction information to the second target virtualization device. The rollback instruction information is used to instruct the second target virtualization device to perform version rollback. The rollback instruction information includes the version image of the version to be rolled back.

[0121] S606, the second target virtualization device receives the rollback instruction information and uses the version image of the version to be rolled back in the rollback instruction information to perform version rollback.

[0122] In this embodiment, the user configures rollback configuration information on the management terminal, which then sends this configuration information to the version device. The version device determines the version image of the version to be rolled back based on the configuration information and sends the rollback version image to the target virtualization device. On the one hand, the user does not need to perform rollback operations on-site step by step, reducing the manpower cost and operational complexity of the rollback process. On the other hand, the target virtualization device can directly perform version rollback based on the rollback version image from the version device without additional processing, thereby reducing the impact on the performance of the target virtualization device during the rollback process.

[0123] As an optional embodiment, after the version device sends rollback instruction information to the second target virtualization device, the method further includes: the version device receiving rollback response information from the second target virtualization device, the rollback response information indicating whether the second target virtualization device has successfully rolled back or failed to roll back; if the rollback response information indicates that the second target virtualization device has successfully rolled back, the version device adds a second version update record, the second version update record indicating the association between the device identifier of the second target virtualization device and the rollback version number.

[0124] Specifically, after the second target virtualization device is successfully rolled back, the version device can establish an association between the device identifier of the second target virtualization device and the version number of the rolled-back version. The association is added as a version update record (i.e., the second version update record) to the version update record of the second target virtualization device, and the version update time, i.e. the time of this version rollback, is added to the second version update record.

[0125] For example, assuming that the second target virtualization device and the first target virtualization device are the same device, and the device identifier of the second target virtualization device is RY0001, the above version update record can be updated as shown in Table 7 after the second target virtualization device performs a version rollback.

[0126] Table 7

[0127]

[0128] The methods of this application embodiment will be described below using various different scenarios as examples.

[0129] Scene 1

[0130] This application can be applied to scenarios where virtualized long-term evolution (LTE) devices are upgraded to virtualized new radio (NR) devices. In this scenario, the virtualized device can be a terminal device connected to an LTE network. The user selects a first target virtualized device through a mobile application (APP), and the mobile phone sends an upgrade command to the version device. This upgrade command instructs the protocol stack of the first target virtualized device to be upgraded from LTE to NR. Upon receiving the upgrade command, the version device creates an NR version image. After completing the creation of the NR version image, the version device sends the NR version image to the first target virtualized device. The first target virtualized device executes an automated script to destroy the existing LTE container and create an NR container based on the NR version image, thereby completing the upgrade.

[0131] Scene 2

[0132] This application embodiment can be applied to upgrade scenarios of virtualized small base stations, where the virtualization device can be a virtualized small base station. The virtualized small base station and the version device establish a connection via wireless, fiber optic, or infrared means. The user selects a first target virtualization device through a mobile app, and the mobile app sends an upgrade command to the version device. This upgrade command instructs the version device to upgrade its version. Upon receiving the upgrade command, the version device creates a new version image. After completing the creation of the new version image, the version device sends it to the first target virtualization device. Upon receiving the new version image, the first target virtualization device executes an automated script to destroy existing containers and start new containers, thereby completing the version upgrade operation.

[0133] Scene 3

[0134] This application's embodiments can be applied to upgrade scenarios of virtualized blockchain nodes in regulated consortium blockchains. In this scenario, the virtualization device can be a virtualized blockchain node. The version device can be stored in the regulator's management data center, each blockchain node device is located in a different institution, and each blockchain node device can run multiple virtual nodes. The specific upgrade process in this scenario is similar to that in Scenario Two described above, and will not be repeated here.

[0135] Scene 4

[0136] This application can be applied to upgrade scenarios for virtualized smart home devices. In this scenario, the virtualized devices can be all or part of virtualized smart home devices such as rice cookers, air conditioners, washing machines, robot vacuums, and refrigerators. The virtualized smart home devices, such as rice cookers, can establish a connection with the upgraded devices via wireless communication technologies (Wi-Fi), Bluetooth, etc. The specific upgrade process in this scenario is similar to that in Scenario Two above and will not be repeated here.

[0137] It should be understood that the sequence number of each process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0138] The above text combines Figures 1 to 6 The method of the embodiments of this application has been described in detail. The following will combine 7 and... Figure 8 The apparatus of the embodiments of this application is described in detail below.

[0139] Figure 7 This application illustrates a remote upgrade device 700 for a virtualized device according to an embodiment of the present application. The device 700 can be a version device or a chip within a version device. The device 700 includes a processing module 710 and a transceiver module 720.

[0140] In one possible implementation, the device 700 is used to execute the various processes and steps corresponding to the version device in the above method embodiments.

[0141] The processing module 710 is used to: determine a first target virtualization device based on the first configuration information of the management terminal, wherein the first target virtualization device is all or part of at least one virtualization device; obtain the version number of the current version of the first target virtualization device according to the device identifier of the first target virtualization device; compare whether the version number of the current version is the same as the version number of the latest version; if the version number of the current version is different from the version number of the latest version, compile the source code of the latest version to obtain a compiled file; and create a latest version image based on the compiled file.

[0142] The transceiver module 720 is used to send upgrade instruction information to the first target virtualization device, the upgrade instruction information being used to instruct the first target virtualization device to perform a version upgrade, the upgrade instruction information including the latest version image.

[0143] Optionally, the processing module 710 is further configured to: add tags to the latest version image based on the category of the latest version, with different tags corresponding to different storage paths; and store the latest version image in memory according to the storage path corresponding to the tag.

[0144] Optionally, the processing module 710 is further configured to: delete the version image with the earliest storage time when the number of version images stored under the storage path corresponding to the tag is greater than or equal to a preset threshold.

[0145] Optionally, the aforementioned first configuration information includes the upgrade mode of the first target virtualization device and the device identifier of the first target virtualization device, wherein the upgrade mode is a single upgrade.

[0146] Optionally, the first configuration information mentioned above includes the upgrade mode of the first target virtualization device, the device identifier of the first target virtualization device, and the upgrade time interval, wherein the upgrade mode is periodic upgrade.

[0147] Optionally, the processing module 710 is further configured to: determine a second target virtualization device based on the second configuration information of the management terminal, and obtain the rollback version number of the second target virtualization device, wherein the second target virtualization device is all or part of at least one virtualization device; obtain the version image of the version to be rolled back of the second target virtualization device according to the rollback version number; the transceiver module 720 is further configured to: send rollback instruction information to the second target virtualization device, wherein the rollback instruction information is used to instruct the second target virtualization device to perform version rollback, and the rollback instruction information includes the version image of the version to be rolled back.

[0148] Optionally, the transceiver module 720 is further configured to: receive rollback response information from the second target virtualization device, the rollback response information being used to indicate whether the second target virtualization device has successfully rolled back or failed to roll back; the processing module 710 is further configured to: add a second version update record when the rollback response information indicates that the second target virtualization device has successfully rolled back, the second version update record being used to represent the association between the device identifier of the second target virtualization device and the rollback version number.

[0149] It should be understood that the device 700 here is embodied in the form of a functional module. The term "module" here can refer to application-specific integrated circuits (ASICs), electronic circuits, processors (e.g., shared processors, proprietary processors, or group processors, etc.) and memories for executing one or more software or firmware programs, integrated logic circuits, and / or other suitable components supporting the described functions. In an alternative example, those skilled in the art will understand that the device 700 can specifically be a version device as described in the above embodiments. The device 700 can be used to execute the various processes and / or steps corresponding to the version device in the above method embodiments; to avoid repetition, these will not be described further here.

[0150] The aforementioned device 700 has the function of implementing the corresponding steps executed by the version device in the aforementioned method; the aforementioned function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the aforementioned function. For example, the aforementioned transceiver module 720 may include a sending module and a receiving module. The sending module can be used to implement the various steps and / or processes corresponding to the transceiver module for performing the sending action, and the receiving module can be used to implement the various steps and / or processes corresponding to the transceiver module for performing the receiving action. The sending module can be replaced by a transmitter, and the receiving module can be replaced by a receiver, respectively executing the transmission and reception operations and related processing operations in each method embodiment.

[0151] In the embodiments of this application, Figure 7 The device 700 can also be a chip or a chip system, such as a system on chip (SOC). Correspondingly, the transceiver module 720 can be the transceiver circuit of the chip, which is not limited here.

[0152] Figure 8This application illustrates another remote upgrade device 800 for a virtualized device according to an embodiment of the present application. The device 800 includes a processor 810, a transceiver 820, and a memory 830. The processor 810, transceiver 820, and memory 830 communicate with each other via an internal connection path. The memory 830 stores instructions, and the processor 810 executes the instructions stored in the memory 830 to control the transceiver 820 to transmit and / or receive signals.

[0153] In one possible implementation, the device 800 is used to execute the various processes and steps corresponding to the versions of the device in methods 200 and 600 described above.

[0154] The transceiver 820 is configured to: send upgrade instruction information to a first target virtualization device, the upgrade instruction information instructing the first target virtualization device to perform a version upgrade, the upgrade instruction information including a latest version image. The processor 810 is configured to: determine a first target virtualization device based on configuration information from a management terminal, the first target virtualization device being all or part of at least one virtualization device; obtain the version number of the current version of the first target virtualization device based on its device identifier; compare the current version number with the version number of the latest version; if the current version number differs from the latest version number, compile the source code of the latest version to obtain a compiled file; and create a latest version image based on the compiled file.

[0155] It should be understood that the device 800 may specifically be a version device as described in the above embodiments, and may be used to execute the various steps and / or processes corresponding to the version device in the above method embodiments. Optionally, the memory 830 may include a read-only memory and a random access memory, and provide instructions and data to the processor. A portion of the memory may also include non-volatile random access memory. For example, the memory may also store device type information. The processor 810 may be used to execute instructions stored in the memory, and when the processor 810 executes instructions stored in the memory, the processor 810 is used to execute the various steps and / or processes of the above method embodiments corresponding to the terminal device or network device. The transceiver 820 may include a transmitter and a receiver, the transmitter may be used to implement the various steps and / or processes corresponding to the transceiver for performing a sending action, and the receiver may be used to implement the various steps and / or processes corresponding to the transceiver for performing a receiving action.

[0156] It should be understood that, in the embodiments of this application, the processor of the above-described device can be a central processing unit (CPU), which can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc.

[0157] In implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software. The steps of the method disclosed in the embodiments of this application can be directly manifested as execution by a hardware processor, or as a combination of hardware and software units within the processor. The software units can reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory, and the processor executes the instructions in the memory, combining them with its hardware to complete the steps of the above method. To avoid repetition, detailed descriptions are omitted here.

[0158] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0159] This application also provides a remote upgrade system for a virtualization device, which may include the above-described... Figure 7 or Figure 8 The illustrated version device (device 700 or device 800 is embodied as a version device), management terminal, and at least one virtualization device.

[0160] This application provides a computer program product that, when run on a device, causes the device to execute the technical solutions described in the above embodiments. Its implementation principle and technical effects are similar to the related embodiments described above, and will not be repeated here.

[0161] This application provides a computer-readable medium storing program instructions. When executed by a terminal device, the program instructions cause the device to perform the technical solution described in the above embodiments. Its implementation principle and technical effects are similar to those of the related embodiments described above, and will not be repeated here. The methods described in the above embodiments can be implemented entirely or partially by software, hardware, firmware, or any combination thereof. If implemented in software, the functionality can be stored as one or more instructions or code on or transmitted on a computer-readable medium. A computer-readable medium can include computer storage media and communication media, and can also include any medium that can transfer a computer program from one place to another. A storage medium can be any target medium accessible by a computer.

[0162] Those skilled in the art will recognize that the modules and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0163] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and modules described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0164] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or modules may be electrical, mechanical, or other forms.

[0165] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical modules; that is, they may be located in one place or distributed across multiple network modules. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.

[0166] In addition, the functional modules in the various embodiments of this application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module.

[0167] If the aforementioned functions are implemented as software functional modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0168] The above description is merely a specific embodiment of this application, but the protection scope of the embodiments of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the embodiments of this application should be included within the protection scope of the embodiments of this application. Therefore, the protection scope of the embodiments of this application should be determined by the protection scope of the claims.

Claims

1. A method for remotely upgrading a virtualized device, characterized in that, The method, applied to a system including a management terminal, a version control device, and at least one virtualization device, comprises: The version device determines a first target virtualization device based on the first configuration information of the management terminal, wherein the first target virtualization device is all or part of the at least one virtualization device; The version device obtains the version number of the current version of the first target virtualization device based on the device identifier of the first target virtualization device; The version device compares whether the version number of the current version is the same as the version number of the latest version; If the version number of the current version is different from the version number of the latest version, the device obtains the source code of the latest version from a third-party server, compiles the source code to obtain a compiled file, and creates a latest version image based on the compiled file. The version device sends upgrade instruction information to the first target virtualization device. The upgrade instruction information is used to instruct the first target virtualization device to perform a version upgrade. The upgrade instruction information includes the latest version image, so that the first target virtualization device can directly replace the currently running system image based on the latest version image to complete the upgrade.

2. The method according to claim 1, characterized in that, After the version device sends upgrade instruction information to the first target virtualization device, the method further includes: The version device receives upgrade response information from the first target virtualization device, and the upgrade response information is used to indicate whether the first target virtualization device has been successfully upgraded or failed to upgrade. When the upgrade response information indicates that the first target virtualization device has been successfully upgraded, the version device adds a first version update record. The first version update record is used to represent the association between the device identifier of the first target virtualization device and the version number of the latest version.

3. The method according to claim 1, characterized in that, After creating the latest version image based on the compiled file, the method further includes: The version device adds tags to the latest version image based on the category of the latest version, with different tags corresponding to different storage paths; The device stores the latest version image into memory according to the storage path corresponding to the tag.

4. The method according to claim 3, characterized in that, The method further includes: When the number of version images stored under the storage path corresponding to the tag is greater than or equal to a preset threshold, the version device deletes the version image with the earliest storage time.

5. The method according to any one of claims 1-4, characterized in that, The first configuration information includes the upgrade mode of the first target virtualization device and the device identifier of the first target virtualization device, wherein the upgrade mode is a single upgrade.

6. The method according to any one of claims 1-4, characterized in that, The first configuration information includes the upgrade mode of the first target virtualization device, the device identifier of the first target virtualization device, and the upgrade time interval, wherein the upgrade mode is periodic upgrade.

7. The method according to any one of claims 1-4, characterized in that, The method further includes: The version device determines the second target virtualization device based on the second configuration information of the management terminal, and obtains the rollback version number of the second target virtualization device. The second target virtualization device is all or part of the at least one virtualization device. The version device obtains the version image of the version to be rolled back from the second target virtualization device according to the rollback version number; The version device sends rollback instruction information to the second target virtualization device. The rollback instruction information is used to instruct the second target virtualization device to perform version rollback. The rollback instruction information includes the version image of the version to be rolled back.

8. The method according to claim 7, characterized in that, After the version device sends rollback instruction information to the second target virtualization device, the method further includes: The version device receives rollback response information from the second target virtualization device, the rollback response information being used to indicate whether the second target virtualization device successfully rolled back or failed to roll back; If the rollback response information indicates that the second target virtualization device has successfully rolled back, the version device adds a second version update record. The second version update record is used to represent the association between the device identifier of the second target virtualization device and the rollback version number.

9. A remote upgrade device for a virtualized device, characterized in that, The device includes: The processing module is configured to: determine a first target virtualization device based on first configuration information from a management terminal, wherein the first target virtualization device is all or part of at least one virtualization device; obtain the version number of the current version of the first target virtualization device according to the device identifier of the first target virtualization device; compare the version number of the current version with the version number of the latest version; if the version number of the current version is different from the version number of the latest version, obtain the source code of the latest version from a third-party server, compile the source code to obtain a compiled file; and create a latest version image based on the compiled file. The transceiver module is used to send upgrade instruction information to the first target virtualization device. The upgrade instruction information is used to instruct the first target virtualization device to perform a version upgrade. The upgrade instruction information includes the latest version image, so that the first target virtualization device can directly replace the currently running system image based on the latest version image to complete the upgrade.

10. The apparatus according to claim 9, characterized in that, The transceiver module is also used for: Receive upgrade response information from the first target virtualization device, the upgrade response information being used to indicate whether the first target virtualization device has been successfully upgraded or failed to upgrade; The processing module is also used for: If the upgrade response information indicates that the first target virtualization device has been successfully upgraded, a first version update record is added. The first version update record is used to represent the association between the device identifier of the first target virtualization device and the version number of the latest version.

11. The apparatus according to claim 9, characterized in that, The processing module is also used for: Based on the category of the latest version, tags are added to the latest version image, with different tags corresponding to different storage paths; The latest version image is stored in memory according to the storage path corresponding to the label.

12. The apparatus according to claim 11, characterized in that, The processing module is also used for: When the number of version images stored under the storage path corresponding to the tag is greater than or equal to a preset threshold, the version image with the earliest storage time is deleted.

13. The apparatus according to any one of claims 9-12, characterized in that, The first configuration information includes the upgrade mode of the first target virtualization device and the device identifier of the first target virtualization device, wherein the upgrade mode is a single upgrade.

14. The apparatus according to any one of claims 9-12, characterized in that, The first configuration information includes the upgrade mode of the first target virtualization device, the device identifier of the first target virtualization device, and the upgrade time interval, wherein the upgrade mode is periodic upgrade.

15. The apparatus according to any one of claims 9-12, characterized in that, The processing module is also used for: Based on the second configuration information of the management terminal, a second target virtualization device is determined, and the rollback version number of the second target virtualization device is obtained. The second target virtualization device is all or part of the at least one virtualization device. Based on the rollback version number, obtain the version image of the version to be rolled back for the second target virtualization device; The transceiver module is also used for: Send rollback instruction information to the second target virtualization device. The rollback instruction information is used to instruct the second target virtualization device to perform a version rollback. The rollback instruction information includes the version image of the version to be rolled back.

16. The apparatus according to claim 15, characterized in that, The transceiver module is also used for: Receive rollback response information from the second target virtualization device, the rollback response information being used to indicate whether the second target virtualization device rolled back successfully or failed; The processing module is also used for: If the rollback response information indicates that the second target virtualization device has successfully rolled back, a second version update record is added. The second version update record is used to represent the association between the device identifier of the second target virtualization device and the rollback version number.

17. An apparatus, characterized in that, include: A processor coupled to a memory for storing a computer program, which, when invoked by the processor, causes the apparatus to perform the method as described in any one of claims 1 to 8.

18. A computer-readable storage medium, characterized in that, Used to store a computer program, the computer program including instructions for implementing the method as described in any one of claims 1 to 8.

19. A computer program product, characterized in that, The computer program product includes computer program code that, when run on a computer, causes the computer to implement the method as described in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Upgrading method and system of arm64 architecture virtualization system, terminal and storage medium

    CN113703805A