You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
I am trying to use the Kubelet to fetch metadata in the Kubernetes filter (i.e. Use_Kubelet true). I noticed that as per startup logs, the host used by the Kubernetes filter does not change to the Kubelet in Fluent Bit version 3. It uses the API server as the host. However, with Fluent Bit version 2, the Kubernetes filter uses the Kubelet as expected.
To Reproduce
Install Fluent Bit using the helm chart with different values files.
Please find the different values files I used and the corresponding startup logs below (Please refer the [filter:kubernetes:kubernetes.0] log lines)
1. Fluent Bit 3 with metadata from Kubelet
values
config:
filters: | [FILTER] Name kubernetes Match kube.* Merge_Log On Keep_Log Off K8S-Logging.Parser On K8S-Logging.Exclude On Use_Kubelet trueoutputs: | [OUTPUT] Name stdout Match *image:
tag: 3.2.5hostNetwork: truednsPolicy: ClusterFirstWithHostNet
Here the host is expected to be the Kubelet. But as per logs, it is the API server. However, Fluent Bit is trying to check connectivity with Kubelet
2. Fluent Bit 3 with metadata from API server
values
config:
filters: | [FILTER] Name kubernetes Match kube.* Merge_Log On Keep_Log Off K8S-Logging.Parser On K8S-Logging.Exclude On Use_Kubelet falseoutputs: | [OUTPUT] Name stdout Match *image:
tag: 3.2.5
Here the output is as expected. Host is the API server and Fluent Bit checks connectivity with the API server
3. Fluent Bit 2 with metadata from Kubelet
values
config:
filters: | [FILTER] Name kubernetes Match kube.* Merge_Log On Keep_Log Off K8S-Logging.Parser On K8S-Logging.Exclude On Use_Kubelet trueoutputs: | [OUTPUT] Name stdout Match *image:
tag: 2.2.3hostNetwork: truednsPolicy: ClusterFirstWithHostNet
Fluent Bit v2.2.3
* Copyright (C) 2015-2024 The Fluent Bit Authors
* Fluent Bit is a CNCF sub-project under the umbrella of Fluentd
* https://fluentbit.io
____________________
< Fluent Bit v2.2.2 >
-------------------
\
\
\ __---__
_- /--______
__--( / \ )XXXXXXXXXXX\v.
.-XXX( O O )XXXXXXXXXXXXXXX-
/XXX( U ) XXXXXXX\
/XXXXX( )--_ XXXXXXXXXXX\
/XXXXX/ ( O ) XXXXXX \XXXXX\
XXXXX/ / XXXXXX \__ \XXXXX
XXXXXX__/ XXXXXX \__---->
---___ XXX__/ XXXXXX \__ /
\- --__/ ___/\ XXXXXX / ___--/=
\-\ ___/ XXXXXX '--- XXXXXX
\-\/XXX\ XXXXXX /XXXXX
\XXXXXXXXX \ /XXXXX/
\XXXXXX > _/XXXXX/
\XXXXX--__/ __-- XXXX/
-XXXXXXXX--------------- XXXXXX-
\XXXXXXXXXXXXXXXXXXXXXXXXXX/
""VXXXXXXXXXXXXXXXXXXV""
[2025/01/28 11:39:59] [ info] [fluent bit] version=2.2.3, commit=be238e162c, pid=1
[2025/01/28 11:39:59] [ info] [storage] ver=1.5.1, type=memory, sync=normal, checksum=off, max_chunks_up=128
[2025/01/28 11:39:59] [ info] [cmetrics] version=0.6.6
[2025/01/28 11:39:59] [ info] [ctraces ] version=0.4.0
[2025/01/28 11:39:59] [ info] [input:tail:tail.0] initializing
[2025/01/28 11:39:59] [ info] [input:tail:tail.0] storage_strategy='memory' (memory only)
[2025/01/28 11:39:59] [ info] [input:tail:tail.0] multiline core started
[2025/01/28 11:39:59] [ info] [input:systemd:systemd.1] initializing
[2025/01/28 11:39:59] [ info] [input:systemd:systemd.1] storage_strategy='memory' (memory only)
[2025/01/28 11:39:59] [ info] [filter:kubernetes:kubernetes.0] https=1 host=127.0.0.1 port=10250
[2025/01/28 11:39:59] [ info] [filter:kubernetes:kubernetes.0] token updated
[2025/01/28 11:39:59] [ info] [filter:kubernetes:kubernetes.0] local POD info OK
[2025/01/28 11:39:59] [ info] [filter:kubernetes:kubernetes.0] testing connectivity with Kubelet...
[2025/01/28 11:39:59] [ warn] [filter:kubernetes:kubernetes.0] could not get meta for POD lima-rancher-desktop
[2025/01/28 11:39:59] [ info] [output:stdout:stdout.0] worker #0 started
[2025/01/28 11:40:00] [ info] [http_server] listen iface=0.0.0.0 tcp_port=2020
[2025/01/28 11:40:00] [ info] [sp] stream processor started
Here the output is as expected. Host is the Kubelet and Fluent Bit checks connectivity with it
4. Fluent Bit 2 with metadata from API server
values
config:
filters: | [FILTER] Name kubernetes Match kube.* Merge_Log On Keep_Log Off K8S-Logging.Parser On K8S-Logging.Exclude On Use_Kubelet falseoutputs: | [OUTPUT] Name stdout Match *image:
tag: 2.2.3
Fluent Bit v2.2.3
* Copyright (C) 2015-2024 The Fluent Bit Authors
* Fluent Bit is a CNCF sub-project under the umbrella of Fluentd
* https://fluentbit.io
____________________
< Fluent Bit v2.2.2 >
-------------------
\
\
\ __---__
_- /--______
__--( / \ )XXXXXXXXXXX\v.
.-XXX( O O )XXXXXXXXXXXXXXX-
/XXX( U ) XXXXXXX\
/XXXXX( )--_ XXXXXXXXXXX\
/XXXXX/ ( O ) XXXXXX \XXXXX\
XXXXX/ / XXXXXX \__ \XXXXX
XXXXXX__/ XXXXXX \__---->
---___ XXX__/ XXXXXX \__ /
\- --__/ ___/\ XXXXXX / ___--/=
\-\ ___/ XXXXXX '--- XXXXXX
\-\/XXX\ XXXXXX /XXXXX
\XXXXXXXXX \ /XXXXX/
\XXXXXX > _/XXXXX/
\XXXXX--__/ __-- XXXX/
-XXXXXXXX--------------- XXXXXX-
\XXXXXXXXXXXXXXXXXXXXXXXXXX/
""VXXXXXXXXXXXXXXXXXXV""
[2025/01/28 11:41:13] [ info] [fluent bit] version=2.2.3, commit=be238e162c, pid=1
[2025/01/28 11:41:13] [ info] [storage] ver=1.5.1, type=memory, sync=normal, checksum=off, max_chunks_up=128
[2025/01/28 11:41:13] [ info] [cmetrics] version=0.6.6
[2025/01/28 11:41:13] [ info] [ctraces ] version=0.4.0
[2025/01/28 11:41:13] [ info] [input:tail:tail.0] initializing
[2025/01/28 11:41:13] [ info] [input:tail:tail.0] storage_strategy='memory' (memory only)
[2025/01/28 11:41:13] [ info] [input:tail:tail.0] multiline core started
[2025/01/28 11:41:13] [ info] [input:systemd:systemd.1] initializing
[2025/01/28 11:41:13] [ info] [input:systemd:systemd.1] storage_strategy='memory' (memory only)
[2025/01/28 11:41:13] [ info] [filter:kubernetes:kubernetes.0] https=1 host=kubernetes.default.svc port=443
[2025/01/28 11:41:13] [ info] [filter:kubernetes:kubernetes.0] token updated
[2025/01/28 11:41:13] [ info] [filter:kubernetes:kubernetes.0] local POD info OK
[2025/01/28 11:41:13] [ info] [filter:kubernetes:kubernetes.0] testing connectivity with API server...
[2025/01/28 11:41:13] [ info] [filter:kubernetes:kubernetes.0] connectivity OK
[2025/01/28 11:41:13] [ info] [output:stdout:stdout.0] worker #0 started
[2025/01/28 11:41:13] [ info] [http_server] listen iface=0.0.0.0 tcp_port=2020
[2025/01/28 11:41:13] [ info] [sp] stream processor started
Here the output is as expected. Host is the API server and Fluent Bit checks connectivity with the API server
Expected behavior
With Fluent Bit 3, when I configure the Kubernetes filter to fetch metadata from Kubelet, I expected the filter's logs to indicate that the host is the Kubelet
Screenshots
Your Environment
Version used: Fluent Bit 3.2.5 and 2.2.3
Configuration: See the values files above
Environment name and version (e.g. Kubernetes? What version?):
Kubernetes v1.29.6
Server type and version:
Operating System and version:
Filters and plugins: Kubernetes filter
Additional context could not get meta for POD lima-rancher-desktop error in the logs might have something to do with my Rancher Desktop setup. Hence please ignore it.
The text was updated successfully, but these errors were encountered:
Bug Report
Describe the bug
I am trying to use the Kubelet to fetch metadata in the Kubernetes filter (i.e.
Use_Kubelet true
). I noticed that as per startup logs, the host used by the Kubernetes filter does not change to the Kubelet in Fluent Bit version 3. It uses the API server as the host. However, with Fluent Bit version 2, the Kubernetes filter uses the Kubelet as expected.To Reproduce
Install Fluent Bit using the helm chart with different values files.
Please find the different values files I used and the corresponding startup logs below (Please refer the
[filter:kubernetes:kubernetes.0]
log lines)1. Fluent Bit 3 with metadata from Kubelet
values
Here the host is expected to be the Kubelet. But as per logs, it is the API server. However, Fluent Bit is trying to check connectivity with Kubelet
2. Fluent Bit 3 with metadata from API server
values
Here the output is as expected. Host is the API server and Fluent Bit checks connectivity with the API server
3. Fluent Bit 2 with metadata from Kubelet
values
Here the output is as expected. Host is the Kubelet and Fluent Bit checks connectivity with it
4. Fluent Bit 2 with metadata from API server
values
Here the output is as expected. Host is the API server and Fluent Bit checks connectivity with the API server
Expected behavior
With Fluent Bit 3, when I configure the Kubernetes filter to fetch metadata from Kubelet, I expected the filter's logs to indicate that the host is the Kubelet
Screenshots
Your Environment
Kubernetes v1.29.6
Additional context
could not get meta for POD lima-rancher-desktop
error in the logs might have something to do with my Rancher Desktop setup. Hence please ignore it.The text was updated successfully, but these errors were encountered: