WO2012163093A1 - 软件升级系统及方法 - Google Patents

软件升级系统及方法 Download PDF

Info

Publication number
WO2012163093A1
WO2012163093A1 PCT/CN2012/070211 CN2012070211W WO2012163093A1 WO 2012163093 A1 WO2012163093 A1 WO 2012163093A1 CN 2012070211 W CN2012070211 W CN 2012070211W WO 2012163093 A1 WO2012163093 A1 WO 2012163093A1
Authority
WO
WIPO (PCT)
Prior art keywords
upgrade
cloud computing
software
computing device
software version
Prior art date
Application number
PCT/CN2012/070211
Other languages
English (en)
French (fr)
Inventor
张纪伟
沈蓓洁
Original Assignee
南京中兴新软件有限责任公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 南京中兴新软件有限责任公司 filed Critical 南京中兴新软件有限责任公司
Publication of WO2012163093A1 publication Critical patent/WO2012163093A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Definitions

  • the present invention relates to the field of communications, and in particular to a software upgrade system and method.
  • cloud computing products have been gradually applied in the field of business products.
  • the essence of cloud computing is a distributed computing system in which a plurality of devices work together to complete complex computing tasks.
  • the equipment in a cloud computing system is generally an undetermined number, and it varies at any time according to the size of the traffic.
  • the traditional software automatic upgrade method generally sets up a software version server.
  • the software version management program of each terminal device actively queries the software version server for the latest software version information on the server at the time of timing or power-on.
  • the software version management program in the device downloads the software from the software version server through FTP (File Transfer Protocol) or HTTP (Hypertext Transfer Protocol). After the download is completed, the currently running software is automatically updated or Force the running software to exit, prompting the user to manually install the new version and complete the software version upgrade.
  • FTP File Transfer Protocol
  • HTTP Hypertext Transfer Protocol
  • a software upgrade system including: a device manager, a device software version server, a cloud computing device, wherein the device manager is configured to manage a cloud computing device, and is a device software version server Providing the full amount of information of the device of the cloud computing device; the device software version server is configured to divide the cloud computing device into a predetermined number of batches according to the full amount of information of the cloud computing device provided by the device manager, and sequentially drive the cloud computing device to perform software upgrade; The cloud computing device is configured to complete the software upgrade of the device under the driver of the device software version server.
  • the device software version server includes: an information requesting module, configured to: after the device software version server is started, initiate a device full information request to the device manager, and receive the device full amount information of the cloud computing device fed back by the device manager; the batch dividing module, The method is configured to divide the cloud computing device into a predetermined number of batches according to the device full amount information of the cloud computing device; the state changing module is configured to send a version upgrade subscription message to the device manager, and the driver The device manager sets the cloud computing device in the current upgrade batch to the version upgrade state; the update initiating module is configured to initiate a mandatory software upgrade request to the cloud computing device in the current upgrade batch, where the upgrade request includes at least the following Information of one: device software version server IP address, FTP port number, FTP user name and password, version file location, number of version files, version file name, version description file, batch number; result collection module, set to receive An upgrade completion message or an upgrade failure message sent by the cloud computing device in the current upgrade batch, and an upgrade status change is sent to the device manager after receiving an
  • the device manager sets the successfully upgraded cloud computing device in the current upgrade batch to the upgrade successful, idle available state, and triggers the state change module, and the update initiating module starts the next batch of software upgrade.
  • the device manager includes: a registration response module, configured to respond to the registration request of the cloud computing device, and the cloud computing device is included in the management, wherein the registration request includes at least one of the following information: the type of the cloud computing device, the machine name, The IP address, the port number, and the operating system type;
  • the heartbeat sending module is configured to send a heartbeat synchronization message to the cloud computing device under the management of the device manager, and receive a response message of the heartbeat synchronization message;
  • the information providing module is configured to respond to the device software
  • the device full information request initiated by the version server sends the device full amount information of the cloud computing device to the device software version server;
  • the active providing module is configured to actively synchronize the changed device full amount information to the device software version server when the device full amount information changes;
  • the state change module
  • Computing device to upgrade is successful, the available idle state; task assignment module, configured to calculate the upgrade is successful, the idle state is available for distribution cloud computing task device, the device does not assign computing tasks to upgrade the subscription state in the version of the cloud.
  • the cloud computing device includes: an upgrade judging module, configured to determine whether the device needs to be upgraded according to a mandatory software upgrade request initiated by the device software version server; and the software download module is set to be a software upgrade when the device needs to perform software upgrade.
  • the device manager consists of two main machines.
  • a software upgrade method including: a device manager providing device device full amount information of a cloud computing device for a device software version server; and a device software version server according to a cloud computing device provided by the device manager
  • the full amount of information of the device divides the cloud computing device into a predetermined number of batches, which in turn drives The cloud computing device performs software upgrade; the cloud computing device is driven by the device software version server to complete the software upgrade of the device.
  • the device manager provides the device software version server with the full amount of information of the cloud computing device.
  • the device manager responds to the registration request of the cloud computing device, and the cloud computing device is included in the management, where the registration request includes at least one of the following information: The type of the cloud computing device, the machine name, the IP address, the port number, and the operating system type; the device manager sends a heartbeat synchronization message to the cloud computing device under the management of the device manager, and receives a response message of the heartbeat synchronization message;
  • the device software version server initiates a device full information request to the device manager;
  • the device manager sends the device full amount information of the cloud computing device to the device software version server in response to the device full amount information request initiated by the device software version server;
  • the manager actively synchronizes the changed device full amount information to the device software version server.
  • the device software version server divides the cloud computing device into a predetermined number of batches according to the device full amount information of the cloud computing device, and sequentially drives the cloud computing device to perform software upgrade, including: the device software version server sets the cloud computing device according to the device full amount information of the cloud computing device.
  • the device software version server sends a version upgrade subscription message to the device manager; the device manager sets the cloud computing device in the current upgrade batch to a version upgrade according to the version upgrade subscription message sent by the device software version server a state, the computing task is no longer assigned to the cloud computing device in the version upgrade reservation state; the device software version server initiates a mandatory software upgrade request to the cloud computing device in the current upgrade batch, where the upgrade request includes at least one of the following information : IP address of the device software version server, FTP port number, FTP user name and password, version file location, number of version files, version file name, release notes file, batch number; device software version server receives current upgrade The upgrade completion message or the upgrade failure message sent by the cloud computing device in the batch, after receiving the upgrade completion message or the upgrade failure message sent by all the cloud computing devices in the current upgrade batch, sending an upgrade status change message to the device manager, And start the next batch of software upgrades; the device manager sets the upgraded successful cloud computing device in the current upgrade batch to the upgrade successful and idle
  • the cloud computing device in the idle available state allocates a computing task.
  • the cloud computing device is powered by the device software version server, and the software upgrade of the device is completed.
  • the cloud computing device determines whether the device needs to be upgraded according to the mandatory software upgrade request initiated by the server software version server.
  • the cloud computing device downloads the new software version file from the device software version server; the cloud computing device composes and calls the upgrade script, replaces the current software version file of the device with the new software version file, and restarts the software; the cloud computing device
  • the device sends an upgrade completion message to the software version server.
  • an upgrade failure message is sent to the software version server.
  • the device manager consists of two main machines.
  • the cloud computing device is batch-divided by the device software version server according to the full amount of information of the cloud computing device provided by the device manager, and the software upgrade program is sequentially performed on the cloud computing device, thereby solving the existing software upgrade manner.
  • the problem of cloud computing system software upgrade requirements cannot be met, and thus the software upgrade does not affect the computing power and business operation of the entire cloud computing system.
  • FIG. 1 is a structural block diagram of a software upgrade system according to an embodiment of the present invention
  • FIG. 2 is a structural block diagram of a software upgrade system according to a preferred embodiment of the present invention
  • FIG. 3 is a software upgrade system according to an example of the present invention. Schematic diagram of a cloud computing system software upgrade
  • FIG. 4 is a flow chart of a software upgrade method according to an embodiment of the present invention.
  • a software upgrade system includes: a device manager (device master) 12, a device software version server 14, and a cloud computing device 16, wherein the device manager 12 is connected to the device software version server.
  • each cloud computing device 16 configured to manage the cloud computing device 16, and provide the device software version server 14 with device full amount information of the cloud computing device 16; the device software version server 14, connected to the device manager 12 and each cloud computing device 16.
  • the cloud computing device 16 is configured to divide the cloud computing device 16 into a predetermined number of batches according to the device full amount information of the cloud computing device 16 provided by the device manager 12, and sequentially drives the cloud computing device 16 to perform software upgrade; the cloud computing device 16 is connected to the device.
  • the manager 12 and the device software version server 14 are configured to complete the software upgrade of the device under the driving of the device software version server 14.
  • the software upgrade system When performing the software upgrade, the software upgrade system first obtains the full amount of information of all the cloud computing devices 16 in the system at the beginning of the software upgrade, accurately determines the device to be upgraded by the software, and prevents frequent changes in the number of devices to upgrade the software. Secondly, when the software upgrade of the cloud computing device 16 is not performed simultaneously, but in an orderly batch, the device software version server 14 will filter the cloud computing device 16 according to the device full amount information of the cloud computing device 16. It is divided into several batches, and then the cloud computing devices 16 in each batch are upgraded in sequence, so as not to affect the computing power of the entire cloud computing system and the currently carried services, and satisfy the software upgrade in the cloud computing system. special requirements. In the specific implementation process, the division of batches can be determined according to different situations.
  • the device software version server 14 may further include: an information requesting module 140, connected to the device manager 12, configured to initiate the device full amount information to the device manager 12 after the device software version server 14 is started. Requesting, and receiving device full amount information of the cloud computing device 16 fed back by the device manager 12; the batch dividing module 142 is coupled to the information requesting module 140, and configured to divide the cloud computing device 16 into based on the device full amount information of the cloud computing device 16 A predetermined number of batches; a status change module 144, coupled to the batch partitioning module 142 and the device manager 12, configured to send a version upgrade subscription message to the device manager 12, the drive device manager 12 to cloud the current upgrade batch
  • the computing device 16 is configured to be in a version upgrade state; the update initiating module 146 is coupled to the state change module 144 and the respective cloud computing devices 16 and configured to initiate a mandatory software upgrade request to the cloud computing device 16 in the current upgrade batch, wherein the upgrade request
  • the information may include at least one of the following: IP of the device software
  • the manager 12 sends an upgrade status change message, and the drive device manager 12 sets the upgraded cloud computing device 16 in the current upgrade batch to the upgrade successful, idle available state, and triggers the state change module 144, the update initiation module 146 to begin the next Batch software upgrades.
  • the device software version server 14 is a software version server in the cloud computing system, and stores different version files and version description files of the device software, and plays a central role in the software update process.
  • the device manager 12 initiates a link to the device manager 12, and after the link is successfully established, Initiating a device full amount information request UDP (User Datagram Protocol) message to the device manager 12, the device manager 12 feeds back the device full amount information managed by the device to the device software version server 14, and the device software version server 14 The information is saved in the unit's internal memory.
  • UDP User Datagram Protocol
  • the device software version server 14 divides the software upgrade work of all the cloud computing devices 16 in the cloud computing system in several batches. The device software version server 14 first selects the first batch of cloud computing devices 16 and sends a version upgrade reservation message to the device server 12.
  • the device server 12 After receiving the message, the device server 12 sets the state of the first batch of cloud computing devices 16 to the version upgrade state. . Subsequently, the device software version server 14 initiates a mandatory software upgrade request to each of the cloud computing devices 16 in the batch device, and the upgrade request includes at least one of the following information related to the software version upgrade (selected according to specific conditions):
  • the software version server 14 has an IP address, an FTP port number, an FTP user name, a password, a version file location, a version file number, a version file name, a version description file, a batch number, and the like.
  • an upgrade failure message is returned to the device software version server 14, and the device software version server 14 receives the message.
  • the corresponding status of the device in the device software version server 14 is updated.
  • the device software version server 14 initiates an upgrade status change UDP message to the device server 12, and the device server 12 drives the system.
  • the status of the successfully upgraded device in this batch of devices is changed to the upgrade successful, idle available state, and the software upgrade process of the next batch of devices is triggered.
  • the device that failed to upgrade in this batch will be upgraded again with the upgrade process of the next batch due to its status or version upgrade status.
  • the device manager 12 may further include: a registration response module 1202, coupled to the cloud computing device 16, configured to respond to the registration request of the cloud computing device 16, to incorporate the cloud computing device 16 into management, wherein
  • the registration request may include at least one of the following: a type, a machine name, an IP address, a port number, and an operating system type of the cloud computing device 16; a heartbeat sending module 1204, connected to each cloud computing device 16, configured to The cloud computing device 16 under the management of the device manager 12 sends a heartbeat synchronization message and receives a response message of the heartbeat synchronization message.
  • the information providing module 1206 is connected to the device software version server 14 and is configured to respond to the device initiated by the device software version server 14.
  • the full amount of information request sends the device full amount information of the cloud computing device 16 to the device software version server 14;
  • the active providing module 1208 is connected to the device software version server 14 and is configured to actively synchronize to the device software version server 14 when the full amount of information of the device changes.
  • the change module 1210 is connected to the device software version server 14 and configured to set the corresponding cloud computing device 16 to the version upgrade state according to the version upgrade reservation message sent by the device software version server 14, according to The upgrade status change message sent by the device software version server 14 sets the corresponding cloud computing device 16 to the upgrade successful and idle available state;
  • the task assignment module 1212 is connected to each cloud computing device 16 and is set to be in the upgrade successful and idle available state.
  • the cloud computing device 16 allocates computing tasks and does not assign computing tasks to the cloud computing device 16 that is in the version upgrade subscription state.
  • the device manager 12 is mainly responsible for the management and monitoring of all devices in the cloud computing system, and plays an auxiliary role in the software upgrade process.
  • the device when a cloud computing device 16 is added to the cloud computing system, the device actively initiates a connection to the device manager 12, and registers the device type, machine name, and IP address with the device manager 12, After the device manager 12 receives the information of the device, the device manager 12 receives the information of the device. While in operation, the device manager 12 and each device it manages periodically send a heartbeat message to the other party, and after receiving the heartbeat message, the other party returns a response message.
  • device manager 12 can accurately determine cloud computing device 16 that is currently under its management in real time.
  • the device manager 12 sends the device full amount information in response to the device full amount information request of the device software version server 14, and actively synchronizes the device full amount information to the device software version server 14 when the device full amount information changes, and always maintains the device software version server.
  • the full amount of information in the device in 14 is the latest and most accurate, so that the device to which the upgrade is directed is accurately confirmed when the software upgrade is initiated.
  • a version upgrade reservation message is sent to the device manager 12, and after receiving the message, the device manager 12 will send the batch device.
  • the device is in the idle state, the device is in the version upgrade state. If the device is in the busy state, the device status is changed to the version upgrade state in time after the current computing task is completed.
  • Device Manager 12 no longer assigns computing tasks to devices in the version upgrade state. When the new computing task comes, the device manager 12 will only schedule computing tasks for the devices that have been successfully upgraded, thereby avoiding the final calculation result error caused by the difference in software function of different software versions.
  • the device software version server 14 will then initiate the next batch of device software upgrade process and continue to complete the software version upgrade of the remaining devices. Preferably, as shown in FIG.
  • the cloud computing device 16 may further include: an upgrade determining module 162, connected to the device software version server 14, configured to determine whether the device is required according to a mandatory software upgrade request initiated by the device software version server 14. Performing a software upgrade; the software downloading module 164 is connected to the upgrade judging module 162 and the device software version server 14 and configured to download a new software version file from the device software version server 14 when the device needs to perform software upgrade; 166, connected to the software download module 164, configured to compose and invoke an upgrade script, replace the current software version file of the device with the new software version file, and restart the software; The result feedback module 168 is connected to the upgrade implementation module 166 and the device software version server 14 and is configured to send an upgrade completion message to the software version server 14 after the device does not need to perform software upgrade or software upgrade successfully.
  • an upgrade determining module 162 connected to the device software version server 14, configured to determine whether the device is required according to a mandatory software upgrade request initiated by the device software version server 14.
  • the software downloading module 164 is connected to the upgrade judging
  • the cloud computing device 16 is the main body of the software upgrade, and includes a plurality of cloud computing devices 16 in the cloud computing system. The structure is the same only from the perspective of software upgrade.
  • the cloud computing device 16 After receiving the mandatory software upgrade request initiated by the device software version server 14, the cloud computing device 16 checks whether the local software version needs to be upgraded. If the upgrade is required, the cloud computing device 16 calls the local FTP download program. Download the new software version file from the device software version server 14 to the local directory through FTP. After the download is successful, the version upgrade program in the cloud computing device 16 composes and calls the upgrade script according to the version upgrade information to complete the device software. Upgrade of new and old version files, software restarts, etc.
  • the device manager 12 is composed of two-master active and standby. In the entire software upgrade system, the device manager 12 can be composed of two machines, only two machines, and its own software version upgrade does not adopt the above upgrade mode.
  • the cloud computing device is divided into
  • FIG. 3 is a schematic flowchart of a software upgrade system for upgrading a cloud computing system according to an example of the present invention.
  • the method includes the following steps: Step S302: After each device in the cloud computing system is started, actively to the device master (ie, the device) The manager initiates a TCP (Transfer Control Protocol) connection, and initiates a TCP registration message to the device master after successfully connecting to the master link of the device.
  • Step S304 After the device master saves the registration information such as the IP, port, and machine name of the device in its own memory, the device returns a successfully registered TCP response message to the device in the cloud computing system, and the device is included in the device master management.
  • TCP Transfer Control Protocol
  • Step S306 The device timing in the cloud computing system and the device master initiate a heartbeat synchronization message, and the receiver returns a response message in time.
  • the device in the cloud computing system considers that there is a problem with the connection link. After the active link is broken, the device initiates a link connection to the device master and registers its own device with the device master. If the heartbeat message initiated by the device master does not receive a response from the device in the cloud computing system, the device master considers that the device is out of management and deletes the device from the device information it maintains.
  • Step S308 After the device version server is started, the device automatically sends the device full amount information to obtain the UDP message.
  • Step S310 After receiving the message, the device master returns the full amount of information of the device managed by the device to the device version upgrade server, and the device version upgrade server saves the full amount of the device information in the local device.
  • Step S312 When the device full amount information in the device master changes, the device master sends the device full amount information synchronization UDP message to the device version server, and synchronizes the current latest device full amount information to the device version server, and the device version server updates the device in time. Device Information.
  • Step S314 After the device version server discovers a new version of the device software, the version server selects N/2 cloud computing devices as the first batch of software upgrade devices, and sends a version upgrade reservation UDP message to the device master, where the message includes these Upgrade the device's IP, request software upgrade status, request time, batch number, and other field information.
  • Step S316 After receiving the message, the device master checks the status of the batch of devices in the system, and reserves the status of the batch of devices as a version upgrade state. If the devices are currently in an idle state, the devices are directly set to the version upgrade state; In the busy state, after the current computing task is completed, the device master changes the status of these devices to the version upgrade state in time.
  • Step S318 The device version server sends a forced software upgrade UDP message to each device in the batch device, where the message includes the IP address of the device version server, the FTP port number, the FTP user name, the password, the version file location, the version file name, and the version. Information such as the number of files, release notes file, batch number, request upgrade time, and more.
  • Step S320 After receiving the software upgraded UDP message sent by the device version server, each device compares the version number in the message with the local software version number.
  • Step S322 If the device software version needs to be upgraded, the local FTP download program is invoked, and the software version file FTP on the software server is downloaded to the local directory.
  • Step S324 The device calls the version upgrade program of the machine, composes and calls the upgrade script, and completes the software version upgrade work.
  • Step S326 After the device software is upgraded, the device sends an upgrade complete UDP message to the device version server.
  • Step S330 All the devices in the batch have an upgrade result, and the device version service sends a status change UDP message of the batch device to the device master, requesting to change the status of the batch device in the device master, and the message includes the IP address of each device, and the upgrade is performed. Field information such as status, batch number, etc.
  • Step S332 After receiving the UDP message, the device master changes the status of the batch device. For a software upgrade successful device, change to the idle available state; for the upgrade failed device, it is still the version upgrade state.
  • the device master allocates all the new computing tasks to the devices that have been successfully upgraded by the software.
  • the devices that are not upgraded and are in the upgrade state will no longer be assigned computing tasks, so as to avoid the final calculation result error caused by the difference in software functions of different software versions.
  • the device version server will select the remaining unupgraded devices and upgrade failed devices as the second batch of devices, and repeat the upgrade process. After the second batch of devices is successfully upgraded, the version server will generate a software upgrade report. For the devices that fail to be upgraded, the maintenance personnel are reminded to manually intervene.
  • 4 is a flow chart of a software upgrade method in accordance with an embodiment of the present invention. As shown in FIG.
  • the software upgrade method includes: Step S402: The device manager (device master) provides the device full amount information of the cloud computing device for the device software version server; Step S404, the device software version server according to the device The device full amount information of the cloud computing device provided by the manager divides the cloud computing device into a predetermined number of batches, and sequentially drives the cloud computing device to perform software upgrade; in step S406, the cloud computing device completes the device under the driving of the device software version server.
  • the device software version server first obtains the full amount of information of all the cloud computing devices in the system when the software upgrade starts, and accurately determines the device that the software upgrade is facing to prevent the device from being upgraded.
  • the software upgrades to cloud computing devices are not performed at the same time, but in batches, the device software version server will be based on the full amount of information of the cloud computing devices.
  • the cloud computing device is divided into several batches, and then the cloud computing devices in each batch are upgraded in sequence, so that the computing power of the entire cloud computing system and the currently carried services are not affected, and the cloud computing system is satisfied.
  • Special requirements for software upgrades In the specific implementation process, the division of batches can be determined according to different situations.
  • step S402 may further include the following processing: (1) The device manager is configured to respond to the registration request of the cloud computing device, and the cloud computing device is included in the management, where the registration request may include at least one of the following information: the type, the machine name, the IP address, and the port of the cloud computing device. Number, operating system type;
  • the device manager sends a heartbeat synchronization message to the cloud computing device under its management, and receives a response message of the heartbeat synchronization message;
  • the device software version server initiates the device full information request to the device manager
  • step S404 may further include the following processing:
  • the device software version server divides the cloud computing device into a predetermined number of batches according to the device full amount information of the cloud computing device;
  • the device software version server sends a version upgrade reservation message to the device manager
  • the device manager sets the cloud computing device in the current upgrade batch to the version upgrade state according to the version upgrade reservation message sent by the device software version server, and no longer allocates the computing task to the cloud computing device in the version upgrade reservation state;
  • the device software version server initiates a mandatory software upgrade request to the cloud computing device in the current upgrade batch, wherein the upgrade request may include at least one of the following information: an IP address of the device software version server, an FTP port number, and an FTP User name and password, version file location, number of version files, version file name, release notes file, batch number;
  • step S406 may further include the following processing:
  • the cloud computing device determines whether the device needs to be upgraded according to the mandatory software upgrade request initiated by the server software version server;
  • the cloud computing device downloads a new software version file from the device software version server
  • the cloud computing device is composed and invokes the upgrade script, replaces the current software version file of the device with the new software version file, and restarts the software;
  • the cloud computing device After the software device does not need to perform software upgrade or software upgrade, the cloud computing device sends an upgrade completion message to the software version server, and sends an upgrade failure message to the software version server after the software upgrade fails.
  • each cloud computing device determines whether the device needs to be upgraded, performs subsequent operations according to different judgment results, and finally returns the result to the device software. Version server.
  • the device manager is configured by a dual-machine master. It is even more sinful that the two-machine master and backup constitute the device manager. The above preferred embodiments will be described in detail below with reference to examples.
  • the cloud computing device is upgraded in two batches.
  • the software upgrade in the cloud computing system may include the following steps: Step 1: The devices in the cloud computing system are started afterwards.
  • the device master initiates a registration message. After the registration is successful, the device is included in the device master management.
  • each device and the device master periodically send heartbeat messages to confirm the management and management relationship between the two.
  • the device master considers that the device is out of management and deletes the device information from its own device information.
  • the device master sends a full information acquisition message to the device master. Takes information about all devices currently managed by the device master.
  • Step 2 The device version server program periodically reads the version information file in the local directory. When a new version information description file is found, it is determined that a new version of the device software is available. After the new software version is found, the device version server completes the device software upgrade in two batches. First, select the N/2 cloud computing device as the first batch upgrade device, and send the version upgrade reservation message to the device master. The device master receives this. After the message, change the status of these devices in the device information table to the upgrade reservation status. If these devices are currently in the idle state, they are directly set to the upgrade reservation status.
  • the device The Master changes the status of these devices to the upgrade appointment status in a timely manner. For devices that are in the upgrade subscription state, the device master will no longer assign computing tasks to it.
  • the device version server sends a status change message to the device master. After receiving the message, the device master corrects the status of the devices in the device information table to the upgrade success status and the idle availability status. After that, the computing task can continue to be assigned; at the same time, the remaining devices are reserved for the version upgrade state.
  • the device master will only arrange computing tasks for the devices that have been upgraded successfully, avoiding the final calculation result error caused by the difference of the software functions of different software versions.
  • Step 3 After receiving the response message from the device master sending the version upgrade reservation message, the device version server sends a forced upgrade message to the batch device, where the message includes the IP address, port number, FTP username and password, and version file of the device version server. Information such as location, version file number, version file name, release notes file, batch number, and more.
  • the cloud computing device After receiving the software mandatory upgrade message, the cloud computing device checks whether the software version number in the message is consistent with the local software version number. If the software version is consistent, the response to the response message is successfully upgraded. If not, the response message is agreed to be upgraded. If the versions are inconsistent, the cloud computing device calls the native FTP program, and the new software version file (version file and release notes file) is downloaded from the device version server to the local directory.
  • the version in the cloud computing device is downloaded. Upgrade the program composition, call the upgrade script, and complete the software version upgrade of the device.
  • the cloud computing device sends an upgrade complete message to the device version server.
  • the device version server After receiving the upgrade result of all the devices in the batch, the device version server sends a status change message to the device master. After receiving the response message from the device master, it continues to send the version upgrade reservation message of the next batch to the device master. The device that failed this upgrade will be upgraded again with the next batch of devices.
  • the upgrade does not affect the computing power and business operations of the entire cloud computing system, and can cope with the irregular increase and decrease of devices in the cloud computing system. Moreover, no manual intervention is required, which is simple, convenient and reliable, and greatly reduces the workload of maintenance personnel software upgrades.
  • modules or steps of the present invention can be implemented by a general-purpose computing device, which can be concentrated on a single computing device or distributed over a network composed of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device, such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种软件升级系统及方法,上述系统包括:设备管理器、设备软件版本服务器、云计算设备,其中,设备管理器,设置为管理云计算设备,并为设备软件版本服务器提供云计算设备的设备全量信息;设备软件版本服务器,设置为根据设备管理器提供的云计算设备的设备全量信息将云计算设备划分为预定数量个批次,依次驱动云计算设备进行软件升级;云计算设备,设置为在设备软件版本服务器的驱动下,完成本设备的软件升级。通过本发明提供的技术方案,解决了现有软件升级方式无法满足云计算系统软件升级需求的问题,进而达到了使软件升级不会影响整个云计算系统的计算能力和业务运行的效果。

