Configuration information processing method and device, electronic equipment and storage medium

By generating configuration templates and additional information, the problem of not being able to manage configuration files globally in cloud storage is solved, the configuration information processing efficiency is improved, and the storage cluster is operated normally.

CN120567682APending Publication Date: 2025-08-29TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410227784.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-02-28
Publication Date
2025-08-29

AI Technical Summary

Technical Problem

In the field of cloud storage, the existing technology cannot manage the configuration files of multiple storage clusters from a global perspective, resulting in the inability to discover in time for incorrect configuration information, resulting in low configuration information processing efficiency.

Method used

By downloading the configuration package, the first configuration template and the first additional information are generated. The template stores the values ​​of the same configuration items, and the additional information stores variable information of different configuration items to realize global management of each storage cluster.

Benefits of technology

It realizes global viewing and timely modification of the configuration information of each storage cluster in the configuration package, improves the efficiency of configuration information processing, and ensures the smooth deployment and operation of the target software of the storage cluster.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120567682A_ABST
    Figure CN120567682A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a configuration information processing method and device, electronic equipment and a computer readable storage medium, and relates to the field of cloud storage. The method comprises the following steps: downloading a configuration package, wherein each configuration file is a configuration file required for deploying target software by a corresponding storage cluster; according to the configuration value of each configuration item in each configuration file, a first configuration template and first additional information are generated, and the first configuration template is used for storing the configuration value of each first configuration item and the variable information of each second configuration item; the first additional information is used for describing the configuration value of the corresponding second configuration item in each configuration file; wherein the configuration value of the first configuration item in each configuration file is the same; the configuration values of the second configuration item in each configuration file are different. By reading and storing the first configuration template and the first additional information, all the configuration information in the configuration packet can be globally checked, and the efficiency of processing the configuration information is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of cloud storage technology. Specifically, the present application relates to a method, device, electronic device and computer-readable storage medium for processing configuration information. Background Art

[0002] In the cloud storage field, configuration files of multiple storage clusters regarding target software are stored in a configuration package of a first system. In the first system, an administrator maintains and manages the configuration information of each storage cluster in the configuration package by viewing the configuration file of each storage cluster in the configuration package.

[0003] Since the configuration package includes configuration files of multiple storage clusters, if you want to obtain the configuration information in all configuration files, you need to open all configuration files one by one to view the configuration information in each configuration file. Therefore, the configuration information in all configuration files cannot be managed from a global perspective, resulting in the inability to timely discover incorrect configuration information in the configuration files and to modify the configuration information in a timely manner, thereby low efficiency in processing the configuration information. Summary of the Invention

[0004] The embodiments of the present application provide a configuration information processing method, apparatus, electronic device, computer-readable storage medium, and computer program product, which can solve the above-mentioned problems of the prior art. The technical solution is as follows:

[0005] According to a first aspect of an embodiment of the present application, a method for processing configuration information is provided, the method comprising:

[0006] Downloading a configuration package, wherein the configuration package includes at least one configuration file, each configuration file is a configuration file required for deploying target software in a corresponding storage cluster, and each configuration file includes a configuration value of at least one configuration item;

[0007] Generate a first configuration template and first additional information based on the configuration values ​​of each configuration item in each configuration file. The first configuration template is used to store the configuration value of each first configuration item and the variable information of each second configuration item. The variable information is used to describe the storage path of the corresponding storage cluster of the second configuration item in the configuration package and the configuration name of the configuration item. The first additional information is used to describe the configuration value of the corresponding second configuration item in each configuration file.

[0008] The configuration value of the first configuration item in each configuration file is the same; the configuration value of the second configuration item in each configuration file is different.

[0009] According to a second aspect of an embodiment of the present application, a device for processing configuration information is provided, including:

[0010] Acquisition module: used to download a configuration package, wherein the configuration package includes at least one configuration file, each configuration file is a configuration file required for deploying target software in a corresponding storage cluster, and each configuration file includes a configuration value of at least one configuration item;

[0011] A generation module is configured to generate a first configuration template and first additional information based on the configuration values ​​of each configuration item in each configuration file. The first configuration template is used to store the configuration value of each first configuration item and the variable information of each second configuration item. The variable information is used to describe the storage path of the corresponding storage cluster of the second configuration item in the configuration package and the configuration name of the configuration item. The first additional information is used to describe the configuration value of the corresponding second configuration item in each configuration file.

[0012] The configuration value of the first configuration item in each configuration file is the same; the configuration value of the second configuration item in each configuration file is different.

[0013] According to a third aspect of an embodiment of the present application, an electronic device is provided, which includes: a memory, a processor, and a computer program stored in the memory, and the processor executes the computer program to implement the steps of the above-mentioned configuration information processing method.

[0014] According to a fourth aspect of an embodiment of the present application, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the above-mentioned configuration information processing method are implemented.

[0015] According to a fifth aspect of an embodiment of the present application, a computer program product is provided, including a computer program, which implements the steps of the above-mentioned configuration information processing method when the computer program is executed by a processor.

[0016] The beneficial effects of the technical solution provided by the embodiments of the present application are:

[0017] By downloading the configuration package, the configuration files required for the storage cluster to deploy the target software, as well as the configuration items in each configuration file and the configuration values ​​corresponding to the configuration items are obtained; by analyzing the configuration items in each configuration file and the configuration values ​​corresponding to the configuration items, the first configuration items with the same configuration values ​​in each configuration file are obtained, and the second configuration items with different configuration values ​​in each configuration file are obtained; by storing the configuration values ​​of the first configuration items and the variable information related to the second configuration items in the first configuration template, the configuration items with the same configuration values ​​in each configuration file corresponding to each storage cluster can be viewed according to the first configuration template; by obtaining the configuration values ​​of the second configuration items in each configuration file and generating the first additional information, the configuration items with different configuration values ​​in each configuration file can be viewed according to the first additional information. Therefore, the embodiment of the present application can manage and maintain the corresponding configuration items and configuration information in each storage cluster in the configuration package through the generated first configuration template and the first additional information. By globally viewing the configuration information of each storage cluster in the configuration package, it is possible to promptly discover incorrect configuration information in the corresponding configuration files of each storage cluster and promptly modify the configuration information of each storage cluster. This improves the efficiency of processing the configuration information of each storage cluster in the configuration package, allowing each storage cluster to smoothly deploy and run the target software and realize the management of the full cluster configuration. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for describing the embodiments of the present application.

[0019] Figure 1 A schematic diagram of the system architecture for implementing configuration information processing provided in an embodiment of the present application;

[0020] Figure 2 A flowchart of a method for processing configuration information provided in an embodiment of the present application;

[0021] Figure 3 A schematic diagram of a process for adjusting the storage paths of various configuration files to be consistent is provided in an embodiment of the present application;

[0022] Figure 4 A schematic diagram of a standardized flow chart of configuration information provided in an embodiment of the present application;

[0023] Figure 5 A schematic diagram of a process for uploading the first configuration file and the first additional information to the second system provided in an embodiment of the present application;

[0024] Figure 6 A flowchart of another method for processing configuration information provided in an embodiment of the present application;

[0025] Figure 7 A flowchart of another method for processing configuration information provided in an embodiment of the present application;

[0026] Figure 8 A schematic diagram of an architecture for processing configuration information provided in an embodiment of the present application;

[0027] Figure 9 A schematic diagram of the structure of a configuration information processing device provided in an embodiment of the present application;

[0028] Figure 10 A schematic diagram of the structure of an electronic device for processing configuration information provided in an embodiment of the present application. DETAILED DESCRIPTION

[0029] The following describes the embodiments of the present application in conjunction with the accompanying drawings. It should be understood that the embodiments described below in conjunction with the accompanying drawings are exemplary descriptions of the technical solutions of the embodiments of the present application and do not constitute a limitation on the technical solutions of the embodiments of the present application.

[0030] Those skilled in the art will understand that, unless otherwise stated, the singular forms "a", "an", "said", and "the" used herein may also include plural forms. It should be further understood that the terms "including" and "comprising" used in the embodiments of the present application mean that the corresponding features can be implemented as the presented features, information, data, steps, operations, elements, and / or components, but do not exclude implementation as other features, information, data, steps, operations, elements, components, and / or combinations thereof supported by the present technical field. It should be understood that when we say that an element is "connected" or "coupled" to another element, the element can be directly connected or coupled to the other element, or it can refer to the element and the other element establishing a connection relationship through an intermediate element. In addition, the "connection" or "coupling" used here can include wireless connection or wireless coupling. The term "and / or" used here indicates at least one of the items defined by the term, for example, "A and / or B" can be implemented as "A", or as "B", or as "A and B".

[0031] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program that has a predetermined function and works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as processing circuits or memories) or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be part of an overall module or unit that includes the function of the module or unit.

[0032] In order to make the objectives, technical solutions and advantages of this application clearer, the implementation methods of this application will be further described in detail below with reference to the accompanying drawings.

[0033] First, several terms involved in this application are introduced and explained:

