KubeZero/charts/kubezero-telemetry/charts/fluent-bit
2024-07-12 13:36:28 +00:00
..
ci feat: add fluent-bit to new telemetry module, upgrade OpenSearch version ,various tweaks 2024-05-23 21:22:27 +00:00
dashboards feat: WIP telemetry pipeline now incl. fluent-bit and otel 2024-07-12 13:36:28 +00:00
templates feat: WIP telemetry pipeline now incl. fluent-bit and otel 2024-07-12 13:36:28 +00:00
.helmignore feat: add fluent-bit to new telemetry module, upgrade OpenSearch version ,various tweaks 2024-05-23 21:22:27 +00:00
Chart.yaml feat: WIP telemetry pipeline now incl. fluent-bit and otel 2024-07-12 13:36:28 +00:00
README.md feat: add fluent-bit to new telemetry module, upgrade OpenSearch version ,various tweaks 2024-05-23 21:22:27 +00:00
values.yaml feat: WIP telemetry pipeline now incl. fluent-bit and otel 2024-07-12 13:36:28 +00:00

Fluent Bit Helm chart

Fluent Bit is a fast and lightweight log processor and forwarder or Linux, OSX and BSD family operating systems.

Installation

To add the fluent helm repo, run:

helm repo add fluent https://fluent.github.io/helm-charts

To install a release named fluent-bit, run:

helm install fluent-bit fluent/fluent-bit

Chart values

helm show values fluent/fluent-bit

Using Lua scripts

Fluent Bit allows us to build filter to modify the incoming records using custom Lua scripts.

How to use Lua scripts with this Chart

First, you should add your Lua scripts to luaScripts in values.yaml, for example:

luaScripts:
  filter_example.lua: |
    function filter_name(tag, timestamp, record)
        -- put your lua code here.
    end    

After that, the Lua scripts will be ready to be used as filters. So next step is to add your Fluent bit filter to config.filters in values.yaml, for example:

config:
  filters: |
    [FILTER]
        Name    lua
        Match   <your-tag>
        script  /fluent-bit/scripts/filter_example.lua
        call    filter_name    

Under the hood, the chart will:

  • Create a configmap using luaScripts.
  • Add a volumeMounts for each Lua scripts using the path /fluent-bit/scripts/<script>.
  • Add the Lua script's configmap as volume to the pod.

Note

Remember to set the script attribute in the filter using /fluent-bit/scripts/, otherwise the file will not be found by fluent bit.