Description

软件升级系统及方法 技术领域 本发明涉及通信领域, 具体而言, 涉及一种软件升级系统及方法。 背景技术 目前, 云计算产品已经在业务产品领域逐步应用了, 云计算的本质就是由众多设 备协同组织工作, 共同完成复杂庞大计算任务的一个分布式计算系统。 云计算系统中 的设备一般是未定数目的, 而且是根据业务量大小随时增减变化的。 目前传统的软件 自动升级方式, 一般是搭建软件版本服务器, 各终端设备中软件版本管理程序定时或 开机时主动向软件版本服务器查询服务器上最新软件版本信息, 当服务器上的软件版 本有更新, 则设备中的软件版本管理程序通过 FTP (File Transfer Protocol, 文件传输 协议) 或 HTTP (Hypertext Transfer Protocol, 超文本传输协议) 方式从软件版本服务 器上下载软件, 下载完毕后, 自动更新当前运行中软件或者将运行中软件强制退出, 提示用户手动安装新版本, 完成软件版本升级。 在业务产品的云计算系统中, 系统中 的设备数目庞大, 并且设备数目经常在变化, 每个设备都在从事复杂运算中的一个子 计算任务, 正在运行中的业务和计算都很关键, 不可能中断业务运行或要求用户手动 参与, 常用的软件自动升级方式已无法适应。 发明内容 本发明提供了一种软件升级系统及方法, 以至少解决上述问题。 根据本发明的一个方面, 提供了一种软件升级系统, 其包括: 设备管理器、 设备 软件版本服务器、 云计算设备, 其中, 设备管理器, 设置为管理云计算设备, 并为设 备软件版本服务器提供云计算设备的设备全量信息; 设备软件版本服务器, 设置为根 据设备管理器提供的云计算设备的设备全量信息将云计算设备划分为预定数量个批 次, 依次驱动云计算设备进行软件升级; 云计算设备, 设置为在设备软件版本服务器 的驱动下, 完成本设备的软件升级。 设备软件版本服务器包括: 信息请求模块, 设置为在设备软件版本服务器启动后, 向设备管理器发起设备全量信息请求, 并接收设备管理器反馈的云计算设备的设备全 量信息; 批次划分模块, 设置为根据云计算设备的设备全量信息将云计算设备划分为 预定数量个批次; 状态更改模块, 设置为向设备管理器发送版本升级预约消息, 驱动 设备管理器将当前升级批次中的云计算设备设置为版本升级状态; 更新发起模块, 设 置为向当前升级批次中的云计算设备发起强制软件升级请求, 其中, 升级请求中包括 以下至少之一的信息: 设备软件版本服务器的 IP地址、 FTP端口号、 FTP用户名及密 码、 版本文件位置、 版本文件个数、 版本文件名、 版本说明文件、 批次号; 结果收集 模块,设置为接收当前升级批次中的云计算设备发送的升级完成消息或升级失败消息, 当接收到当前升级批次中所有云计算设备发送的升级完成消息或升级失败消息后, 向 设备管理器发送升级状态更改消息, 驱动设备管理器将当前升级批次中升级成功的云 计算设备设置为升级成功、 空闲可用状态, 并触发状态更改模块、 更新发起模块开始 下一批次的软件升级。 设备管理器包括: 注册响应模块, 设置为响应云计算设备的注册请求, 将该云计 算设备纳入管理, 其中, 注册请求中包括以下至少之一的信息: 该云计算设备的种类、 机器名、 IP地址、 端口号、 操作系统类型; 心跳发送模块, 设置为向处于设备管理器 管理下的云计算设备发送心跳同步消息, 并接收心跳同步消息的响应消息; 信息提供 模块, 设置为响应设备软件版本服务器发起的设备全量信息请求向设备软件版本服务 器发送云计算设备的设备全量信息; 主动提供模块, 设置为在设备全量信息发生改变 时, 主动向设备软件版本服务器同步改变后的设备全量信息; 状态改变模块, 设置为 根据设备软件版本服务器发送的版本升级预约消息将对应的云计算设备设置为版本升 级状态, 根据设备软件版本服务器发送的升级状态更改消息将对应的云计算设备设置 为升级成功、 空闲可用状态; 任务分配模块, 设置为向处于升级成功、 空闲可用状态 的云计算设备分配计算任务,不向处于版本升级预约状态的云计算设备分配计算任务。 云计算设备包括: 升级判断模块, 设置为根据设备软件版本服务器发起的强制软 件升级请求, 判断本设备是否需要进行软件升级; 软件下载模块, 设置为在本设备需 要进行软件升级时, 从设备软件版本服务器上下载新的软件版本文件; 升级实施模块, 设置为组成并调用升级脚本,使用新的软件版本文件更换本设备当前的软件版本文件, 并重启软件; 结果反馈模块, 设置为在本设备不需要进行软件升级或软件升级成功后, 向软件版本服务器发送升级完成消息, 在软件升级失败后, 向软件版本服务器发送升 级失败消息。 设备管理器由双机主备构成。 根据本发明的另一方面, 提供了一种软件升级方法, 其包括: 设备管理器为设备 软件版本服务器提供云计算设备的设备全量信息; 设备软件版本服务器根据设备管理 器提供的云计算设备的设备全量信息将云计算设备划分为预定数量个批次, 依次驱动 云计算设备进行软件升级; 云计算设备在设备软件版本服务器的驱动下, 完成本设备 的软件升级。 设备管理器为设备软件版本服务器提供云计算设备的设备全量信息包括: 设备管 理器响应云计算设备的注册请求, 将该云计算设备纳入管理, 其中, 注册请求中包括 以下至少之一的信息: 该云计算设备的种类、 机器名、 IP地址、 端口号、 操作系统类 型; 设备管理器向处于设备管理器管理下的云计算设备发送心跳同步消息, 并接收心 跳同步消息的响应消息; 在设备软件版本服务器启动后, 设备软件版本服务器向设备 管理器发起设备全量信息请求; 设备管理器响应于设备软件版本服务器发起的设备全 量信息请求向设备软件版本服务器发送云计算设备的设备全量信息; 设备管理器在设 备全量信息发生改变时, 主动向设备软件版本服务器同步改变后的设备全量信息。 设备软件版本服务器根据云计算设备的设备全量信息将云计算设备划分为预定数 量个批次, 依次驱动云计算设备进行软件升级包括: 设备软件版本服务器根据云计算 设备的设备全量信息将云计算设备划分为预定数量个批次; 设备软件版本服务器向设 备管理器发送版本升级预约消息; 设备管理器根据设备软件版本服务器发送的版本升 级预约消息将当前升级批次中的云计算设备设置为版本升级状态, 不再向处于版本升 级预约状态的云计算设备分配计算任务; 设备软件版本服务器向当前升级批次中的云 计算设备发起强制软件升级请求, 其中, 升级请求中包括以下至少之一的信息: 设备 软件版本服务器的 IP地址、 FTP端口号、 FTP用户名及密码、 版本文件位置、 版本文 件个数、 版本文件名、 版本说明文件、 批次号; 设备软件版本服务器接收当前升级批 次中的云计算设备发送的升级完成消息或升级失败消息, 当接收到当前升级批次中所 有云计算设备发送的升级完成消息或升级失败消息后, 向设备管理器发送升级状态更 改消息, 并开始下一批次的软件升级; 设备管理器根据设备软件版本服务器发送的升 级状态更改消息将当前升级批次中升级成功的云计算设备设置为升级成功、 空闲可用 状态, 开始向处于升级成功、 空闲可用状态的云计算设备分配计算任务。 云计算设备在设备软件版本服务器的驱动下, 完成本设备的软件升级包括: 云计 算设备根据设备软件版本服务器发起的强制软件升级请求, 判断本设备是否需要进行 软件升级; 在本设备需要进行软件升级时, 云计算设备从设备软件版本服务器上下载 新的软件版本文件; 云计算设备组成并调用升级脚本, 使用新的软件版本文件更换本 设备当前的软件版本文件, 并重启软件; 云计算设备在本设备不需要进行软件升级或 软件升级成功后, 向软件版本服务器发送升级完成消息, 在软件升级失败后, 向软件 版本服务器发送升级失败消息。 设备管理器由双机主备构成。 通过本发明, 采用由设备软件版本服务器根据设备管理器提供的云计算设备的设 备全量信息对云计算设备进行批次划分, 依次对云计算设备进行软件升级的方案, 解 决了现有软件升级方式无法满足云计算系统软件升级需求的问题, 进而达到了使软件 升级不会影响整个云计算系统的计算能力和业务运行的效果。 附图说明 此处所说明的附图用来提供对本发明的进一步理解, 构成本申请的一部分, 本发 明的示意性实施例及其说明用于解释本发明, 并不构成对本发明的不当限定。 在附图 中: 图 1是根据本发明实施例的软件升级系统的结构框图; 图 2是根据本发明优选实施例的软件升级系统的结构框图; 图 3是根据本发明实例的软件升级系统进行云计算系统软件升级的流程示意图; 图 4是根据本发明实施例的软件升级方法的流程图。 具体实施方式 下文中将参考附图并结合实施例来详细说明本发明。 需要说明的是, 在不冲突的 情况下, 本申请中的实施例及实施例中的特征可以相互组合。 图 1是根据本发明实施例的软件升级系统的结构框图。 如图 1所示, 根据本发明 实施例的软件升级系统包括: 设备管理器(设备 Master) 12、设备软件版本服务器 14、 云计算设备 16, 其中, 设备管理器 12, 连接至设备软件版本服务器 14及各云计算设备 16, 设置为管理 云计算设备 16, 并为设备软件版本服务器 14提供云计算设备 16的设备全量信息; 设备软件版本服务器 14, 连接至设备管理器 12及各云计算设备 16, 设置为根据 设备管理器 12提供的云计算设备 16的设备全量信息将云计算设备 16划分为预定数量 个批次, 依次驱动云计算设备 16进行软件升级; 云计算设备 16, 连接至设备管理器 12及设备软件版本服务器 14, 设置为在设备 软件版本服务器 14的驱动下, 完成本设备的软件升级。 上述软件升级系统在进行软件升级时, 首先会获取软件升级开始时系统中所有云 计算设备 16的设备全量信息,准确确定本次软件升级面向的设备, 防止了设备数量的 经常性变动对软件升级的影响; 其次,在对云计算设备 16进行软件升级时并不是同时 进行的, 而是有次序分批的进行, 设备软件版本服务器 14会根据云计算设备 16的设 备全量信息将云计算设备 16划分为若干个批次,然后依次的对各个批次中的云计算设 备 16进行升级, 从而不会影响到整个云计算系统的计算能力和当前承载的业务,满足 了云计算系统中软件升级的特殊要求。 在具体实施过程中, 批次的划分可以根据不同 的情况确定。 优选地, 如图 2所示, 设备软件版本服务器 14可以进一步包括: 信息请求模块 140,连接至设备管理器 12, 设置为在设备软件版本服务器 14启动 后, 向设备管理器 12发起设备全量信息请求, 并接收设备管理器 12反馈的云计算设 备 16的设备全量信息; 批次划分模块 142, 连接至信息请求模块 140, 设置为根据云计算设备 16的设备 全量信息将云计算设备 16划分为预定数量个批次; 状态更改模块 144, 连接至批次划分模块 142及设备管理器 12, 设置为向设备管 理器 12发送版本升级预约消息, 驱动设备管理器 12将当前升级批次中的云计算设备 16设置为版本升级状态; 更新发起模块 146, 连接至状态更改模块 144及各云计算设备 16, 设置为向当前 升级批次中的云计算设备 16发起强制软件升级请求,其中, 升级请求中可以包括以下 至少之一的信息: 设备软件版本服务器 14的 IP地址、 FTP端口号、 FTP用户名及密 码、 版本文件位置、 版本文件个数、 版本文件名、 版本说明文件、 批次号; 结果收集模块 148,连接至各云计算设备 16及设备管理器 12, 设置为接收当前升 级批次中的云计算设备 16发送的升级完成消息或升级失败消息,当接收到当前升级批 次中所有云计算设备 16发送的升级完成消息或升级失败消息后, 向设备管理器 12发 送升级状态更改消息, 驱动设备管理器 12 将当前升级批次中升级成功的云计算设备 16设置为升级成功、 空闲可用状态, 并触发状态更改模块 144、 更新发起模块 146开 始下一批次的软件升级。 设备软件版本服务器 14是云计算系统中的软件版本服务器,存储了设备软件的不 同版本文件和版本说明文件, 在软件更新过程中所起到核心作用。 在上述系统中, 设 备软件版本服务器 14启动后, 会主动向设备管理器 12发起链接, 链接建立成功后, 向设备管理器 12发起设备全量信息请求 UDP (User Datagram Protocol,用户数据报协 议)消息, 设备管理器 12将自己管理的设备全量信息反馈给设备软件版本服务器 14, 设备软件版本服务器 14 将设备全量信息保存在本机内存中。 当设备软件版本服务器 14上放入最新设备软件版本文件后, 设备软件版本服务器 14分会分若干个批次完成 云计算系统中所有云计算设备 16的软件升级工作。 设备软件版本服务器 14先选择出 第一批云计算设备 16, 发送版本升级预约消息给设备服务器 12, 设备服务器 12收到 此消息后, 将第一批云计算设备 16的状态置为版本升级状态。 随后, 设备软件版本服 务器 14会向此批设备中每台云计算设备 16发起强制软件升级请求, 升级请求中含有 以下至少之一的软件版本升级需要的相关信息(根据具体情况进行选择): 设备软件版 本服务器 14的 IP地址, FTP端口号, FTP用户名、 密码、 版本文件位置,版本文件个 数、 版本文件名、 版本说明文件、 批次号等。 云计算设备 16软件版本升级完毕后, 升 级成功的会向设备软件版本服务器 14返回升级完成消息,升级失败的会向设备软件版 本服务器 14返回升级失败消息, 设备软件版本服务器 14收到这些消息后, 会更新设 备软件版本服务器 14中此设备相应的状态,待此批次所有设备都返回升级结果后, 设 备软件版本服务器 14会向设备服务器 12发起升级状态更改 UDP消息,驱动设备服务 器 12将系统中此批次设备中成功升级设备的状态更改为升级成功、空闲可用状态, 同 时触发下一批设备的软件升级流程。 此批次中升级失败的设备由于其状态还是版本升 级状态, 所以会随着下一批次的升级过程再次进行升级。 优选地, 如图 2所示, 设备管理器 12可以进一步包括: 注册响应模块 1202, 连接至云计算设备 16, 设置为响应云计算设备 16的注册请 求, 将该云计算设备 16纳入管理, 其中, 注册请求中可以包括以下至少之一的信息: 该云计算设备 16的种类、 机器名、 IP地址、 端口号、 操作系统类型; 心跳发送模块 1204, 连接至各云计算设备 16, 设置为向处于设备管理器 12管理 下的云计算设备 16发送心跳同步消息, 并接收心跳同步消息的响应消息; 信息提供模块 1206,连接至设备软件版本服务器 14, 设置为响应设备软件版本服 务器 14发起的设备全量信息请求向设备软件版本服务器 14发送云计算设备 16的设备 全量信息; 主动提供模块 1208,连接至设备软件版本服务器 14, 设置为在设备全量信息发生 改变时, 主动向设备软件版本服务器 14同步改变后的设备全量信息; 状态改变模块 1210,连接至设备软件版本服务器 14, 设置为根据设备软件版本服 务器 14发送的版本升级预约消息将对应的云计算设备 16设置为版本升级状态, 根据 设备软件版本服务器 14发送的升级状态更改消息将对应的云计算设备 16设置为升级 成功、 空闲可用状态; 任务分配模块 1212, 连接至各云计算设备 16, 设置为向处于升级成功、 空闲可用 状态的云计算设备 16分配计算任务, 不向处于版本升级预约状态的云计算设备 16分 配计算任务。 设备管理器 12主要负责云计算系统中所有设备的管理和监控工作,在软件升级过 程中起辅助作用。在上述系统中, 当新增一台云计算设备 16到云计算系统中时, 此设 备会主动向设备管理器 12发起连接, 向设备管理器 12注册本设备的种类、 机器名、 IP地址、 端口号、 操作系统类型等信息, 设备管理器 12收到此设备的信息后, 将此 设备纳入管理。在运行中时, 设备管理器 12和其管理的各个设备, 都定时向对方发送 心跳消息, 对方收到心跳消息后, 返回响应消息。 通过定时心跳, 可以判断出设备是 否运行正常。因此, 设备管理器 12可以实时准确的确定当前处于其管理下的云计算设 备 16。设备管理器 12除了响应设备软件版本服务器 14的设备全量信息请求给其发送 设备全量信息,在设备全量信息发生改变时还会主动向设备软件版本服务器 14同步设 备全量信息, 始终保持设备软件版本服务器 14中的设备全量信息为最新、 最准确的, 从而在软件升级发起时准确地确认升级所面向的设备。 在软件升级过程中, 设备软件 版本服务器 14对某个批次的设备进行升级时,会发送版本升级预约消息给设备管理器 12, 设备管理器 12收到此消息后, 会将该批次设备的状态置为版本升级状态, 如果设 备当前为空闲状态, 则直接置为版本升级状态, 如果设备处于忙碌状态, 则在当前计 算任务完成后, 将该设备状态及时更改为版本升级状态, 同时, 设备管理器 12不会再 向版本升级状态中设备安排分配计算任务了。新计算任务来临时, 设备管理器 12将仅 向已升级成功的设备安排计算任务, 从而避免了不同软件版本设备软件功能差异导致 的最终计算结果错误。 设备软件版本服务器 14随后将发起下一批设备软件升级流程, 继续完成剩余设备的软件版本升级。 优选地, 如图 2所示, 云计算设备 16可以进一步包括: 升级判断模块 162, 连接至设备软件版本服务器 14, 设置为根据设备软件版本服 务器 14发起的强制软件升级请求, 判断本设备是否需要进行软件升级; 软件下载模块 164, 连接至升级判断模块 162及设备软件版本服务器 14, 设置为 在本设备需要进行软件升级时, 从设备软件版本服务器 14上下载新的软件版本文件; 升级实施模块 166, 连接至软件下载模块 164, 设置为组成并调用升级脚本, 使用 所述新的软件版本文件更换本设备当前的软件版本文件, 并重启软件; 结果反馈模块 168, 连接至升级实施模块 166及设备软件版本服务器 14, 设置为 在本设备不需要进行软件升级或软件升级成功后,向软件版本服务器 14发送升级完成 消息, 在软件升级失败后, 向软件版本服务器 14发送升级失败消息。 云计算设备 16是软件升级的主体, 在云计算系统中包括众多的云计算设备 16, 仅从软件升级这一角度来看, 其结构都是相同的。在上述系统中, 云计算设备 16收到 设备软件版本服务器 14发起的强制软件升级请求后,会核对本机软件版本是否需要升 级, 如果需要升级, 云计算设备 16就会调用本机 FTP下载程序, 通过 FTP从设备软 件版本服务器 14上下载新的软件版本文件到本机目录, 下载成功后, 云计算设备 16 中的版本升级程序会根据版本升级信息, 组成并调用升级脚本, 完成本设备软件版本 文件的新旧更换, 软件重启等升级工作。 云计算设备 16软件版本升级完毕后, 会向设 备软件版本服务器 14返回升级完成消息。 优选地, 设备管理器 12是由双机主备构成的。 在整个软件升级系统中, 设备管理器 12可以由双机构成, 仅有两台机器, 其自身 的软件版本升级不采用上述的升级方式。 下面结合实例及图 3对上述优选实施进行详细说明, 本实例中将云计算设备分为
2个批次进行升级。 图 3是根据本发明实例的软件升级系统进行云计算系统软件升级 的流程示意图, 如图 3所示, 包括以下步骤: 步骤 S302: 云计算系统中各设备启动后, 主动向设备 Master (即设备管理器)发 起 TCP (Transfer Control Protocol, 传输控制协议连接), 与设备 Master链路连接成功 后, 向设备 Master发起 TCP注册消息。 步骤 S304: 设备 Master将此设备的 IP、 端口、 机器名等注册信息保存在自己的 内存中后, 向云计算系统中设备返回注册成功的 TCP 响应消息, 此设备则纳入设备 Master管理。 步骤 S306: 云计算系统中设备定时与设备 Master之间相互发起心跳同步消息,收 到方及时返回响应消息。 当云计算系统中设备发起的心跳消息未收到设备 Master的响 应时, 云计算系统中设备认为连接链路出现问题, 主动断链后重新向设备 Master发起 链路连接, 向设备 Master注册自己的设备情况; 当设备 Master发起的心跳消息未收到 云计算系统中设备的响应时, 设备 Master认为此设备已经脱离管理, 从自己维护的设 备信息中删除此设备。 步骤 S308: 设备版本服务器启动后, 主动向设备 Master发送设备全量信息获取 UDP消息。 步骤 S310:设备 Master收到消息后,将自己管理的设备全量信息返回给设备版本 升级服务器, 设备版本升级服务器将设备全量信息保存在本机中。 步骤 S312: 当设备 Master中的设备全量信息有变化时, 设备 Master向设备版本 服务器发送设备全量信息同步 UDP消息,将当前最新的设备全量信息同步给设备版本 服务器, 设备版本服务器及时更新本机内设备信息。 步骤 S314: 当设备版本服务器上发现设备软件新版本后, 版本服务器选择出 N/2 个云计算设备, 作为第一批次软件升级设备, 向设备 Master发送版本升级预约 UDP 消息, 消息中含有这些升级设备的 IP、 请求软件升级状态、 请求时间、 批次号等字段 信息。 步骤 S316: 设备 Master收到此消息后, 查看系统中这批设备状态, 预约这批设备 的状态为版本升级状态, 如果这些设备当前为空闲状态, 则直接置为版本升级状态; 当这些设备处于忙碌状态, 当前计算任务完成后, 设备 Master将这些设备状态及时更 改为版本升级状态, 当此批所有设备状态都更改为软件升级中状态后, 设备 Master返 回给设备版本服务器此批设备状态变更成功 UDP消息。 设备 Master不会向升级中状 态的设备分配计算任务。 步骤 S318: 设备版本服务器向此批设备中每个设备发送强制软件升级 UDP消息, 消息中包含设备版本服务器的 IP地址、 FTP端口号、 FTP用户名、 密码、 版本文件位 置、 版本文件名称、 版本文件个数、 版本说明文件、 批次号、 请求升级时间等信息。 步骤 S320: 各设备收到设备版本服务器发来的软件强制升级 UDP消息后, 将消 息中的版本号与本机软件版本号比较, 如果本机软件版本号与消息中的版本号一致, 则返回升级成功 UDP消息; 如果不一致, 则返回同意升级 UDP消息。 步骤 S322: 如果设备软件版本需要升级, 则调用本机 FTP下载程序, 将软件服务 器上的软件版本文件 FTP下载到本机目录下。 步骤 S324: 设备调用本机的版本升级程序, 组成、 调用升级脚本, 完成软件版本 升级工作。 步骤 S326: 设备软件升级完毕后, 设备向设备版本服务器发送升级完成 UDP消 息。 步骤 S328: 设备版本服务器收到设备升级完毕 UDP消息, 更正本机中此设备的 升级状态为升级成功; 对于超过设定时间, 仍未返回升级成功的设备, 版本服务器认 为此设备升级失败, 更改此设备状态为升级失败。 步骤 S330:待此批次所有设备都有了升级结果,设备版本服务向设备 Master发送 此批设备的状态更改 UDP消息, 请求更改设备 Master中此批设备状态, 消息中包含 各设备 IP地址, 升级状态, 批次号等字段信息。 步骤 S332: 设备 Master收到此 UDP消息后, 更改此批设备状态。 对于软件升级 成功设备, 更改为空闲可用状态; 对于升级失败设备, 依旧为版本升级状态。 此后, 设备 Master将所有新计算任务向软件已升级成功的设备分配, 未升级的、 处于升级状 态中的设备将不再分配计算任务, 以避免不同软件版本设备软件功能差异导致的最终 计算结果错误。 设备版本服务器将选择剩下的未升级设备和升级失败设备作为第二批 设备, 重复升级过程。 第二批设备升级成功后, 版本服务器将产生软件升级报告, 对 于升级失败的设备, 提醒维护人员人工干预。 图 4是根据本发明实施例的软件升级方法的流程图。 如图 4所示, 根据本发明实 施例的软件升级方法包括: 步骤 S402, 设备管理器(设备 Master)为设备软件版本服务器提供云计算设备的 设备全量信息; 步骤 S404,设备软件版本服务器根据设备管理器提供的云计算设备的设备全量信 息将云计算设备划分为预定数量个批次, 依次驱动云计算设备进行软件升级; 步骤 S406,云计算设备在设备软件版本服务器的驱动下,完成本设备的软件升级。 在上述软件升级方法中, 设备软件版本服务器在进行升级时首先会通过设备管理 器获取软件升级开始时系统中所有云计算设备的设备全量信息, 准确确定本次软件升 级面向的设备, 以防止设备数量的经常性变动对软件升级的影响; 其次, 在对云计算 设备进行软件升级时并不是同时进行的, 而是有次序分批的进行, 设备软件版本服务 器会根据云计算设备的设备全量信息将云计算设备划分为若干个批次, 然后依次的对 各个批次中的云计算设备进行升级, 从而不会影响到整个云计算系统的计算能力和当 前承载的业务, 满足了云计算系统中软件升级的特殊要求。 在具体实施过程中, 批次 的划分可以根据不同的情况确定。 优选地, 步骤 S402可以进一步包括以下处理: ( 1 ) 设备管理器响应云计算设备的注册请求, 将该云计算设备纳入管理, 其中, 注册请求中可以包括以下至少之一的信息: 该云计算设备的种类、 机器名、 IP地址、 端口号、 操作系统类型;
(2)设备管理器向处于其管理下的云计算设备发送心跳同步消息, 并接收该心跳 同步消息的响应消息;
(3 )在设备软件版本服务器启动后, 设备软件版本服务器向设备管理器发起设备 全量信息请求;
( 4 )设备管理器响应于设备软件版本服务器发起的设备全量信息请求向设备软件 版本服务器发送云计算设备的设备全量信息; ( 5 )设备管理器在设备全量信息发生改变时,主动向设备软件版本服务器同步改 变后的设备全量信息。 上述操作保证了设备管理器可以实时准确地确定其管理下的云计算设备, 从而进 一步保证了设备软件版本服务器中的设备全量信息是最新、 最准确的, 使得设备软件 版本服务器可以准确的确定软件升级面向的设备。 优选地, 步骤 S404可以进一步包括以下处理:
( 1 )设备软件版本服务器根据云计算设备的设备全量信息将云计算设备划分为预 定数量个批次;
(2) 设备软件版本服务器向设备管理器发送版本升级预约消息;
(3 )设备管理器根据设备软件版本服务器发送的版本升级预约消息将当前升级批 次中的云计算设备设置为版本升级状态, 不再向处于版本升级预约状态的云计算设备 分配计算任务;
(4) 设备软件版本服务器向当前升级批次中的云计算设备发起强制软件升级请 求,其中,升级请求中可以包括以下至少之一的信息:设备软件版本服务器的 IP地址、 FTP端口号、 FTP用户名及密码、 版本文件位置、 版本文件个数、 版本文件名、 版本 说明文件、 批次号;
( 5 )设备软件版本服务器接收当前升级批次中的云计算设备发送的升级完成消息 或升级失败消息, 当接收到当前升级批次中所有云计算设备发送的升级完成消息或升 级失败消息后, 向设备管理器发送升级状态更改消息, 并开始下一批次的软件升级; (6)设备管理器根据设备软件版本服务器发送的升级状态更改消息将当前升级批 次中升级成功的云计算设备设置为升级成功、 空闲可用状态, 开始向处于升级成功、 空闲可用状态的云计算设备分配计算任务。 上述处理通过批次划分、 状态区分等手段, 既保证了各设备可以顺利的进行软件 升级, 又不影响整个云计算系统的计算能力和当前承载的业务。 优选地, 步骤 S406可以进一步包括以下处理:
( 1 )云计算设备根据设备软件版本服务器发起的强制软件升级请求,判断本设备 是否需要进行软件升级;
(2)在本设备需要进行软件升级时, 云计算设备从设备软件版本服务器上下载新 的软件版本文件;
(3 )云计算设备组成并调用升级脚本, 使用新的软件版本文件更换本设备当前的 软件版本文件, 并重启软件;
(4)云计算设备在本设备不需要进行软件升级或软件升级成功后, 向软件版本服 务器发送升级完成消息, 在软件升级失败后, 向软件版本服务器发送升级失败消息。 当软件升级流程进行到一个一个具体的云计算设备时, 每个云计算设备都要判断 本设备是否需要进行升级, 根据不同的判断结果来进行后续的操作, 并将最终将结果 反馈给设备软件版本服务器。 优选地, 上述设备管理器由双机主备构成。 双机主备构成设备管理器工作更为可 罪。 下面结合实例对上述优选实施例进行详细说明。 本实例中将云计算设备分为两批进行升级, 在具体实施过程中, 根据上述优选实 施例在云计算系统中进行软件升级可以包括以下步骤: 步骤 1 : 云计算系统中各设备启动后向设备 Master发起注册消息, 注册成功后此 设备纳入设备 Master管理。运行过程中,各设备与设备 Master之间定时互发心跳消息 确认两者间的管理与被管理关系。 当设备 Master发给此设备的定时心跳无返回次数达 到设定次数时, 设备 Master认为此设备已经脱离管理, 将此设备信息从自身设备信息 中删除。 设备软件版本服务器启动后, 向设备 Master发起设备全量信息获取消息, 获 取设备 Master当前管理的所有设备的信息。当设备 Master管理的设备有变化时,设备 Master主动向设备版本服务器同步设备全量信息。 步骤 2: 设备版本服务器程序定时读取本机目录中版本信息文件, 当发现有新版 本信息描述文件时, 认定有了设备软件新版本。 当发现有新软件版本后, 设备版本服 务器分两批完成设备软件升级, 先选择 N/2台云计算设备作为第一批次升级设备, 向 设备 Master发送版本升级预约消息,设备 Master收到此消息后,将自身设备信息表中 这些设备状态更改为升级预约状态, 如果这些设备当前为空闲状态, 则直接置为升级 预约状态, 如果这些设备处于忙碌状态, 则在当前计算任务完成后, 设备 Master将这 些设备状态及时更改为升级预约状态。 处于升级预约状态的设备, 设备 Master不会再 向其分配计算任务。 当此批设备软件升级完毕, 设备版本服务器向设备 Master发送状 态更改消息, 设备 Master收到此消息后, 将自身设备信息表中这些设备状态更正为升 级成功、 空闲可用状态, 处于此状态的设备之后将可以被继续分配计算任务; 同时预 约剩余设备为版本升级状态。 新计算任务来临时, 设备 Master将仅向已升级成功的设 备安排计算任务, 避免不同软件版本设备软件功能差异导致的最终计算结果错误。 步骤 3 : 设备版本服务器收到设备 Master发送版本升级预约消息的响应消息后, 向此批设备发送强制升级消息, 消息中包含设备版本服务器的 IP地址、 端口号、 FTP 用户名及密码、 版本文件位置、 版本文件个数、 版本文件名称、 版本说明文件、 批次 号等信息。 云计算设备收到软件强制升级消息后, 核对消息中的软件版本号是否与本 机软件版本号一致, 如果软件版本一致, 返回响应消息升级成功; 如果不一致, 返回 响应消息同意升级。 如果版本不一致, 云计算设备调用本机 FTP程序, 从设备版本服 务器上将新的软件版本文件 (版本文件和版本说明文件) 下载到本机目录中, 下载完 成后, 由云计算设备中的版本升级程序组成、 调用升级脚本, 完成本设备软件版本升 级工作。 版本升级完成后, 云计算设备向设备版本服务器发送升级完成消息。 设备版 本服务器收到此批所有设备的升级结果后, 向设备 Master发送状态更改消息, 收到设 备 Master的响应消息后,继续向设备 Master发送下批设备的版本升级预约消息。本次 升级失败的设备将随下一批设备再次进行升级。 从以上的描述中, 可以看出, 通过本发明提供的技术方案, 在由成千上万设备构 成的业务产品云计算系统中, 在任何时刻, 都可以实现系统中设备软件的自动升级, 软件自动升级必须不中断业务。 升级不影响整个云计算系统的计算能力和业务运行, 能应对云计算系统中设备的非规律增减。而且, 不需要进行人工干预, 简单方便可靠, 大大减少了维护人员软件升级的工作量。 显然, 本领域的技术人员应该明白, 上述的本发明的各模块或各步骤可以用通用 的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多个计算装置所 组成的网络上, 可选地, 它们可以用计算装置可执行的程序代码来实现, 从而, 可以 将它们存储在存储装置中由计算装置来执行, 并且在某些情况下, 可以以不同于此处 的顺序执行所示出或描述的步骤, 或者将它们分别制作成各个集成电路模块, 或者将 它们中的多个模块或步骤制作成单个集成电路模块来实现。 这样, 本发明不限制于任 何特定的硬件和软件结合。 以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领域的技 术人员来说, 本发明可以有各种更改和变化。 凡在本发明的精神和原则之内, 所作的 任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。

