Heterogeneous server supervision method

By designing a heterogeneous server supervision method that works in concert with the main control node and the monitoring node, the problem of unified monitoring and management of heterogeneous servers is solved, and efficient and secure server management and monitoring is achieved.

CN119484326APending Publication Date: 2025-02-18CHINA LIFE PROPERTY INSURANCE CORP LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202311005191.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-08-10
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

It is difficult for the existing technology to achieve unified monitoring and management of heterogeneous servers. Operations and maintenance personnel need to manually enter or operate in different monitoring software, which is inefficient.

Method used

A method of heterogeneous server supervision is designed. Through the coordinated work of the main control node and the monitoring node, the status information of the heterogeneous server is collected, transmitted to the monitoring node, transmitted to the main control node through the proxy, and tasks are sent to the heterogeneous Server execution. Use the websocket protocol to communicate and ensure real-time, security and efficiency.

Benefits of technology

Centralized monitoring and management of heterogeneous servers is realized, the workload of operation and maintenance personnel is reduced, the utilization rate and efficiency of servers are improved, and the reliability and data security of the system are enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119484326A_ABST
    Figure CN119484326A_ABST
Patent Text Reader

Abstract

The invention discloses a heterogeneous server supervision method, and relates to the technical field of computers. A specific embodiment of the method comprises the following steps: collecting state information of a heterogeneous server, and transmitting the state information to a monitoring node; transmitting the state information acquired by the monitoring node to a master control node through an agent; when a task is issued, the task is issued to the monitoring node through the master control node; and after the task issued by the monitoring node passes the detection, issuing the task to the heterogeneous server to execute the task. According to the implementation mode, the situation that operation and maintenance personnel input manually or need to carry out operation and maintenance management and operation and maintenance operation in different monitoring operation and maintenance software is avoided, and the operation and maintenance accuracy and efficiency are greatly improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a method for supervising heterogeneous servers. Background Art

[0002] With the in-depth development of digital construction, the number of intranet servers is increasing day by day. Servers are from different manufacturers and the types and versions of installed operating systems are not uniform. As new servers are put online, they must be included in the operation and maintenance management in a timely manner. In order to uniformly manage heterogeneous servers, it is necessary to implement a monitoring and management system and method for heterogeneous servers.

[0003] In the process of implementing the present invention, the inventors found that there are at least the following problems in the prior art:

[0004] For servers that have been included in the operation and maintenance management, daily operation and maintenance work usually includes: entering the server's hardware information and software information; monitoring server resources; collecting the activity of server processes and ports; server network usage; batch issuing of operation and maintenance instructions; these tasks usually require manual entry by operation and maintenance personnel or require operation and maintenance management and operation operations to be performed in different monitoring and operation and maintenance software. Summary of the invention

[0005] The execution subject corresponding to the present invention includes a master control node and a monitoring node. Among them, the master control node is used to control the operation of the entire system, manage, configure and issue commands to heterogeneous servers. The monitoring node is used to monitor the status and operation of heterogeneous servers, and also includes the execution of scheduled tasks and the execution of extended tasks. In addition, the monitoring node is also adapted to different CPU architectures and different operating systems. The message communication method between the master control node and the monitoring node adopts the websocket protocol, and the message can adopt the protobuff serialization protocol and be obfuscated and encrypted. Ensure the real-time, security and efficiency of the message. The method steps of the present invention can solve the monitoring and management of servers and applications, and the flexible and scalable task execution can complete some customized monitoring tasks.

[0006] To achieve the above object, according to one aspect of an embodiment of the present invention, a method for supervising heterogeneous servers is provided, comprising:

[0007] Collecting status information of heterogeneous servers and transmitting the status information to a monitoring node;

[0008] Transmitting the status information collected by the monitoring node to the main control node through the agent;

[0009] When sending tasks, the tasks are sent to the monitoring nodes through the master control node;

[0010] After passing the detection, the task sent by the monitoring node is sent to the heterogeneous server to execute the task.

[0011] Optionally, the security mechanism used when issuing the task includes:

[0012] The master control node adopts a security mechanism to authenticate the monitoring node to join the master control node;

[0013] The master control node communicates with the monitoring node through compression and encryption.

