RU2671624C1 - Method of managing upgrades of software in cascade structure systems - Google Patents
Method of managing upgrades of software in cascade structure systems Download PDFInfo
- Publication number
- RU2671624C1 RU2671624C1 RU2017117166A RU2017117166A RU2671624C1 RU 2671624 C1 RU2671624 C1 RU 2671624C1 RU 2017117166 A RU2017117166 A RU 2017117166A RU 2017117166 A RU2017117166 A RU 2017117166A RU 2671624 C1 RU2671624 C1 RU 2671624C1
- Authority
- RU
- Russia
- Prior art keywords
- update
- servers
- client
- level
- server
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000013515 script Methods 0.000 claims abstract description 37
- 230000008569 process Effects 0.000 claims abstract description 14
- 230000008859 change Effects 0.000 claims abstract description 3
- 239000000126 substance Substances 0.000 abstract 1
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Изобретение относится к области вычислительной техники, в частности к разработке способов обновления программного обеспечения в распределенных системах с многоуровневой структурой.The invention relates to the field of computing, in particular to the development of methods for updating software in distributed systems with a multi-level structure.
Известен способ управления процессом обновления многокомпонентных систем в удаленных подразделениях организации (В.Л. Орлов, Е.А. Курако. Задачи управления процессом обновления многокомпонентных систем в удаленных подразделениях организации. Труды 6-й междунар. конф. «Параллельные вычисления и задачи управления». РАСО'2012, Москва, ИПУ РАН М., 2012. Т. 3). В описании этого способа обновления указывается, что обновляются программные модули в распределенной системе, причем передача текстов модулей проводится от сервера к серверу, размещение которых имеет каскадную структуру, то есть каждый сервер находится на определенном уровне иерархии. При этом обновление программного обеспечения на клиентских местах проходит с серверов каскада. Недостатком этого способа является жесткая схема обновления. То есть на каждом из серверов должно быть установлено программное обеспечение, которое направляет обновляемые программные модули в заранее заданные каталоги файловой системы для замены аналогичных модулей. Для замены программных модулей на клиентских местах существует определенный серверный каталог, откуда измененные модули забирает по сети программное обеспечение клиентского места. То есть настройка алгоритма обновления не производится.A known method of controlling the process of updating multicomponent systems in remote units of the organization (V.L. Orlov, EA Kurako. Tasks of managing the process of updating multicomponent systems in remote units of the organization. Proceedings of the 6th international conference. "Parallel computing and control tasks" . RASO'2012, Moscow, IPU RAS M., 2012.V. 3). The description of this update method indicates that the software modules in the distributed system are updated, and the texts of the modules are transferred from server to server, the placement of which has a cascading structure, that is, each server is at a certain hierarchy level. At the same time, software updates at client sites are performed from the cascade servers. The disadvantage of this method is the rigid update scheme. That is, software must be installed on each of the servers, which directs updated program modules to predefined file system directories to replace similar modules. To replace software modules in client places, there is a specific server directory from where the client modules take away the changed modules from the network. That is, the update algorithm is not configured.
Также известен способ управления синхронизацией обновлений программного обеспечения (RU 2295752 С1, 20.03.2007), где при сравнении имеющегося у пользователя программного обеспечения и вновь поставленного в качестве обновления программного обеспечения на предмет выявления различий, происходит детальное сравнение тех элементов двух указанных версий программного обеспечения, которые помечены как соответствующие (сопоставимые), при этом соответствие элементов определяется по специфическим присущим им свойствам и признакам. То есть сам алгоритм сравнения модулей программного обеспечения по сути является гибким и позволяет проводить сравнение новых и старых программ по различным параметрам.There is also a known method for managing the synchronization of software updates (RU 2295752 C1, 03.20.2007), where when comparing the user’s existing software and newly installed as a software update to identify differences, a detailed comparison of those elements of the two specified software versions occurs, which are marked as corresponding (comparable), while the correspondence of the elements is determined by the specific properties and attributes inherent in them. That is, the algorithm for comparing software modules is essentially flexible and allows you to compare new and old programs for various parameters.
Недостатком этого способа является то, что он предназначен только для замены сравниваемых программных модулей и связанных с ними файлов, в то время как могут потребоваться более глобальные изменения, например, коррекция структуры базы данных. А для этой цели требуется использовать другие средства, активизируя специальные процедуры коррекции, причем эти процедуры могут принципиально отличаться для различных информационных систем. То есть в общем случае необходимо не только копирование файлов, но и выполнение в процессе обновления специальных программ (процедур, сценариев).The disadvantage of this method is that it is intended only to replace the compared program modules and related files, while more global changes, for example, correction of the database structure, may be required. And for this purpose it is required to use other means, activating special correction procedures, and these procedures can fundamentally differ for different information systems. That is, in the general case, it is necessary not only to copy files, but also to execute special programs (procedures, scripts) during the update process.
Техническим результатом предложения является возможность управления обновлениями программного обеспечения в системах с каскадной структурой.The technical result of the proposal is the ability to manage software updates in systems with a cascading structure.
Указанный технический результат достигается тем, что организуется способ управления обновлениями программного обеспечения в системах с каскадной структурой, включающий обновления по крайней мере одной информационной системы, установленной на серверах и клиентских рабочих местах распределенной сети, отличающийся тем, что для выполнения процедур обновления по всем серверам распределенной сети рассылают пакеты обновления, включающие сценарий обновления, программные модули и файлы, подлежащие обновлению, корректирующие программные модули или сценарии, которые обеспечивают изменение структуры обновляемой информационной системы и структуры обрабатываемых ею данных, причем выполнение обновления проводят путем интерпретации сценария обновления программами-интерпретаторами, установленными на серверах и клиентских рабочих местах, обновляя указанные в сценарии программные модули и файлы при определенных условиях, а также обеспечивая выполнение корректирующих программных модулей и сценариев в соответствии со сценарием обновления; при этом сценарий обновления описывает действия, которые нужно производить с модулями и файлами обновления, и условия выполнения этих действий, а также условия, при выполнении которых следует запускать на выполнение корректирующие программные модули и сценарии; на рабочем месте администратора готовится пакет обновления; этот пакет направляется на сервер 1-го уровня, где принимается программой - интерпретатором обновлений на сервере 1-го уровня; эта программа размещает пакеты обновлений в хранилище клиентских обновлений и в хранилище серверных обновлений на сервере 1-го уровня; с клиентского места интерпретатором клиентских обновлений периодически проводится проверка наличия новых обновлений; если такие обновления есть, то на клиентское место перемещается сценарий и в процессе его интерпретации проводятся обновления программного обеспечения клиента; если серверов 1-го уровня больше, чем один, то среди них назначается основной, а остальные сервера периодически обращаются к нему, получают информацию и проводят обновление так же, как будто они получили пакет обновлений от администратора; с прикрепленных к этим серверам клиентских мест идет обращение к соответствующим серверам; сервер второго уровня также обращается к серверу первого уровня, получает пакет обновлений, а далее интерпретатор обновлений выполняет те же функции, что и интерпретатор обновлений на сервере 1-го уровня; если в системе присутствуют сервера 3-го, 4-го и других уровней то процедура обновлений на них и на прикрепленных к ним рабочих местах проводится по тем же правилам, что и на серверах - 2-го уровня.The indicated technical result is achieved in that a method for managing software updates in systems with a cascade structure is organized, including updates of at least one information system installed on servers and client workstations of a distributed network, characterized in that for performing update procedures on all distributed servers Networks send out service packs, including the update script, program modules and files to be updated, corrective software m blow-ups or scenarios that provide a change in the structure of the updated information system and the structure of the data processed by it, and the update is carried out by interpreting the update script with interpreter programs installed on servers and client workstations, updating the program modules and files specified in the script under certain conditions, and also ensuring that corrective software modules and scripts are executed in accordance with the update script; the update script describes the actions that need to be performed with the modules and update files, and the conditions for performing these actions, as well as the conditions under which corrective program modules and scripts should be launched; an update package is being prepared at the administrator’s workplace; this packet is sent to the level 1 server, where it is received by the update interpreter program on the level 1 server; This program places service packs in the client update repository and in the server update repository on the level 1 server; from the client place, the client updates interpreter periodically checks for new updates; if there are such updates, then the script moves to the client place and in the process of interpreting it updates the client software; if there are more than one level 1 server, the main one is assigned among them, and the rest of the servers periodically access it, receive information and update as if they received an update package from the administrator; from client places attached to these servers there is an appeal to the corresponding servers; the second-level server also accesses the first-level server, receives the update package, and then the update interpreter performs the same functions as the update interpreter on the level-1 server; if the system contains servers of the 3rd, 4th and other levels, then the update procedure on them and on the workstations attached to them is carried out according to the same rules as on the servers of the 2nd level.
В пакеты обновления дополнительно включаются сценарии и файлы для обеспечения восстановления информационной системы в случае, когда произошли ошибки в процессе обновления.Scripts and files are additionally included in service packs to ensure recovery of the information system in case errors occurred during the upgrade process.
В процессе обновления в специально выделенном хранилище клиентов размещается вторичные сценарии для клиентов, вторичные программные модули и файлы, подлежащие обновлению у клиентов, корректирующие программные модули или сценарии для клиентов, которые выбираются программным обеспечением клиента и выполняются в соответствии со сценарием обновления.During the upgrade process, secondary scripts for clients, secondary software modules and files to be updated by clients, adjustment software modules or scripts for clients, which are selected by the client software and are executed in accordance with the upgrade script, are placed in a dedicated client repository.
На Фиг. 1 представлено содержание пакета обновления.In FIG. 1 shows the contents of the service pack.
На Фиг. 2 представлена схема процесса обновления систем с каскадной структурой.In FIG. 2 shows a diagram of the process of updating systems with a cascade structure.
Фиг. 1 иллюстрирует содержимое пакета обновления. Пакет обновления 1 включает три части:FIG. 1 illustrates the contents of a service pack. Service Pack 1 includes three parts:
- Сценарий обновления - 2;- Update script - 2;
- Комплект обновляемых модулей и файлов - 3;- A set of updated modules and files - 3;
- Комплект корректирующих программных модулей - 4.- A set of corrective software modules - 4.
Сценарий обновления 1 описывает действия, которые нужно производить с модулями и файлами обновления 2 и условия выполнения этих действий, а также условия, при выполнении которых следует запускать на выполнение корректирующие программные модули и сценарии 3. Кроме того, сценарий обновления может содержать описание действий, которые нужно выполнить в случае неудачной попытки обновления для того, чтобы вернуть систему в первоначальное состояние.Update scenario 1 describes the actions that need to be performed with modules and update
На фиг. 2 представлена схема процесса обновления в системах с каскадной структурой. На рабочем месте администратора 5 готовится пакет обновления. Этот пакет направляется на сервер 1-го уровня 6, где принимается программой - интерпретатором обновлений 7. Эта программа размещает пакеты обновлений в хранилище клиентских обновлений 8 и в хранилище серверных обновлений 9. С клиентского места 10 интерпретатором клиентских обновлений 11 периодически проводится проверка наличия новых обновлений. Если такие обновления есть, то на клиентское место перемещается сценарий и в процессе его интерпретации проводятся обновления программного обеспечения клиента. Если серверов 1-го уровня больше, чем один, то среди них назначается основной, а остальные сервера периодически обращаются к нему, получают информацию и проводят обновление также, как будто они получили пакет обновлений от администратора. С прикрепленных к этим серверам клиентских мест идет обращение к соответствующим серверам.In FIG. 2 shows a diagram of the update process in cascaded systems. At the administrator’s
Сервер второго уровня 12 также обращается к серверу первого уровня, получает пакет обновлений, а далее интерпретатор обновлений 13 выполняет те же функции, что и интерпретатор обновлений на сервере 1 -го уровня. Если в системе присутствуют сервера 3-го, 4-го и других уровней то процедура обновлений на них и на прикрепленных к ним рабочих местах проводится по тем же правилам, что и на серверах - 2-го уровня.The
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2017117166A RU2671624C1 (en) | 2017-05-17 | 2017-05-17 | Method of managing upgrades of software in cascade structure systems |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2017117166A RU2671624C1 (en) | 2017-05-17 | 2017-05-17 | Method of managing upgrades of software in cascade structure systems |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2671624C1 true RU2671624C1 (en) | 2018-11-02 |
Family
ID=64103323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2017117166A RU2671624C1 (en) | 2017-05-17 | 2017-05-17 | Method of managing upgrades of software in cascade structure systems |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2671624C1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210344556A1 (en) * | 2020-12-21 | 2021-11-04 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method and apparatus for updating an edge node, device, medium and program product |
CN116149713A (en) * | 2023-04-19 | 2023-05-23 | 广州擎天实业有限公司 | Program upgrading method and device for all-level equipment under tree-type heterogeneous network |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2295752C1 (en) * | 2006-03-20 | 2007-03-20 | Закрытое акционерное общество "1С Акционерное общество" | Method for controlling synchronization of software updates |
RU2357279C2 (en) * | 2003-12-15 | 2009-05-27 | Майкрософт Корпорейшн | System and control method and transmission of software updates |
US20090271777A1 (en) * | 2008-04-28 | 2009-10-29 | Tow Timothy N | Method for distributing update modules for computer software over a network |
EP2891978A1 (en) * | 2014-01-06 | 2015-07-08 | QNX Software Systems Limited | System and method for distributing software updates |
RU2571726C2 (en) * | 2013-10-24 | 2015-12-20 | Закрытое акционерное общество "Лаборатория Касперского" | System and method of checking expediency of installing updates |
-
2017
- 2017-05-17 RU RU2017117166A patent/RU2671624C1/en active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2357279C2 (en) * | 2003-12-15 | 2009-05-27 | Майкрософт Корпорейшн | System and control method and transmission of software updates |
RU2295752C1 (en) * | 2006-03-20 | 2007-03-20 | Закрытое акционерное общество "1С Акционерное общество" | Method for controlling synchronization of software updates |
US20090271777A1 (en) * | 2008-04-28 | 2009-10-29 | Tow Timothy N | Method for distributing update modules for computer software over a network |
RU2571726C2 (en) * | 2013-10-24 | 2015-12-20 | Закрытое акционерное общество "Лаборатория Касперского" | System and method of checking expediency of installing updates |
EP2891978A1 (en) * | 2014-01-06 | 2015-07-08 | QNX Software Systems Limited | System and method for distributing software updates |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210344556A1 (en) * | 2020-12-21 | 2021-11-04 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method and apparatus for updating an edge node, device, medium and program product |
US11824714B2 (en) * | 2020-12-21 | 2023-11-21 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Method and apparatus for updating an edge node, device, medium and program product |
CN116149713A (en) * | 2023-04-19 | 2023-05-23 | 广州擎天实业有限公司 | Program upgrading method and device for all-level equipment under tree-type heterogeneous network |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10268720B2 (en) | Database schema upgrade as a service | |
US10656933B2 (en) | Zero downtime for frequent software updates | |
US7831569B2 (en) | Preserving a query plan cache | |
US8949831B2 (en) | Dynamic virtual machine domain configuration and virtual machine relocation management | |
US20220129441A1 (en) | Double signing protection and prevention in a blockchain computer system | |
US20120304262A1 (en) | Automating cloud service reconnections | |
EP4049160B1 (en) | Scanning a backup for vulnerabilities | |
US11722523B2 (en) | Solution management systems and methods for addressing cybersecurity vulnerabilities | |
US20220236975A1 (en) | Optimized compilation of pipelines for continuous delivery of services on datacenters configured in cloud platforms | |
RU2671624C1 (en) | Method of managing upgrades of software in cascade structure systems | |
US20240171603A1 (en) | Risk-Based Vulnerability Remediation Timeframe Recommendations | |
CN117150534B (en) | Trusted DCS upper computer application access control method and system based on authority management | |
US20200133709A1 (en) | System and method for content - application split | |
Vikiru et al. | An overview on cloud distributed databases for business environments | |
US20240095225A1 (en) | Intelligently storing data in a fault tolerant system using robotic process automation and blockchain | |
RU2751215C1 (en) | Software deployment and management system and method for its work | |
US20200225979A1 (en) | Communication device and communication method used in distributed computing environment | |
CN113190533A (en) | Method, device and system for data migration among Elastic Search clusters | |
Carter et al. | Administering AlwaysOn | |
Arumilli | SQL the One: Microsoft SQL Server Interview Guide |