Method for automatically checking host system assets
Through multi-protocol adaptation, distributed data acquisition and interactive visualization technologies, the problems of insufficient adaptability, low real-time and poor response capabilities in the existing technology are solved, and efficient, accurate and intelligent management of host assets are achieved.
Patent Information
- Application Number
- CN202411767376.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-04
- Publication Date
- 2025-04-11
AI Technical Summary
The existing host asset management technology has insufficient adaptability in complex environments, low real-time data acquisition, poor response capabilities in dynamic environments, and incomplete asset dependency modeling and visual interactions.
Multi-protocol adaptation and dynamic selection, distributed data acquisition and integration, distributed storage and association analysis, and interactive visualization technologies are adopted to realize automatic inventory and management of host assets through protocol selection engines, asynchronous concurrent acquisition, distributed databases and graph databases, as well as dynamic dashboards and topological views.
It significantly improves the accuracy and efficiency of data collection, improves the adaptability and responsiveness of the system, and realizes comprehensive, real-time and intelligent management of host assets.
Smart Images

Figure CN119814519A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of host asset management, and in particular to a method for automatically counting assets of a host system. Background Art
[0002] With the rapid development of information technology and cloud computing, the IT environment of enterprises has become increasingly complex, and the types, distribution and operating status of host assets have become dynamic and diverse. Traditional asset management technologies usually rely on static data collection methods based on a single protocol, combined with manual configuration to complete the recording and maintenance of host assets. However, these technologies have gradually exposed problems of insufficient adaptability, real-time performance and intelligence in complex environments, making it difficult to meet the needs of modern IT operation and maintenance.
[0003] Traditional asset management tools usually only support one or a few protocols (such as SNMP, SSH or WMI), and their scope of application is limited. The SNMP protocol is widely used for data collection of network devices, but it does not provide sufficient support for operating system-level information (such as service status and hardware configuration); SSH and WMI are applicable to Linux and Windows systems respectively, but it is difficult to cover dynamic resources in modern cloud environments and containerized platforms. Existing technologies lack support for emerging protocols (such as Redfish and Kubernetes API), making it difficult to effectively collect comprehensive asset data in heterogeneous environments. This lack of protocol adaptability leads to a limited scope of asset collection, requiring a lot of manual intervention to configure different protocols, which is complex and error-prone.
[0004] Traditional asset inventory tools mostly use a serial collection method, that is, data collection is completed by calling the protocol one by one on the host. As the number of hosts in the enterprise IT environment increases, the efficiency problem of this serial method becomes increasingly prominent. In a large-scale asset environment, serial collection may take a lot of time, causing the collected data to lag behind the actual operating status. Summary of the invention
[0005] In view of the shortcomings of the prior art, the present invention provides a method for automatic inventory of host system assets, which solves the problems of insufficient adaptability, low real-time data collection, poor dynamic environment responsiveness, and imperfect asset dependency modeling and visualization interaction in the existing host asset management technology.
[0006] To achieve the above objectives, the present invention is implemented through the following technical solutions: A method for automatically taking inventory of host system assets, comprising the following steps:
[0007] Multi-protocol adaptation and dynamic selection: Based on the host type, environmental attributes and network characteristics, the protocol selection engine is used to achieve dynamic protocol selection and adaptation;
[0008] Data collection and integration: Through asynchronous concurrent collection tasks, multi-source data is collected in real time to complete data cleaning, deduplication and standardization;
[0009] Distributed storage and association analysis: Store the collected host asset data in a distributed database, and use the database to establish a dependency model between assets;
[0010] Interactive visualization: Displays the host asset status and its associated topological relationships through dynamic dashboards and topology views, and provides real-time alarm and prediction functions.
[0011] Preferably, in the step of multi-protocol adaptation and dynamic selection, the protocol selection engine performs protocol selection based on the following rules:
[0012] The protocol is selected based on the host properties, including:
[0013] a. Use SNMP protocol first for network devices;
[0014] b. Use SSH protocol first for Linux system;
[0015] c. Use WMI protocol first for Windows system;
[0016] Dynamic switching mechanism: When the main protocol fails, it automatically switches to the backup protocol.
[0017] Preferably, the step of data collection and integration includes the following sub-steps:
[0018] Use distributed scheduling systems (including Celery) to allocate and prioritize collection tasks;
[0019] Implement multi-protocol concurrent acquisition based on asynchronous I / O technology (including Python's asyncio or Go concurrency model);
[0020] The data integration uses the following formula:
[0021] D s ={d1,d2,…,d n},d i =f ( p i ,c i )
[0022] Among them, D s represents the standardized asset dataset, d i For a single asset record, p i is the data item collected by the protocol, c i Data cleaning rules.
[0023] Preferably, the steps of distributed storage and association analysis include:
[0024] Use Elasticsearch to store dynamic property data of assets;
[0025] Use graph databases (including Neo4j) to store hosts and their dependencies, where the dependency modeling formula is:
[0026] G= ( V,E ) ,V={v1,v2,…,v m},E={e ij |v i Dependency j}
[0027] Among them, G represents the host topology graph, V is the set of hosts and service nodes, and E is the dependency relationship between hosts.
[0028] Preferably, in the step of interactive visualization, the following functions are realized through a dynamic dashboard:
[0029] Real-time updates of asset status, including host online status and resource utilization (CPU, memory);
[0030] Display of alarm information, including abnormal hosts and operational failures;
[0031] Trend prediction curve, based on the time series analysis results of the host's historical data.
[0032] Preferably, the method further includes an event-driven data update mechanism, specifically:
[0033] For cloud environments, update the status of virtual machines and storage devices by monitoring Webhook events of cloud vendor APIs;
[0034] For container environments, subscribe to Pod lifecycle events through the Kubernetes API to achieve real-time resource change synchronization.
[0035] Preferably, the intelligent analysis module includes:
[0036] The anomaly detection submodule detects unauthorized access devices based on the IsolationForest algorithm. Specifically:
[0037]
[0038] Where S(x) is the anomaly score of the host, N is the number of random trees, and h(x,t) is the path length of sample x in the tth tree;
[0039] The capacity prediction submodule predicts the host resource utilization trend based on LSTM (Long Short-Term Memory Network).
[0040] Preferably, the rule for cleaning duplicate data in the data integration is:
[0041] For data collected by multiple protocols, duplicates are removed based on unique identifiers (including MAC addresses and UUIDs);
[0042] For time series data, the latest record is overwritten based on the timestamp.
[0043] Preferably, the distributed scheduling system used in the data collection step supports load balancing, specifically including:
[0044] Dynamically allocate collection tasks based on the host's current CPU and network load;
[0045] Use message queues (including RabbitMQ) to implement asynchronous monitoring and feedback of task status.
[0046] Preferably, the topology visualization view provided by the system supports the following interactive functions:
[0047] Click a node to display detailed attribute information of the host;
[0048] Drag nodes to rearrange the topology layout;
[0049] Multi-dimensional filtering: filter and display by host status, service type or resource utilization.
[0050] The present invention provides a method for automatically taking inventory of host system assets. It has the following beneficial effects:
[0051] 1. The present invention adopts a multi-protocol adaptation and dynamic selection technical solution based on host attribute priority rules. Through the protocol selection engine combined with a dynamic switching mechanism, it realizes the efficient collection of multi-type host assets in a heterogeneous environment, and achieves the technical effect of selecting the optimal protocol for different host types (such as network equipment, Linux system, Windows system), which significantly improves the accuracy and efficiency of data collection. Compared with the technical solutions in the prior art that only support a single protocol or require manual configuration of the protocol, it solves the technical problems of insufficient adaptability, complex configuration, and low data collection efficiency in complex environments, and effectively adapts to the dynamic and changeable IT environment.
[0052] 2. The present invention adopts a technical solution of distributed scheduling combined with asynchronous concurrency, and realizes efficient collection and real-time integration of multi-source asset data through dynamic task allocation and priority scheduling. It achieves the technical effect of high-concurrency collection of a large number of hosts at the same time, significantly reduces the collection delay and improves the system throughput. Compared with the technical solution of the prior art that adopts the traditional serial collection method, which leads to low resource utilization and high collection delay, it solves the problem of insufficient real-time and efficiency in a large-scale asset environment. At the same time, through data cleaning and standardization processing, it ensures the consistency and ease of use of data, and improves the overall quality of asset management.
[0053] 3. The present invention adopts a technical solution that combines dynamic topology visualization with multi-dimensional interactive functions. Through various interactive methods such as node clicking, free dragging, screening and filtering, it realizes the intuitive display and convenient management of host assets and their dependencies. It achieves the technical effect of quickly locating, analyzing and operating target nodes in complex asset networks, and significantly improves the user's understanding and management efficiency of host assets. Compared with the technical solutions in the prior art that only provide static views or limited interactive functions, it solves the problems of poor display flexibility and insufficient user experience in large-scale complex topologies, and provides more powerful support for asset troubleshooting and optimization analysis. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] Figure 1 It is a flow chart of the present invention. DETAILED DESCRIPTION
[0055] The following will be combined with the drawings of the present invention specification to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0056] Please see attached Figure 1 The embodiment of the present invention provides a method for automatically counting assets of a host system, comprising the following steps:
[0057] Multi-protocol adaptation and dynamic selection: Based on the host type, environmental attributes and network characteristics, the protocol selection engine is used to achieve dynamic protocol selection and adaptation;
[0058] Data collection and integration: Through asynchronous concurrent collection tasks, multi-source data is collected in real time to complete data cleaning, deduplication and standardization;
[0059] Distributed storage and association analysis: Store the collected host asset data in a distributed database, and use the database to establish a dependency model between assets;
[0060] Interactive visualization: Displays the host asset status and its associated topological relationships through dynamic dashboards and topology views, and provides real-time alarm and prediction functions.
[0061] Specifically, multi-protocol adaptation and dynamic selection
[0062] In a complex heterogeneous environment, different types of hosts and devices may support different communication protocols. This method achieves comprehensive support for host assets through multi-protocol adaptation and dynamic selection modules. The main steps are as follows:
[0063] Protocol support scope:
[0064] Select the optimal protocol for data collection based on the host's attributes and environmental characteristics. Supported protocols include:
[0065] SNMP: Mainly used for data collection of network devices, such as switches and routers, to collect the hardware status and operating indicators of the devices;
[0066] SSH: Applicable to Linux systems, obtains hardware, software information and operating status through remote command execution;
[0067] WMI: Applicable to Windows systems, used to access service status, system logs, hardware information, etc.;
[0068] Cloud platform API: Dynamically collect the status of virtual machines, storage, and other cloud resources through APIs provided by cloud vendors (such as AWS, Azure, and Google Cloud API);
[0069] Container protocols: such as Kubernetes API, which is used to collect Pod status, resource usage, and lifecycle data in containerized environments;
[0070] Other modern protocols: such as Redfish, mainly collect the status of the server's underlying hardware, including BIOS, hard disk health status, fan operating status, etc.
[0071] Protocol Selection Engine:
[0072] Build a dynamic protocol selection engine to automatically select the appropriate protocol based on the following rules:
[0073] Environment properties: such as operating system type (Linux uses SSH, Windows uses WMI).
[0074] Device type: SNMP is preferred for network devices, and cloud resources directly call the cloud vendor API.
[0075] Network characteristics: For example, low-load protocols are preferred under bandwidth constraints.
[0076] Dynamic switching mechanism:
[0077] When the main protocol cannot be used due to network interruption, authorization failure, etc., it automatically switches to the backup protocol to ensure the continuity and stability of data collection.
[0078] Plug-in extension support:
[0079] Each protocol is independently implemented as a plug-in and connected to the system through a unified interface, supporting hot-swapping and dynamic expansion of the protocol to ensure the flexibility of the system.
[0080] Data collection and integration
[0081] This step uses distributed scheduling and asynchronous collection mechanisms to achieve real-time collection of host asset data, and performs cleaning, integration and standardization processing, including:
[0082] Distributed task scheduling:
[0083] Use a distributed task scheduling system (such as Celery or Apache Airflow) to distribute collection tasks to multiple nodes. Task scheduling strategies include:
[0084] Dynamic allocation: Dynamically adjust task allocation based on host resource utilization and network load to avoid overloading of a single node;
[0085] Priority strategy: Dynamic resources (such as container status) are collected first, and static resources (such as hardware configuration) are collected at a low frequency.
[0086] Asynchronous concurrent collection:
[0087] Use asynchronous I / O technology (such as Python's asyncio) to initiate multiple protocol calls simultaneously to improve collection efficiency. For the same host, you can concurrently collect its hardware information (SSH), service status (WMI), and operation indicators (SNMP).
[0088] Data cleaning and deduplication:
[0089] The collected data may contain duplicates or conflicts, and duplicates are merged based on unique identifiers (such as MAC addresses and UUIDs);
[0090] Standardize field values, for example, standardize hard disk capacity to GB and memory utilization to percentage.
[0091] Data standardization and integration:
[0092] Design a unified asset data model that covers the host's static information (such as name, IP address, hardware configuration) and dynamic information (such as resource utilization, service status). After data is standardized, it is stored in the database for subsequent analysis.
[0093] Real-time integration:
[0094] Build a data pipeline based on a stream processing framework (such as Apache Kafka) to ensure that the collected multi-source data can be transmitted to the integration module in real time for processing.
[0095] Distributed storage and association analysis
[0096] After the collection is completed, the data is stored in a distributed database, and a relationship model between assets is established through association analysis, providing a basis for subsequent asset visualization and intelligent analysis. The specific steps are as follows:
[0097] Distributed storage:
[0098] Use Elasticsearch to store real-time asset data and support efficient search and query;
[0099] Store historical asset data in HDFS or other big data storage systems to support trend analysis and archive management.
[0100] Asset relationship modeling:
[0101] Use graph databases (such as Neo4j) to build dependency models between hosts, including the calling relationships between hosts and services, hosts and network devices, and services;
[0102] Asset relationships are expressed through nodes and edges. Nodes represent asset entities such as hosts and services, and edges represent dependency or call relationships.
[0103] Dynamic correlation analysis:
[0104] Generate a host topology map by analyzing asset dependencies in real time;
[0105] Analyze the cascading impact that may be caused by host failures and predict potential service interruption risks.
[0106] Smart analysis supports:
[0107] Anomaly detection: Identify unauthorized devices or hosts in abnormal status based on historical data;
[0108] Trend forecasting: Combine time series analysis to predict future resource requirements and assist in capacity planning.
[0109] Interactive visualization
[0110] The asset inventory results are presented to users intuitively through interactive dynamic dashboards and topology views, while providing real-time alarm and trend prediction functions, including:
[0111] Dynamic dashboard:
[0112] Real-time display of host quantity, online status, and resource utilization (such as CPU, memory, network bandwidth, etc.);
[0113] Provides alarm information, including unauthorized device access, high-load host and other anomalies.
[0114] Topology view:
[0115] Use dynamic topology diagrams to show the dependencies between hosts, services, and network devices;
[0116] Supports interactive functions, such as clicking nodes to display detailed information, dragging nodes to adjust the layout, and filtering and displaying some assets by conditions.
[0117] Real-time alarm system:
[0118] Trigger real-time alerts based on anomaly detection results from rule engines or machine learning models;
[0119] Alarm types include host failure, resource bottleneck, configuration anomaly, etc., notifying users to handle them in a timely manner.
[0120] Trend forecasting function:
[0121] Generate a forecast curve of future resource demand based on the host's historical data to assist users in capacity planning and resource optimization.
[0122] In the steps of multi-protocol adaptation and dynamic selection, the protocol selection engine performs protocol selection based on the following rules:
[0123] The protocol is selected based on the host properties, including:
[0124] a. Use SNMP protocol first for network devices;
[0125] b. Use SSH protocol first for Linux system;
[0126] c. Use WMI protocol first for Windows system;
[0127] Dynamic switching mechanism: When the main protocol fails, it automatically switches to the backup protocol.
[0128] Specifically, the protocol selection engine gives priority to the communication protocol suitable for the current host according to the type of host and the operating environment, so as to improve the collection efficiency and accuracy: for network devices (such as routers, switches, etc.), the protocol selection engine gives priority to the SNMP protocol. SNMP is a lightweight protocol. By accessing the management information base (MIB) of the device, it can quickly obtain the hardware information, interface status and traffic statistics of the device, and its bandwidth overhead is small, which is suitable for the resource limitation characteristics of network devices; for hosts running the Linux system, the protocol selection engine gives priority to the SSH protocol. The SSH protocol has the advantages of high security and strong flexibility. It can obtain the hardware configuration, system status and dynamic performance data of the host through remote command execution, and is particularly suitable for scenarios with high real-time requirements; for hosts running the Windows system, the protocol selection engine gives priority to the WMI protocol. WMI can collect detailed data such as hardware information, service status, log records, etc. by accessing the Windows management interface, and supports in-depth system-level management. In addition, the protocol selection engine also has a dynamic switching mechanism. When the main protocol fails to work properly due to network interruption, permission issues or device restrictions, the system will automatically switch to the backup protocol to ensure the continuity of data collection. For example, when the SSH protocol fails, you can switch to the API-based collection method, or when the SNMP protocol is not available, try to obtain the necessary information through other channels, thereby improving the robustness and adaptability of the system. This design of priority rules based on host attributes combined with a dynamic switching mechanism not only improves the flexibility of protocol adaptation and collection efficiency, but also significantly enhances the stability and reliability of the system in complex environments.
[0129] The data collection and integration step includes the following sub-steps:
[0130] Use distributed scheduling systems (including Celery) to allocate and prioritize collection tasks.
[0131] Implement multi-protocol concurrent acquisition based on asynchronous I / O technology (including Python's asyncio or Go concurrency model);
[0132] The data integration uses the following formula:
[0133] D s ={d1,d2,…,d n},d i =f ( p i ,c i )
[0134] Among them, D s represents the standardized asset dataset, d i For a single asset record, p iis the data item collected by the protocol, c i Data cleaning rules.
[0135] Specifically, the system uses a distributed scheduling framework (such as Celery) to allocate and prioritize collection tasks. According to the real-time status of the host, the task type, and the collection requirements, the collection tasks are dynamically allocated to multiple task execution nodes. The priority scheduling strategy ensures that key tasks (such as dynamic resource status updates) are executed first, while static tasks (such as hardware information collection) are arranged in low-priority queues according to resource load, thereby achieving rational resource utilization and load balancing of collection tasks. Secondly, the system uses asynchronous I / O technology (such as Python's asyncio or Go's concurrent model) to implement concurrent calls of multiple protocols, and parallelizes protocol collection tasks through asynchronous programming. When collecting data from a single host, SNMP can be called to obtain network status, SSH can be called to obtain system information, and KubernetesAPI can be called to obtain container status, thereby significantly improving the efficiency of data collection and reducing delays. Finally, after cleaning and integration, the collected multi-source data is stored as a standardized data model to ensure the consistency of the data format and ease of use. During the data integration process, the system will deduplicate the collected duplicate information, merge data from different protocols by matching unique identifiers (such as MAC addresses or UUIDs), and normalize field values according to data cleaning rules, such as unifying memory size in GB and CPU utilization in percentage. The results of data integration will include the static attributes of the host (such as name, IP address, hardware configuration) and dynamic status (such as resource utilization, active services), and provide them for subsequent analysis and storage modules. Through the above methods, the system realizes high-concurrency, multi-protocol supported data collection and integration, meeting the requirements for real-time, accuracy and scalability in complex IT environments.
[0136] The steps of distributed storage and association analysis include:
[0137] Use Elasticsearch to store dynamic property data of assets;
[0138] Use graph databases (including Neo4j) to store hosts and their dependencies, where the dependency modeling formula is:
[0139] G=(V,E),V={v1,v2,…,v m},E={e ij |v i Dependency j}
[0140] Among them, G represents the host topology graph, V is the set of hosts and service nodes, and E is the dependency relationship between hosts.
[0141] Specifically, the system uses Elasticsearch as a distributed storage engine to store dynamic attribute data of host assets, including the real-time status of the host (such as CPU utilization, memory occupancy), the list of running services, network traffic statistics, etc. This storage method supports efficient full-text retrieval and real-time query, and can quickly respond to user query requests for specific hosts or attributes. At the same time, it realizes scalability support for large-scale asset data through a distributed architecture. Secondly, in order to fully describe the relationship between hosts and analyze complex dependency structures, the system uses a graph database (such as Neo4j) to store the dependency between hosts and services. Each host or service is represented as a node in the graph database, and the dependency between hosts is represented as edges between nodes. In this way, the association between hosts and services can be intuitively described, such as how the services running on a host depend on databases or network devices on other hosts. In order to efficiently manage and analyze these relationships, the system builds a topology model that summarizes the dependencies of all hosts and services into a network graph. The nodes of the graph represent hosts or services, and the edges represent dependencies. A Web server may depend on a database server and a load balancer. These dependency paths can be clearly queried through the graph database. The storage of dependencies not only supports visual display, but also supports complex analysis functions, such as identifying key nodes (such as highly dependent database servers) and analyzing fault propagation paths (such as downstream services that may be affected by a host failure). Through the combination of distributed storage and graph databases, this method realizes dynamic status management and comprehensive correlation analysis of host assets, providing strong technical support for asset management, fault diagnosis and dependency analysis.
[0142] In the interactive visualization step, the following functions are achieved through the dynamic dashboard:
[0143] Real-time updates of asset status, including host online status and resource utilization (CPU, memory);
[0144] Display of alarm information, including abnormal hosts and operational failures;
[0145] Trend prediction curve, based on the time series analysis results of the host's historical data.
[0146] Specifically, the dynamic dashboard integrates a real-time data update module to dynamically display the key status information of the host through visual components, including the host's online status, CPU utilization, memory occupancy and other core resource indicators. Through real-time connection with the distributed database, the dashboard can be refreshed instantly when the host status changes, ensuring that users obtain the latest asset information. Secondly, the system has designed an alarm information display module to capture and display real-time alarm information of abnormal hosts and operating failures. When an abnormality occurs in the host (such as resource overrun, offline, service unavailable), the system will trigger an alarm, display the details of the relevant host and abnormal indicators in the alarm area of the dashboard, and highlight them by color, marking, etc., so that users can quickly locate the problem. In addition, the dashboard also provides a trend prediction function. Through time series analysis based on historical data, a trend prediction curve for host resource usage is generated, showing the changes in CPU, memory, and storage utilization in the future, helping users to discover potential resource bottlenecks in advance and conduct capacity planning. Users can customize analysis views through interactive functions of the dashboard, such as selecting time ranges and filtering host categories, to further improve the flexibility and efficiency of operations. The entire visualization system is tightly integrated with the storage and analysis modules to build an interactive platform that integrates status monitoring, alarm processing and predictive analysis, providing strong support for the refinement and intelligence of asset management.
[0147] The method further includes an event-driven data update mechanism, specifically:
[0148] For cloud environments, update the status of virtual machines and storage devices by monitoring Webhook events of cloud vendor APIs;
[0149] For container environments, subscribe to Pod lifecycle events through the Kubernetes API to achieve real-time resource change synchronization.
[0150] The intelligent analysis module includes:
[0151] The anomaly detection submodule detects unauthorized access devices based on the IsolationForest algorithm. Specifically:
[0152]
[0153] Where S(x) is the anomaly score of the host, N is the number of random trees, and h(x,t) is the path length of sample x in the tth tree;
[0154] The capacity prediction submodule predicts the host resource utilization trend based on LSTM (Long Short-Term Memory Network).
[0155] The rules for cleaning duplicate data in the data integration are:
[0156] For data collected by multiple protocols, duplicates are removed based on unique identifiers (including MAC addresses and UUIDs);
[0157] For time series data, the latest record is overwritten based on the timestamp.
[0158] Specifically, in a cloud environment, the system captures the state changes of cloud resources such as virtual machines and storage devices in real time by monitoring API Webhook events provided by cloud vendors. When users create, destroy or modify virtual machine instances on the cloud platform, Webhook pushes corresponding event notifications to the system. After the system parses the event data, it immediately updates the relevant records in the asset database, including the instance status (such as start, stop or delete), configuration changes (such as increase in storage capacity) and network properties (such as IP address, bandwidth adjustment). Through this event-driven mechanism, the system can quickly respond to dynamic changes in resources and avoid the delay problem of data updates in the traditional polling mode. Secondly, for containerized environments, the system captures the change information of the container (Pod) life cycle by subscribing to the event stream of the Kubernetes API. When a container is created, started, expanded, reduced, or destroyed, the system can receive corresponding event notifications in real time and synchronize these changes to the asset management database. When a new Pod is scheduled to a node, the system will record the resource usage of the Pod (such as CPU, memory allocation) and the dependencies of the services to which it belongs; when a Pod is destroyed, the system will clean up the corresponding asset records. Through this real-time update mechanism, the system can accurately reflect the transient changes of resources in the containerized environment. In addition, the system has designed event filtering and priority mechanisms to ensure that only key events related to asset management are processed to avoid the impact of irrelevant events on performance. The event-driven data update mechanism greatly improves the system's adaptability to dynamic environments, ensuring that the status of both cloud resources and container resources can be reflected in the asset management system in real time, providing high-quality data support for subsequent monitoring, analysis, and optimization.
[0159] The distributed scheduling system used in the data collection step supports load balancing, specifically including:
[0160] Dynamically allocate collection tasks based on the host's current CPU and network load;
[0161] Use message queues (including RabbitMQ) to implement asynchronous monitoring and feedback of task status.
[0162] Specifically, the system dynamically adjusts the allocation strategy of collection tasks by monitoring the CPU and network load of task execution nodes in real time. When the system receives a batch of collection tasks to be executed, the scheduling system will first evaluate the current status of each task execution node, including core indicators such as CPU usage, available memory, and network bandwidth utilization. Based on these evaluation results, the system will prioritize high-load tasks to nodes with relatively idle operation to avoid delays or interruptions of tasks due to resource bottlenecks on certain nodes. At the same time, the system will also update node status data in real time to ensure that the optimal task allocation is always achieved in a dynamically changing operating environment. In order to further improve the reliability and efficiency of task execution, the system introduces a message queue mechanism (such as RabbitMQ) to manage asynchronous monitoring and feedback of tasks. During the task allocation process, the scheduling system pushes the collection tasks to the message queue, and each task execution node subscribes and pulls the tasks suitable for its own load. After the task is completed, the node will feedback the execution results and status information to the message queue, which will be uniformly processed and updated by the scheduling system. The use of message queues not only realizes the asynchronous distribution of tasks, but also provides reliable tracking capabilities for task status. Even if some tasks fail to complete due to node failures, the scheduling system can reschedule tasks through the queue to ensure final completion. In addition, the system has also designed a task priority mechanism to push high-priority collection tasks (such as dynamic resource status updates) to idle nodes for execution, while low-priority tasks are scheduled for execution when resources are sufficient. Through this distributed scheduling and load balancing strategy, the system achieves high performance and high reliability in large-scale data collection scenarios, and adapts to complex and changing IT asset management needs.
[0163] The topology visualization view provided by the system supports the following interactive functions:
[0164] Click a node to display detailed attribute information of the host;
[0165] Drag nodes to rearrange the topology layout;
[0166] Multi-dimensional filtering: filter and display by host status, service type or resource utilization.
[0167] Specifically, each node in the topology view represents a host or service. Users can obtain its detailed attribute information by clicking on the node. The attribute information includes the host name, IP address, operating system type, hardware configuration (such as CPU, memory, storage), current resource utilization (such as CPU load, memory occupancy) and the list of running services. This function ensures that users view the latest data by connecting to the system database in real time. It also supports expansion and folding operations, allowing users to focus on a specific information level. Secondly, the topology view supports free dragging of nodes. Users can rearrange the positions of nodes by dragging the mouse to adjust the layout structure according to their own needs, such as manually grouping nodes with logical associations or highlighting certain key nodes. This interactive function not only improves the flexibility of the visual layout, but also facilitates users to quickly locate target nodes in complex topological structures. In addition, the system provides multi-dimensional screening and filtering functions, allowing users to filter by host status (such as online, offline), service type (such as database service, Web service) or resource utilization (such as high-load host). Users can dynamically adjust the display range of the topology view by checking the filtering conditions, shield irrelevant nodes, and focus on important assets or hosts in abnormal status. Users can choose to display only hosts whose resource utilization exceeds a threshold, so as to quickly identify nodes that may have performance bottlenecks. The implementation of the above interactive functions relies on the real-time communication support of modern front-end technologies (such as D3.js or Cytoscape.js) and back-end data interfaces to ensure that user operations are immediately reflected in the visualization view. Through the above functions, the system's topology visualization view not only provides a clear display of the asset structure, but also greatly improves the efficiency and experience of users in managing and analyzing host assets.
[0168] Although embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various changes, modifications, substitutions and variations may be made to the embodiments without departing from the principles and spirit of the present invention, and that the scope of the present invention is defined by the appended claims and their equivalents.
Claims
1. A method for automatically taking inventory of host system assets, characterized in that: The following steps are involved: Multi-protocol adaptation and dynamic selection: Based on the host type, environmental attributes and network characteristics, the protocol selection engine is used to achieve dynamic protocol selection and adaptation; Data collection and integration: Through asynchronous concurrent collection tasks, multi-source data is collected in real time to complete data cleaning, deduplication and standardization; Distributed storage and association analysis: Store the collected host asset data in a distributed database, and use the database to establish a dependency model between assets; Interactive visualization: Displays the host asset status and its associated topological relationships through dynamic dashboards and topology views, and provides real-time alarm and prediction functions.
2. A method for automatically counting host system assets according to claim 1, characterized in that: In the steps of multi-protocol adaptation and dynamic selection, the protocol selection engine performs protocol selection based on the following rules: The protocol is selected based on the host properties, including: a. Use SNMP protocol first for network devices; b. Use SSH protocol first for Linux system; c. Use WMI protocol first for Windows system; Dynamic switching mechanism: When the main protocol fails, it automatically switches to the backup protocol.
3. A method for automatic inventory of host system assets according to claim 1, characterized in that: The data collection and integration step includes the following sub-steps: Use distributed scheduling systems (including Celery) to allocate and prioritize collection tasks; Implement multi-protocol concurrent acquisition based on asynchronous I / O technology (including Python's asyncio or Go concurrency model); The data integration uses the following formula: D s ={d1,d2,…,d n },d i =f ( p i ,c i ) Among them, D s represents the standardized asset dataset, d i For a single asset record, p i is the data item collected by the protocol, c i Data cleaning rules.
4. The method for automatically counting assets of a host system according to claim 1, characterized in that: The steps of distributed storage and association analysis include: Use Elasticsearch to store dynamic property data of assets; Use graph databases (including Neo4j) to store hosts and their dependencies, where the dependency modeling formula is: G= ( V,E ) ,V={v1,v2,…,v m },E={e ij |v i dependent v j } Among them, G represents the host topology graph, V is the set of hosts and service nodes, and E is the dependency relationship between hosts.
5. The method for automatically counting assets of a host system according to claim 1, characterized in that: In the interactive visualization step, the following functions are achieved through the dynamic dashboard: Real-time updates of asset status, including host online status and resource utilization (CPU, memory); Display of alarm information, including abnormal hosts and operational failures; Trend prediction curve, based on the time series analysis results of the host's historical data.
6. The method for automatically counting assets of a host system according to claim 1, characterized in that: The method further includes an event-driven data update mechanism, specifically: For cloud environments, update the status of virtual machines and storage devices by monitoring Webhook events of cloud vendor APIs; For container environments, subscribe to Pod lifecycle events through the Kubernetes API to achieve real-time resource change synchronization.
7. A method for automatically counting assets of a host system according to claim 1, characterized in that: The intelligent analysis module includes: The anomaly detection submodule detects unauthorized access devices based on the IsolationForest algorithm. Specifically: Where S(x) is the anomaly score of the host, N is the number of random trees, and h(x,t) is the path length of sample x in the tth tree; The capacity prediction submodule predicts the host resource utilization trend based on LSTM (Long Short-Term Memory Network).
8. The method for automatically counting assets of a host system according to claim 1, characterized in that: The rules for cleaning duplicate data in the data integration are: For data collected by multiple protocols, duplicates are removed based on unique identifiers (including MAC addresses and UUIDs); For time series data, the latest record is overwritten based on the timestamp.
9. A method for automatic inventory of host system assets according to claim 1, characterized in that: The distributed scheduling system used in the data collection step supports load balancing, specifically including: Dynamically allocate collection tasks based on the host's current CPU and network load; Use message queues (including RabbitMQ) to implement asynchronous monitoring and feedback of task status.
10. The method for automatically counting assets of a host system according to claim 1, characterized in that: The topology visualization view provided by the system supports the following interactive functions: Click a node to display detailed attribute information of the host; Drag nodes to rearrange the topology layout; Multi-dimensional filtering: filter and display by host status, service type or resource utilization.
Citation Information
Cited By
Internet of Things protocol management scheme supporting hot plug extension
CN120075103A
Scene adaptive illumination regulation and control system based on multi-protocol interaction
CN120916310A
Asset state detection platform, asset state detection method, equipment and storage medium
CN121262118A