Fluent Bit 安装包

这是一个 Fluent Bit 的自动化安装包,提供了完整的安装、卸载和健康检查功能。

目录结构

fluent-bit-installer/
├── install.sh                    # 安装脚本
├── uninstall.sh                  # 卸载脚本
├── package.sh                    # 打包脚本
├── check_health.sh               # 健康检查脚本
├── bin/
│   └── fluent-bit_3.1.9_amd64.deb  # Fluent Bit 安装包
└── config/
    ├── fluent-bit.conf           # 主配置文件
    ├── inject_labels.lua         # Lua 脚本
    ├── parsers.conf              # 解析器配置
    ├── inputs.d/                 # 输入配置目录
    │   ├── 10-train.conf
    │   └── 20-infer.conf
    └── outputs.d/                # 输出配置目录
        └── 10-es.conf

功能特性

  • 自动化安装: 一键安装 Fluent Bit 及其依赖
  • 配置管理: 自动部署预配置的配置文件
  • 服务管理: 自动启动和停止 Fluent Bit 服务
  • 健康检查: 提供 JSON 格式的健康状态检查
  • 完整卸载: 彻底清理所有相关文件和配置
  • 用户管理: 自动创建专用的 fluent-bit 用户

使用方法

1. 打包安装包

./package.sh

这将创建一个带时间戳的压缩包,例如:fluent-bit-installer-20250924-160954.tar.gz

2. 安装 Fluent Bit

# 解压安装包
tar -xzf fluent-bit-installer-*.tar.gz
cd fluent-bit-installer-*

# 运行安装脚本(需要 root 权限)
sudo ./install.sh

3. 健康检查

./check_health.sh

输出示例:

{"name": "fluent-bit", "status": "health", "reason": "success"}

4. 卸载 Fluent Bit

sudo ./uninstall.sh

安装后的文件位置

  • 二进制文件: /opt/fluent-bit/bin/fluent-bit
  • 配置文件: /etc/fluent-bit/
  • 日志文件: /var/log/fluent-bit/
  • 缓冲区目录: /var/lib/fluent-bit/buffers/
  • 运行用户: fluent-bit
  • HTTP 端口: 2020

配置说明

主配置文件

主配置文件位于 /etc/fluent-bit/fluent-bit.conf,包含以下主要部分:

  • SERVICE: 服务配置,包括 HTTP 服务器设置
  • INPUT: 输入配置,通过 inputs.d/ 目录管理
  • FILTER: 过滤器配置,包括解析器和标签注入
  • OUTPUT: 输出配置,通过 outputs.d/ 目录管理

输入配置

  • 10-train.conf: 训练日志输入配置
  • 20-infer.conf: 推理日志输入配置

输出配置

  • 10-es.conf: Elasticsearch 输出配置

服务管理

手动启动

/opt/fluent-bit/bin/fluent-bit --config=/etc/fluent-bit/fluent-bit.conf

后台启动

nohup /opt/fluent-bit/bin/fluent-bit --config=/etc/fluent-bit/fluent-bit.conf &

检查服务状态

# 检查进程
ps aux | grep fluent-bit

# 检查端口
netstat -tuln | grep 2020

# 检查日志
tail -f /var/log/fluent-bit/fluent-bit.log

API 接口

Fluent Bit 提供 HTTP API 用于监控和管理:

  • 根路径: http://localhost:2020
  • 状态接口: http://localhost:2020/api/v1/status
  • 指标接口: http://localhost:2020/api/v1/metrics

故障排除

常见问题

  1. 端口被占用

    • 检查端口 2020 是否被其他服务占用
    • 修改配置文件中的端口设置
  2. 权限问题

    • 确保 fluent-bit 用户有足够的权限访问日志文件
    • 检查目录权限设置
  3. 配置文件错误

    • 检查配置文件语法
    • 查看日志文件中的错误信息

日志查看

# 查看服务日志
tail -f /var/log/fluent-bit/fluent-bit.log

# 查看系统日志
journalctl -u fluent-bit -f

系统要求

  • 操作系统: Ubuntu/Debian/CentOS/RHEL/Fedora
  • 架构: x86_64/amd64
  • 权限: root 权限(用于安装和卸载)
  • 依赖: curl用于健康检查

版本信息

  • Fluent Bit 版本: 3.1.9
  • 安装包版本: 1.0
  • 支持架构: amd64

注意事项

  1. 安装前请确保系统已更新
  2. 卸载时会保留 fluent-bit 用户(系统用户,可能被其他服务使用)
  3. 配置文件包含环境变量,请根据实际环境调整
  4. 建议在生产环境使用前进行充分测试