eBPF Service Trace Framework for Scale-Out Observability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Scale-out systems lack effective methods for analyzing service topology, infrastructure dependencies, and monitoring service activities, leading to challenges in observability and debuggability, especially for complex cluster systems.
Innovation Solution
A trace service framework utilizing Extended Berkeley Packet Filter (eBPF) to trace service activities and dependencies, including a Trace Agent module, Trace Job Controller module, and Result Parser module, which creates hash mapping tables for efficient data processing and provides real-time trace results.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If traditional monitoring methods are used in scale-out systems, then system complexity is reduced, but observability and debuggability of service activities deteriorate
Solution Approach 1:
The patent introduces eBPF as an intermediary layer between the kernel and user space. This mediator captures service activity data at the kernel level without requiring modifications to the kernel source code or complex instrumentation of application code, thereby improving observability while avoiding the complexity of traditional monitoring methods
Solution Approach 2:
The patent replaces traditional mechanical instrumentation methods (such as inserting monitoring code into applications or modifying kernel source code) with an eBPF-based approach that uses specialized bytecode programs executed in the kernel. This substitution achieves the same monitoring goal with significantly reduced system complexity
2Difficulty of detecting and measuring
If detailed service tracing is implemented, then debuggability improves, but system performance overhead increases
Solution Approach 1:
The patent extracts only the necessary tracing data at the kernel level using eBPF programs. By capturing specific service activity information (such as function calls, system calls, and inter-process communications) directly from the kernel, the system obtains detailed debuggability information without the overhead of comprehensive application-level instrumentation
Solution Approach 2:
The patent implements partial tracing by selectively monitoring only the service activities and dependencies that are relevant to debugging. The eBPF programs are configured to capture specific traces based on the tracing requirements, avoiding the excessive overhead of complete system-wide tracing while still providing sufficient debuggability
3Measurement precision
If kernel source code modification is used for tracing, then measurement precision improves, but ease of manufacture deteriorates
Solution Approach 1:
The patent uses eBPF as an intermediary that provides precise kernel-level tracing without requiring modification of the kernel source code. The eBPF programs can be loaded and executed in the running kernel, enabling precise measurement of service activities while maintaining ease of deployment through dynamic loading
Solution Approach 2:
The patent performs preliminary preparation of eBPF programs outside the kernel. The tracing logic is compiled into eBPF bytecode in advance, then loaded into the kernel as ready-to-execute programs. This preliminary action separates the complex tracing logic preparation from the deployment phase, improving ease of manufacture while maintaining measurement precision
Data Source
AI summary
The present disclosure relates to a method, a device, and a product for determining a trace result. The method includes receiving a trace request for tracing a service on a storage device and determining a trace service command related to the trace request. The method further includes tracing a job related to the trace service command, and determining a trace result by parsing job data related to the job. The method for determining a trace result according to the present disclosure can enhance the observability of a service activity and effectively assist product development and problem diagnosis.


