該專案受 eBPF Summit 2021: An eBPF Load Balancer from scratch 啟發,並且修改自 lb-from-scratch 專案。
一個不到 100 行的 eBPF 程式,它利用 XDP 實作一個簡單的 HTTP load balancer。 TinyLB 依賴 libbpf(commit: 8bdc267),開始前請先下載 libbpf:
cd tinyLB
git clone https://github.com/libbpf/libbpf.git
cd libbpf
git checkout 8bdc267
首先,編譯 load balancer 所需要的 docker image:
cd tinyLB
./build_image.sh
編譯完成後,執行以下指令啟動測試環境:
cd compose
docker compose up
sudo cat /sys/kernel/debug/tracing/trace_pipe