Skip to content

Commit bc5f1d0

Browse files
authored
Merge branch 'main' into main
2 parents 6ec9345 + d9661a4 commit bc5f1d0

File tree

1,183 files changed

+236498
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,183 files changed

+236498
-0
lines changed

packs/fluentbit-4.0.7/README.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# Fluent Bit
2+
3+
Fluent Bit is a lightweight and high-performance log processor and forwarder. It allows you to collect data or logs from different sources, unify them, and send them to multiple destinations including Elasticsearch, OpenSearch, Kafka, Datadog, and more.
4+
5+
### How it works
6+
7+
Fluent Bit runs as a DaemonSet in the Kubernetes cluster and collects logs from each node. The logs are parsed, filtered, and enriched with Kubernetes metadata before being shipped to the specified backend. This configuration is fully customizable via Fluent Bit configuration blocks defined in the Helm `values.yaml`.
8+
9+
The default configuration in this package collects logs from containers in `/var/log/containers/*.log` and system logs via `systemd`, filters them using Kubernetes metadata, and forwards them to an Elasticsearch endpoint.
10+
11+
## Prerequisites
12+
13+
Kubernetes 1.27 and higher are supported.
14+
15+
The following cloud types are supported:
16+
* all clouds
17+
18+
19+
20+
## Parameters
21+
22+
| **Parameter** | **Description** | **Type** | **Default Value** | **Required** |
23+
|---|---|---|---|---|
24+
| charts.fluent-bit.kind | Kubernetes controller to use (DaemonSet or Deployment) | string | DaemonSet | Yes |
25+
| charts.fluent-bit.image.repository | Image repository for Fluent Bit | string | cr.fluentbit.io/fluent/fluent-bit | Yes |
26+
| charts.fluent-bit.image.pullPolicy | Image pull policy | string | IfNotPresent | No |
27+
| charts.fluent-bit.flush | Interval (in seconds) to flush the logs | integer | 1 | No |
28+
| charts.fluent-bit.logLevel | Logging level for Fluent Bit | string | info | No |
29+
| charts.fluent-bit.metricsPort | Port for exposing metrics | integer | 2020 | No |
30+
| charts.fluent-bit.config.service | Main Fluent Bit service configuration | string | See values.yaml | Yes |
31+
| charts.fluent-bit.config.inputs | Log input configuration | string | See values.yaml | Yes |
32+
| charts.fluent-bit.config.filters | Filters applied to logs (e.g. Kubernetes metadata) | string | See values.yaml | Yes |
33+
| charts.fluent-bit.config.outputs | Log output configuration | string | See values.yaml | Yes |
34+
| charts.fluent-bit.config.customParsers | Custom parsers for log messages | string | See values.yaml | No |
35+
| charts.fluent-bit.daemonSetVolumes | Volumes to mount for log access | list | /var/log, /var/lib/docker/containers, /etc/machine-id | Yes |
36+
| charts.fluent-bit.daemonSetVolumeMounts | Mount points in Fluent Bit containers | list | See values.yaml | Yes |
37+
| charts.fluent-bit.service.port | Port exposed by the Fluent Bit service | integer | 2020 | No |
38+
| charts.fluent-bit.rbac.create | Whether to create RBAC resources | bool | true | No |
39+
| charts.fluent-bit.podSecurityPolicy.create | Whether to create PodSecurityPolicy | bool | false | No |
40+
| charts.fluent-bit.hotReload.enabled | Enable configmap hot reload with sidecar | bool | false | No |
41+
| charts.fluent-bit.autoscaling.enabled | Enable horizontal pod autoscaler (only for Deployment) | bool | false | No |
42+
43+
## References
44+
45+
- [Fluent Bit Official Docs](https://docs.fluentbit.io/manual)
46+
- [Fluent Bit Helm Chart](https://github.com/fluent/helm-charts/tree/main/charts/fluent-bit)
47+
- [Spectro Cloud Docs - Fluent Bit](https://docs.spectrocloud.com/integrations/fluentbit)
48+
49+
---
50+
51+
This package is maintained by **Spectro Cloud** and is provided as a community-supported integration.
52+
53+
**Version:** 4.0.7
54+
55+
**Source:** community
56+
57+
**Contributor:** Spectro Cloud
58+
14.9 KB
Binary file not shown.
14.9 KB
Binary file not shown.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Patterns to ignore when building packages.
2+
# This supports shell glob matching, relative path matching, and
3+
# negation (prefixed with !). Only one pattern per line.
4+
.DS_Store
5+
# Common VCS dirs
6+
.git/
7+
.gitignore
8+
.bzr/
9+
.bzrignore
10+
.hg/
11+
.hgignore
12+
.svn/
13+
# Common backup files
14+
*.swp
15+
*.bak
16+
*.tmp
17+
*.orig
18+
*~
19+
# Various IDEs
20+
.project
21+
.idea/
22+
*.tmproj
23+
.vscode/
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
annotations:
2+
artifacthub.io/changes: |
3+
- kind: changed
4+
description: "Make securityContext of hot reload container configurable in fluent-bit chart"
5+
apiVersion: v1
6+
appVersion: 4.0.7
7+
description: Fast and lightweight log processor and forwarder or Linux, OSX and BSD
8+
family operating systems.
9+
home: https://fluentbit.io/
10+
icon: https://raw.githubusercontent.com/cncf/artwork/master/projects/fluentd/fluentbit/icon/fluentbit-icon-color.svg
11+
keywords:
12+
- logging
13+
- fluent-bit
14+
- fluentd
15+
maintainers:
16+
17+
name: edsiper
18+
19+
name: naseemkullah
20+
21+
name: Towmeykaw
22+
23+
name: stevehipwell
24+
name: fluent-bit
25+
sources:
26+
- https://github.com/fluent/fluent-bit/
27+
version: 0.53.0
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# Fluent Bit Helm chart
2+
3+
[Fluent Bit](https://fluentbit.io) is a fast and lightweight log processor and forwarder or Linux, OSX and BSD family operating systems.
4+
5+
## Installation
6+
7+
To add the `fluent` helm repo, run:
8+
9+
```sh
10+
helm repo add fluent https://fluent.github.io/helm-charts
11+
```
12+
13+
To install a release named `fluent-bit`, run:
14+
15+
```sh
16+
helm install fluent-bit fluent/fluent-bit
17+
```
18+
19+
## Chart values
20+
21+
```sh
22+
helm show values fluent/fluent-bit
23+
```
24+
25+
## Using Lua scripts
26+
Fluent Bit allows us to build filter to modify the incoming records using custom [Lua scripts.](https://docs.fluentbit.io/manual/pipeline/filters/lua)
27+
28+
### How to use Lua scripts with this Chart
29+
30+
First, you should add your Lua scripts to `luaScripts` in values.yaml, templating is supported.
31+
32+
```yaml
33+
luaScripts:
34+
filter_example.lua: |
35+
function filter_name(tag, timestamp, record)
36+
-- put your lua code here.
37+
end
38+
```
39+
40+
After that, the Lua scripts will be ready to be used as filters. So next step is to add your Fluent bit [filter](https://docs.fluentbit.io/manual/concepts/data-pipeline/filter) to `config.filters` in values.yaml, for example:
41+
42+
```yaml
43+
config:
44+
filters: |
45+
[FILTER]
46+
Name lua
47+
Match <your-tag>
48+
script /fluent-bit/scripts/filter_example.lua
49+
call filter_name
50+
```
51+
Under the hood, the chart will:
52+
- Create a configmap using `luaScripts`.
53+
- Add a volumeMounts for each Lua scripts using the path `/fluent-bit/scripts/<script>`.
54+
- Add the Lua script's configmap as volume to the pod.
55+
56+
### Note
57+
Remember to set the `script` attribute in the filter using `/fluent-bit/scripts/`, otherwise the file will not be found by fluent bit.
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
testFramework:
2+
enabled: true
3+
4+
logLevel: debug
5+
6+
extraVolumeMounts:
7+
- name: extra-volume
8+
mountPath: /extra-volume-path
9+
- name: another-extra-volume
10+
mountPath: /another-extra-volume-path
11+
12+
extraVolumes:
13+
- name: extra-volume
14+
emptyDir: {}
15+
- name: another-extra-volume
16+
emptyDir: {}
17+
18+
dashboards:
19+
enabled: true
20+
deterministicUid: true
21+
22+
luaScripts:
23+
filter_example.lua: |
24+
function filter_name(tag, timestamp, record)
25+
-- put your lua code here.
26+
end
27+
filter_with_templating_example.lua: |
28+
local log_level = {{ .Values.logLevel | quote }}
29+
function filter_with_templating_name(tag, timestamp, record)
30+
-- put your lua code here.
31+
end
32+
33+
config:
34+
outputs: |
35+
[OUTPUT]
36+
name stdout
37+
match *
38+
39+
hotReload:
40+
enabled: true
41+
extraWatchVolumes:
42+
- extra-volume
43+
- another-extra-volume

0 commit comments

Comments
 (0)