Claims

权 利 要 求 书
1. 一种软件升级系统, 所述软件升级系统包括: 设备管理器、 设备软件版本服务 器、 云计算设备, 其中,
所述设备管理器, 设置为管理所述云计算设备, 并为所述设备软件版本服 务器提供所述云计算设备的设备全量信息;
所述设备软件版本服务器, 设置为根据所述设备管理器提供的所述云计算 设备的设备全量信息将所述云计算设备划分为预定数量个批次, 依次驱动所述 云计算设备进行软件升级; 所述云计算设备, 设置为在所述设备软件版本服务器的驱动下, 完成本设 备的软件升级。
2. 根据权利要求 1所述的系统, 其中, 所述设备软件版本服务器包括:
信息请求模块, 设置为在所述设备软件版本服务器启动后, 向所述设备管 理器发起设备全量信息请求, 并接收所述设备管理器反馈的所述云计算设备的 设备全量信息;
批次划分模块, 设置为根据所述云计算设备的设备全量信息将所述云计算 设备划分为预定数量个批次;
状态更改模块, 设置为向所述设备管理器发送版本升级预约消息, 驱动所 述设备管理器将当前升级批次中的云计算设备设置为版本升级状态;
更新发起模块, 设置为向所述当前升级批次中的云计算设备发起强制软件 升级请求, 其中, 所述升级请求中包括以下至少之一的信息: 所述设备软件版 本服务器的 IP地址、 FTP端口号、 FTP用户名及密码、 版本文件位置、 版本文 件个数、 版本文件名、 版本说明文件、 批次号;
结果收集模块, 设置为接收所述当前升级批次中的云计算设备发送的升级 完成消息或升级失败消息, 当接收到所述当前升级批次中所有云计算设备发送 的升级完成消息或升级失败消息后,向所述设备管理器发送升级状态更改消息, 驱动所述设备管理器将当前升级批次中升级成功的云计算设备设置为升级成 功、 空闲可用状态, 并触发所述状态更改模块、 所述更新发起模块开始下一批 次的软件升级。
3. 根据权利要求 2所述的系统, 其中, 所述设备管理器包括: 注册响应模块, 设置为响应云计算设备的注册请求, 将该云计算设备纳入 管理, 其中, 所述注册请求中包括以下至少之一的信息: 该云计算设备的种类、 机器名、 IP地址、 端口号、 操作系统类型;
心跳发送模块, 设置为向处于所述设备管理器管理下的云计算设备发送心 跳同步消息, 并接收所述心跳同步消息的响应消息;
信息提供模块, 设置为响应所述设备软件版本服务器发起的设备全量信息 请求向所述设备软件版本服务器发送所述云计算设备的设备全量信息;
主动提供模块, 设置为在所述设备全量信息发生改变时, 主动向所述设备 软件版本服务器同步改变后的所述设备全量信息;
状态改变模块, 设置为根据所述设备软件版本服务器发送的版本升级预约 消息将对应的云计算设备设置为版本升级状态, 根据所述设备软件版本服务器 发送的升级状态更改消息将对应的云计算设备设置为升级成功、空闲可用状态; 任务分配模块, 设置为向处于升级成功、 空闲可用状态的云计算设备分配 计算任务, 不向处于版本升级预约状态的云计算设备分配计算任务。
4. 根据权利要求 3所述的系统, 其中, 所述云计算设备包括:
升级判断模块, 设置为根据所述设备软件版本服务器发起的强制软件升级 请求, 判断本设备是否需要进行软件升级; 软件下载模块, 设置为在本设备需要进行软件升级时, 从所述设备软件版 本服务器上下载新的软件版本文件;
升级实施模块, 设置为组成并调用升级脚本, 使用所述新的软件版本文件 更换本设备当前的软件版本文件, 并重启软件;
结果反馈模块, 设置为在本设备不需要进行软件升级或软件升级成功后, 向所述软件版本服务器发送升级完成消息, 在软件升级失败后, 向所述软件版 本服务器发送升级失败消息。
5. 根据权利要求 1至 4任一项所述的系统, 其中, 所述设备管理器由双机主备构 成。
6. 一种软件升级方法, 包括:
设备管理器为设备软件版本服务器提供云计算设备的设备全量信息; 所述设备软件版本服务器根据所述设备管理器提供的所述云计算设备的设 备全量信息将所述云计算设备划分为预定数量个批次, 依次驱动所述云计算设 备进行软件升级;
所述云计算设备在所述设备软件版本服务器的驱动下, 完成本设备的软件 升级。
7. 根据权利要求 6所述的方法, 其中, 设备管理器为设备软件版本服务器提供云 计算设备的设备全量信息包括: 所述设备管理器响应云计算设备的注册请求, 将该云计算设备纳入管理, 其中, 所述注册请求中包括以下至少之一的信息: 该云计算设备的种类、 机器 名、 IP地址、 端口号、 操作系统类型;
所述设备管理器向处于所述设备管理器管理下的云计算设备发送心跳同步 消息, 并接收所述心跳同步消息的响应消息;
在所述设备软件版本服务器启动后, 所述设备软件版本服务器向所述设备 管理器发起设备全量信息请求;
所述设备管理器响应于所述设备软件版本服务器发起的设备全量信息请求 向所述设备软件版本服务器发送所述云计算设备的设备全量信息;
所述设备管理器在所述设备全量信息发生改变时, 主动向所述设备软件版 本服务器同步改变后的所述设备全量信息。
8. 根据权利要求 7所述的方法, 其中, 所述设备软件版本服务器根据所述云计算 设备的设备全量信息将所述云计算设备划分为预定数量个批次, 依次驱动所述 云计算设备进行软件升级包括: 所述设备软件版本服务器根据所述云计算设备的设备全量信息将所述云计 算设备划分为预定数量个批次;
所述设备软件版本服务器向所述设备管理器发送版本升级预约消息; 所述设备管理器根据所述设备软件版本服务器发送的版本升级预约消息将 当前升级批次中的云计算设备设置为版本升级状态, 不再向处于版本升级预约 状态的云计算设备分配计算任务;
所述设备软件版本服务器向所述当前升级批次中的云计算设备发起强制软 件升级请求, 其中, 所述升级请求中包括以下至少之一的信息: 所述设备软件 版本服务器的 IP地址、 FTP端口号、 FTP用户名及密码、 版本文件位置、 版本 文件个数、 版本文件名、 版本说明文件、 批次号;
所述设备软件版本服务器接收所述当前升级批次中的云计算设备发送的升 级完成消息或升级失败消息, 当接收到所述当前升级批次中所有云计算设备发 送的升级完成消息或升级失败消息后, 向所述设备管理器发送升级状态更改消 息, 并开始下一批次的软件升级;
所述设备管理器根据所述设备软件版本服务器发送的升级状态更改消息将 所述当前升级批次中升级成功的云计算设备设置为升级成功、 空闲可用状态, 开始向处于升级成功、 空闲可用状态的云计算设备分配计算任务。 根据权利要求 8所述的方法, 其中, 所述云计算设备在所述设备软件版本服务 器的驱动下, 完成本设备的软件升级包括:
所述云计算设备根据所述设备软件版本服务器发起的强制软件升级请求, 判断本设备是否需要进行软件升级;
在本设备需要进行软件升级时, 所述云计算设备从所述设备软件版本服务 器上下载新的软件版本文件;
所述云计算设备组成并调用升级脚本, 使用所述新的软件版本文件更换本 设备当前的软件版本文件, 并重启软件;
所述云计算设备在本设备不需要进行软件升级或软件升级成功后, 向所述 软件版本服务器发送升级完成消息, 在软件升级失败后, 向所述软件版本服务 器发送升级失败消息。 根据权利要求 6至 9任一项所述的方法, 其中, 所述设备管理器由双机主备构 成。
PCT/CN2012/070211 2011-06-01 2012-01-11 软件升级系统及方法 WO2012163093A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110146578.4 2011-06-01
CN2011101465784A CN102811136A (zh) 2011-06-01 2011-06-01 软件升级系统及方法

