DirectorySecurity AdvisoriesPricing
Sign in
Directory
fluentd logoHELM

fluentd

Helm chart
Last changed
Request a free trial

Contact our team to test out this Helm chart and related images for free. Please also indicate any other images you would like to evaluate.

Overview
Chart versions
Default values
Chart metadata
Images

Tag:

1
nameOverride: ""
2
fullnameOverride: ""
3
# DaemonSet, Deployment or StatefulSet
4
kind: "DaemonSet"
5
# azureblob, cloudwatch, elasticsearch7, elasticsearch8, gcs, graylog , kafka, kafka2, kinesis, opensearch
6
variant: elasticsearch7
7
# # Only applicable for Deployment or StatefulSet
8
# replicaCount: 1
9
10
image:
11
repository: cgr.dev/chainguard-private/fluentd-kubernetes-daemonset
12
pullPolicy: "IfNotPresent"
13
tag: latest@sha256:84326576b43e9ba97b9e48600e87f87d0fdf2e7318519b122d89c3c41ccf1da9
14
## Optional array of imagePullSecrets containing private registry credentials
15
## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
16
imagePullSecrets: []
17
serviceAccount:
18
create: true
19
annotations: {}
20
name: null
21
rbac:
22
create: true
23
# from Kubernetes 1.25, PSP is deprecated
24
# See: https://kubernetes.io/blog/2022/08/23/kubernetes-v1-25-release/#pod-security-changes
25
# We automatically disable PSP if Kubernetes version is 1.25 or higher
26
podSecurityPolicy:
27
enabled: true
28
annotations: {}
29
## Security Context policies for controller pods
30
## See https://kubernetes.io/docs/tasks/administer-cluster/sysctl-cluster/ for
31
## notes on enabling and using sysctls
32
##
33
podSecurityContext: {}
34
# seLinuxOptions:
35
# type: "spc_t"
36
37
securityContext: {}
38
# capabilities:
39
# drop:
40
# - ALL
41
# readOnlyRootFilesystem: true
42
# runAsNonRoot: true
43
# runAsUser: 1000
44
45
# Configure the livecycle
46
# Ref: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/
47
lifecycle: {}
48
# preStop:
49
# exec:
50
# command: ["/bin/sh", "-c", "sleep 20"]
51
52
# Configure the livenessProbe
53
# Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
54
livenessProbe:
55
httpGet:
56
path: /metrics
57
port: metrics
58
# initialDelaySeconds: 0
59
# periodSeconds: 10
60
# timeoutSeconds: 1
61
# successThreshold: 1
62
# failureThreshold: 3
63
# Configure the readinessProbe
64
# Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
65
readinessProbe:
66
httpGet:
67
path: /metrics
68
port: metrics
69
# initialDelaySeconds: 0
70
# periodSeconds: 10
71
# timeoutSeconds: 1
72
# successThreshold: 1
73
# failureThreshold: 3
74
resources: {}
75
# requests:
76
# cpu: 10m
77
# memory: 128Mi
78
# limits:
79
# memory: 128Mi
80
81
## only available if kind is Deployment
82
autoscaling:
83
enabled: false
84
minReplicas: 1
85
maxReplicas: 100
86
targetCPUUtilizationPercentage: 80
87
# targetMemoryUtilizationPercentage: 80
88
## see https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/#autoscaling-on-multiple-metrics-and-custom-metrics
89
customRules: []
90
# - type: Pods
91
# pods:
92
# metric:
93
# name: packets-per-second
94
# target:
95
# type: AverageValue
96
# averageValue: 1k
97
## see https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-configurable-scaling-behavior
98
# behavior:
99
# scaleDown:
100
# policies:
101
# - type: Pods
102
# value: 4
103
# periodSeconds: 60
104
# - type: Percent
105
# value: 10
106
# periodSeconds: 60
107
# priorityClassName: "system-node-critical"
108
nodeSelector: {}
109
## Node tolerations for server scheduling to nodes with taints
110
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
111
##
112
tolerations: []
113
# - key: null
114
# operator: Exists
115
# effect: "NoSchedule"
116
117
## Affinity and anti-affinity
118
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
119
##
120
affinity: {}
121
## Annotations to be added to fluentd DaemonSet/Deployment
122
##
123
annotations: {}
124
## Labels to be added to fluentd DaemonSet/Deployment
125
##
126
labels: {}
127
## Annotations to be added to fluentd pods
128
##
129
podAnnotations: {}
130
## Labels to be added to fluentd pods
131
##
132
podLabels: {}
133
## How long (in seconds) a pods needs to be stable before progressing the deployment
134
##
135
minReadySeconds:
136
## How long (in seconds) a pod may take to exit (useful with lifecycle hooks to ensure lb deregistration is done)
137
##
138
terminationGracePeriodSeconds:
139
## Deployment strategy / DaemonSet updateStrategy
140
##
141
updateStrategy: {}
142
# type: RollingUpdate
143
# rollingUpdate:
144
# maxUnavailable: 1
145
146
## Additional environment variables to set for fluentd pods
147
env: []
148
# - name: "FLUENTD_CONF"
149
# value: "../../../etc/fluent/fluent.conf"
150
# - name: FLUENT_ELASTICSEARCH_HOST
151
# value: "elasticsearch-master"
152
# - name: FLUENT_ELASTICSEARCH_PORT
153
# value: "9200"
154
155
envFrom: []
156
initContainers: []
157
## Name of the configMap containing a custom fluentd.conf configuration file to use instead of the default.
158
# mainConfigMapNameOverride: ""
159
160
## Name of the configMap containing files to be placed under /etc/fluent/config.d/
161
## NOTE: This will replace ALL default files in the aforementioned path!
162
# extraFilesConfigMapNameOverride: ""
163
mountVarLogDirectory: true
164
mountDockerContainersDirectory: true
165
volumes: []
166
volumeMounts: []
167
## Only available if kind is StatefulSet
168
## Fluentd persistence
169
##
170
persistence:
171
enabled: false
172
storageClass: ""
173
accessMode: ReadWriteOnce
174
size: 10Gi
175
## Fluentd service
176
##
177
service:
178
enabled: true
179
type: "ClusterIP"
180
annotations: {}
181
# loadBalancerIP:
182
# externalTrafficPolicy: Local
183
ports: []
184
# - name: "forwarder"
185
# protocol: TCP
186
# containerPort: 24224
187
## Prometheus Monitoring
188
##
189
metrics:
190
serviceMonitor:
191
enabled: false
192
additionalLabels:
193
release: prometheus-operator
194
namespace: ""
195
namespaceSelector: {}
196
## metric relabel configs to apply to samples before ingestion.
197
##
198
metricRelabelings: []
199
# - sourceLabels: [__name__]
200
# separator: ;
201
# regex: ^fluentd_output_status_buffer_(oldest|newest)_.+
202
# replacement: $1
203
# action: drop
204
## relabel configs to apply to samples after ingestion.
205
##
206
relabelings: []
207
# - sourceLabels: [__meta_kubernetes_pod_node_name]
208
# separator: ;
209
# regex: ^(.*)$
210
# targetLabel: nodename
211
# replacement: $1
212
# action: replace
213
## Additional serviceMonitor config
214
##
215
# jobLabel: fluentd
216
# scrapeInterval: 30s
217
# scrapeTimeout: 5s
218
# honorLabels: true
219
prometheusRule:
220
enabled: false
221
additionalLabels: {}
222
namespace: ""
223
rules: []
224
# - alert: FluentdDown
225
# expr: up{job="fluentd"} == 0
226
# for: 5m
227
# labels:
228
# context: fluentd
229
# severity: warning
230
# annotations:
231
# summary: "Fluentd Down"
232
# description: "{{ $labels.pod }} on {{ $labels.nodename }} is down"
233
# - alert: FluentdScrapeMissing
234
# expr: absent(up{job="fluentd"} == 1)
235
# for: 15m
236
# labels:
237
# context: fluentd
238
# severity: warning
239
# annotations:
240
# summary: "Fluentd Scrape Missing"
241
# description: "Fluentd instance has disappeared from Prometheus target discovery"
242
## Grafana Monitoring Dashboard
243
##
244
dashboards:
245
enabled: "true"
246
namespace: ""
247
labels:
248
grafana_dashboard: '"1"'
249
## Fluentd list of plugins to install
250
##
251
plugins: []
252
# - fluent-plugin-out-http
253
254
## Add fluentd config files from K8s configMaps
255
##
256
configMapConfigs: []
257
# - fluentd-prometheus-conf
258
# - fluentd-systemd-conf
259
260
## Fluentd configurations:
261
##
262
fileConfigs:
263
01_sources.conf: |-
264
## logs from podman
265
<source>
266
@type tail
267
@id in_tail_container_logs
268
@label @KUBERNETES
269
path /var/log/containers/*.log
270
pos_file /var/log/fluentd-containers.log.pos
271
tag kubernetes.*
272
read_from_head true
273
<parse>
274
@type multi_format
275
<pattern>
276
format json
277
time_key time
278
time_type string
279
time_format "%Y-%m-%dT%H:%M:%S.%NZ"
280
keep_time_key false
281
</pattern>
282
<pattern>
283
format regexp
284
expression /^(?<time>.+) (?<stream>stdout|stderr)( (.))? (?<log>.*)$/
285
time_format '%Y-%m-%dT%H:%M:%S.%NZ'
286
keep_time_key false
287
</pattern>
288
</parse>
289
emit_unmatched_lines true
290
</source>
291
292
# expose metrics in prometheus format
293
<source>
294
@type prometheus
295
bind 0.0.0.0
296
port 24231
297
metrics_path /metrics
298
</source>
299
02_filters.conf: |-
300
<label @KUBERNETES>
301
<match kubernetes.var.log.containers.fluentd**>
302
@type relabel
303
@label @FLUENT_LOG
304
</match>
305
306
# <match kubernetes.var.log.containers.**_kube-system_**>
307
# @type null
308
# @id ignore_kube_system_logs
309
# </match>
310
311
<filter kubernetes.**>
312
@type kubernetes_metadata
313
@id filter_kube_metadata
314
skip_labels false
315
skip_container_metadata false
316
skip_namespace_metadata true
317
skip_master_url true
318
</filter>
319
320
<match **>
321
@type relabel
322
@label @DISPATCH
323
</match>
324
</label>
325
03_dispatch.conf: |-
326
<label @DISPATCH>
327
<filter **>
328
@type prometheus
329
<metric>
330
name fluentd_input_status_num_records_total
331
type counter
332
desc The total number of incoming records
333
<labels>
334
tag ${tag}
335
hostname ${hostname}
336
</labels>
337
</metric>
338
</filter>
339
340
<match **>
341
@type relabel
342
@label @OUTPUT
343
</match>
344
</label>
345
04_outputs.conf: |-
346
<label @OUTPUT>
347
<match **>
348
@type elasticsearch
349
host "elasticsearch-master"
350
port 9200
351
path ""
352
user elastic
353
password changeme
354
# Don't wait for elastic to start up.
355
verify_es_version_at_startup false
356
</match>
357
</label>
358
ingress:
359
enabled: false
360
annotations: {}
361
# kubernetes.io/ingress.class: nginx
362
# kubernetes.io/tls-acme: "true"
363
hosts:
364
# - host: fluentd.example.tld
365
- port: 9880
366
tls: []
367
# - secretName: fluentd-tls
368
# hosts:
369
# - fluentd.example.tld
370

The trusted source for open source

Talk to an expert
PrivacyTerms

Product

Chainguard ContainersChainguard LibrariesChainguard VMsChainguard OS PackagesChainguard ActionsChainguard Agent SkillsIntegrationsPricing
© 2026 Chainguard, Inc. All Rights Reserved.
Chainguard® and the Chainguard logo are registered trademarks of Chainguard, Inc. in the United States and/or other countries.
The other respective trademarks mentioned on this page are owned by the respective companies and use of them does not imply any affiliation or endorsement.