[0014] Optionally, the protocol between the master control node and the monitoring node is websocket, using a long-term connection for two-way communication;

[0015] When the master control node and the monitoring node are connected for the first time, the monitoring node provides the key, version, and basic information of the server;

[0016] The basic information of the server includes: MAC address, architecture, operating system, memory capacity, and disk capacity.

[0017] Optionally, the collecting the status information of the heterogeneous servers and transmitting the status information to the monitoring node includes:

[0018] Setting up a database for recording server data, for recording server acquisition monitoring information, the monitoring information includes: hardware data, task information, important log information, dynamic configuration;

[0019] The monitoring information is output to the external data processing software through the streaming data pipeline.

[0020] Optionally, the collecting the status information of the heterogeneous servers and transmitting the status information to the monitoring node includes:

[0021] Receive scheduling instructions through the GRPC interface, parse the encapsulated message body, and obtain instructions;

[0022] Writing the scheduling instruction into a database to save the status;

[0023] According to the content of the instruction message, it is dispatched to the server where the corresponding monitoring node is located.

[0024] Optionally, the collecting status information of the heterogeneous servers and transmitting the status information to the monitoring node further includes:

[0025] Setting a message queue for the master control node and consuming messages in the message queue in real time;

[0026] Taking the message queue as the entry, the instruction in the message queue is consistent with the instruction message;

[0027] Send the message to the designated monitoring node.

[0028] Optionally, periodically obtain hardware indicators of the control node;

[0029] Regularly obtain the hardware indicators of the master control node;

[0030] The hardware indicators include: startup time, running time, and GC times.

[0031] Optionally, the monitoring node software will be deployed to each heterogeneous server to be monitored using the server's super administrator account to obtain all management permissions of the server;

[0032] After the monitoring node is started, when establishing a connection with the control node, MD5 is used for encryption, wherein the monitoring node has a built-in key when transmitting encrypted data.

[0033] Compress and encapsulate the encrypted data using protobuff;

[0034] The monitoring node is connected to the control node by using the compressed and encapsulated data packet, and the data packet is reported to the control node after compression and encryption.

[0035] Optionally, when transmitting data, the monitoring node transmits a Ping message to the control node, and waits for the control node to reply with a Pong message within a certain period of time, so that the control node manages the heartbeat of the monitoring node.

[0036] According to another aspect of an embodiment of the present invention, there is provided a heterogeneous server supervision electronic device, comprising:

[0037] one or more processors;

[0038] a storage device for storing one or more programs,

[0039] When the one or more programs are executed by the one or more processors, the one or more processors implement a method for heterogeneous server supervision provided by the present invention.

[0040] According to another aspect of an embodiment of the present invention, a computer-readable medium is provided, on which a computer program is stored. When the program is executed by a processor, a method for supervising heterogeneous servers provided by the present invention is implemented.

[0041] The further effects of the above-mentioned non-conventional optional manner will be described below in conjunction with the specific implementation manner. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] The accompanying drawings are used to better understand the present invention and do not constitute an improper limitation of the present invention.

[0043] Figure 1 It is the architecture design diagram of the corresponding system of the present invention.

[0044] Figure 2 is a schematic diagram of the main process of a method for supervising heterogeneous servers according to an embodiment of the present invention;

[0045] Figure 3 It is a schematic diagram of the deployment of a control node system according to a specific embodiment of the present invention.

[0046] Figure 4 It is a schematic diagram of data compression during the implementation of a monitoring node according to a second specific embodiment of the present invention.

[0047] Figure 5 is an exemplary system architecture diagram to which embodiments of the present invention may be applied;

[0048] Figure 6 It is a schematic diagram of the structure of a computer system of a terminal device or a server suitable for implementing an embodiment of the present invention. DETAILED DESCRIPTION

[0049] The following is a description of exemplary embodiments of the present invention in conjunction with the accompanying drawings, including various details of the embodiments of the present invention to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present invention. Similarly, for clarity and conciseness, the description of well-known functions and structures is omitted in the following description.

[0050] Figure 1 It is the architecture design diagram of the corresponding system of the present invention.

[0051] The system consists of two components: monitoring nodes and master nodes. The monitoring nodes are responsible for collecting monitoring data from heterogeneous servers and uploading the data to the master nodes; the master nodes are responsible for processing monitoring data and managing heterogeneous servers. The service of the master node is a distributed architecture. The master node can be flexibly expanded according to the number of connected monitoring nodes. A proxy device can be set between the master node and the monitoring node.

[0052] Figure 2 is a schematic diagram of the main process of a method for supervising heterogeneous servers according to an embodiment of the present invention, such as Figure 2 As shown, Figure 2 As shown, including:

[0053] Step S201: collecting status information of heterogeneous servers and transmitting the status information to a monitoring node;

[0054] Step S202: transmitting the status information collected by the monitoring node to the master control node through the agent;

[0055] Step S203: when issuing a task, the task is issued to the monitoring node through the master control node;

[0056] Step S204: After the task sent by the monitoring node passes the detection, it is sent to the heterogeneous server to execute the task.

[0057] In the present invention, heterogeneous server monitoring includes the following contents:

[0058] The monitoring node collects the status information of heterogeneous servers through the monitoring agent program. The information acquisition functions of the monitoring node include: collecting basic information and collecting server status information.

[0059] After the monitoring node is started, basic information is collected to obtain hardware information of the service, including but not limited to the following information, such as motherboard information, BIOS information, CPU information, memory slot information, and container information.

[0060] Server status information collection includes but is not limited to: the system's arp cache, analyzing the information under the system / proc / net / arp to parse and obtain the Linux kernel block device layer stack, and parsing and obtaining the information under the system / sys / fd / bcache / . In addition, it is necessary to obtain the number of bound, configured and active network cards, CPU usage details, the total number of UDP queues rx_queue and tx_queue, and other information.

[0061] Obtain Linux kernel 4.2 or above through / proc / net / udp and / proc / net / upd6, monitor all memory consumption and memory shortage events in user mode, system average load data, disk I / O usage data, memory consumption data, network tracking and record connection status, Linux generates a new connection record item for each data packet passing through the network stack. This data collection is only performed when / pro / sys / net / netfilter / exists, network port information, statistical information from the system file / proc / stat, including system startup time, process information, process interrupt information, and system virtual memory statistics. Obtain and collect statistics related to IP, TCP, UDP and ICMP protocols from / proc / vmstat, obtain and collect aggregate process statistics from the system file / proc / net / netstat, and obtain and collect system disk usage from / proc, such as disk usage. The monitoring data is transmitted to the master node through the network and stored in the database. In order to ensure the integrity and security of the data, the monitoring node encrypts and compresses the data.

[0062] Heterogeneous server management:

[0063] The master node collects monitoring data, obtains the status of the monitoring heterogeneous servers in real time, and performs management operations. The operator can send commands to the master node through the interface, such as start, stop, restart, configure, and automatically upgrade.

[0064] Assignment of tasks:

[0065] In order to expand the monitoring function, the master node needs to perform task scheduling on heterogeneous servers. Through the interface of the master end, system commands, script commands, and scheduled tasks can be sent to the monitoring node, which can be data backup, log cleaning, etc. The monitoring node will also detect whether the sent command is a high-risk command, otherwise it will refuse to execute.

[0066] Command execution, script execution function. The monitoring node receives the execution message sent by the master node, executes the command or script after passing the high-risk command detection, and asynchronously reports the data output by the console to the master node.

[0067] Scheduled task function: The monitoring node maintains a set of scheduled task managers. The scheduled task manager is based on a Map container, which can dynamically add and delete scheduled tasks and also provides a query for currently running scheduled tasks. The scheduled expression of the scheduled task supports standard Linux scheduled expressions.

[0068] About security assurance:

[0069] In order to ensure the security of the system, the master node needs to adopt a security mechanism, the monitoring node needs to be authenticated to join the master node, and all message communications between the master node and the monitoring node need to be compressed and encrypted. The protocol used by the master node and the monitoring node is websocket, which uses a long-term connection and a two-way communication mechanism. When Websocket is connected for the first time, the key, version and basic information of the monitoring node need to be provided: including MAC address, architecture, operating system, memory capacity, disk capacity, etc.

[0070] About heterogeneous server adaptation

[0071] In order to adapt to different types of heterogeneous servers, the monitoring node needs to support multiple operating systems and CPU architectures, such as CentOS, Ubuntu, Windows, ARM, x86, etc. Different operating system monitoring node programs have been adapted to different operating systems during the packaging process. Different operating systems or architectures require the deployment of monitoring nodes with different adaptation versions. The control node program is mainly adapted to the Linux CentOS version.

[0072] About self-health adjustment

[0073] As a monitoring node software, it is necessary to optimize the CPU, memory, and disk usage of the software itself to a minimum, and during operation, adjust the task execution frequency of the monitoring node itself according to the system resources occupied by other programs in the system to reduce power consumption.

[0074] The following technical effects can be achieved by using the embodiments of the present invention:

[0075] 1. Improve server efficiency: The system can monitor the status and usage of heterogeneous servers, help operation and maintenance personnel better understand the server workload, and then optimize the server configuration to improve server utilization and efficiency.

[0076] 2. Reduce administrator workload: The system can automatically monitor and manage heterogeneous servers, reducing the workload of operation and maintenance personnel, thereby improving work efficiency and reducing management costs.

[0077] 3. Improve system reliability: The system can monitor the status of the server in real time, and issue alarms and notifications when the server fails or is abnormal, so that operation and maintenance personnel can take timely measures to avoid the impact of server failures on the system.

[0078] 4. Improve data security: The system can monitor the data transmission and storage of the server, detect abnormal behavior and issue early warnings and handle them, thereby improving data security and reliability.

[0079] 5. Support heterogeneous server environment: The system can simultaneously monitor and manage different types of servers, including those from different manufacturers, different operating systems, different processors, etc., and supports centralized management in heterogeneous server environments. Specific embodiment 1:

[0081] Figure 3 FIG. 1 is a schematic diagram of a control node system deployment according to a specific embodiment of the present invention. Figure 3 As shown:

[0082] The control node system deployment mainly includes the following parts: data storage module, scheduling module, queue module, and message processing module.

[0083] Data storage module: Integrate MySQL to record hardware data, task information, important log information, dynamic configuration and other information collected by the server, and integrate InfluxDB to output monitoring information to external data processing software through a streaming data pipeline.

[0084] The scheduling module improves the GRPC interface externally, such as accepting instructions through the GRPC interface, parsing the message body encapsulated by protobuf, obtaining instructions, writing instructions into mysql, saving the status, and then scheduling to the server where the corresponding monitoring node is located according to the content of the instruction message.

[0085] Queue module: In order to decouple from the external system, the control node integrates the message queue and consumes the messages in RabbitMQ in real time. The message queue is used as the entry point. Its message is consistent with the instruction message parsed by GRPC in step 1, and then the message is sent to the designated monitoring node through the scheduling module.

[0086] Message processing module: initialize the websocket server service, initialize and maintain a certain amount of work coroutines to process asynchronous messages.

[0087] Start the self-health check module. During initialization, a coroutine will be started to periodically obtain the memory, CPU and disk consumption used by the control node itself, as well as some of its own indicators, such as startup time, running time, GC times, etc. At the same time, the basic memory, CPU and disk status of the current server will also be obtained. All data indicators will be output to InfluxDb.

[0088] When receiving messages returned by the monitoring node, all received messages are first placed in the internally maintained memory queue for asynchronous processing, which will not block the monitoring node and the monitoring node's process.

[0089] The asynchronous processing coroutine reads the received message from the memory queue in the order in which it is written. First, the type of message is determined: monitoring messages are decrypted and compressed before being output to InfluxDb and used as monitoring data for other platforms. Task type messages are recorded in MySQL based on the result of the task type message execution. If the task message has a corresponding callback http protocol address, the callback address will be called after the task is completed. Specific embodiment 2:

[0091] Figure 4 FIG. 2 is a schematic diagram of data compression during the implementation of a monitoring node according to a second specific embodiment of the present invention. Figure 4 As shown, regarding the implementation of monitoring nodes:

[0092] First, you need to use the server's ROOT user to deploy the monitoring node software to each heterogeneous server to be monitored in order to obtain all management permissions of the server.