Publications (1)

Publication Number Publication Date
WO2012163093A1 true WO2012163093A1 (zh) 2012-12-06

Family

ID=47234723

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/070211 WO2012163093A1 (zh) 2011-06-01 2012-01-11 软件升级系统及方法

Country Status (2)

Country Link
CN (1) CN102811136A (zh)
WO (1) WO2012163093A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110597545A (zh) * 2019-09-04 2019-12-20 北京方研矩行科技有限公司 一种基于ota组件的热补丁智能升级方法及系统
US10536332B1 (en) * 2017-11-15 2020-01-14 Amazon Technologies, Inc. Configuration invocation management
CN110990039A (zh) * 2019-11-29 2020-04-10 北京金山云网络技术有限公司 应用程序更新方法、装置、系统及计算机可读存储介质
CN111309388A (zh) * 2020-02-03 2020-06-19 杭州迪普科技股份有限公司 设备的系统软件版本的自动回滚系统及其方法
US20210141629A1 (en) * 2019-11-08 2021-05-13 Toyota Jidosha Kabushiki Kaisha Program update system and vehicle management server
CN116841593A (zh) * 2023-09-01 2023-10-03 荣耀终端有限公司 软件升级方法、设备和系统

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015021604A1 (zh) * 2013-08-13 2015-02-19 华为技术有限公司 一种应用升级方法、装置
CN104378394B (zh) * 2013-08-14 2018-01-02 阿里巴巴集团控股有限公司 一种服务器集群文件的更新方法及装置
CN103713924B (zh) * 2013-12-24 2017-03-08 汉柏科技有限公司 云计算平台服务的升级方法及系统
CN103812945A (zh) * 2014-02-26 2014-05-21 可牛网络技术(北京)有限公司 一种数据升级的方法和中心服务器
CN105100021B (zh) * 2014-05-20 2021-03-16 西安中兴新软件有限责任公司 一种设备管理会话的触发方法、设备及系统
CN104253866B (zh) * 2014-09-20 2018-03-27 华为技术有限公司 虚拟网络功能网元的软件部署方法、系统及相关设备
CN104702440B (zh) * 2015-03-17 2017-11-24 四川天邑康和通信股份有限公司 网络设施与网络管理系统的通信方法
CN104702441B (zh) * 2015-03-17 2018-01-12 四川天邑康和通信股份有限公司 网络智能管理终端与网络设施的数据交换方法
CN105335195A (zh) * 2015-11-02 2016-02-17 北京金山安全软件有限公司 一种设备驱动升级方法、装置及电子设备
CN105630539A (zh) * 2015-12-18 2016-06-01 北京奇虎科技有限公司 灰度升级的方法和装置
CN106533757A (zh) * 2016-11-09 2017-03-22 上海斐讯数据通信技术有限公司 一种云终端设备批量升级的方法和装置
CN108319500B (zh) * 2017-01-16 2022-06-21 阿里巴巴集团控股有限公司 一种云计算系统的操作方法、装置及电子设备
WO2018195899A1 (en) 2017-04-28 2018-11-01 Beijing Didi Infinity Technology And Development Co., Ltd. System and method for task scheduling and device management
CN107645408A (zh) * 2017-08-18 2018-01-30 上海斐讯数据通信技术有限公司 无线ap批量升级管理装置
CN108008968A (zh) * 2017-12-25 2018-05-08 苏州赛源微电子有限公司 一种小内存设备的软件升级系统
CN110708345A (zh) * 2018-07-09 2020-01-17 阿里巴巴集团控股有限公司 云盘升级方法、调度方法及云主机、调度装置和系统
CN110716826B (zh) * 2018-07-13 2023-11-24 阿里巴巴集团控股有限公司 一种云盘升级、调度方法及云主机、调度装置和系统
CN110515637A (zh) * 2019-07-12 2019-11-29 湖南新云网科技有限公司 一种程序升级方法、系统及终端设备
CN110381156A (zh) * 2019-07-25 2019-10-25 四川航天信息有限公司 基于云平台的实时信息推送方法及其系统
CN110730090B (zh) * 2019-09-05 2023-02-03 深圳平安通信科技有限公司 云环境中代理端批量更新方法、装置、介质及电子设备
CN110798523A (zh) * 2019-11-01 2020-02-14 中科院计算技术研究所南京移动通信与计算创新研究院 通信设备软件升级的方法、控制装置及系统
CN112947956B (zh) * 2020-08-31 2023-02-17 深圳市明源云科技有限公司 一种应用软件升级方法
CN113542019B (zh) * 2021-06-30 2023-12-29 新华三大数据技术有限公司 转控分离分布式cp的升级方法及系统
CN114500525B (zh) * 2021-12-24 2024-04-26 天翼云科技有限公司 分布式系统中节点更新的方法、装置、计算机设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001090892A1 (en) * 2000-05-25 2001-11-29 Everdream, Inc. Intelligent patch checker
CN1763713A (zh) * 2004-10-22 2006-04-26 华为技术有限公司 一种移动终端软件版本升级方法
CN101631037A (zh) * 2008-07-18 2010-01-20 中兴通讯股份有限公司 一种网元软件的远程升级装置及方法
CN101741894A (zh) * 2008-11-26 2010-06-16 中国移动通信集团公司 一种分布式系统的升级方法、升级调度节点及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001090892A1 (en) * 2000-05-25 2001-11-29 Everdream, Inc. Intelligent patch checker
CN1763713A (zh) * 2004-10-22 2006-04-26 华为技术有限公司 一种移动终端软件版本升级方法
CN101631037A (zh) * 2008-07-18 2010-01-20 中兴通讯股份有限公司 一种网元软件的远程升级装置及方法
CN101741894A (zh) * 2008-11-26 2010-06-16 中国移动通信集团公司 一种分布式系统的升级方法、升级调度节点及系统

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10536332B1 (en) * 2017-11-15 2020-01-14 Amazon Technologies, Inc. Configuration invocation management
CN110597545A (zh) * 2019-09-04 2019-12-20 北京方研矩行科技有限公司 一种基于ota组件的热补丁智能升级方法及系统
CN110597545B (zh) * 2019-09-04 2023-05-30 北京方研矩行科技有限公司 一种基于ota组件的热补丁智能升级方法及系统
US20210141629A1 (en) * 2019-11-08 2021-05-13 Toyota Jidosha Kabushiki Kaisha Program update system and vehicle management server
US11704106B2 (en) * 2019-11-08 2023-07-18 Toyota Jidosha Kabushiki Kaisha Program update system and vehicle management server
US20230305835A1 (en) * 2019-11-08 2023-09-28 Toyota Jidosha Kabushiki Kaisha Program update system and vehicle management server
CN110990039A (zh) * 2019-11-29 2020-04-10 北京金山云网络技术有限公司 应用程序更新方法、装置、系统及计算机可读存储介质
CN110990039B (zh) * 2019-11-29 2023-09-05 北京金山云网络技术有限公司 应用程序更新方法、装置、系统及计算机可读存储介质
CN111309388A (zh) * 2020-02-03 2020-06-19 杭州迪普科技股份有限公司 设备的系统软件版本的自动回滚系统及其方法
CN111309388B (zh) * 2020-02-03 2023-07-21 杭州迪普科技股份有限公司 设备的系统软件版本的自动回滚系统及其方法
CN116841593A (zh) * 2023-09-01 2023-10-03 荣耀终端有限公司 软件升级方法、设备和系统

