CN117573167A - Probe deployment method and device, electronic equipment and storage medium - Google Patents

Probe deployment method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN117573167A
CN117573167A CN202311607363.7A CN202311607363A CN117573167A CN 117573167 A CN117573167 A CN 117573167A CN 202311607363 A CN202311607363 A CN 202311607363A CN 117573167 A CN117573167 A CN 117573167A
Authority
CN
China
Prior art keywords
probe
target
monitored
deployment
target probe
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311607363.7A
Other languages
Chinese (zh)
Inventor
肖遥
郝灿文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Suzhou Software Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202311607363.7A priority Critical patent/CN117573167A/en
Publication of CN117573167A publication Critical patent/CN117573167A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

The invention discloses a probe deployment method, a probe deployment device, electronic equipment and a storage medium, which relate to the technical field of data processing, and mainly comprise the following technical scheme: creating a target probe in a preset project, and setting the type and the deployment mode of the target probe; configuring at least one target object to be monitored for a target probe; modifying a configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; pushing the configured target probe to a target object to be monitored, and executing monitoring on the target object to be monitored; and monitoring the progress of the target probe according to the probe type of the target probe. By setting the type and the deployment mode of the probe when the target probe is created and respectively determining the monitoring mode and the modification of the configuration file according to the type and the deployment mode of the probe later, the applicable scene of the target pointer is promoted, and the management and the deployment of the probe are more flexible and efficient.

Description

