Usado para estender com segurança e eficiência os recursos do kernel sem a necessidade de alterar o código fonte do kernel ou carregar os módulos do kernel.
eBPF é uma tecnologia revolucionária com origem no kernel do Linux que pode executar programas em área restrita em um kernel do sistema operacional. Ele é usado para estender com segurança e eficiência os recursos do kernel sem a necessidade de alterar o código fonte do kernel ou carregar os módulos do kernel.
Sistema operacional sempre foi um local ideal para implementar observabilidade, segurança e funcionalidade de rede devido à capacidade privilegiada do kernel de supervisionar e controlar todo o sistema. Ao mesmo tempo, o kernel de um sistema operacional é difícil de evoluir devido ao seu papel central e alta exigência de estabilidade e segurança.
Como você pode ver no diagrama, você precisa de um programa BPF em execução no Kernel e um aplicativo de espaço do usuário em execução no espaço do usuário que interaja com o programa BPF (para coletar dados, por exemplo).
Construir, executar e distribuir programas eBPF através de imagens do Docker.
Permite que você se concentre em codificar o código eBPF, enquanto cuida dos componentes do espaço do usuário, assim expondo automaticamente seus dados como métricas ou logs.
Instale o bee CLI em plataforma Linux, pois se você usa Mac, precisará de um ambiente virtualizado para isso:
curl -sL <https://run.solo.io/bee/install> | sh
Com a sequência dos comandos acima, você terá o seguinte retorno.
<string>:1: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
Attempting to download bee version v0.0.14
Downloading bee-linux-amd64...
Download complete!, validating checksum...
Checksum valid.
bee was successfully installed 🎉
Add the bumblebee CLI to your path with:
export PATH=$HOME/.bumblebee/bin:$PATH
Now run:
bee init # Initialize simple eBPF program to run with bee
Please see visit the bumblebee website for more info: <https://github.com/solo-io/bumblebee>
Agora execute o export para acessar o executável do bee:
export PATH=$HOME/.bumblebee/bin:$PATH
Agora vamos criar um esqueleto para nosso programa eBPF:
bee init
A primeira opção com a qual você será confrontado é a linguagem com a qual desenvolverá seu probe.
Atualmente, apenas C é suportado, mas o suporte para Rust também está planejado.
Use the arrow keys to navigate: ↓ ↑ → ←
? What language do you wish to use for the filter:
▸ C