Fluent Bit 中文文档
  • Fluent Bit 中文文档
  • 关于
    • Fluent Bit 是什么?
    • Fluent Bit 简要历史
    • Fluentd & Fluent Bit
    • 协议
  • 概念
    • 核心概念
    • 缓冲
    • 数据管道
      • 输入
      • 解析器
      • 过滤器
      • 缓冲
      • 路由
      • 输出
  • 安装
    • 升级说明
    • 平台支持
    • 依赖
    • 源码安装
      • 下载源码
      • 构建和安装
      • 以静态配置构建
    • Linux 软件包
      • Amazon Linux
      • Redhat / CentOS
      • Debian
      • Ubuntu
      • 树莓派
    • Docker
    • Kubernetes
    • Windows
  • 管理
    • 配置 Fluent Bit
      • 格式与模式
      • 配置文件
      • 变量
      • 命令
      • 上游服务负载均衡
      • 单位
    • 安全性
    • 缓冲与存储
    • 积压
    • 调度与重试
    • 内存管理
    • 监控
    • 内部状态导出/信号
  • 数据管道
    • 输入插件
      • Dummy
      • Memory Metics
      • Standard Input
      • Systemd
      • tail
    • 解析器
      • JSON
      • Regular Expression
      • LTSV
      • Logfmt
    • 过滤器
      • Grep
      • Kubernetes
      • Rewrite Tag
      • Modify
      • Nest
    • 输出插件
      • Counter
      • Elasticsearch
      • File
      • FlowCounter
      • HTTP
      • Kafka
      • NULL
      • PostgreSQL
      • Standard Output
      • TCP & TLS
  • 流处理
    • 简介
    • 总览
    • 快速开始
      • Fluent Bit + SQL
      • Check Keys and NULL values
      • Hands On! 101
  • FLUENT BIT FOR DEVELOPERS
    • C Library API
    • 手动提取记录
    • Golang 输出插件
Powered by GitBook
On this page
  • 标签与版本
  • 多架构镜像
  • 快速开始
  • 常见问题
  • 为什么没有基于 Alpine Linux 的 Fluent Bit Docker 镜像 ?
  • latest 表示什么标签?

Was this helpful?

  1. 安装

Docker

Previous树莓派NextKubernetes

Last updated 5 years ago

Was this helpful?

Fluent Bit 容器镜像可以在 Docker Hub 上获取,可用于生产环境。当前可用的镜像可以部署在多种架构体系中。

标签与版本

下表描述了可在 Docker Hub 镜像仓库中使用的镜像及其标签:

标签

架构

版本描述

1.4

x86_64, arm64v8, arm32v7

1.4.x 系列的最新版本

1.4.4

x86_64, arm64v8, arm32v7

1.4-debug, 1.4.1-debug

x86_64

v1.4.x releases + Busybox

1.4.3

x86_64, arm64v8, arm32v7

1.4-debug, 1.4.3-debug

x86_64

v1.4.x releases + Busybox

1.4.2

x86_64, arm64v8, arm32v7

1.4-debug, 1.4.1-debug

x86_64

v1.4.x releases + Busybox

1.4.1

x86_64, arm64v8, arm32v7

1.4-debug, 1.4.1-debug

x86_64

v1.4.x releases + Busybox

1.4.0

x86_64, arm64v8, arm32v7

1.4-debug, 1.4.0-debug

x86_64

v1.4.x releases + Busybox

强烈建议您始终使用 Fluent Bit 的最新镜像。

多架构镜像

此外,主清单提供了用于 arm64v8 和 arm32v7 架构的镜像。从部署的角度来看,无需指定架构,拉取容器镜像的客户端工具将根据其运行的架构获取正确的镜像层。

对于每种架构,我们使用以下基础图像来构建镜像

架构

基础镜像

x86_64

arm64v8

arm64v8/debian:buster-slim

arm32v7

arm32v7/debian:buster-slim

快速开始

从 1.4 系列版本拉取稳定版本的镜像:

$ docker pull fluent/fluent-bit:1.4

拉取完成后,运行以下测试,使 Fluent Bit 可以测量容器的 CPU 使用率

$ docker run -ti fluent/fluent-bit:1.4 /fluent-bit/bin/fluent-bit -i cpu -o stdout -f 1

该命令将使 Fluent Bit 每秒测量一次 CPU 使用率并将结果刷新到标准输出,例如:

Fluent-Bit v1.4.x
Copyright (C) Treasure Data

[2019/10/01 12:29:02] [ info] [engine] started
[0] cpu.0: [1504290543.000487750, {"cpu_p"=>0.750000, "user_p"=>0.250000, "system_p"=>0.500000, "cpu0.p_cpu"=>0.000000, "cpu0.p_user"=>0.000000, "cpu0.p_system"=>0.000000, "cpu1.p_cpu"=>1.000000, "cpu1.p_user"=>0.000000, "cpu1.p_system"=>1.000000, "cpu2.p_cpu"=>1.000000, "cpu2.p_user"=>1.000000, "cpu2.p_system"=>0.000000, "cpu3.p_cpu"=>0.000000, "cpu3.p_user"=>0.000000, "cpu3.p_system"=>0.000000}]

常见问题

为什么没有基于 Alpine Linux 的 Fluent Bit Docker 镜像 ?

Alpine Linux 使用 Musl C 库而不是 Glibc。 Musl 与 Glibc不完全兼容,当与 Fluent Bit 一起使用时,会产生许多以下方面的问题:

  • 内存分配: 为了在高负载环境中平稳运行 Fluent Bit,我们使用 Jemalloc 作为默认的内存分配器,这样可以减少内存碎片且提供更好的性能。Jemalloc 无法与 Musl 一起平稳运行,且需要额外的工作

  • Alpine Linux Musl 函数引导程序在加载 Golang 共享库时存在兼容性问题,这在 Fluent Bit 中尝试加载 Golang 输出插件时会产生问题

  • Alpine Linux Musl Time 格式解析器不支持 Glibc 扩展

  • 由于安全和维护原因,维护人员在基本镜像方面的偏好是 Distroless 和 Debian

latest 表示什么标签?

我们的 Docker 容器镜像每天部署数千次,我们非常重视安全性和稳定性。

latest 标签 大多数时间 指向最新的稳定版镜像。当我们发布 Fluent Bit 的主要更新(例如从 v1.3.x 到 v1.4.0)时,发布两周后我们才将 latest 标签进行改变。这能够给我们额外的时间以便社区核实一切都能够按预期的进行。

Release

Release

Release

Release

Release

我们的 x86_64 稳定版镜像基于 构建,专注于仅包含 Fluent Bit 二进制文件和最小的系统库以及基本配置的安全性。另外,我们为 x86_64 提供包含 Busybox 的 debug 镜像,可用于进行故障排查或测试。

fluent/fluent-bit
Distroless
v1.4.4
v1.4.3
v1.4.2
v1.4.1
v1.4.0
Distroless