aboutsummaryrefslogtreecommitdiffstats
path: root/deployments/helm/v2/emco/fluentd/templates/forwarder-configmap.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'deployments/helm/v2/emco/fluentd/templates/forwarder-configmap.yaml')
-rw-r--r--deployments/helm/v2/emco/fluentd/templates/forwarder-configmap.yaml108
1 files changed, 108 insertions, 0 deletions
diff --git a/deployments/helm/v2/emco/fluentd/templates/forwarder-configmap.yaml b/deployments/helm/v2/emco/fluentd/templates/forwarder-configmap.yaml
new file mode 100644
index 00000000..4fe7a762
--- /dev/null
+++ b/deployments/helm/v2/emco/fluentd/templates/forwarder-configmap.yaml
@@ -0,0 +1,108 @@
+{{- if and .Values.forwarder.enabled (not .Values.forwarder.configMap) -}}
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ include "fluentd.fullname" . }}-forwarder-cm
+ labels: {{- include "fluentd.labels" . | nindent 4 }}
+ app.kubernetes.io/component: forwarder
+data:
+ fluentd.conf: |
+ {{- if .Values.metrics.enabled -}}
+ # Prometheus Exporter Plugin
+ # input plugin that exports metrics
+ <source>
+ @type prometheus
+ port {{ .Values.metrics.service.port }}
+ </source>
+
+ # input plugin that collects metrics from MonitorAgent
+ <source>
+ @type prometheus_monitor
+ <labels>
+ host ${hostname}
+ </labels>
+ </source>
+
+ # input plugin that collects metrics for output plugin
+ <source>
+ @type prometheus_output_monitor
+ <labels>
+ host ${hostname}
+ </labels>
+ </source>
+
+ # input plugin that collects metrics for in_tail plugin
+ <source>
+ @type prometheus_tail_monitor
+ <labels>
+ host ${hostname}
+ </labels>
+ </source>
+ {{- end }}
+
+ # Ignore fluentd own events
+ <match fluent.**>
+ @type null
+ </match>
+
+ # HTTP input for the liveness and readiness probes
+ <source>
+ @type http
+ port 9880
+ </source>
+
+ # Throw the healthcheck to the standard output instead of forwarding it
+ <match fluentd.healthcheck>
+ @type stdout
+ </match>
+
+ # Get the logs from the containers running in the node
+ <source>
+ @type tail
+ path /var/log/containers/*mco*.log
+ # exclude Fluentd logs
+ exclude_path /var/log/containers/*fluentd*.log
+ pos_file /opt/bitnami/fluentd/logs/buffers/fluentd-docker.pos
+ tag kubernetes.*
+ read_from_head true
+ <parse>
+ @type json
+ </parse>
+ </source>
+
+ # enrich with kubernetes metadata
+ <filter kubernetes.**>
+ @type kubernetes_metadata
+ </filter>
+ {{ if .Values.aggregator.enabled }}
+ # Forward all logs to the aggregators
+ <match **>
+ @type forward
+ {{- $fullName := (include "fluentd.fullname" .) }}
+ {{- $global := . }}
+ {{- $domain := default "cluster.local" .Values.clusterDomain }}
+ {{- $port := .Values.aggregator.port | int }}
+ {{- range $i, $e := until (.Values.aggregator.replicaCount | int) }}
+ <server>
+ {{ printf "host %s-%d.%s-headless.%s.svc.%s" $fullName $i $fullName $global.Release.Namespace $domain }}
+ {{ printf "port %d" $port }}
+ {{- if ne $i 0 }}
+ standby
+ {{- end }}
+ </server>
+ {{- end}}
+
+ <buffer>
+ @type file
+ path /opt/bitnami/fluentd/logs/buffers/logs.buffer
+ flush_thread_count 2
+ flush_interval 5s
+ </buffer>
+ </match>
+ {{- else }}
+ # Send the logs to the standard output
+ <match **>
+ @type stdout
+ </match>
+ {{- end -}}
+{{- end -}}