Probe deployment method and device, electronic equipment and storage medium
Technical Field
The disclosure relates to the technical field of data processing, and in particular relates to a probe deployment method, a probe deployment device, electronic equipment and a storage medium.
Background
With the development and maturity of computer technology, in addition to the implementation of general functions and technologies, data analysis and security are also important, so monitoring systems for data of each layer and probes of different types are increasingly used.
As more and more probes are introduced, the deployment, upgrading, management, etc. of the probes becomes particularly important. Currently, dedicated operation and maintenance engineers usually use a self-built shared storage system to store probes of different versions, and combine with self-built scripts to perform deployment and upgrading of the probes.
Although the method for self-building the shared storage system and the script can realize the automatic deployment of the probe and the like to a certain extent, the method is generally constructed according to the type or the deployment mode of a certain probe, and has a narrow application scene, but in actual production application, commercial application with huge volume and complex architecture exists, and the method for self-building the shared storage system and the script cannot cope with the diversified deployment scene of the probe.
Disclosure of Invention
The disclosure provides a probe deployment method, a probe deployment device, electronic equipment and a storage medium. The method mainly aims at solving the problem that the prior art cannot cope with diversified deployment scenes of probes.
According to a first aspect of the present disclosure, there is provided a probe deployment method, including:
creating a target probe in a preset project, and setting the type and the deployment mode of the target probe; the preset item comprises an object to be monitored and parameter information of the object to be monitored;
configuring at least one target object to be monitored for the target probe;
modifying a configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; wherein, different deployment modes correspond to different file types and formats;
pushing the configured target probe to the target object to be monitored, and executing monitoring on the target object to be monitored;
and monitoring the progress of the target probe according to the probe type of the target probe.
Optionally, the process of monitoring the target probe according to the probe type of the target probe further includes:
If the probe type of the target probe is independent operation, determining the operation process of the target probe according to the probe name of the target probe, and drawing a probe distribution diagram according to the operation state of the target probe;
if the probe type of the target probe is the accompanying operation, determining the operation process of the target probe according to the probe name of the target probe and the name of the object to be monitored, and drawing a probe distribution diagram according to the operation state of the target probe.
Optionally, before modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe, the method further includes:
creating version information for the target probe and adding the configuration file; the version information comprises at least one of probe version, version description and configuration file difference comparison.
Optionally, the deployment modes include a direct deployment type, a docker-composition deployment type and a kubernetes deployment type, and modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe further includes:
And if the deployment mode of the target probe is a dock-composition deployment mode or a kubernetes deployment mode, determining the container mirror server as a target object to be monitored of the target probe.
Optionally, before creating the target probe in the preset project and setting the probe type and the deployment mode of the target probe, the method further includes:
creating the preset item, and adding a preset environment in the preset item; wherein, different preset environments contain different objects to be monitored.
Optionally, the modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe further includes:
creating a target modification task according to the parameter information of the target monitoring object, the deployment mode of the target probe and the configuration file of the target probe;
storing the target modification tasks into a preset cache linked list, and executing each modification task according to the time sequence stored in the preset cache linked list;
acquiring a first modification task according to the time sequence of the storing, and determining a first object to be monitored of a first probe in the first modification task;
If the path of the first object to be monitored is busy, the first modification task is placed in the middle position of all modification tasks in the preset cache chain table;
and if the path of the first object to be monitored is determined to be idle, executing the first modification task, and setting the path of the first object to be monitored to be busy.
According to a second aspect of the present disclosure, there is provided a probe deployment apparatus comprising:
the system comprises a creation unit, a setting unit and a setting unit, wherein the creation unit is used for creating a target probe in a preset item and setting the probe type and the deployment mode of the target probe; the preset item comprises an object to be monitored and parameter information of the object to be monitored;
the configuration unit is used for configuring at least one target object to be monitored for the target probe;
the modification unit is used for modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; wherein, different deployment modes correspond to different file types and formats;
the pushing unit is used for pushing the configured target probe to the target object to be monitored, and executing monitoring on the target object to be monitored;
And the monitoring unit is used for monitoring the progress of the target probe according to the probe type of the target probe.
Optionally, the probe type includes independent operation and accompanying operation, and the apparatus further includes:
the first determining unit is used for determining the running process of the target probe according to the probe name of the target probe when the probe type of the target probe is independent running after the pushing unit pushes the configured target probe to the target object to be monitored and monitors the target object to be monitored, and drawing a probe distribution diagram according to the running state of the target probe;
and the second determining unit is used for determining the running process of the target probe according to the probe name of the target probe and the name of the object to be monitored when the probe type of the target probe is the accompanying running, and drawing a probe distribution diagram according to the running state of the target probe.
Optionally, the apparatus further includes:
the first adding unit is used for creating version information for the target probe and adding the configuration file before the modification unit modifies the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; the version information comprises at least one of probe version, version description and configuration file difference comparison.
Optionally, the deployment mode includes a direct deployment type, a docker-composition deployment type and a kubernetes deployment type, and the modification unit is further configured to:
and when the deployment mode of the target probe is a dock-composition deployment mode or a kubernetes deployment mode, determining the container mirror server as a target object to be monitored of the target probe.
Optionally, the apparatus further includes:
the second adding unit is used for creating a target probe in a preset item and creating the preset item and adding a preset environment in the preset item before setting the probe type and the deployment mode of the target probe; wherein, different preset environments contain different objects to be monitored.
Optionally, the modifying unit is further configured to:
creating a target modification task according to the parameter information of the target monitoring object, the deployment mode of the target probe and the configuration file of the target probe;
storing the target modification tasks into a preset cache linked list, and executing each modification task according to the time sequence stored in the preset cache linked list;
acquiring a first modification task according to the time sequence of the storing, and determining a first object to be monitored of a first probe in the first modification task;
If the path of the first object to be monitored is busy, the first modification task is placed in the middle position of all modification tasks in the preset cache chain table;
and if the path of the first object to be monitored is determined to be idle, executing the first modification task, and setting the path of the first object to be monitored to be busy.
According to a third aspect of the present disclosure, there is provided an electronic device comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of the first aspect.
According to a fourth aspect of the present disclosure, there is provided a non-transitory computer readable storage medium storing computer instructions for causing the computer to perform the method of the preceding first aspect.
According to a fifth aspect of the present disclosure, there is provided a computer program product comprising a computer program which, when executed by a processor, implements the method of the first aspect described above.
The present disclosure provides a probe deployment method, device, electronic equipment and storage medium, and the main technical scheme includes: firstly, creating a target probe in a preset project, and setting the type and the deployment mode of the target probe; the preset item comprises an object to be monitored and parameter information of the object to be monitored; configuring at least one target object to be monitored for the target probe; secondly, modifying a configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; wherein, different deployment modes correspond to different file types and formats; finally, pushing the configured target probe to the target object to be monitored, and executing monitoring on the target object to be monitored; and monitoring the progress of the target probe according to the probe type of the target probe. Compared with the related art, the embodiment of the application sets the type and the deployment mode of the probe when the target probe is created, and then respectively determines the monitoring mode and the modification of the configuration file according to the type and the deployment mode of the probe, so that the application scene of the target pointer is improved, and the management and the deployment of the probe are more flexible and efficient.
It should be understood that the description of this section is not intended to identify key or critical features of the embodiments of the application or to delineate the scope of the application. Other features of the present application will become apparent from the description that follows.
Drawings
The drawings are for a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
fig. 1 is a flow chart of a probe deployment method according to an embodiment of the disclosure;
fig. 2 is a flow chart of a probe deployment method according to an embodiment of the disclosure;
fig. 3 is a schematic structural diagram of a probe deployment device according to an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of a probe deployment device according to an embodiment of the present disclosure;
fig. 5 is a schematic block diagram of an example electronic device provided by an embodiment of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below in conjunction with the accompanying drawings, which include various details of the embodiments of the present disclosure to facilitate understanding, and should be considered as merely exemplary. Accordingly, one of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
A probe deployment method, apparatus, electronic device, and storage medium according to embodiments of the present disclosure are described below with reference to the accompanying drawings.
Fig. 1 is a flowchart of a probe deployment method according to an embodiment of the present disclosure.
As shown in fig. 1, the method comprises the steps of:
step 101, creating a target probe in a preset item, and setting the probe type and the deployment mode of the target probe; the preset items comprise an object to be monitored and parameter information of the object to be monitored.
The probe is a program file, generally an important component of the monitoring system, and runs in a host or a container where the monitored system is located, periodically collects target information, and sends the target information to the monitoring system through a network port.
In one implementation manner of the embodiment of the present application, a user may create a probe entry in a corresponding portion of the Web interface, and set a type of the probe and a deployment manner of the probe.
The object to be monitored can be a host, a shared memory or a container mirror server, and the parameter information at least comprises a resource name and an IP address.
And 102, configuring at least one target object to be monitored for the target probe.
In one implementation manner of the embodiment of the present application, after the creation of the target pointer is completed, the target pointer is required to be associated with the target object to be monitored, and it is required to be noted that the probe type and the deployment manner of the target probe are determined well, so that when the target object to be monitored is associated, attention is required to be paid to the fact that the target object to be monitored can adapt to the probe type and the deployment manner of the target probe.
Step 103, modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; wherein, different deployment modes correspond to different file types and formats.
The configuration file refers to a configuration file read when the application service is started, and comprises files of application related information, storage related information, network related information, application starting commands and the like, wherein the format and the file type of the configuration file are different according to different deployment modes, and the types of the included information are different, such as INI files, XML files, JSON files and the like. According to a specific deployment mode and probe type, corresponding configuration files are required to be modified in a targeted manner, so that the probes can accurately collect and transmit data, and the probes can be seamlessly integrated with a monitoring system.
And 104, pushing the configured target probe to the target object to be monitored, and executing monitoring on the target object to be monitored.
According to the deployment mode of the target probe, the configured target probe is deployed into equipment or an environment where the target object to be monitored is located, for example, probe software is installed on the target equipment, or the probe is pushed into the environment where the target object is located in a remote deployment or cloud deployment mode.
In one implementation manner of the embodiment of the present application, after determining a resource path for pushing a target pointer to a target object to be monitored, a deployment success file is generated according to parameter information of a target probe and an IP address of the target object to be monitored, and the deployment success file is stored in a preset resource library, so as to manage a relationship between the probe and the object to be monitored, and when a new version of the probe is deployed in the target object to be monitored, the relationship between the probe and the object to be monitored is updated in the preset resource library.
Step 105, monitoring the progress of the target probe according to the probe type of the target probe.
In one implementation manner of the embodiment of the present application, the running process of the probe may be monitored according to a preset time threshold or timing; in practical application, an instruction can be sent to a preset project through an SSH protocol, the running process of an object to be monitored is inquired, different process identification rules are selected according to the probe type of a target probe, the currently running probe process is filtered out, and after all the objects to be monitored are determined, the running states of all the probe processes deployed in the objects to be monitored can be pushed to a user, so that the user technology can know the running states of the probes conveniently.
The deployment method of the probe provided by the disclosure mainly comprises the following steps: firstly, creating a target probe in a preset project, and setting the type and the deployment mode of the target probe; the preset item comprises an object to be monitored and parameter information of the object to be monitored; configuring at least one target object to be monitored for the target probe; secondly, modifying a configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; wherein, different deployment modes correspond to different file types and formats; finally, pushing the configured target probe to the target object to be monitored, and executing monitoring on the target object to be monitored; and monitoring the progress of the target probe according to the probe type of the target probe. Compared with the related art, the embodiment of the application sets the type and the deployment mode of the probe when the target probe is created, and then respectively determines the monitoring mode and the modification of the configuration file according to the type and the deployment mode of the probe, so that the application scene of the target pointer is improved, and the management and the deployment of the probe are more flexible and efficient.
In one implementation manner of the embodiment of the present application, after the creation of the target probe is completed, the target probe needs to be stored in the probe database, and is responsible for processing transactions such as adding, deleting, modifying, querying, associating resources and the like of the probe object. The main fields of the probe include probe ID, probe name, probe type, probe deployment style, associated resource ID, resource path type, etc. Wherein the probe ID is automatically generated by the present component. The probe name is entered by the user at the Web interface. The probe type is provided by the assembly and is divided into an independent type and an accompanying type, a user selects one type from the Web interface, the probe deployment mode is provided by the assembly and is divided into a direct deployment type, a docker-compound deployment type and a kubernetes deployment type, and the user selects one type from the Web interface. The associated resource ID, the resource path and the resource path type are derived from an associated resource process, the resource path is input by a user on a Web interface, the resource path type comprises a probe program, a probe configuration file and a deployment configuration file, the resource path type is provided by default by a system, the user selects one of the resource ID, the probe configuration file and the deployment configuration file on the Web interface, and the associated resource ID is obtained by inquiring a relational database by the resource IP input by the user on the Web interface.
The component opens 5 Http interfaces to the outside, and corresponds to the 5 transactions for the Web interface to call. When a user performs transaction operations of adding, deleting and checking on the probe object in the Web interface, the logic processing process of the component is similar to the transaction processing of adding, deleting and checking of the resource management component, and is not repeated here. When processing related resource transactions, a user needs to select the related probes in the Web interface, then select a plurality of resources to be related, and enter a resource path for each resource after the resources are selected, wherein the resource path is a storage path in the resource (a host or shared storage) where the configuration file is deployed. In the resource association transaction, the probe and the resource are in one-to-many relationship, the resource and the resource path are in one-to-many relationship, and the resource path type are in one-to-one relationship. Different probes can be associated with the same resource, only the resource paths are required to be ensured to be different, and the same probe can be associated with a plurality of resource paths of the same resource.
After a user triggers a probe associated resource transaction at a Web interface, the Http interface receives an Http request sent by the Web interface, an interface function analyzes a network request body, acquires request data required by the transaction from the network request body, and then invokes an interface implementation function for processing the transaction. The interface realizing function obtains the resource ID to be associated from the request data, calls the JDBC to connect to the relational database, and inquires the IP address and the SSH port number field value of the record to which the resource ID belongs. And then, the network communication component is called, and the SSH protocol is used for attempting to connect the queried resource address and port number. And after the connection is successful, continuing to call the network communication component to scan the resource path in the request data. If the resource path exists, the group of relations of the probe, the resource and the resource path and the required fields are assembled into a data access object, and the JDBC is called to be used as a record to be written into a relation type database table for storage. After the writing is successful, the interface realizes the return data of successful function assembly transaction, returns the return data to the Web interface in the form of Http response, and prompts the user that the transaction is successful. If the resource path scanned by the network communication component does not exist, the interface realization function can not assemble the data access object to write the data into the relation database, but can directly assemble the returned data of the transaction failure, and return the returned data to the Web interface in the form of Http response to prompt the user of the transaction failure.
When processing the file uploading transaction, the uploading interface receives the Http request sent by the Web interface, the interface function analyzes the network request body, obtains the version ID corresponding to the uploaded file and the file byte stream read in a binary mode from the network request body, and obtains the information abstract value (MD 5 value) for the byte stream by using an MD5 algorithm. The interface implementation function is then called, connected to the shared storage system 2109, an empty file is newly built in the available directory of the shared storage system, and the byte stream obtained by the interface function is written into the file entirely. And after the writing is finished, acquiring the path of the file in the shared storage system, calling the JDBC to connect to a relational database, inquiring related records according to the version ID, and writing the generated MD5 value and the file path into corresponding fields of the records for storage. And finally, the interface realizes the return data of successful function assembly transaction, returns the return data to the Web interface in the form of Http response, and prompts the user that the transaction is successful. The probe configuration file upload transaction is the same as that.
When processing the file downloading transaction, the downloading interface receives the Http request sent by the Web interface, and the interface function analyzes the network request body to acquire the version ID. The calling interface realizes the function to assemble the data access object needed by the access relation database. The interface realizes the function to call JDBC and connect to the relational database, and inquires the file path corresponding to the record according to the probe version ID obtained by the interface function. The interface realization function reads the file content in a binary mode according to the file path, acquires byte streams, assembles the byte streams into return data of successful transactions, returns the return data to the Web interface in a Http response mode, and prompts a user that the transactions are successful. The user obtains the byte stream of the file content from the Http response, and the byte stream is stored locally in the form of a file to complete the file downloading transaction.
When processing the transaction of editing the probe configuration file, the file downloading interface is called first. The downloading interface receives the Http request sent by the Web interface, the subsequent flow is the same as the downloading transaction described before, and finally the content of the probe configuration file is returned to the Web interface in the form of byte stream, and the Web interface encodes the content into the form of character string and displays the character string to the user. The user edits the original content, clicks and saves after the editing is completed, and the Web interface can call the file uploading interface of the component. The uploading interface obtains the content (byte stream form) of the edited probe configuration file, in order to ensure the exclusivity of the file writing operation, the updated content is not directly written into the probe configuration file in the shared storage system, but the interface of the task scheduling component is called in an asynchronous request mode to be processed by the interface.
An asynchronous request is a request that is sent without waiting for its return, but rather continues to process other transactions. The purpose of using asynchronous requests is that the interface of the task scheduling component does not wait for the return of a processing result in order to improve the use efficiency of the interface implementation function of the uploading interface because of the fact that the file writing operation may have a condition of waiting for timeout. And after the task scheduling component finishes processing, returning a processing result to an interface realization function of the uploading interface. The interface realizes the return data of successful function assembly transaction, returns to the Web interface in the form of Http response, and prompts the user to edit the successful transaction of the probe configuration file. And if the task scheduling component fails to process or overtime, returning a processing result to an interface implementation function of the uploading interface. The interface implementation function assembles the processing result into transaction failure return data, returns the transaction failure return data to the Web interface in the form of Http response, and prompts a user to edit the transaction failure of the probe configuration file.
In one implementation of the embodiment of the present application, the probe type includes an independent operation and a concomitant operation, and when step 105 is performed, the following steps may be performed:
if the probe type of the target probe is independent operation, determining the operation process of the target probe according to the probe name of the target probe, and drawing a probe distribution diagram according to the operation state of the target probe;
when the probe is of an independent operation type, the probe name is only needed to be known to scan whether the probe has a process or not from the process list.
If the probe type of the target probe is the accompanying operation, determining the operation process of the target probe according to the probe name of the target probe and the name of the object to be monitored, and drawing a probe distribution diagram according to the operation state of the target probe.
When the probe is of the companion run type, it is necessary to know the name of the application service in addition to the probe name, to scan the corresponding process, and after scanning, to know which application service the probe accompanies.
In an implementation manner of this embodiment of the present application, before modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment manner of the target probe in step 103, version information of the probe needs to be set, and specifically, the following steps may be referred to:
Creating version information for the target probe and adding the configuration file; the version information comprises at least one of probe version, version description and configuration file difference comparison.
When creating version information for the target probe, a version number, a version description and the like are required to be input, and main fields in the version information comprise an associated probe ID, a version number, a version description, a probe program access path, a probe program MD5 value, a probe configuration file access path, a probe configuration file MD5 value and the like, and after the creation is completed, the version information and the like of the probe are stored and designated in a database.
In one implementation of the embodiment of the present application, the designated database is responsible for processing transactions such as adding, deleting, modifying, querying, uploading files (including probe program and probe configuration file), downloading files (including probe program and probe configuration file), dynamically editing probe configuration file, and the like of the probe version object. The major fields of the probe version include an associated probe ID, version number, version description, probe program access path, probe program MD5 value, probe profile access path, probe profile MD5 value, etc. Wherein the associated probe ID originates from the newly added probe transaction. The version ID is automatically generated by the present component. The version number and version description are entered by the user on the Web interface. The probe program access path, probe program MD5 values, probe profile access path, probe profile MD5 values are automatically generated by the present component.
The component provides 6 Http interfaces for Web interface call by adding, deleting, changing, searching, uploading and downloading, and 2 interfaces can be called and downloaded successively by dynamically editing probe configuration file transactions. When a user performs transaction operations of adding, deleting and checking on the probe version object in the Web interface, the logic processing process of the component is similar to that of the resource management component, and is not repeated here. The probes are in one-to-many relationship with the probe versions, which are in one-to-one relationship with the probe program and the probe configuration file.
After the version is created, a configuration file and a probe program are added into the target probe, wherein the configuration file further comprises a probe configuration file and a deployment configuration file, the probe program is a starting file of the probe in operation, the probe configuration file is a configuration file read by the probe in starting, and the deployment configuration file is a configuration file read by the application service in starting. The probe program and the probe configuration file are necessary files for the probe to run. The deployment configuration file is a file containing application related information, storage related information, network related information, an application start command, and the like.
In one implementation manner of the embodiment of the present application, the deployment manner includes a direct deployment manner, a docker-composition deployment manner, and a kubernetes deployment manner, and if the deployment manner of the target probe is a docker-composition deployment manner or a kubernetes deployment manner, the container mirror server is determined as a target object to be monitored of the target probe.
A container mirror server refers to a server that can construct a container's dockerfile as a docker image. After the construction is successful, the container mirror server pushes the container mirror to the application deployment server cluster, and deploys the container mirror into an application service container. The image file is a configuration file for constructing the container image and contains an instruction and an instruction required for constructing the image.
In an implementation manner of the embodiment of the present application, the configuration file formats and file types used according to different deployment modes are different, and the types of the included information are different, so that the configuration file of the direct deployment type is generally a cfg file, the configuration file of the dock-composition deployment type is a dock-composition.
The main file objects of the cfg file include sections, parameter names, parameter values. Included in [ ] is a section name for quick locating parameters. Parameter name and parameter value use = connected, left side is parameter name, right side is parameter value; yaml and yml are the same file, are in the same format, and are different in the suffix names of the files. The yaml file has no concept of section, but expresses the parameter name and the parameter value by key-value pair (key-value pair) which can be nested; the json file is similar to yaml, again without the notion of a section, but instead expresses parameter names and parameter values in pairs of key values and brackets that may be previous.
Because the three configuration files have fixed formats, the cfg file can accurately find the parameter value in a section-parameter name mode, and yaml and json can accurately find the parameter value in a parameter name-parameter nesting-parameter value nesting mode. Therefore, after the network communication component sends the instruction, the file to be modified can be positioned through the resource path, and the parameter value to be modified is found through the positioning rule of the corresponding file, so that the parameter value is accurately modified, and the aim of adapting to various deployment scenes is fulfilled.
In particular, when the deployment mode is a dock-composition or kubernetes, the container mirror server "needs to add the configuration files of the probe program and the probe when the container mirror is manufactured, and the precondition of this step is that the mirror file for manufacturing the container mirror needs to be modified, so that the manufactured mirror contains the configuration files of the probe program and the probe.
Since the image file has a fixed syntax format, each line is a separate command (no syntax dependency from line to line), and the dependent program path can be fixed, the difficulty of modification is low. The method is characterized in that the method is that the corresponding deployment configuration file or mirror image file is located through a resource path according to different file types and grammar formats, the content needing to be modified is found according to the grammar formats of the different types of configuration files or mirror image files, and the new content is replaced with the original content and stored, so that a user can get rid of manual modification, and the accuracy and efficiency of modifying various configuration files are improved.
In one implementation manner of the embodiment of the present application, the new probe needs to be performed under the project, so that the project needs to be established in advance, and specifically, the following steps may be referred to for performing:
creating the preset item, and adding a preset environment in the preset item; wherein, different preset environments contain different objects to be monitored.
New project (project name of application service system) entries. Environmental items of project operation, such as development environment, integrated test environment, stress test environment, production environment, etc., are then created in the created project. And then respectively creating object items to be monitored in the created environment. The object to be monitored refers to a host, a shared storage or a container mirror server, and comprises a resource name and an IP address.
In one implementation manner of the embodiment of the application, in a newly built project, 12 Http interfaces are opened to the outside, and 12 transactions corresponding to the addition, deletion, modification and searching of three objects of the project, the environment and the resource are provided for a user to call through a Web interface, when the user performs transaction operation on the three objects at the Web interface, the Http interfaces receive Http requests sent by the Web interface, and interface functions analyze request bodies to acquire request data from the request bodies. The interface function calls the corresponding interface realization function, processes the request data into a data access object which can be identified by the relational database, then calls the JDBC connection relational database, executes the database query statement corresponding to the transaction, acquires the data existing in the database table to complete the query transaction, or writes the new data into the database table to complete the new and modified transaction, or deletes the record in the database table to complete the deletion transaction. After successful interaction with the relational database, the interface realizes the return data of successful function assembly transaction, and returns the return data to the Web interface in the form of Http response to prompt the user that the transaction is successful.
When processing the new and modified transaction of the resource, the new and modified interface realization function of the component calls the network communication component before calling the JDBC, and the resource IP address and SSH port number acquired by the interface function are used as the destination address to be sent to the network communication component. The network communication component uses SSH protocol to attempt to connect the address and the port, and if the connection is successful, then invokes JDBC to write the data access object corresponding to the newly added and modified transaction into the relational database. If the network communication assembly is not successfully connected or the connection is overtime, the interface realizes the return data of the failure of the function assembly transaction, returns the return data to the Web interface in the form of Http response, and prompts the user of the failure of the transaction.
In one implementation of the embodiments of the present application, a user may connect to these resources using SSH protocols according to the IP address of the object to be monitored. SSH is called secure shell protocol, which is a protocol specially used for providing security for remote login session and other network services, and can effectively prevent information leakage in the remote management process. If the object to be monitored can be accessed correctly according to the IP address of the object to be monitored, storing the resource related information, and returning a creation success message to the user interface. If the network communication component can not access the resource, the information of the creation failure is directly returned to the user for reminding without storing the resource.
In one implementation manner of the embodiment of the present application, when the modification to the configuration file is performed at 103, exclusivity of the object operation within the same time period is also guaranteed; referring to fig. 2, fig. 2 is a flowchart of a probe deployment method according to an embodiment of the disclosure, including:
step 201, creating a target modification task according to the parameter information of the target monitoring object, the deployment mode of the target probe and the configuration file of the target probe.
Step 202, storing the target modification task into a preset cache linked list, and executing each modification task according to the time sequence stored in the preset cache linked list.
After receiving the modified task, recording the task receiving time for the modified task and placing a one-way linked list for caching the task. The linked list is a list constructed by using pointers, and the unidirectional linked list is characterized in that the linking direction of the linked list is unidirectional, and the access to the linked list is started from the head through sequential reading. Each node of the linked list is a task and stores the time of receipt of the task and the subsequent pointer (pointer to the next task node).
Step 203, obtaining a first modification task according to the time sequence of the storing, and determining a first object to be monitored of a first probe in the first modification task.
Based on the characteristics of the unidirectional linked list, the polling thread of the task scheduling component starts to poll the task cache linked list from the first node, so that the execution sequence of the tasks is ensured. After the polling thread acquires the task, the resource path of the object to be monitored, which is required to be operated by the task, is read, and then the resource path is compared with the resource path set in the process.
Step 204, if it is determined that the path of the first object to be monitored is busy, the first modification task is placed in the middle position of all modification tasks in the preset cache linked list.
When the resource path of the task operation object is identified to be in the processing resource path set, namely, the path state is busy state, the task scheduling component indicates that the current object is being operated, and in order to ensure the exclusivity of the object operation within the same time period, the task scheduling component points the subsequent pointer of the task to the n/2+1th node (n is the length of a linked list and n is an even number greater than or equal to 0), or points to the (n+1)/2+1th node (n is the length of the linked list and n is an odd number greater than 0). The purpose of this is to place temporarily non-processible tasks in the middle of the singly linked list, similar to the mechanism that the head of the team need not be re-queued from the tail of the team when queuing the number, but the team can insert the team from the middle. Thus, the order of the team is maintained as much as possible, and tasks which cannot be processed temporarily are not blocked at the head of the team all the time to prevent the processing of other tasks.
Step 205, if it is determined that the path of the first object to be monitored is idle, executing the first modification task, and setting the path of the first object to be monitored to be busy.
If the resource path of the task operation object is not in the in-process resource path set, indicating that the current object is idle, the polling thread distributes the task to any idle thread in the thread pool, then sets the state of the idle thread as busy, adds the resource path of the task into the in-process resource path set, finally deletes the task and the task receiving time recorded by the current node of the unidirectional linked list, points the subsequent pointer to be idle, and points the subsequent pointer of the last node to the node. The purpose of this change pointer is to change the first node of the singly linked list to the last node, all other nodes being advanced by one bit, similar to all tasks queued being advanced by one bit.
To enhance the user experience, the task scheduling component provides a task timeout mechanism. When the polling thread polls the unidirectional linked list, the task receiving time of each task node is read, compared with the current system time, and once the time difference exceeds the preset timeout time (for example, 30 minutes), the polling thread sends information to a '2101 Web interface' to prompt a user that the task is queued for timeout in the preset time, the user decides whether to cancel the task, and once the polling thread of the task scheduling component decides to cancel the task, the task and the task receiving time are deleted from the node, and the node is moved to the end of the linked list. The task timeout mechanism also acts on the task execution process. When the task scheduling component distributes tasks to idle threads in a thread pool, the task starting time of the task is recorded and is compared with the current system time at any time, once the time difference exceeds the preset timeout time, the task scheduling component also sends information to a '2101 Web interface' to prompt a user that the task processes timeout in the preset time, the user decides whether to cancel the task, once the task canceling is decided, a polling thread of the task scheduling component forcibly closes the thread for processing the task, a thread is re-created in the thread pool, and the state of the thread is set to be idle.
In one implementation manner of the embodiment of the application, the preset buffer chain table provides an Http interface responsible for receiving tasks to the outside, and the Http interface can be called by a Web interface and other components. When the interface of the received task is called, the interface function analyzes a request body of the asynchronous request, obtains a task UUID (UUID is unique and can not be repeated) to be executed, a task type (the task type is 0001, 0002 and 0003 and corresponds to three tasks acceptable by the component), and other parameters (such as a probe deployment mode, a file path of a shared storage system, a resource path of a file pushed to a target resource, file contents in a byte stream form and the like) required by the task execution, wherein the above contents are generated by the interface calling party.
The interface function calls the interface realization function again, assembles the acquired content into a task object, and simultaneously, a polling thread of the thread pool polls from a first node of the linked list, and starts to process the task after acquiring the task.
After any sub thread of the task scheduling component thread pool processes any task, no matter the task succeeds, fails or overtime, the processing result of the task is returned to the interface realizing function of the task scheduling component, the interface realizing function is assembled into returned data of success, failure and overtime of the task, and the returned data is returned to an interface calling party (other components or Web interfaces) in the form of Http response for the interface calling party to continue relevant transaction processing.
In one implementation manner of the embodiment of the present application, the present application uses thread pool technology, which can be used for multiple users to operate at the same time; the unidirectional linked list is used for caching tasks, and the queue inserting mechanism is used for ensuring the order of the task queues to a certain extent; meanwhile, the exclusivity of the operated operation object in the same time period is ensured, and the problems of file content error and the like caused by modification conflict when two tasks modify the same file at the same time are avoided.
In one implementation manner of the embodiment of the present application, when the target pointer is pushed to the monitored object in step 104, the target pointer may be pushed using an SFTP protocol, where the FTP protocol is a file transfer protocol based on SSH, and the working principle of the SSH protocol may know that the SFTP protocol is an encrypted and secure file transfer protocol. After the transmission is completed, the MD5 algorithm is used for calculating the hash value of the information abstract again for the two files, and the hash value is compared with the hash value calculated before in the relational database. From the definition and principle of the MD5 algorithm, once the program file and the configuration file of the probe are changed, the calculated hash value is inconsistent with the original one whether the file is damaged due to network transmission packet loss or the content is changed due to artificial modification. By combining SFTP and MD5, the transmission process of the program file and the configuration file of the probe is ensured to be reliable and safe.
The destination resources of the probe push may also be different in order to adapt to the various deployment scenarios of the probe. When using the direct deployment type, the application service's initiator runs directly in the host, and then the probe needs to be pushed into the host's resource path. When using container deployment, the initiator of the application service needs to be placed into the container mirror, and then the target probe needs to be pushed into the resource path of the container mirror server. And then the container mirror image server constructs a container mirror image according to the configuration file modified in the step 103, adds the probe program and the probe configuration file into the constructed container mirror image, pushes the container mirror image with the probe program and the probe configuration file into an application server cluster, deploys the container mirror image into a container according to a docker-compound configuration file, or deploys the container mirror image into Pod (Pod A and Pod B of 601) according to yaml configuration files of kubernetes.
In one implementation manner of the embodiment of the present application, in practical applications, the following application scenarios may exist:
if a new operation environment needs to be built, for example, a test environment is newly added based on the original environment, the environment is only needed to be newly added under the project item, and then corresponding steps are sequentially executed according to steps 101-105.
If the object to be monitored in the original environment needs to be adjusted, for example, a new batch of physical hosts is replaced or a new batch of virtual machines is added, the related object to be monitored needs to be maintained again and associated with the probe under the environment of the project, and then the subsequent steps are executed.
If a new probe needs to be accessed, for example, an application service developed for Golang accesses a Golang-agent of Skywalking, the process returns to step 101, a probe Golang-agent entry is newly created and associated with an object to be monitored, and then a subsequent step is executed.
If the environment modifies the original deployment mode, for example, the direct deployment mode is changed to kubernetes deployment, the process returns to step S101, the deployment mode of the probe is modified, and then the subsequent steps are executed.
If the probe issues a new version, a new version of the probe is required to respond, the probe program and the probe configuration file of the new version are uploaded, and if the start command of the probe does not need to be modified, the probe start command of the previous version is used. And then executing the subsequent steps.
It should be noted that, in the embodiments of the present disclosure, a plurality of steps may be included, and these steps are numbered for convenience of description, but these numbers are not limitations on the execution time slots and execution orders between the steps; the steps may be performed in any order, and embodiments of the present disclosure are not limited in this regard.
Corresponding to the probe deployment method, the invention also provides a probe deployment device. Since the device embodiment of the present invention corresponds to the above-mentioned method embodiment, details not disclosed in the device embodiment may refer to the above-mentioned method embodiment, and details are not described in detail in the present invention.
Fig. 3 is a schematic structural diagram of a probe deployment device according to an embodiment of the present disclosure, as shown in fig. 3, including:
according to a second aspect of the present disclosure, there is provided a probe deployment apparatus comprising:
a creating unit 31, configured to create a target probe in a preset item, and set a probe type and a deployment mode of the target probe; the preset item comprises an object to be monitored and parameter information of the object to be monitored;
a configuration unit 32, configured to configure at least one target object to be monitored for the target probe;
a modifying unit 33, configured to modify a configuration file of the target probe according to parameter information of the target monitoring object and a deployment mode of the target probe; wherein, different deployment modes correspond to different file types and formats;
a pushing unit 34, configured to push the configured target probe to the target object to be monitored, and execute monitoring on the target object to be monitored;
And a monitoring unit 35 for monitoring the progress of the target probe according to the probe type of the target probe.
The deployment device of the probe provided by the disclosure comprises the following main technical schemes: firstly, creating a target probe in a preset project, and setting the type and the deployment mode of the target probe; the preset item comprises an object to be monitored and parameter information of the object to be monitored; configuring at least one target object to be monitored for the target probe; secondly, modifying a configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; wherein, different deployment modes correspond to different file types and formats; finally, pushing the configured target probe to the target object to be monitored, and executing monitoring on the target object to be monitored; and monitoring the progress of the target probe according to the probe type of the target probe. Compared with the related art, the embodiment of the application sets the type and the deployment mode of the probe when the target probe is created, and then respectively determines the monitoring mode and the modification of the configuration file according to the type and the deployment mode of the probe, so that the application scene of the target pointer is improved, and the management and the deployment of the probe are more flexible and efficient.
Further, in a possible implementation manner of this embodiment, as shown in fig. 4, the probe type includes an independent operation and a concomitant operation, and the apparatus further includes:
a first determining unit 36, configured to determine, when the probe type of the target probe is independent operation after the pushing unit 34 pushes the configured target probe to the target object to be monitored, an operation process of the target probe according to a probe name of the target probe, and draw a probe distribution diagram according to an operation state of the target probe;
and a second determining unit 37, configured to determine, when the probe type of the target probe is a companion operation, an operation progress of the target probe according to a probe name of the target probe and a name of the object to be monitored, and draw a probe distribution diagram according to an operation state of the target probe.
Further, in a possible implementation manner of this embodiment, as shown in fig. 4, the apparatus further includes:
a first adding unit 38, configured to create version information for the target probe and add the configuration file before the modification unit 33 modifies the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; the version information comprises at least one of probe version, version description and configuration file difference comparison.
Further, in one possible implementation manner of this embodiment, as shown in fig. 4, the deployment manner includes a direct deployment type, a docker-composition deployment type, and a kubernetes deployment type, and the modification unit 33 is further configured to:
and when the deployment mode of the target probe is a dock-composition deployment mode or a kubernetes deployment mode, determining the container mirror server as a target object to be monitored of the target probe.
Further, in a possible implementation manner of this embodiment, as shown in fig. 4, the apparatus further includes:
a second adding unit 39, configured to create a preset item and add a preset environment in the preset item before the creating unit 31 creates a target probe in the preset item and sets a probe type and a deployment manner of the target probe; wherein, different preset environments contain different objects to be monitored.
Further, in a possible implementation manner of this embodiment, as shown in fig. 4, the modifying unit 33 is further configured to:
creating a target modification task according to the parameter information of the target monitoring object, the deployment mode of the target probe and the configuration file of the target probe;
storing the target modification tasks into a preset cache linked list, and executing each modification task according to the time sequence stored in the preset cache linked list;
Acquiring a first modification task according to the time sequence of the storing, and determining a first object to be monitored of a first probe in the first modification task;
if the path of the first object to be monitored is busy, the first modification task is placed in the middle position of all modification tasks in the preset cache chain table;
and if the path of the first object to be monitored is determined to be idle, executing the first modification task, and setting the path of the first object to be monitored to be busy.
The foregoing explanation of the method embodiment is also applicable to the apparatus of this embodiment, and the principle is the same, and this embodiment is not limited thereto.
According to embodiments of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.
Fig. 5 shows a schematic block diagram of an example electronic device 400 that may be used to implement embodiments of the present disclosure. Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular telephones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 5, the apparatus 400 includes a computing unit 401 that can perform various appropriate actions and processes according to a computer program stored in a ROM (Read-Only Memory) 402 or a computer program loaded from a storage unit 408 into a RAM (Random Access Memory ) 403. In RAM 403, various programs and data required for the operation of device 400 may also be stored. The computing unit 401, ROM 402, and RAM 403 are connected to each other by a bus 404. An I/O (Input/Output) interface 405 is also connected to bus 404.
Various components in device 400 are connected to I/O interface 405, including: an input unit 406 such as a keyboard, a mouse, etc.; an output unit 407 such as various types of displays, speakers, and the like; a storage unit 408, such as a magnetic disk, optical disk, etc.; and a communication unit 409 such as a network card, modem, wireless communication transceiver, etc. The communication unit 409 allows the device 400 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunication networks.
The computing unit 401 may be a variety of general purpose and/or special purpose processing components having processing and computing capabilities. Some examples of computing unit 401 include, but are not limited to, a CPU (Central Processing Unit ), a GPU (Graphic Processing Units, graphics processing unit), various dedicated AI (Artificial Intell igence ) computing chips, various computing units running machine learning model algorithms, a DSP (Digital Signal Processor ), and any suitable processor, controller, microcontroller, etc. The computing unit 401 performs the various methods and processes described above, such as a probe deployment method. For example, in some embodiments, a probe deployment method may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as storage unit 408. In some embodiments, part or all of the computer program may be loaded and/or installed onto the device 400 via the ROM 402 and/or the communication unit 409. When the computer program is loaded into RAM 403 and executed by computing unit 401, one or more steps of the method described above may be performed. Alternatively, in other embodiments, the computing unit 401 may be configured to perform the aforementioned one probe deployment method in any other suitable way (e.g., by means of firmware).
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, FPGA (Field Programmable Gate Array ), ASIC (application-specific integrated circuit), ASSP (Appl ication Specific Standard Product, application-specific standard product), SOC (System On Chip ), CPLD (Complex Programmable Logic Device, complex programmable logic device), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs, the one or more computer programs may be executed and/or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general-purpose programmable processor, that may receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for carrying out methods of the present disclosure may be written in any combination of one or more programming languages. These program code may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus such that the program code, when executed by the processor or controller, causes the functions/operations specified in the flowchart and/or block diagram to be implemented. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, RAM, ROM, EPROM (Electrically Programmable Read-Only-Memory, erasable programmable read-Only Memory) or flash Memory, an optical fiber, a CD-ROM (Compact Di sc Read-Only Memory), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., CRT (Cathode-Ray Tube) or LCD (Liquid Crystal Display ) monitor) for displaying information to a user; and a keyboard and pointing device (e.g., a mouse or trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic input, speech input, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a background component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such background, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: LAN (Local Area Network ), WAN (Wide Area Network, wide area network), internet and blockchain networks.
The computer system may include a client and a server. The client and server are typically remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, also called a cloud computing server or a cloud host, and is a host product in a cloud computing service system, so that the defects of high management difficulty and weak service expansibility in the traditional physical hosts and VPS service ("Virtual Private Server" or simply "VPS") are overcome. The server may also be a server of a distributed system or a server that incorporates a blockchain.
It should be noted that, artificial intelligence is a subject of studying a certain thought process and intelligent behavior (such as learning, reasoning, thinking, planning, etc.) of a computer to simulate a person, and has a technology at both hardware and software level. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing, and the like; the artificial intelligence software technology mainly comprises a computer vision technology, a voice recognition technology, a natural language processing technology, a machine learning/deep learning technology, a big data processing technology, a knowledge graph technology and the like.
The various numbers of first, second, etc. referred to in this disclosure are merely for ease of description and are not intended to limit the scope of embodiments of this disclosure, nor to indicate sequencing.
At least one of the present disclosure may also be described as one or more, a plurality may be two, three, four or more, and the present disclosure is not limited. In the embodiment of the disclosure, for a technical feature, the technical features in the technical feature are distinguished by "first", "second", "third", "a", "B", "C", and "D", and the technical features described by "first", "second", "third", "a", "B", "C", and "D" are not in sequence or in order of magnitude.
It should be appreciated that various forms of the flows shown above may be used to reorder, add, or delete steps. For example, the steps recited in the present disclosure may be performed in parallel, sequentially, or in a different order, provided that the desired results of the disclosed aspects are achieved, and are not limited herein.
The above detailed description should not be taken as limiting the scope of the present disclosure. It will be apparent to those skilled in the art that various modifications, combinations, sub-combinations and alternatives are possible, depending on design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present disclosure are intended to be included within the scope of the present disclosure.

Claims (10)

1. A method of deploying a probe, comprising:
creating a target probe in a preset project, and setting the type and the deployment mode of the target probe; the preset item comprises an object to be monitored and parameter information of the object to be monitored;
configuring at least one target object to be monitored for the target probe;
modifying a configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; wherein, different deployment modes correspond to different file types and formats;
Pushing the configured target probe to the target object to be monitored, and executing monitoring on the target object to be monitored;
and monitoring the progress of the target probe according to the probe type of the target probe.
2. The method of claim 1, wherein monitoring the progress of the target probe according to the probe type of the target probe further comprises:
if the probe type of the target probe is independent operation, determining the operation process of the target probe according to the probe name of the target probe, and drawing a probe distribution diagram according to the operation state of the target probe;
if the probe type of the target probe is the accompanying operation, determining the operation process of the target probe according to the probe name of the target probe and the name of the object to be monitored, and drawing a probe distribution diagram according to the operation state of the target probe.
3. The method of claim 1, wherein before modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe, the method further comprises:
creating version information for the target probe and adding the configuration file; the version information comprises at least one of probe version, version description and configuration file difference comparison.
4. The method of claim 1, wherein the deployment method includes a direct deployment type, a docker-composition deployment type, and a kubernetes deployment type, and the modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment method of the target probe further includes:
and if the deployment mode of the target probe is a dock-composition deployment mode or a kubernetes deployment mode, determining the container mirror server as a target object to be monitored of the target probe.
5. The method of claim 1, wherein prior to creating a target probe in a pre-set project and setting a probe type and a deployment style of the target probe, the method further comprises:
creating the preset item, and adding a preset environment in the preset item; wherein, different preset environments contain different objects to be monitored.
6. The method of claim 4, wherein modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe further comprises:
creating a target modification task according to the parameter information of the target monitoring object, the deployment mode of the target probe and the configuration file of the target probe;
Storing the target modification tasks into a preset cache linked list, and executing each modification task according to the time sequence stored in the preset cache linked list;
acquiring a first modification task according to the time sequence of the storing, and determining a first object to be monitored of a first probe in the first modification task;
if the path of the first object to be monitored is busy, the first modification task is placed in the middle position of all modification tasks in the preset cache chain table;
and if the path of the first object to be monitored is determined to be idle, executing the first modification task, and setting the path of the first object to be monitored to be busy.
7. A probe deployment apparatus, comprising:
the system comprises a creation unit, a setting unit and a setting unit, wherein the creation unit is used for creating a target probe in a preset item and setting the probe type and the deployment mode of the target probe; the preset item comprises an object to be monitored and parameter information of the object to be monitored;
the configuration unit is used for configuring at least one target object to be monitored for the target probe;
the modification unit is used for modifying the configuration file of the target probe according to the parameter information of the target monitoring object and the deployment mode of the target probe; wherein, different deployment modes correspond to different file types and formats;
The pushing unit is used for pushing the configured target probe to the target object to be monitored, and executing monitoring on the target object to be monitored;
and the monitoring unit is used for monitoring the progress of the target probe according to the probe type of the target probe.
8. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-6.
9. A non-transitory computer readable storage medium storing computer instructions for causing the computer to perform the method of any one of claims 1-6.
10. A computer program product comprising a computer program which, when executed by a processor, implements the method according to any of claims 1-6.
CN202311607363.7A 2023-11-28 2023-11-28 Probe deployment method and device, electronic equipment and storage medium Pending CN117573167A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311607363.7A CN117573167A (en) 2023-11-28 2023-11-28 Probe deployment method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311607363.7A CN117573167A (en) 2023-11-28 2023-11-28 Probe deployment method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN117573167A true CN117573167A (en) 2024-02-20

Family

ID=89886073

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311607363.7A Pending CN117573167A (en) 2023-11-28 2023-11-28 Probe deployment method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN117573167A (en)

Similar Documents

Publication Publication Date Title
US10038753B2 (en) Network-independent programming model for online processing in distributed systems
CN108171473A (en) A kind of Data Analysis Services system and data analysis processing method
CN112154420A (en) Automatic intelligent cloud service testing tool
CN113656423A (en) Method and device for updating data, electronic equipment and storage medium
EP3923155A2 (en) Method and apparatus for processing snapshot, device, medium and product
CN111159265A (en) ETL data migration method and system
CN113918637A (en) BPMN2.0 specification-based process engine platform creation method and system
CN112970011A (en) Recording pedigrees in query optimization
CN112052152A (en) Simulation test method and device
CN117573167A (en) Probe deployment method and device, electronic equipment and storage medium
CN113691403B (en) Topology node configuration method, related device and computer program product
EP3776214A1 (en) User interface optimization for delayed data
US20210311942A1 (en) Dynamically altering a query access plan
CN112948410A (en) Data processing method, device, equipment and medium
CN114185937B (en) Big data tracing method and system based on digital finance
CN115334159B (en) Method, apparatus, device and medium for processing stream data
CN115373696B (en) Low code configuration method, system, equipment and storage medium for software resource generation
CN112764828B (en) Business logic management method and device, computer equipment and medium
US20240061885A1 (en) Finite automaton construction using regular expression derivatives to simulate behavior of a backtracking engine
US11651030B2 (en) Delta-based conflict-free replicated data type arrays using dot stores that map dots to dot stores
CN117573730B (en) Data processing method, apparatus, device, readable storage medium, and program product
CN108958654B (en) Management method and related device of storage system
US10606939B2 (en) Applying matching data transformation information based on a user's editing of data within a document
US20050240937A1 (en) Specifying parameters for selective return to an invoker
CN117215791A (en) Task grade determining method, device, equipment and medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination