跳到主要内容

Linux eBPF 安装

概述

ebpf-agent 是一个基于 eBPF 内核技术的采集服务,用于采集系统和应用的 metrics、logs 数据,并将采集到的数据发送到 light-agent。

系统要求

前置条件
  • Lighthouse 平台版本 ≥ 1.8.0
  • Linux 内核版本 ≥ 4.16
    # 查看内核版本
    uname -r
    # 或
    cat /proc/version
  • 已安装 light-agent(需要在同一台机器上)
  • 已禁用 SELinux:sudo setenforce 0
特殊说明

如果要监控 Kubernetes 集群中的服务,需要额外安装 kube-state-metrics

安装步骤

1. 配置环境变量

必需配置
  • LOGS_ENDPOINT:日志上报地址

    • 默认地址:127.0.0.1(light-agent 所在机器)
    • 默认端口:54318
    export LOGS_ENDPOINT=http://127.0.0.1:54318/v1/logs
  • PROFILES_ENDPOINT:性能分析数据上报地址

    • <Lighthouse IP> 替换为 Lighthouse 平台的实际 IP 地址
    • 默认端口:8085
    export PROFILES_ENDPOINT=http://<Lighthouse IP>:8085/profiling/v1/ebpfinput
可选配置
  • WAL_DIR:数据存储路径
    export WAL_DIR=/tmp/ebpf-agent
  • SCRAPE_INTERVAL:数据采集间隔
    export SCRAPE_INTERVAL=15s
数据传输说明

eBPF Agent 仅支持通过 HTTP 协议使用 OTEL 格式导出数据

2. 执行安装

cd /usr/local/light-agent/ebpf-agent
./ebpf-agent-install.sh

服务管理

查看服务状态

systemctl status ebpf-agent

查看服务日志

# 查看全部日志
journalctl -u ebpf-agent

# 实时查看日志
journalctl -u ebpf-agent -f

常用操作命令

# 启动服务
systemctl start ebpf-agent

# 停止服务
systemctl stop ebpf-agent

# 重启服务
systemctl restart ebpf-agent

卸载服务

/usr/local/light-agent/ebpf-agent/ebpf-agent-uninstall.sh

配置修改

修改环境变量
  1. 查看当前配置:
cat /etc/systemd/system/ebpf-agent.service.env
  1. 修改配置:
vi /etc/systemd/system/ebpf-agent.service.env
  1. 重启服务使配置生效:
systemctl restart ebpf-agent

环境变量说明

环境变量默认值说明
COLLECTOR_ENDPOINThttp://0.0.0.0:4318数据采集基础端点
METRICS_ENDPOINThttp://0.0.0.0:4318/v1/metrics指标数据端点
LOGS_ENDPOINThttp://0.0.0.0:4318/v1/logs日志数据端点
PROFILES_ENDPOINT-性能分析数据端点
SCRAPE_INTERVAL15s数据采集间隔
DISABLE_LOG_PARSINGfalse是否禁用容器日志解析
WAL_DIR/tmp/ebpf-agent数据存储路径

相关阅读