Salta ai contenuti

bpftop - Monitor eBPF in Tempo Reale

bpftop - Monitor eBPF in Tempo Reale

bpftop (di Netflix) è una UI terminale che fornisce una visualizzazione in tempo reale di tutti i programmi eBPF in esecuzione su un host. Per ogni programma mostra il tempo di esecuzione medio, gli eventi al secondo e l”utilizzo della CPU stimato, aggiornando live — quindi puoi vedere quali programmi eBPF sono in esecuzione, con che frequenza vengono attivati e quanta overhead aggiungono. Poiché eBPF si diffonde tra l”osservabilità, la rete e gli strumenti di sicurezza, bpftop risponde a “quale eBPF è in esecuzione e quanto mi sta costando?”

Requisiti

  • Kernel Linux con supporto delle statistiche di runtime eBPF
  • Privilegi root (legge le statistiche BPF del kernel)
  • bpftop abilita kernel.bpf_stats_enabled mentre è in esecuzione (e lo ripristina all”uscita)

Installazione

MetodoComando
Script di installazione`curl -sSfL https://raw.githubusercontent.com/Netflix/bpftop/main/install.sh
Cargocargo install bpftop
Binarioscarica dalla pagina GitHub Releases
Verificabpftop --version

Esecuzione

ComandoDescrizione
sudo bpftopAvvia la TUI live
bpftop --helpMostra le opzioni
bpftop --versionVersione

bpftop deve essere eseguito come root perché legge le statistiche BPF del kernel e attiva bpf_stats_enabled.

Il Display

ColonnaSignificato
IDID del programma BPF
NomeNome del programma
TipoTipo di programma (kprobe, tracepoint, XDP, cgroup, …)
Period Avg Runtime (ns)Tempo medio per esecuzione nell”ultimo periodo
Total Avg Runtime (ns)Media dall”abilitazione delle statistiche
Eventi/secTasso di invocazione
Est. CPU %Utilizzo della CPU stimato di questo programma

Tasti Interattivi

TastoAzione
/ Muovi la selezione
EnterApri un grafico dettagliato per il programma selezionato
OrdinaOrdina per runtime / eventi / CPU (colonna)
qEsci (ripristina lo stato precedente di bpf_stats_enabled)

Cosa Cercare

OsservazioneInterpretazione
Est. CPU % elevato su un programmaUn programma eBPF che aggiunge overhead reale
Eventi/sec elevatiUn hook hot che viene attivato molto frequentemente
Runtime medio in aumentoUn programma che diventa più costoso nel tempo
Programmi inaspettatieBPF che non hai installato consapevolmente

Perché Importa

eBPF è alla base di strumenti come Cilium/Tetragon, Falco, Tracee, Pixie e molti profiler. Ogni carica programmi nel kernel. bpftop fornisce un unico posto per vedere l”impronta aggregata e catturare un programma comportandosi male o troppo hot prima che degradi l”host.

Flussi di Lavoro Comuni

# Vedi quale eBPF è in esecuzione e il suo costo proprio adesso
sudo bpftop

# Valida l''overhead di un agente di sicurezza eBPF appena distribuito
sudo bpftop   # guarda l''Est. CPU % dei programmi dell''agente sotto carico

# Indaga una regressione misteriosa della CPU che gli strumenti di tracing causano
sudo bpftop   # ordina per Est. CPU %, approfondisci il programma top

bpftop vs Strumenti Correlati

Aspettobpftopbpftoolbtop / htop
FocusMetriche live per-eBPF-programmaIspeziona/gestisci oggetti BPFProcessi a livello di sistema
Costo real-timeSì (runtime, eventi, CPU)Elenco staticoCPU/mem del processo
UITUI con graficiCLITUI
Migliore perMonitoraggio dell”overhead eBPFGestione di programmi/mappe BPFMonitoraggio generale

Risorse