[0034] Cloud technology refers to a hosting technology that unifies hardware, software, and network resources within a wide area network (WAN) or local area network (LAN) to enable data computing, storage, processing, and sharing. Cloud technology is a general term for network, information technology, integration technology, management platform technology, and application technology, all based on the cloud computing business model. It can form a resource pool that can be used on demand with flexibility and convenience. Cloud computing technology will become a crucial support. Backend services for technical network systems, such as video websites, image websites, and more portals, require extensive computing and storage resources. With the rapid development and application of the internet industry, every item will likely have its own unique identification mark and will need to be transmitted to backend systems for logical processing. Data of varying levels will be processed separately, and data from all industries will require a strong system backend, which can only be achieved through cloud computing.

[0035] Cloud computing is a computing model that distributes computing tasks across a resource pool consisting of a large number of computers, enabling various application systems to access computing power, storage space, and information services as needed. The network that provides these resources is called the "cloud." To users, these resources appear infinitely scalable and can be accessed at any time, used on demand, expanded at any time, and paid for on a per-use basis.

[0036] As a provider of cloud computing infrastructure, a cloud computing resource pool (referred to as a cloud platform, generally referred to as an IaaS (Infrastructure as a Service) platform) is established. Various types of virtual resources are deployed in the resource pool for external customers to choose and use. The cloud computing resource pool mainly includes: computing devices (virtualized machines, including operating systems), storage devices, and network devices.

[0037] Based on logical functional divisions, the PaaS (Platform as a Service) layer can be deployed on top of the IaaS (Infrastructure as a Service) layer, and the SaaS (Software as a Service) layer can be deployed on top of the PaaS layer. SaaS can also be deployed directly on top of IaaS. PaaS is a platform for software execution, such as databases and web containers. SaaS is a variety of business software, such as web portals and text messaging apps. Generally speaking, SaaS and PaaS are upper layers relative to IaaS.

[0038] Cloud storage is a new concept that has been extended and developed from the concept of cloud computing. A distributed cloud storage system (hereinafter referred to as storage system) refers to a storage system that uses cluster applications, grid technology, and distributed storage file systems to bring together a large number of different types of storage devices (storage devices are also called storage nodes) in the network through application software or application interfaces to work together and provide external data storage and business access functions.

[0039] Currently, storage systems utilize a method for creating logical volumes. When creating a logical volume, physical storage space is allocated for each logical volume. This physical storage space may consist of disks on a specific storage device or several storage devices. When a client stores data on a logical volume, it stores the data on a file system. The file system divides the data into multiple parts, each of which is an object. An object contains not only the data but also additional information such as the data identifier (ID) of the data entity. The file system writes each object to the physical storage space of the logical volume and records the storage location information of each object. Therefore, when a client requests access to data, the file system can provide access to the data based on the storage location information of each object.

[0040] The storage system allocates physical storage space to logical volumes by pre-dividing the physical storage space into stripes based on the estimated capacity of the objects to be stored in the logical volume (this estimate often has a large margin relative to the actual capacity of the objects to be stored) and the Redundant Array of Independent Disks (RAID) groupings. A logical volume can be understood as a stripe, thereby allocating physical storage space to the logical volume.

[0041] Cloud Object Storage (COS), a distributed storage service launched by Tencent Cloud, has no directory hierarchy, no data format restrictions, can accommodate massive amounts of data, and supports HTTP / HTTPS access. Tencent Cloud COS offers unlimited storage buckets and eliminates the need for partition management. It is suitable for a variety of scenarios, including CDN data distribution, data processing, and data lakes for big data computing and analysis.

[0042] Configuration Item (CI): The Information Technology Software Engineering Terminology (GB / T11457) defines a configuration item as "a collection of hardware, software, or both designed for configuration management and treated as a single entity within the configuration management process." A configuration item is an information system component or related item, including software, hardware, and various documents such as change requests, services, servers, environments, devices, network infrastructure, desktops, mobile devices, applications, protocols, and telecommunications services. These components or items are already or will be subject to configuration management control.

[0043] The configuration information processing method, device, electronic device, computer-readable storage medium, and computer program product provided in this application are intended to solve the above technical problems in the prior art.

[0044] The following describes several exemplary embodiments to illustrate the technical solutions of the embodiments of the present application and the technical effects produced by the technical solutions of the present application. It should be noted that the following embodiments can refer to, draw on, or combine with each other, and the same terms, similar features, and similar implementation steps in different embodiments will not be repeated.

[0045] like Figure 1 As shown, Figure 1 The system architecture diagram for implementing the processing of configuration information provided in an embodiment of the present application is exemplarily shown. The terminal 101 includes a first system, and the first system includes multiple configuration packages. Each configuration package stores multiple storage cluster configuration files about the target software. The target software can be the target version of COS software. The terminal 101 can download the configuration package from the first system to the local computer. The server 102 can analyze and process each configuration file in the configuration package, generate a first configuration template and first additional information, and send the first configuration template and the first additional information to the terminal 101. The terminal 101 receives the first configuration template and the first additional information sent by the server 102, and displays the first configuration template and the first additional information. The terminal 101 can also implement configuration changes to the storage cluster by modifying the configuration information in the first system.

[0046] In the embodiments of the present application, server 102 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The terminal can be a smartphone, tablet computer, laptop computer, desktop computer, smart speaker, smart watch, etc., but is not limited to these. The terminal and the server can be directly or indirectly connected via wired or wireless communication, which is not limited in this application.

[0047] Those skilled in the art will appreciate that the number of the above-mentioned terminals may be more or less. For example, the above-mentioned terminal may be only one, or the above-mentioned terminals may be dozens or hundreds, or a larger number. The embodiments of the present application do not limit the number of terminals and device types.

[0048] In some embodiments, the server 102 undertakes the main computing work and the terminal 101 undertakes the secondary computing work; or, the server 102 undertakes the secondary computing work and the terminal 101 undertakes the main computing work; or, the server 102 and the terminal 101 adopt a distributed computing architecture to perform collaborative computing.

[0049] For example, the configuration information processing method in the embodiment of the present application can be completed by the terminal. The following describes the solution in the embodiment of the present application with the terminal as the execution subject.

[0050] The present application provides a processing method based on configuration information, such as Figure 2 As shown, the method includes S201 and S202, specifically:

[0051] S201. Download a configuration package, where the configuration package includes at least one configuration file. Each configuration file is a configuration file required for deploying target software in a corresponding storage cluster, and each configuration file includes a configuration value of at least one configuration item.

[0052] In an embodiment of the present application, the first system is a system for maintaining configuration information for target software. A visual interface of the first system can be displayed on a terminal. The visual interface includes various controls for maintaining the configuration information of the target software, such as controls for adding configuration information, modifying configuration information, deleting configuration information, and querying configuration information. The first system stores configuration packages for the target software. The target software can have multiple versions, and each version of the target software can correspond to multiple configuration packages. Each configuration package can include configuration files for multiple storage clusters. The configuration files for each storage cluster are the configuration files required for deploying the corresponding version of the target software in that storage cluster.

[0053] In an embodiment of the present application, the target software may be COS software, which is a distributed cloud storage software that can be deployed on a storage cluster. The storage cluster implements distributed cloud storage functions based on the COS software.

[0054] In the embodiment of the present application, the configuration information processing method provided by the embodiment of the present application is explained by taking the processing process of configuration information in a configuration package in the first system as an example. The configuration information processing method provided by the embodiment of the present application can process configuration information of any configuration package in the first system.

[0055] When processing configuration information of a configuration package in the first system, it is first necessary to download the configuration package from the first system to the local computer. After downloading the configuration package, the configuration file in the configuration package can be obtained. For each configuration file in the configuration package, the configuration file includes a configuration value of at least one configuration item. It can be understood that the configuration file is a file for storing configuration information, and the configuration information includes configuration items and configuration values ​​corresponding to the configuration items. For example, for the configuration information {"a":"1"}, the configuration item is "a", and the configuration value corresponding to the configuration item is "1". In the embodiment of the present application, the type of the configuration value can be a text type or a numerical type.

[0056] In an embodiment of the present application, by downloading the configuration package to the local computer in the first system, the configuration file in the configuration package and the configuration information in the configuration file can be analyzed and processed locally without affecting the configuration information in the configuration package in the first system, so that the storage cluster corresponding to the configuration package can still deploy the target software normally.

[0057] S202: Generate a first configuration template and first additional information according to the configuration values ​​of the configuration items in the configuration files.

[0058] In the embodiment of the present application, although different clusters deploy unified software, there may be differences in the configuration files of different clusters. The specific manifestation of the difference is that a configuration item is different in different configuration files. By reading the configuration file in the configuration package from the downloaded configuration package, the configuration value of each configuration item in each configuration file is obtained, and the configuration items with the same configuration value in each configuration file are used as the first configuration item, and the configuration items with different configuration values ​​in each configuration file are used as the second configuration item. For example, there are configuration files 1 and 2, and both configuration files include configuration item a and configuration item b, wherein the configuration value of configuration item a in the two configuration files is the same, and the configuration value of configuration item b in the two configuration files is different, then a is the first configuration item and b is the second configuration item.

