100 lines
2.7 KiB
YAML
100 lines
2.7 KiB
YAML
# services/logging/fluent-bit-helmrelease.yaml
|
|
apiVersion: helm.toolkit.fluxcd.io/v2
|
|
kind: HelmRelease
|
|
metadata:
|
|
name: fluent-bit
|
|
namespace: logging
|
|
spec:
|
|
interval: 15m
|
|
chart:
|
|
spec:
|
|
chart: fluent-bit
|
|
version: "~0.46.0"
|
|
sourceRef:
|
|
kind: HelmRepository
|
|
name: fluent
|
|
namespace: flux-system
|
|
values:
|
|
serviceAccount:
|
|
create: true
|
|
rbac:
|
|
create: true
|
|
tolerations:
|
|
- key: node-role.kubernetes.io/control-plane
|
|
operator: Exists
|
|
effect: NoSchedule
|
|
- key: node-role.kubernetes.io/master
|
|
operator: Exists
|
|
effect: NoSchedule
|
|
extraVolumes:
|
|
- name: runlogjournal
|
|
hostPath:
|
|
path: /run/log/journal
|
|
- name: varlogjournal
|
|
hostPath:
|
|
path: /var/log/journal
|
|
extraVolumeMounts:
|
|
- name: runlogjournal
|
|
mountPath: /run/log/journal
|
|
readOnly: true
|
|
- name: varlogjournal
|
|
mountPath: /var/log/journal
|
|
readOnly: true
|
|
config:
|
|
service: |
|
|
[SERVICE]
|
|
Flush 1
|
|
Log_Level info
|
|
Daemon Off
|
|
Parsers_File parsers.conf
|
|
Parsers_File custom_parsers.conf
|
|
HTTP_Server On
|
|
HTTP_Listen 0.0.0.0
|
|
HTTP_Port 2020
|
|
inputs: |
|
|
[INPUT]
|
|
Name tail
|
|
Tag kube.*
|
|
Path /var/log/containers/*.log
|
|
Parser cri
|
|
Mem_Buf_Limit 50MB
|
|
Skip_Long_Lines On
|
|
Refresh_Interval 10
|
|
Rotate_Wait 30
|
|
storage.type memory
|
|
|
|
[INPUT]
|
|
Name systemd
|
|
Tag journald.*
|
|
Read_From_Tail On
|
|
storage.type memory
|
|
filters: |
|
|
[FILTER]
|
|
Name kubernetes
|
|
Match kube.*
|
|
Kube_URL https://kubernetes.default.svc:443
|
|
Kube_CA_File /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
|
|
Kube_Token_File /var/run/secrets/kubernetes.io/serviceaccount/token
|
|
Merge_Log On
|
|
Keep_Log Off
|
|
K8S-Logging.Parser On
|
|
K8S-Logging.Exclude On
|
|
outputs: |
|
|
[OUTPUT]
|
|
Name loki
|
|
Match kube.*
|
|
Host loki.logging.svc.cluster.local
|
|
Port 3100
|
|
Labels {job="fluent-bit", namespace="$kubernetes['namespace_name']", pod="$kubernetes['pod_name']", container="$kubernetes['container_name']"}
|
|
LabelKeys stream
|
|
Line_Format json
|
|
|
|
[OUTPUT]
|
|
Name loki
|
|
Match journald.*
|
|
Host loki.logging.svc.cluster.local
|
|
Port 3100
|
|
Labels {job="systemd"}
|
|
LabelKeys _SYSTEMD_UNIT,_HOSTNAME,SYSLOG_IDENTIFIER
|
|
Line_Format json
|