#devops #dev #it_design_architect
eBPF: программируемое ядро без перезагрузки
eBPF (extended Berkeley Packet Filter) — это технология, позволяющая выполнять безопасные программы прямо в ядре Linux в ответ на события (системные вызовы, сетевые пакеты, трассировка). Главное отличие от модулей ядра — программы проходят строгую проверку безопасности и не могут обрушить систему.
Как работает eBPF
1. Вы пишете программу на C (или Rust) и компилируете её в байт-код для виртуальной машины eBPF.
2. Программа загружается в ядро и проверяется верификатором (безопасность, отсутствие циклов, ограниченный доступ к памяти).
3. Программа привязывается к событию (например, к системному вызову `open`).
4. При наступлении события программа выполняется в ядре, собирает данные или принимает решение (пропустить пакет, изменить параметры).
```
| Область | Что делает eBPF | Традиционный аналог |
|---------|----------------|---------------------|
| **Наблюдаемость** | Сбор метрик в реальном времени (заде