[0059] A first configuration template and first additional information are generated according to each first configuration item and the configuration value corresponding to the first configuration item, and each second configuration item and the configuration value corresponding to the second configuration item.

[0060] The first configuration template of the embodiment of the present application stores the configuration value of each first configuration item and the variable information of each second configuration item. The variable information of the second configuration item includes the storage path of the corresponding cluster of the second configuration item in the configuration package and the configuration name of the configuration item; the first additional information is used to describe the configuration value of each second configuration item in each configuration file. Because each configuration file in the embodiment of the present application has a corresponding storage cluster, the corresponding configuration value of each second configuration item when the target software is deployed in the corresponding storage cluster can be obtained according to the first additional information.

[0061] For example, for the first configuration item a, its configuration value in each configuration file is 1. For the second configuration item b, its configuration value in the configuration file of storage cluster A is 2, and its configuration value in the configuration file of storage cluster B is 3. In this case, the first configuration template needs to store the first configuration item a and its configuration value 1, and also store the second configuration item b, where the value of the second configuration item b includes the storage path information of the configuration file where the configuration item is located. The first additional information stores the second configuration item b and its configuration value 2 in the configuration file of storage cluster A and its configuration value 3 in the configuration file of storage cluster B.

[0062] It should be noted that for any configuration file in a configuration package, based on the storage cluster corresponding to that configuration file, the configuration value of the second configuration item of the corresponding storage cluster can be obtained from the first additional information. Furthermore, combined with the configuration values ​​of each first configuration item in the first configuration template, all configuration information of that configuration file can be obtained. Therefore, the embodiment of the present application converts the configuration information in all configuration files in the configuration package into the first configuration template and the first additional information, so that the configuration information of the configuration package can be processed using the first configuration template and the first additional information. The embodiment of the present application obtains the configuration files required for the storage cluster to deploy the target software, as well as the configuration items in each configuration file and the configuration values ​​corresponding to the configuration items, by downloading the configuration package; obtains the first configuration items with the same configuration values ​​in each configuration file, and obtains the second configuration items with different configuration values ​​in each configuration file by analyzing the configuration items and the configuration values ​​corresponding to the configuration items in each configuration file; stores the configuration values ​​of the first configuration items and the variable information related to the second configuration items in a first configuration template, and can view the configuration items with the same configuration values ​​in each configuration file corresponding to each storage cluster according to the first configuration template; generates the first additional information by obtaining the configuration value of the second configuration item in each configuration file, and can view the configuration items with different configuration values ​​in each configuration file according to the first additional information. Therefore, the embodiment of the present application can globally manage and maintain the configuration items and configuration information in the configuration package through the generated first configuration template and the first additional information. By globally viewing the configuration information of each storage cluster in the configuration package, it is possible to promptly discover incorrect configuration information in the corresponding configuration files of each storage cluster and promptly modify the corresponding configuration information in each storage cluster, thereby improving the efficiency of processing the configuration information of each storage cluster in the configuration package, enabling each storage cluster to smoothly deploy and run the target software and realize the management of the full cluster configuration.

[0063] Based on the above embodiments, as an optional embodiment, a first configuration template is generated according to the configuration values ​​of each configuration item in each configuration file, including:

[0064] S301. For each configuration file, perform key-value pair processing on the configuration file to obtain at least one first key-value pair of the configuration file, where the key of each first key-value pair is the configuration name of the corresponding configuration item, and the value is the configuration value of the corresponding configuration item;

[0065] S302. For each first key-value pair, traverse each configuration file. If it is determined that the values ​​of the first key-value pair in each configuration file are the same, use the key of the first key-value pair as the first configuration item. If it is determined that the values ​​of the first key-value pair in each configuration file are different, use the key of the first key-value pair as the second configuration item.

[0066] S303: Construct a corresponding second key-value pair for each second configuration item, where the key of the second key-value pair is the configuration name of the second configuration item, and the value is the configuration name of the second configuration item and the storage path of the second configuration item in each configuration file;

[0067] S304: Store a first key-value pair corresponding to the first configuration item and a second key-value pair corresponding to each second configuration item in the first configuration template.

[0068] In the embodiment of the present application, for each configuration file, the configuration information of each line in the configuration file is read and converted into a key-value pair format. For example, the configuration information {"a":"1"} can be converted into {a=1}.

[0069] Therefore, each configuration item in the configuration file and the configuration value corresponding to the configuration item can be converted into a first key-value pair, wherein the configuration name of the configuration item corresponds to the key name of the first key-value pair, and the configuration value of the configuration item corresponds to the value of the first key-value pair. Because each configuration file includes at least one configuration value of a configuration item, at least one first key-value pair of the configuration file can be obtained.

[0070] The pre-conversion configuration information often contains comments and specific formatting, such as curly braces and semicolons, to describe the structure and meaning of the configuration items. The post-conversion key-value information extracts the key-value pairs from the configuration information and presents them as key-value pairs, using a specific delimiter between the key and value, such as an equals sign (=). By comparing the pre-conversion and post-conversion formats, you can clearly see the corresponding configuration value of the configuration item.

[0071] In the embodiment of the present application, the configuration information in the configuration file is converted into a key-value pair format, so that the configuration information in the configuration file is clear and easy to process, and each key-value pair can clearly reflect the configuration name and configuration value of the configuration item, making it easy to find and modify the configuration information.

[0072] In an embodiment of the present application, the first configuration item and the second configuration item are obtained through configuration information in a key-value pair format. For each key of the first key-value pair in the configuration package, the first key-value pair containing the key is obtained from each configuration file. If the values ​​of the first key-value pair containing the key in each configuration file are the same, the key is used as the first configuration item. If the values ​​of the first key-value pair containing the key in each configuration file are different, the key is used as the second configuration item.

[0073] In an embodiment of the present application, each key in the configuration package is divided into a first configuration item and a second configuration item based on the first configuration key in the configuration file by traversing each configuration file, so as to obtain configuration items in the configuration package without omission.

[0074] In an embodiment of the present application, for each second configuration item, there are differences in the first key-value pairs corresponding to the second configuration item in each configuration file, and a corresponding second key-value pair is set for the second configuration item, wherein the key of the second key-value pair is the configuration name of the second configuration item, and the value is the configuration name of the second configuration item and the storage path of the second configuration item in each configuration file.

[0075] In an embodiment of the present application, a first key-value pair corresponding to each first configuration item and a second key-value pair corresponding to each second configuration item are stored in a first configuration template. For example, for the first configuration item a, the first key-value pair of the first configuration item is "a=1", then "a=1" is stored in the first configuration template, and for the second configuration item b, the first key-value pair of the second configuration item in the configuration file corresponding to storage cluster A is "b=2", and the first key-value pair in the configuration file corresponding to storage cluster B is "b=3", and the storage path of the corresponding configuration file is " / usr / local / conf / cluster.conf", then the second key-value pair of the second configuration item b is "b={{usr_local_conf_cluster_conf_b}}", and "b={{usr_local_conf_cluster_conf_b}}" is stored in the first configuration template.

[0076] In an embodiment of the present application, by setting a second key-value pair for the second configuration item and storing the first key-value pair of the first configuration item and the second key-value pair of the second configuration item in the first configuration template, the efficiency of generating the first configuration template is improved compared to manually writing the first configuration template. The same configuration information and different configuration information of each storage cluster in the configuration package can be clearly obtained in the first configuration template, and the configuration information in the configuration package can be viewed more intuitively.

[0077] Based on the above embodiments, as an optional embodiment, generating the first configuration template and the first additional information according to the configuration values ​​of the configuration items in the configuration files further includes:

[0078] For each second configuration item, a corresponding third key-value pair is constructed, where the key of the third key-value pair is the value of the second key-value pair of the second configuration item, and the value of the third key-value pair is the value of the second configuration item in the corresponding configuration file;

[0079] A third key-value pair corresponding to the second configuration item is stored in the first additional information.

[0080] In an embodiment of the present application, a first configuration template stores a first key-value pair for a first configuration item and a second key-value pair for a second configuration item, wherein the value of the second key-value pair for the second configuration item includes the configuration name of the second configuration item and the storage path of the second configuration item in each configuration file. Accordingly, when generating the first additional information, a third key-value pair is constructed for the second configuration item, the key of the third key-value pair is set to the value of the second key-value pair, and the value of the third key-value pair is set to the value of the second configuration item in the corresponding configuration file.

[0081] The third key-value pair corresponding to the second configuration item is stored in the first additional information. For example, if the first key-value pair of the second configuration item b in the configuration file corresponding to storage cluster A is "b=2" and the first key-value pair in the configuration file corresponding to storage cluster B is "b=3", and the storage path of the corresponding configuration files is " / usr / local / conf / cluster.conf", then the third key-value pair of the second configuration item b is "usr_local_conf_cluster_conf_b=1" and "usr_local_conf_cluster_conf_b=2". "usr_local_conf_cluster_conf_b" and "1" are uploaded to the first additional information as a set of data, and "usr_local_conf_cluster_conf_b" and "2" are uploaded to the first additional information as a set of data. As an optional embodiment, when uploading the third key-value pair of the second configuration item to the first additional information, the storage cluster name corresponding to the second configuration item can be uploaded to the first additional information together with the third key-value pair information. For example, "usr_local_conf_cluster_conf_b", "1" and "A" are uploaded as a group of data to the first additional information, and "usr_local_conf_cluster_conf_b", "1" and "B" are uploaded as a group of data to the first additional information.

