image:
  repository: docker.elastic.co/beats/metricbeat
  tag: 6.7.0
  pullPolicy: IfNotPresent

# The instances created by daemonset retrieve most metrics from the host
daemonset:
  enabled: true
  podAnnotations: []
  priorityClassName: ""
  tolerations:
  - key: node-role.kubernetes.io/master
    operator: Exists
    effect: NoSchedule
  nodeSelector: {}
  resources: {}
  hostNetwork: true
  dnsPolicy: ClusterFirstWithHostNet
  config:
    metricbeat.config:
      modules:
        path: ${path.config}/modules.d/*.yml
        reload.enabled: false
    processors:
    - add_cloud_metadata:
    output.file:
      path: "/usr/share/metricbeat/data"
      filename: metricbeat
      rotate_every_kb: 10000
      number_of_files: 5
  # If overrideConfig is not empty, metricbeat chart's default config won't be used at all.
  overrideConfig: {}
  modules:
    system:
      enabled: true
      config:
        - module: system
          period: 10s
          metricsets:
            - cpu
            - load
            - memory
            - network
            - process
            - process_summary
            # - core
            # - diskio
            # - socket
          processes: ['.*']
          process.include_top_n:
            by_cpu: 5      # include top 5 processes by CPU
            by_memory: 5   # include top 5 processes by memory
        - module: system
          period: 1m
          metricsets:
            - filesystem
            - fsstat
          processors:
          - drop_event.when.regexp:
              system.filesystem.mount_point: '^/(sys|cgroup|proc|dev|etc|host|lib)($|/)'
    kubernetes:
      enabled: true
      config:
        - module: kubernetes
          metricsets:
            - node
            - system
            - pod
            - container
            - volume
          period: 10s
          host: ${NODE_NAME}
          hosts: ["localhost:10255"]
          # If using Red Hat OpenShift remove the previous hosts entry and
          # uncomment these settings:
          # hosts: ["https://${HOSTNAME}:10250"]
          # bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
          # ssl.certificate_authorities:
            # - /var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt
  # If overrideModules is not empty, metricbeat chart's default modules won't be used at all.
  overrideModules: {}
# The instance created by deployment retrieves metrics that are unique for the whole cluster, like Kubernetes events or kube-state-metrics
deployment:
  enabled: true
  podAnnotations: []
  priorityClassName: ""
  tolerations: []
  nodeSelector: {}
  resources: {}
  config:
    metricbeat.config:
      modules:
        path: ${path.config}/modules.d/*.yml
        reload.enabled: false
    processors:
    - add_cloud_metadata:
    output.file:
      path: "/usr/share/metricbeat/data"
      filename: metricbeat
      rotate_every_kb: 10000
      number_of_files: 5
  # If overrideConfig is not empty, metricbeat chart's default config won't be used at all.
  overrideConfig: {}
  modules:
    kubernetes:
      enabled: true
      config:
        - module: kubernetes
          metricsets:
            - state_node
            - state_deployment
            - state_replicaset
            - state_pod
            - state_container
            # Uncomment this to get k8s events:
            # - event
          period: 10s
          hosts: ["kube-state-metrics:8080"]
  # If overrideModules is not empty, metricbeat chart's default modules won't be used at all.
  overrideModules: {}

# List of beat plugins
plugins: []
  # - kinesis.so

# additional environment
# extraEnv:
#  - name: test1
#    value: "test1"
#  - name: test2
#    value: "test2"

# Add additional volumes and mounts, for example to read other log files on the host
extraVolumes: []
  # - hostPath:
  #     path: /var/log
  #   name: varlog
extraVolumeMounts: []
  # - name: varlog
  #   mountPath: /host/var/log
  #   readOnly: true
extraSecrets: []
  # - name: ca-cert
  #   data:
  #     ca.pem: |-
  #       -----BEGIN CERTIFICATE-----
  #       ...
  #       -----END CERTIFICATE-----
  # - name: userdata
  #   data:
  #     id: userid
  #     pw: userpassword

resources: {}
  # We usually recommend not to specify default resources and to leave this as a conscious
  # choice for the user. This also increases chances charts run on environments with little
  # resources, such as Minikube. If you do want to specify resources, uncomment the following
  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  # limits:
  #  cpu: 100m
  #  memory: 200Mi
  # requests:
  #  cpu: 100m
  #  memory: 100Mi

rbac:
  # Specifies whether RBAC resources should be created
  create: true
  pspEnabled: false

serviceAccount:
  # Specifies whether a ServiceAccount should be created
  create: true
  # The name of the ServiceAccount to use.
  # If not set and create is true, a name is generated using the fullname template
  name:
