Parca Agent is an always-on eBPF-based sampling profiler that auto-discovers targets in Kubernetes and systemd environments without requiring code changes or restarts.
eBPF based always-on profiler auto-discovering targets in Kubernetes and systemd, zero code changes or restarts needed!
This tool is used by developers and DevOps teams to continuously profile applications and system processes with minimal overhead, enabling performance monitoring and troubleshooting in Kubernetes clusters and Linux systems. It allows users to collect detailed profiling data across multiple programming languages and analyze it locally or by sending it to a Parca server for long-term insights.
Parca Agent requires Linux kernel 5.3+ with BTF enabled for eBPF functionality. Profiling certain runtime-specific information, such as Goroutines, requires explicit instrumentation. Users should ensure appropriate memory lock limits are set to allow eBPF maps to function correctly. The tool is designed to minimize overhead and does not require application restarts or code modifications, making it suitable for production environments.
Ensure Linux kernel version 5.3 or higher with BTF support is installed
Refer to the Kubernetes Getting Started guide at https://www.parca.dev/docs/kubernetes for deployment instructions
Download and install the parca-agent package via Snapcraft or container images as per the repository documentation
Configure the agent using command-line flags or a config file as needed
Run the parca-agent binary on the target node or container
parca-agent --log-level=debug
Run the agent with debug logging enabled for troubleshooting
parca-agent --http-address=127.0.0.1:7071
Bind the internal HTTP server to the specified address and port
parca-agent --node="hostname"
Specify the node name where the agent is running, must match Kubernetes node name if applicable
parca-agent --profiling-cpu-sampling-frequency=19
Set the CPU sampling frequency to 19 samples per second
parca-agent --memlock-rlimit=0
Configure the maximum locked memory size for eBPF maps; 0 means no limit
parca-agent --version
Display the current version of the parca-agent