[0082] As shown in Table 1 and Table 2, Table 1 is the first configuration template for the configuration file cluster provided in the embodiment of the present application, and Table 2 is the first additional information for the configuration file cluster provided in the embodiment of the present application. In Table 1, "c=1" indicates that there is a key-value pair "c=1" in the cluster configuration file of each storage cluster, "d={{usr_local_conf_cluster_conf_d}}", and "f={{usr_local_conf_cluster_conf_f}}" indicate that the configuration values ​​of configuration item d and configuration item f in the cluster configuration file of each storage cluster are different, and the storage path of the cluster configuration file of each storage cluster is " / usr / local / conf / cluster.conf", and the two curly brackets "{{}}" are used to indicate the variable injection point. If necessary, the configuration template can be in text format. Here, for the convenience of display, it is explained in the form of a table.

[0083] Table 1 cluster.conf - configuration template

[0084] Key-value pair information c=1 d={{usr_local_conf_cluster_conf_d}} f={{usr_local_conf_cluster_conf_f}}

[0085] As shown in Table 2, Table 2 is used to store key-value pairs of different configuration values ​​in the cluster configuration files of each storage cluster. For configuration item d, the variable name of the configuration item is "usr_local_conf_cluster_conf_d", and for configuration item f, the variable name of the configuration item is "usr_local_conf_cluster_conf_f". For storage cluster A, the configuration value corresponding to configuration item d is 2, and the configuration value corresponding to configuration item f is 3. For storage cluster B, the configuration value corresponding to configuration item d is 3, and the configuration value corresponding to configuration item f is 4.

[0086] Table 2 cluster.conf-variable information

[0087] variable name variable value Corresponding cluster usr_local_conf_cluster_conf_d 2 A usr_local_conf_cluster_conf_d 3 B usr_local_conf_cluster_conf_f 3 A usr_local_conf_cluster_conf_f 4 B

[0088] As can be seen from Table 1 and Table 2, by injecting the first additional information into the first configuration template according to the variable name, all configuration information about the cluster configuration file of each storage cluster can be obtained.

[0089] In this embodiment of the present application, by storing the third key-value pair information of the second configuration item in the first additional information, the specific values ​​corresponding to different configuration items in the configuration files of each storage cluster can be clearly viewed in the first additional information. At the same time, the key of the third key-value pair of the second configuration item in this embodiment of the present application corresponds to the value of the second key-value pair, so the information in the first additional information can be injected into the first template to obtain the configuration information of each storage cluster in the configuration file. Compared with manually writing the first additional information, the efficiency of generating the first additional information is improved.

[0090] Based on the above embodiments, as an optional embodiment, the first configuration template and the first additional information are generated according to the configuration values ​​of the configuration items in the configuration files, and the following is also included:

[0091] Make at least one of the following information consistent in each configuration file:

[0092] The storage path of each configuration file in the corresponding storage cluster in the configuration package;

[0093] The file format of each configuration file; and

[0094] The type of configuration items in each configuration file.

[0095] Considering that, in the past, operations personnel modified the configuration information of each storage cluster within a configuration package, the number of target software configuration files for each storage cluster varied. This led to the possibility of missing configuration files when operations personnel manually constructed configuration file templates for each storage cluster. If the first configuration template generated with the missing configuration files was distributed to each storage cluster, it would inevitably cause abnormal operation of each storage cluster.

[0096] In an embodiment of the present application, the storage paths of the corresponding storage clusters in the configuration package are set to be consistent. The configuration package stores configuration files for target software in multiple storage clusters. The number of configuration files for the target software in each storage cluster and the storage path of each configuration file in different storage clusters should be the same. However, due to the fact that in the past, when the configuration package was modified, the operation and maintenance personnel mistakenly deleted the configuration file in a storage cluster, resulting in the problem that the number of configuration files for the target software in multiple storage clusters was different. In addition, the storage locations of configuration files with the same name in different storage clusters were not guaranteed to be consistent. As a result, when the configuration information of the configuration package in the first system is modified, for example, when the same configuration file in each storage cluster folder is modified, the operation and maintenance personnel need to spend a lot of time to find the configuration file in different storage cluster folders because the storage path of the configuration file in different storage cluster folders is different, that is, the efficiency of modifying the configuration file is low. Considering that the file formats of a certain configuration file in different storage clusters in the configuration package are not related, the operation and maintenance personnel need to analyze the configuration information of various file formats of each storage cluster when compiling the first configuration template, which can easily lead to confusion and omission of key configuration items in the generated first configuration template and first additional information. If the first configuration template of the missing configuration item and the first additional information of the missing configuration item are used to change the configuration information of each storage cluster regarding the target software, it will inevitably cause abnormal operation of each storage cluster.

[0097] In an embodiment of the present application, the encoding formats of various configuration files in the configuration package may be different. For example, some configuration files may be in UTF-8 encoding format, and some configuration files may be in ASCII encoding format. As a result, the operation and maintenance personnel may need to spend extra time and energy to identify the encoding format of each configuration file, and at the same time, a matching editor of the corresponding encoding format is required to process the configuration file. Therefore, it is necessary to determine the encoding format of each configuration file and convert each configuration file into the same encoding format, for example, convert all configuration files into UTF-8 format. In addition, those skilled in the art should understand that since it is necessary to convert the configuration information in the configuration file into a key-value pair format in the embodiment of the present application, after unifying the encoding format of the configuration file, there is no need to convert the configuration information of different encoding formats into a key-value pair format respectively, thereby improving the efficiency of converting the configuration information into a key-value pair format. In some embodiments, before unifying the encoding formats of various configuration files, the file formats in the configuration files can also be distinguished. For example, the ASCII encoding formats of various configuration files in the xml file format are converted into the UTF-8 format, and the ASCII encoding formats of various configuration files in the kv format are converted into the UTF-8 format. That is, the encoding formats of configuration files of different file formats are converted separately. Those skilled in the art should know that configuration files of different file formats have different corresponding conversion methods when performing encoding format conversion. Therefore, in order to improve the efficiency of adjusting the encoding formats of various configuration files to be consistent, corresponding encoding format conversion is performed for the file formats of the configuration files.

[0098] Given that the configuration values ​​corresponding to each configuration item in a configuration package may differ across different storage clusters, operations and maintenance personnel are prone to omissions when manually generating the first configuration template and the first additional information. Furthermore, with tens of thousands of configuration items and values, accurately compiling the first configuration template and the first additional information requires significant manpower and time. If the configuration values ​​corresponding to the configuration items in the first configuration template and the first additional information are inaccurately recorded, changes to the target software configuration information of each storage cluster based on the first configuration template and the first additional information will inevitably cause abnormal operation of each storage cluster.

[0099] In an embodiment of the present application, the types of configuration items of each configuration file are determined, and the types of configuration items in each configuration file are determined by traversing each configuration file. For any configuration item in each configuration file, if there is a configuration file that does not include the configuration item, the configuration item is added to the configuration file. Because in the past, when the configuration package was changed, the operation and maintenance personnel mistakenly deleted the configuration items in the configuration file, resulting in the problem that the types of configuration items in the same configuration file for multiple storage clusters are different. For example, the configuration item "time" is included in the configuration file of storage cluster A, but the configuration item "time" is not included in the configuration file of storage cluster B. Those skilled in the art should understand that when the target software is running, after some configuration items are missing, the target software can process the configuration value of the configuration item as the default value, which will not affect the operation of the target software. Therefore, the operation and maintenance personnel will not discover the loss of the configuration item in time. In the present application, by traversing the types of configuration items in each configuration file to see if they are consistent, the configuration items of the configuration file of each storage cluster are supplemented and corrected, thereby achieving standardization of configuration information.

[0100] In an embodiment of the present application, each configuration file can be converted into a key-value pair format. In the key-value pair format, by adjusting the types of keys in each configuration file to be consistent, the types of configuration items in each configuration file can be adjusted to be consistent. By standardizing the configuration information, it is ensured that the first configuration template does not omit each configuration item in the configuration file, and the accuracy of the configuration information corresponding to each configuration item in the first additional information is guaranteed, so that the configuration information of each storage cluster can be globally checked to see if it is missing, reducing the possibility of failure to deploy the target software due to manual modification of the storage cluster configuration information or manual migration of the configuration information.

[0101] Based on the above embodiments, as an optional embodiment, at least one of the following information in each configuration file is adjusted to be consistent, including:

[0102] Adjust the storage paths of the corresponding storage clusters in the configuration package for each configuration file to be consistent;

[0103] After ensuring that the storage paths of the corresponding storage clusters in the configuration package are consistent, align the encoding formats of the configuration files.

[0104] After ensuring that the file formats of the configuration files are aligned, the types of the configuration items in the configuration files are aligned.

