eBPF — programare în kernel Linux fără a modifica nucleul

eBPF permite rularea de programe sigure în kernel Linux fără a modifica codul sursă. Folosit pentru observabilitate, securitate, rețele.

Ce e eBPF?

eBPF e o mașină virtuală în kernelul Linux care poate rula programe sigure (verificate) atașate la evenimente: syscalls, rețea, funcții kernel. Programele sunt scrise în C (sau Rust) și compilate la bytecode eBPF.

Înainte de eBPF

Pentru a adăuga o funcționalitate în kernel: modifici sursa, compilezi, rulezi, dacă crapă → restart server.

Cu eBPF

Scrii un program C, îl încarci în kernel, rulează în siguranță — dacă are bug, kernelul îl respinge. Nu se poate crash-ui.

Cazuri de folosire

| Domeniu | Tool eBPF | Înlocuiește | |---|---|---| | Rețele | Cilium, XDP | iptables, IPVS | | Observabilitate | Pixie, Hubble | Prometheus (parțial) | | Security | Falco, Tetragon | Auditd, seccomp | | Performance | BCC, bpftrace | perf, strace (mai eficient) |

De ce e important

eBPF permite programarea kernelului la runtime — fără a deranja administratorii de sistem, fără recompilări, fără risc. E cea mai importantă inovație Linux din ultimii 10 ani.