[0093] After starting the monitoring node, when establishing a connection with the control node for the first time, you need to provide the MD5 of the monitoring node software itself, the key and version built into the monitoring node software when it is packaged. This information is to prevent the monitoring node software from being maliciously tampered with.

[0094] A connection is established with the control node through websocket, and the message is reported to the control node after compression and encryption. The message body is encapsulated using protobuff. In order to reduce the byte size of the message body itself and improve the efficiency of serialization and deserialization, the byte stream of all message bodies needs to be encrypted using a custom obfuscation algorithm with a built-in secret key. After encryption, zlib is used to further compress the data.

[0095] Start the background coroutine, regularly send Ping messages to the control node, which is used for the heartbeat of the control node management and monitoring, and wait for the control node to reply with a pong message within a certain period of time. If the pong message is not received within the specified time, it indicates that the connection may have been interrupted, and the operation of re-establishing the connection will be taken.

[0096] After verifying the integrity of the software information and passing the authentication, obtain the policy configuration parameters from the control node, such as the monitoring items that need to be monitored: whether to enable monitoring of memory usage, hard disk usage or network traffic, etc., as well as the default monitoring frequency, default scheduled tasks, etc.

[0097] The basic information collection function is used to obtain relevant hardware information of the server at one time, including: motherboard information, BIOS information, CPU information, memory slot information, container information, MAC address, etc. It is reported to the control node through websocket, and all the information here is also encrypted and compressed.

[0098] Start a scheduled task with a default frequency of 30 seconds for the background coroutine, monitor CPU, memory, disk, network indicators and other monitoring data, and report the monitoring information to the control node through the established websocket connection.

[0099] Start the scheduled task management module. The execution time of the scheduled task module here is a crontab time format based on Linux itself.

[0100] The timing module adds extended tasks that need to be executed by default and executes them within the time specified by the expression.

[0101] After the scheduled task is completed, the result will be reported to the control node via websocket.

[0102] Figure 5 An exemplary system architecture 500 is shown to which the heterogeneous server supervision method or heterogeneous server supervision apparatus according to the embodiment of the present invention can be applied.

[0103] like Figure 5 As shown, system architecture 500 may include terminal devices 501, 502, 503, a network 504 and a server 505. Network 504 is used to provide a medium for communication links between terminal devices 501, 502, 503 and server 505. Network 504 may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.

[0104] Users can use terminal devices 501, 502, 503 to interact with server 505 through network 504 to receive or send messages, etc. Various communication client applications can be installed on terminal devices 501, 502, 503, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only as examples).

[0105] The terminal devices 501 , 502 , and 503 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, and the like.

[0106] The server 505 may be a server that provides various services, such as a backend management server (only an example) that provides support for shopping websites browsed by users using the terminal devices 501, 502, and 503. The backend management server may analyze and process the received data such as product information query requests, and feed back the processing results (such as target push information, product information - only an example) to the terminal device.

[0107] It should be noted that the heterogeneous server monitoring method provided in the embodiment of the present invention is generally executed by the server 505 , and accordingly, the heterogeneous server monitoring device is generally set in the server 505 .

[0108] It should be understood that Figure 5 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to implementation requirements.

[0109] Reference below Figure 6 , which shows a schematic diagram of the structure of a computer system 600 of a terminal device suitable for implementing an embodiment of the present invention. Figure 6 The terminal device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0110] like Figure 6 As shown, the computer system 600 includes a central processing unit (CPU) 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage part 608 into a random access memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the system 600 are also stored. The CPU 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0111] The following components are connected to the I / O interface 605: an input section 606 including a keyboard, a mouse, etc.; an output section 607 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card such as a LAN card, a modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to the I / O interface 605 as needed. A removable medium 611, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 610 as needed, so that a computer program read therefrom is installed into the storage section 608 as needed.

[0112] In particular, according to the embodiments disclosed in the present invention, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present invention include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 609, and / or installed from the removable medium 611. When the computer program is executed by the central processing unit (CPU) 601, the above-mentioned functions defined in the system of the present invention are executed.

[0113] It should be noted that the computer-readable medium shown in the present invention may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The 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 invention, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In the present invention, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program code. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, which may send, propagate or transmit 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 appropriate medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the above.

[0114] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0115] The modules involved in the embodiments of the present invention may be implemented in software or hardware. The modules described may also be set in a processor. For example, they may be described as: a processor includes a sending module, an acquisition module, a determination module, and a first processing module. The names of these modules do not, in some cases, constitute limitations on the modules themselves. For example, the sending module may also be described as a "module for sending a picture acquisition request to the connected server."

[0116] As another aspect, the present invention further provides a computer-readable medium, which may be included in the device described in the above embodiment; or may exist independently without being assembled into the device. The above computer-readable medium carries one or more programs, and when the above one or more programs are executed by a device, the device includes:

[0117] Collecting status information of heterogeneous servers and transmitting the status information to a monitoring node;

[0118] Transmitting the status information collected by the monitoring node to the main control node through the agent;

[0119] When sending tasks, the tasks are sent to the monitoring nodes through the main control node; after the tasks sent by the monitoring nodes pass the detection, they are sent to the heterogeneous servers to execute the tasks.

[0120] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may occur depending on design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A method for monitoring heterogeneous servers, characterized in that: include: Collecting status information of heterogeneous servers and transmitting the status information to a monitoring node; Transmitting the status information collected by the monitoring node to the main control node through the agent; When sending tasks, the tasks are sent to the monitoring nodes through the master control node; After passing the detection, the task sent by the monitoring node is sent to the heterogeneous server to execute the task.

2. The method according to claim 1, characterized in that The security mechanism used when issuing tasks includes: The master control node adopts a security mechanism to authenticate the monitoring node to join the master control node; The master control node communicates with the monitoring node through compression and encryption.

3. The method according to claim 2, characterized in that The protocol between the master control node and the monitoring node is websocket, which uses a long-term connection for two-way communication; When the master control node and the monitoring node are connected for the first time, the monitoring node provides the key, version, and basic information of the server; The basic information of the server includes: MAC address, architecture, operating system, memory capacity, and disk capacity.

4. The method according to claim 1, characterized in that: The collecting of the status information of the heterogeneous servers and transmitting the status information to the monitoring node includes: Setting up a database for recording server data, for recording server acquisition monitoring information, the monitoring information includes: hardware data, task information, important log information, dynamic configuration; The monitoring information is output to the external data processing software through the streaming data pipeline.

5. The method according to claim 1, characterized in that The collecting of the status information of the heterogeneous servers and transmitting the status information to the monitoring node includes: Receive scheduling instructions through the GRPC interface, parse the encapsulated message body, and obtain instructions; Writing the scheduling instruction into a database to save the status; According to the content of the instruction message, it is dispatched to the server where the corresponding monitoring node is located.

6. The method according to claim 5, characterized in that The collecting of the status information of the heterogeneous servers and transmitting the status information to the monitoring node also includes: Setting a message queue for the master control node and consuming messages in the message queue in real time; Taking the message queue as the entry, the instruction in the message queue is consistent with the instruction message; Send the message to the designated monitoring node.

7. The method according to claim 6, characterized in that Regularly obtain the hardware indicators of the control node; Regularly obtain the hardware indicators of the master control node; The hardware indicators include: startup time, running time, and GC times.

8. The method according to claim 1, characterized in that The super administrator account of the server will be used to deploy the monitoring node software to each heterogeneous server to be monitored to obtain all management permissions of the server; After the monitoring node is started, when establishing a connection with the control node, MD5 is used for encryption, wherein the monitoring node has a built-in key when transmitting encrypted data. Compress and encapsulate the encrypted data using protobuff; The monitoring node is connected to the control node by using the compressed and encapsulated data packet, and the data packet is reported to the control node after compression and encryption.

9. The method according to claim 8, characterized in that When transmitting data, the monitoring node transmits a Ping message to the control node, and waits for the control node to reply with a Pong message within a certain period of time, so that the control node can manage the heartbeat of the monitoring node.

10. An electronic device supervised by a heterogeneous server, characterized in that: include: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 9.

11. A computer readable medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.

Citation Information

Cited By

  • Improved distributed scheduling system and method based on gRPC communication mechanism

    CN121000765A