[0105] In this embodiment, first, the storage paths of the corresponding storage clusters in the configuration packages of the various configuration files may be set to be consistent, then the types of the configuration items in the various configuration files may be adjusted to be consistent, and finally the types of the configuration items in the various configuration files may be adjusted to be consistent.

[0106] By setting the storage paths of the corresponding storage clusters in the configuration package to be consistent for each configuration file, it is beneficial to traverse each configuration file according to the storage path and adjust the encoding format of each configuration file. After the encoding format of each configuration file is adjusted to be consistent, it is beneficial to traverse each configuration file with the same encoding format according to the storage path, which is beneficial to improve the efficiency of adjusting the configuration item types of each configuration file to be consistent.

[0107] Based on the above embodiments, as an optional embodiment, each configuration file is stored in a folder of a corresponding storage cluster in the configuration package;

[0108] Adjust the storage paths of various configuration files in the corresponding storage cluster folders to be consistent, including:

[0109] For each storage cluster folder, perform data structure analysis on the folder to obtain the folder's file directory structure. The file directory structure is used to describe the name and storage path of the configuration files in the folder.

[0110] Adjust the storage paths of each configuration file in the corresponding storage cluster folder to be consistent based on the file directory structure of all folders.

[0111] In an embodiment of the present application, by performing data structure analysis on each storage cluster folder, the configuration file directory structure of each storage cluster folder is obtained. Through the configuration file directory structure, the number of configuration files in each storage cluster folder, as well as the name and storage path of each configuration file can be viewed.

[0112] For any configuration file under any storage cluster folder, determine whether the configuration file exists under different storage cluster folders. If the configuration file does not exist in a certain storage cluster folder, add the configuration file to the storage cluster folder, and further determine whether the storage paths of the configuration file in different storage cluster folders are the same. If a certain storage cluster folder exists and the storage path of the configuration file under the storage cluster folder is different from the storage path of the configuration file under other storage cluster folders, modify the storage path of the configuration file under the storage cluster folder to the storage path of the configuration file under other storage cluster folders.

[0113] For example, if the path of configuration file 1 in storage cluster A is "\a\b\configuration file 1", and the path of configuration file 1 in storage cluster B is "a\configuration file 1", then the path of configuration file 1 in storage cluster B can be modified to "\a\b\configuration file 1". Those skilled in the art should understand that the storage path referred to here is the path relative to storage cluster A and storage cluster B, that is, the folder of storage cluster A has subfolder a, and subfolder a has subfolder b, and the folder of storage cluster B has subfolder a, and subfolder a has subfolder b. The paths in the embodiments of the present application are consistent, that is, configuration files with the same name in different storage clusters are stored in the corresponding storage paths of different storage cluster folders, that is, the subpaths under the folders of each storage cluster are consistent.

[0114] like Figure 3 As shown, Figure 3 The following is an exemplary diagram of a process for adjusting the storage paths of various configuration files to be consistent, as provided in an embodiment of the present application. Figure 3 As shown, in an embodiment of the present application, a configuration package is downloaded in the first system, and the folders of each storage cluster are obtained from the configuration package. By performing data structure analysis on each folder, the file directory structure of each folder is generated, and a configuration file is specified from the configuration package. At the same time, a preset storage path is specified for the configuration file. The preset storage path can be specified by the operation and maintenance personnel based on the storage path of the configuration file in each folder. The target software can read the configuration information of the configuration file according to the preset directory. For example, the storage path of the configuration file in most folders is used as the specified storage path, and the storage path of the specified file in each folder is verified to be consistent with the preset storage path. If the verification fails, the name of the folder where the specified configuration file is not in the preset storage path is output. At this time, the storage path of the configuration file specified in the corresponding folder is adjusted according to the output folder name. It should be noted that the storage path of the verification configuration file in each folder in the embodiment of the present application is all the preset storage path, including verifying whether the specified configuration file exists in each folder.

[0115] In this embodiment, by analyzing the data structure of the folders in each storage cluster and extracting the directory structure of the folders in each storage cluster, the storage path of the configuration files in each folder can be obtained. Finally, based on the storage paths of the configuration files in each folder, the storage paths of the configuration files in each folder are adjusted to be consistent, so that the number of configuration files in the folders of each storage cluster is consistent and the configuration files have the same storage paths.

[0116] According to the above steps, it can be seen that before obtaining the first configuration template and the first additional information, the embodiment of the present application performs a standardization operation on the configuration information in the configuration package, such as Figure 4 As shown, Figure 4 The following is an exemplary diagram showing the standardized flow chart of the configuration information provided in the embodiment of the present application. Figure 4 As shown, the configuration information standardization process provided by the embodiment of the present application includes the standardization of the configuration file storage path, the standardization of the configuration file format and the standardization of the types of configuration items. The standardization of the configuration file storage path has been Figure 3 It is introduced in the description; configuration file format standardization includes determining the file format of the configuration file, determining the encoding format of the configuration file, and adjusting the encoding format of the corresponding configuration file to be consistent according to the file format of the configuration file. For example, for the XML file format and the KV file format, the encoding formats of the configuration files in the XML file format and the KV format are adjusted to be consistent respectively. The final encoding can be in UTF-8 format, and the configuration information in the configuration file is parsed into configuration information in the form of a row set; standardization of the types of configuration items includes reading the configuration information of each line in the form of a configuration file row set, converting the configuration information of the configuration file into a key-value pair format based on the key-value pair conversion of the configuration information of each line, and comparing the key-value pair information of each configuration file. When there are many key-value pair information in a line, the key-value pair information of the line is stored in an ordered set, such as an array, a list, or a dictionary to maintain the order of the key-value pairs, and the key-value pair information is compared in a loop popping manner. According to the comparison result, the types of keys of each configuration file are adjusted to be consistent.

[0117] Based on the above embodiments, as an optional embodiment, the downloaded configuration package is downloaded from the first system at the current moment. The configuration information processing method provided in the embodiment of the present application further includes:

[0118] Comparing the first configuration template with the second configuration template in the second system, and uploading the first configuration template to the second system if the first configuration template is different from the second configuration template;

[0119] comparing the first additional information with the second additional information in the second system, and uploading the first additional information to the second system if the first additional information is different from the second additional information;

[0120] The second configuration template and the second additional information in the second system are generated according to the configuration package downloaded from the first system at a historical moment.

[0121] In the embodiment of the present application, the first system and the second system may be target software change systems, which are used to change the configuration information of each storage cluster.

[0122] In the first system, configuration files for target software across multiple storage clusters are stored in a configuration package. To modify the configuration information in the package, the corresponding configuration files must be found and modified. Because the configuration package includes configuration files for multiple clusters, each of these configuration files shares many identical configuration items. This requires extensive duplication of effort when modifying the package, resulting in low efficiency.

[0123] In an embodiment of the present application, a first configuration template and first additional information are generated. All configuration information in the configuration package can be viewed globally through the first configuration template and the first additional information. Therefore, in an embodiment of the present application, the generated first configuration template and first additional information are uploaded to the second system, and changes to the configuration package are implemented through the second system.

[0124] In this embodiment of the present application, to distinguish the configuration template in the second system from the first configuration template and the first additional information stored locally, the configuration template in the second system is referred to as the second configuration template, and the additional information is referred to as the second additional information. The second system is used to store the second configuration template and the second additional information, and generates the second configuration template and the second additional information based on the configuration package downloaded from the first system at a historical moment.

[0125] For the first configuration template, if the second configuration template does not exist in the second system, the first configuration template is directly uploaded to the second system. If the second configuration template exists in the second system, the first configuration template is compared with the second configuration template. If the first configuration template and the second configuration template are different, the first configuration template is uploaded to the second system. Those skilled in the art should understand that after the first configuration template and the first additional information are uploaded to the second system for the first time, the first system will not stop using it immediately, that is, the first system will continue to be used by the operation and maintenance personnel, so the configuration information in the configuration package will also change. Therefore, it is necessary to generate the first configuration template from time to time, compare the first configuration template with the second configuration template in the second system, and obtain changes in the configuration package in the first system in a timely manner.

[0126] Similarly, for the first additional information, if the second additional information does not exist in the second system, the first additional information is directly uploaded to the second system. If the second additional information exists in the second system, the first additional information is compared with the second additional information. If the first additional information and the second additional information are different, the first additional information is directly uploaded to the second system. It should be noted that both the first additional information and the second additional information are stored in the form of lists. The first additional information includes variable information for each second configuration item, the value corresponding to the second configuration item, and the storage cluster corresponding to the configuration file corresponding to the second configuration item. That is, the second additional information forms a mapping relationship of second configuration item - storage path of corresponding configuration file - configuration value - storage cluster corresponding to the configuration file. When the first additional information includes multiple second configuration items, each second configuration item is compared with the second configuration item in the second additional information. Only the second configuration items in the first additional information that are different from the second additional information are uploaded to the second system. In effect, the first additional information is uploaded in an incremental manner, which improves upload efficiency.

[0127] In the embodiment of the present application, by comparing the first configuration template with the second configuration template, and comparing the first additional information with the second additional information, the configuration information of the configuration package after the change in the first system is obtained in a timely manner.

[0128] In an embodiment of the present application, the second system stores all configuration information in the configuration package downloaded from the first system at a historical moment in the form of a second configuration template and second additional information, which is used to migrate the configuration information from the first system to the second system, and can more conveniently process the configuration information in the second system.

[0129] In an embodiment of the present application, the configuration files of the storage clusters of all deployment target software can be modified based on the second system. Because the configuration files of all storage clusters are stored in various configuration packages in the first system, according to the configuration information processing method provided in an embodiment of the present application, the various configuration packages in the first system can be migrated to the second system, and the configuration information of the storage clusters of all deployment target software can be modified in the second system.

[0130] In this embodiment of the present application, the second system can implement processes such as configuration change application, review, approval, release, and verification, and has a visual interface that allows intuitive access to the progress nodes of the configuration change task. Based on the change task, the second system modifies the configuration package accordingly, combines the second configuration template in the configuration package with the second additional information, and forms a configuration file that can be recognized by the corresponding storage cluster, so that the corresponding storage cluster can run the target software according to the configuration information.

[0131] In some embodiments, it can be determined whether to upload the first configuration template and the first additional information according to the specific execution task of the operation and maintenance personnel, such as Figure 5 As shown, Figure 5 The flowchart of uploading the first configuration file and the first additional information to the second system provided in the embodiment of the present application is shown as an example. Figure 5 As shown, first generate a first configuration template and first additional information, for the three steps of storage path consistency comparison, configuration file format consistency comparison and configuration item type consistency comparison, if any of the three steps fails, output an error message, which is used to achieve the same storage path of each configuration file, the same format of each configuration file and the same type of configuration items in each configuration file. After the three steps are compared and consistent, extract the first key-value pair of the first configuration item and the second key-value pair of the second configuration item in the configuration file, determine the storage path of each configuration file where the second configuration item is located according to the value of the second key-value pair of the second configuration item, obtain the second key-value pair of the second configuration item in each configuration file, generate a first configuration template according to the first key-value pair of the first configuration item and the second key-value pair of the second configuration item, and generate the first additional information according to the third key-value pair of the second configuration item.

[0132] In actual application scenarios, COS software corresponds to multiple versions of configuration packages, and all configuration packages are stored in the first change system of COS. Configuration changes can only be achieved by manually modifying the configuration information of the configuration files in the configuration packages in the first change system, resulting in low configuration change efficiency and prone to errors. Based on this, the embodiment of the present application provides a flexible change solution, which generates corresponding configuration templates for each configuration package in the first system, and stores the configuration templates in the second change system. Configuration changes are achieved based on the configuration templates in the second change system, thereby improving change efficiency and improving the operational efficiency of the entire cluster.

[0133] The operation and maintenance personnel download a configuration package in the first change system of the COS software. The first change system always includes multiple configuration packages. Each configuration package includes multiple cluster configuration files for deploying COS software. The number and configuration items of the configuration files for deploying COS software in clusters corresponding to the same configuration package should be the same. The configuration information corresponding to the configuration items can be different, but the operation and maintenance personnel corresponding to the clusters corresponding to the same configuration package may be different. Different operation and maintenance personnel change the configuration information of the corresponding cluster based on the first system, resulting in different numbers and configuration items of configuration files corresponding to the deployment of COS software in different clusters. Therefore, in order to improve the efficiency of generating templates, the configuration files in the configuration package are standardized.

[0134] The standardization includes verifying whether the paths of configuration files with the same name in the folders of their respective corresponding clusters are consistent, verifying whether the encoding formats of configuration files with the same name are consistent, and verifying whether the types of configuration items are consistent. After the verification is passed, a configuration template is generated for each configuration file with the same name in each cluster based on the standardized configuration file, thereby generating a configuration template package for the corresponding configuration package. The configuration template includes the same key-value pair information for each configuration file with the same name. Different key-value pair information is stored as variables. The key of the key-value pair is recorded in the configuration template, and the value of the key is used to mark the storage path and key name of the configuration file where the key is located. When the key-value pair is stored as a variable, the cluster corresponding to the key-value pair is stored. Therefore, according to the cluster corresponding to the variable, after injecting it into the annotation point of the configuration template, the configuration file corresponding to the cluster in the configuration package of the first system can be obtained.

[0135] When uploading configuration templates and variables to the second change system for the first time, all configuration templates and configuration variables are stored, meaning the configuration templates and configurations are uploaded in full. In actual applications, after the second change system is generated, some operations and maintenance personnel may still modify the configuration information of each cluster based on the first change system. Therefore, it is necessary to continuously obtain various configuration packages from the first change system over a long period of time and synchronize the configuration information from the first change system to the second change system. When subsequently uploading configuration templates and variables to the second change system, operations and maintenance personnel can select a configuration template generation strategy, including generating configuration templates for verification without uploading (to verify whether the configuration information in the first change system has been updated), generating configuration templates and uploading them with one click, or generating configuration templates with a delayed upload (to change the cluster configuration information after stopping the target software at an appropriate time). For generated variables, the options include full upload (uploading all variables), incremental upload (uploading only variables not stored in the second change system), and no upload of generated variables. Configuration templates and variables can be stored locally, allowing for modification of the cluster configuration information after stopping the target software at an appropriate time. The specific method for uploading configuration templates and variables is determined by operations and maintenance personnel based on actual needs.

[0136] To more clearly describe the configuration information processing method proposed in the embodiment of the present application, a complete embodiment is given below. Figure 6 As shown, Figure 6 The flowchart of another configuration information processing method provided by the embodiment of the present application is shown as an example. Figure 6 Shown, including:

[0137] S601, aligning the storage paths of the corresponding storage clusters in the configuration package with each configuration file;

[0138] S602, adjusting the formats of various configuration files to be consistent;

[0139] S603, adjusting the types of configuration items in each configuration file to be consistent;

[0140] S604: For each configuration file, perform key-value pair processing on the configuration file to obtain at least one first key-value pair of the configuration file, where the key of each first key-value pair is the configuration name of the corresponding configuration item, and the value is the configuration value of the corresponding configuration item;

[0141] S605. For each first key-value pair, traverse each configuration file. If it is determined that the values ​​of the first key-value pair in each configuration file are the same, use the key of the first key-value pair as the first configuration item. If it is determined that the values ​​of the first key-value pair in each configuration file are different, use the key of the first key-value pair as the second configuration item.

[0142] S606. Construct a corresponding second key-value pair for each second configuration item, where the key of the second key-value pair is the configuration name of the second configuration item, and the value is the configuration name of the second configuration item and the storage path of the second configuration item in each configuration file;

[0143] S607: Store a first key-value pair corresponding to the first configuration item and a second key-value pair corresponding to each second configuration item in the first configuration template;

[0144] S608. Construct a corresponding third key-value pair for each second configuration item, where the key of the third key-value pair is the value of the second key-value pair of the second configuration item, and the value of the third key-value pair is the value of the second configuration item in the corresponding configuration file;

[0145] S609: Store a third key-value pair corresponding to the second configuration item in the first additional information;

[0146] S610: Compare the first configuration template with the second configuration template in the second system. If the first configuration template is different from the second configuration template, upload the first configuration template to the second system.

[0147] S611: Compare the first additional information with the second additional information in the second system. If the first additional information is different from the second additional information, upload the first additional information to the second system.

[0148] like Figure 7 As shown, Figure 7 The following is a flow chart showing another method for processing configuration information provided by an embodiment of the present application. Figure 7As shown, the operation and maintenance personnel implement the steps of detecting consistency, generating a first configuration template, generating first additional information, and uploading the generated first configuration template and first additional information to the second system through the configuration consistency tool. Specifically, the operation and maintenance personnel download the configuration consistency tool on the terminal, and then download the configuration package for deploying COS software on each storage cluster from the first system at the current moment. The configuration package includes all the configuration files required by each storage cluster when deploying the target software. Each configuration file includes configuration items and configuration values ​​corresponding to the configuration items, verifies the storage path of each configuration file, and receives verification inconsistency information; when the storage path verification passes, the operation and maintenance personnel specifies the configuration file to verify whether the format of the configuration file is consistent in each storage cluster folder, and whether the type of configuration items in the configuration file under each storage cluster file is consistent. If the verification is consistent, the first template generation step is entered. If the verification is inconsistent, the inconsistent information is returned to the operation and maintenance personnel.

[0149] After the verification is consistent, when generating the first configuration template, the operation and maintenance personnel obtain the configuration items of the specified file in each storage cluster folder and the configuration values ​​corresponding to the configuration items, and generate the first configuration template based on each configuration item and the corresponding configuration value. When generating the first configuration template, it is determined that each configuration item is the first configuration item or the second configuration item, and the first configuration template is generated based on the first key-value pair of the first configuration item and the second key-value pair of the second configuration item, and the returned first configuration template information is received; when generating the first additional information, the operation and maintenance personnel obtain the third key-value pair of the second configuration item based on the second key-value pair of the second configuration item in the first configuration template, and generate the first additional information based on the third key-value pair of the second configuration item; when uploading the first configuration template and the first additional information to the second system, the corresponding information can be uploaded according to actual needs.