Also Published As

Publication number Publication date
CN102811136A (zh) 2012-12-05

Similar Documents

Publication Publication Date Title
WO2012163093A1 (zh) 软件升级系统及方法
WO2011156998A1 (zh) 一种实现设备自动配置的系统及方法
CN100545809C (zh) 一种软件升级方法及其系统
CN108023773B (zh) 一种实现网络设备零配置上线的方法和配置服务器
CN101183984B (zh) 网管系统、管理方法及设备
CN111786893B (zh) mesh组网中无线路由器软件版本的同步方法和装置
CN108628716B (zh) 信息纳管系统、方法及装置
WO2009003385A1 (fr) Procédés, appareils et systèmes pour mettre à jour un équipement
CN111866063B (zh) 一种工业物联网ai算法的在线更新系统、方法及装置
EP4092524B1 (en) Ota differential upgrade method and system of master-slave architecture
CN111901419B (zh) 用于家电底板升级的方法及装置、设备
WO2012097566A1 (zh) Rtr单板的版本升级方法及装置
CN111147272A (zh) 一种单服务器及多服务器运营平台升级方法
KR20080060927A (ko) 서버, 클라이언트 및 그 업데이트 방법
CN112764803A (zh) 版本升级方法及装置、存储介质及电子装置
CN110391940A (zh) 服务地址的响应方法、装置、系统、设备和存储介质
CN111901142A (zh) 一种用于嵌入式设备集群的固件静默升级方法及装置
CN112202877A (zh) 网关联动方法、网关、云服务器及用户终端
CN114938329A (zh) 一种基于mqtt的路由器网关设备管理方法及系统
EP4050850A1 (en) Service upgrading method, device and system
EP1712067B1 (en) A method, apparatus and system of organizing servers
CN102291303B (zh) 一种单板及其确定主备状态的方法
CN108683546B (zh) 一种基于物联网的智能家居设备同步更新方法
CN115150457A (zh) 微服务管理方法、车载系统和车载设备
CN108958757A (zh) 复杂嵌入式设备的升级方法及复杂嵌入式设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12792126

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12792126

Country of ref document: EP

Kind code of ref document: A1