[0150] like Figure 7As shown in , it is possible to upload the first configuration template, upload the first configuration template and part of the first additional information, upload the first configuration template and upload all of the first additional information, upload all of the first additional information, and upload part of the first additional information. Specifically, if this upload is the first time the configuration information of the first system is migrated to the second system, all of the first configuration templates and all of the first additional information are uploaded. If this upload is not the first time the configuration information of the first system is migrated to the second system, the first configuration template is compared with the second configuration template in the second system. If they are inconsistent, the first configuration template is uploaded to the second system. If they are consistent, no uploading is required. The first additional information is compared with the second additional information. If the comparison is inconsistent, the first configuration template is uploaded to the second system. If the comparison is consistent, no uploading of the first additional information is required. It should be understood by those skilled in the art that the second system can be used to change and manage the configuration information of the COS of each storage cluster. Therefore, when the configuration information is uploaded to the second system, it will affect the target software running at the corresponding time of each storage cluster. Therefore, the configuration information in the first system is compared with the configuration information in the second system. Only when the two are inconsistent will the upload be performed to prevent frequent uploading of configuration information from affecting the target software running in each storage cluster. In addition, as an optional embodiment, after generating the first configuration value template and the first additional information, the second system does not need to be uploaded immediately. The operation and maintenance personnel can choose when to upload the change system to achieve flexible changes to the configuration information of each storage cluster regarding the deployment target software, thereby improving the operational efficiency of the entire cluster.

[0151] like Figure 8 As shown, Figure 8 Schematic diagram of the architecture for processing configuration information provided in an embodiment of the present application. Operation and maintenance personnel download a configuration package from the first system, which includes configuration files for the COS software of each storage cluster, and the creation time of the configuration package is marked in the first system. The number and corresponding file names of the configuration files of each storage cluster stored in the same configuration package should be the same, that is, each storage cluster is based on the same version of the configuration package to deploy the COS software. However, because the operation and maintenance personnel have modified the configuration files of each storage cluster in the first system in the past, the number of configuration files corresponding to each storage cluster in the configuration package is different, and the types of configuration items in each configuration file are different. Therefore, the configuration files of each storage cluster are standardized through the configuration consistency tool.

[0152] The configuration consistency tool includes a row processor module, a file processing module and a folder processing module, wherein the row processor module is at the bottom layer of logic, the file processing module is at the middle layer of logic, and the folder processing module processes the top layer of logic.

[0153] The row processor module includes a row extractor, a row data result checker, a row variable preprocessor checker, a row key-value pair extractor, and a row template converter. The row processor is used to extract, check configuration key values, process text, extract variables, and convert row templates for a single configuration file line. The row extractor is used to extract the row data of the configuration file and convert it into a data structure that can be processed by other row processors, and that is required by the configuration folder processing module and the file processing module. The row kv checker is responsible for performing key-value comparisons between two different configuration files; the row template converter converts the results of the row kv checker into row data in the configuration template, and the row text processor prints the row data in the actual configuration template; the row key-value pair extractor and the row variable preprocessor work together to determine whether the configuration row variable value needs to be extracted and how to extract it, and the row text processor performs the final variable extraction.

[0154] The file processing module includes a file conversion submodule, a multi-file format compatibility submodule, a large file processing submodule, and an output conversion submodule. This module processes each line of the configuration file using a line processor, providing support for multiple file formats. By generating ordered sets of complex key-value pairs, it implements functions such as file content comparison and verification, and file extraction to generate configuration file templates. This module is also compatible with large configuration files and will not fail when encountering such large configuration files.

[0155] The configuration folder processing module has the folder path verification function of the configuration file, the configuration item comparison and verification function, the configuration template package generation function and the common key-value pair variable conversion function. The incremental comparison submodule determines the difference between the variables generated in the first system and the variables stored in the second system, determines the variable increment, and is used to output the configuration template, variables, and variable increments. The console output submodule determines whether the configuration items in the variables are consistent with the configuration items in the template. If they are inconsistent, manual verification is performed. If they are consistent, the configuration template package, variables, and variable increments are selectively uploaded to the second system through the reporting submodule.

[0156] The embodiment of the present application provides a device for processing configuration information, such as Figure 9 As shown, the configuration information processing device may include: an acquisition module 901 and a generation module 902, wherein:

[0157] An acquisition module 901 is configured to download a configuration package, wherein the configuration package includes at least one configuration file, each of which is required for deploying target software in a corresponding storage cluster, and each of which includes a configuration value of at least one configuration item;

[0158] Generation module 902 is used to generate a first configuration template and first additional information based on the configuration values ​​of each configuration item in each configuration file. The first configuration template is used to store the configuration values ​​of each first configuration item and the variable information of each second configuration item. The variable information is used to describe the storage path of the corresponding storage cluster of the second configuration item in the configuration package and the configuration name of the configuration item; the first additional information is used to describe the configuration value of the corresponding second configuration item in each configuration file; wherein the configuration value of the first configuration item in each configuration file is the same; and the configuration value of the second configuration item in each configuration file is different.

[0159] The device of the embodiment of the present application can execute the method provided by the embodiment of the present application, and its implementation principle is similar. The actions performed by each module in the device of each embodiment of the present application correspond to the steps in the method of each embodiment of the present application. For the detailed functional description of each module of the device, please refer to the description in the corresponding method shown in the previous text, and will not be repeated here.

[0160] In an embodiment of the present application, an electronic device is provided, including a memory, a processor, and a computer program stored on the memory. The processor executes the above-mentioned computer program to implement the steps of a configuration information processing method. Compared with the related art, the following can be achieved: by downloading a configuration package, obtaining the configuration file required for the storage cluster to deploy the target software, as well as the configuration items and configuration values ​​corresponding to the configuration items in each configuration file; by analyzing the configuration items and configuration values ​​corresponding to each configuration file, obtaining a first configuration item with the same configuration value in each configuration file, and obtaining a second configuration item with different configuration values ​​in each configuration file; by storing the configuration value of the first configuration item and variable information related to the second configuration item in a first configuration template, the configuration items with the same configuration value in each configuration file corresponding to each storage cluster can be viewed according to the first configuration template; by obtaining the configuration value of the second configuration item in each configuration file, generating the first additional information, and then viewing the configuration items with different configuration values ​​in each configuration file according to the first additional information. Therefore, the embodiment of the present application can manage and maintain the corresponding configuration items and configuration information in each storage cluster in the configuration package through the generated first configuration template and the first additional information. By globally viewing the configuration information of each storage cluster in the configuration package, it is possible to promptly discover incorrect configuration information in the corresponding configuration files of each storage cluster and promptly modify the configuration information of each storage cluster. This improves the efficiency of processing the configuration information of each storage cluster in the configuration package, allowing each storage cluster to smoothly deploy and run the target software and realize the management of the full cluster configuration.

[0161] In an alternative embodiment, an electronic device is provided, such as Figure 10 As shown, Figure 10The electronic device 4000 shown includes: a processor 4001 and a memory 4003. The processor 4001 and the memory 4003 are connected, for example, via a bus 4002. Optionally, the electronic device 4000 may further include a transceiver 4004, which may be used for data exchange between the electronic device and other electronic devices, such as data transmission and / or data reception. It should be noted that in actual applications, the number of transceivers 4004 is not limited to one, and the structure of the electronic device 4000 does not constitute a limitation on the embodiments of the present application.

[0162] Processor 4001 may be a CPU (Central Processing Unit), a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. It may implement or execute the various exemplary logic blocks, modules, and circuits described in conjunction with the disclosure of this application. Processor 4001 may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.

[0163] Bus 4002 may include a path for transmitting information between the above components. Bus 4002 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus. Bus 4002 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 10 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.

[0164] The memory 4003 can be a ROM (Read Only Memory) or other types of static storage devices that can store static information and instructions, a RAM (Random Access Memory) or other types of dynamic storage devices that can store information and instructions, or an EEPROM (Electrically Erasable Programmable Read Only Memory), a CD-ROM (Compact Disc Read Only Memory) or other optical disk storage, optical disk storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media, other magnetic storage devices, or any other medium that can be used to carry or store computer programs and can be read by a computer, without limitation here.

[0165] The memory 4003 is used to store the computer program for executing the embodiment of the present application, and the execution is controlled by the processor 4001. The processor 4001 is used to execute the computer program stored in the memory 4003 to implement the steps shown in the above method embodiment.

[0166] Among them, the electronic equipment package may include but is not limited to mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., as well as fixed terminals such as digital TVs, desktop computers, etc. Figure 10 The electronic device shown is only an example and should not limit the functions and scope of use of the embodiments of the present disclosure.

[0167] The embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, can implement the steps and corresponding contents of the aforementioned method embodiment. Compared with the prior art, the method can achieve: by downloading a configuration package, obtaining the configuration file required for deploying the target software of the storage cluster, as well as the configuration items and configuration values ​​corresponding to the configuration items in each configuration file; by analyzing the configuration items and configuration values ​​corresponding to the configuration items in each configuration file, obtaining first configuration items with the same configuration values ​​in each configuration file, and obtaining second configuration items with different configuration values ​​in each configuration file; by storing the configuration values ​​of the first configuration items and variable information related to the second configuration items in a first configuration template, the configuration items with the same configuration values ​​in each configuration file corresponding to each storage cluster can be viewed according to the first configuration template; by obtaining the configuration values ​​of the second configuration items in each configuration file, generating first additional information, and then viewing the configuration items with different configuration values ​​in each configuration file according to the first additional information. Therefore, the embodiment of the present application can manage and maintain the configuration items and configuration information corresponding to each storage cluster in the configuration package through the generated first configuration template and first additional information. By globally viewing the configuration information of each storage cluster in the configuration package, it is possible to promptly discover incorrect configuration information in the corresponding configuration files of each storage cluster and promptly modify the configuration information of each storage cluster. This improves the efficiency of processing the configuration information of each storage cluster in the configuration package, allowing each storage cluster to smoothly deploy and run the target software and realize the management of the full cluster configuration.

[0168] It should be noted that the computer-readable medium mentioned above in the present disclosure may be a computer-readable signal medium or a computer-readable medium, or any combination of the two. A computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, device, or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, which carries computer-readable program code. Such a propagated data signal may take a variety of forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in conjunction with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium may be transmitted using any suitable medium, including but not limited to wires, optical cables, RF (radio frequency), etc., or any suitable combination thereof.

[0169] The present application also provides a computer program product, including a computer program, which, when executed by a processor, can implement the steps and corresponding contents of the aforementioned method embodiment. Compared with the prior art, the following can be achieved: by downloading a configuration package, obtaining the configuration file required for deploying the target software of the storage cluster, as well as the configuration items and configuration values ​​corresponding to the configuration items in each configuration file; by analyzing the configuration items and configuration values ​​corresponding to the configuration items in each configuration file, obtaining first configuration items with the same configuration values ​​in each configuration file, and obtaining second configuration items with different configuration values ​​in each configuration file; by storing the configuration values ​​of the first configuration items and variable information related to the second configuration items in a first configuration template, the configuration items with the same configuration values ​​in each configuration file corresponding to each storage cluster can be viewed according to the first configuration template; by obtaining the configuration values ​​of the second configuration items in each configuration file, generating first additional information, and then viewing the configuration items with different configuration values ​​in each configuration file according to the first additional information. Therefore, the present application embodiment can manage and maintain the configuration items and configuration information corresponding to each storage cluster in the configuration package through the generated first configuration template and first additional information. By globally viewing the configuration information of each storage cluster in the configuration package, it is possible to promptly discover incorrect configuration information in the corresponding configuration files of each storage cluster and promptly modify the configuration information of each storage cluster. This improves the efficiency of processing the configuration information of each storage cluster in the configuration package, allowing each storage cluster to smoothly deploy and run the target software and realize the management of the full cluster configuration.

[0170] The terms "first," "second," "third," "fourth," "1," "2," and the like (if any) in the specification and claims of this application and the accompanying drawings are used to distinguish similar objects and are not necessarily used to describe a particular order or sequential sequence. It should be understood that the terms used in this manner are interchangeable where appropriate, so that the embodiments of the application described herein can be implemented in an order other than that shown or described in the drawings.

[0171] It should be understood that, although each operation step is indicated by arrows in the flowchart of the embodiment of the present application, the order of implementation of these steps is not limited to the order indicated by the arrows. Unless otherwise clearly stated herein, in some implementation scenarios of the embodiment of the present application, the implementation steps in each flowchart can be performed in other orders according to demand. In addition, some or all of the steps in each flowchart can include multiple sub-steps or multiple stages based on actual implementation scenarios. Some or all of these sub-steps or stages can be executed at the same time, and each sub-step or stage in these sub-steps or stages can also be executed at different times respectively. Under different scenarios at the execution time, the execution order of these sub-steps or stages can be flexibly configured according to demand, and the embodiment of the present application does not limit this.

[0172] The above description is only an optional implementation method for some implementation scenarios of this application. It should be pointed out that for ordinary technicians in this technical field, without departing from the technical concept of the solution of this application, the use of other similar implementation methods based on the technical ideas of this application also falls within the protection scope of the embodiments of this application.

Claims

1. A method for processing configuration information, characterized in that: include: Downloading a configuration package, wherein the configuration package includes at least one configuration file, each configuration file is a configuration file required for deploying target software in a corresponding storage cluster, and each configuration file includes a configuration value of at least one configuration item; Generate a first configuration template and first additional information based on the configuration values ​​of each configuration item in each configuration file. The first configuration template is used to store the configuration value of each first configuration item and the variable information of each second configuration item. The variable information is used to describe the storage path of the corresponding storage cluster of the second configuration item in the configuration package and the configuration name of the configuration item. The first additional information is used to describe the configuration value of the corresponding second configuration item in each configuration file. The configuration value of the first configuration item in each configuration file is the same; the configuration value of the second configuration item in each configuration file is different.

2. The method according to claim 1, characterized in that The generating of the first configuration template and the first additional information according to the configuration values ​​of the configuration items in the configuration files includes: For each configuration file, performing key-value pair processing on the configuration file to obtain at least one first key-value pair of the configuration file, where the key of each first key-value pair is the configuration name of the corresponding configuration item, and the value is the configuration value of the corresponding configuration item; For each first key-value pair, traverse each configuration file. If it is determined that the values ​​of the first key-value pair in each configuration file are the same, use the key of the first key-value pair as the first configuration item. If it is determined that the values ​​of the first key-value pair in each configuration file are different, use the key of the first key-value pair as the second configuration item. Construct a corresponding second key-value pair for each second configuration item, wherein the key of the second key-value pair is the configuration name of the second configuration item, and the value is the configuration name of the second configuration item and the storage path of the second configuration item in each configuration file; The first key-value pair corresponding to the first configuration item and the second key-value pairs corresponding to each second configuration item are stored in the first configuration template.

3. The method according to claim 2, characterized in that The generating of the first configuration template and the first additional information according to the configuration values ​​of the configuration items in the configuration files further includes: Construct a corresponding third key-value pair for each second configuration item, where the key of the third key-value pair is the value of the second key-value pair of the second configuration item, and the value of the third key-value pair is the value of the second configuration item in the corresponding configuration file; A third key-value pair corresponding to the second configuration item is stored in the first additional information.

4. The method according to claim 1 or 2, characterized in that The step of generating a first configuration template according to the configuration values ​​of the configuration items in the configuration files may also include: Make at least one of the following information consistent in each configuration file: The storage path of each configuration file in the corresponding storage cluster in the configuration package; The encoding format of each configuration file; and The type of configuration items in each configuration file.

5. The method according to claim 4, characterized in that The step of adjusting at least one of the following information of each configuration file to be consistent includes: Adjust the storage paths of the corresponding storage clusters of each configuration file in the configuration package to be consistent; After determining that the storage paths of the corresponding storage clusters of the configuration files in the configuration package are aligned, the encoding formats of the configuration files are aligned; After ensuring that the encoding formats of the configuration files are aligned, the types of configuration items in the configuration files are aligned.

6. The method according to claim 4, characterized in that Each configuration file is stored in a folder of a corresponding storage cluster in the configuration package; Adjusting the storage paths of the configuration files in the corresponding storage cluster folders to be consistent includes: For each storage cluster folder, perform data structure analysis on the folder to obtain the file directory structure of the folder, where the file directory structure is used to describe the name and storage path of the configuration file in the folder; Adjust the storage paths of each configuration file in the corresponding storage cluster folder to be consistent based on the file directory structure of all folders.

7. The method according to claim 1, characterized in that The downloaded configuration package is downloaded from the first system at the current moment; The method further comprises: Comparing the first configuration template with a second configuration template in the second system, and uploading the first configuration template to the second system if the first configuration template is different from the second configuration template; comparing the first additional information with the second additional information in the second system, and uploading the first additional information to the second system if the first additional information is different from the second additional information; The second configuration template and the second additional information in the second system are generated according to the configuration package downloaded from the first system at a historical moment.

8. A configuration information processing device, characterized in that: include: Acquisition module: used to download a configuration package, wherein the configuration package includes at least one configuration file, each configuration file is a configuration file required for deploying target software in a corresponding storage cluster, and each configuration file includes a configuration value of at least one configuration item; A generation module is configured to generate a first configuration template and first additional information based on the configuration values ​​of each configuration item in each configuration file. The first configuration template is used to store the configuration value of each first configuration item and the variable information of each second configuration item. The variable information is used to describe the storage path of the corresponding storage cluster of the second configuration item in the configuration package and the configuration name of the configuration item. The first additional information is used to describe the configuration value of the corresponding second configuration item in each configuration file. The configuration value of the first configuration item in each configuration file is the same; the configuration value of the second configuration item in each configuration file is different.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory, characterized in that: The processor executes the computer program to implement the steps of the method according to any one of claims 1 to 7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

11. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.