## Default values.yaml for Telegraf ## This is a YAML-formatted file. ## ref: https://hub.docker.com/r/library/telegraf/tags/ replicaCount: 1 image: repo: "docker.io/library/telegraf" tag: "1.31-alpine" pullPolicy: IfNotPresent podAnnotations: {} podLabels: {} imagePullSecrets: [] ## Configure args passed to Telegraf containers args: [] # The name of a secret in the same kubernetes namespace which contains values to # be added to the environment (must be manually created) # This can be useful for auth tokens, etc. # envFromSecret: "telegraf-tokens" env: - name: HOSTNAME value: "telegraf-polling-service" # An older "volumeMounts" key was previously added which will likely # NOT WORK as you expect. Please use this newer configuration. # volumes: # - name: telegraf-output-influxdb2 # configMap: # name: "telegraf-output-influxdb2" # mountPoints: # - name: telegraf-output-influxdb2 # mountPath: /etc/telegraf/conf.d # subPath: influxdb2.conf ## Configure resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ resources: {} # requests: # memory: 128Mi # cpu: 100m # limits: # memory: 128Mi # cpu: 100m ## Node labels for pod assignment ## ref: https://kubernetes.io/docs/user-guide/node-selection/ nodeSelector: {} ## Affinity for pod assignment ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity ## affinity: {} ## Tolerations for pod assignment ## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ ## tolerations: [] # - key: "key" # operator: "Equal|Exists" # value: "value" # effect: "NoSchedule|PreferNoSchedule|NoExecute(1.6 only)" ## Configure the updateStrategy used to replace Telegraf Pods ## See https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/deployment-v1/ updateStrategy: {} # type: RollingUpdate|Recreate # rollingUpdate: # maxUnavailable: 1 # maxSurge: 1 service: enabled: true type: ClusterIP annotations: {} rbac: # Specifies whether RBAC resources should be created create: true # Create only for the release namespace or cluster wide (Role vs ClusterRole) clusterWide: false # Rules for the created rule rules: [] # When using the prometheus input to scrape all pods you need extra rules set to the ClusterRole to be # able to scan the pods for scraping labels. The following rules have been taken from: # https://github.com/helm/charts/blob/master/stable/prometheus/templates/server-clusterrole.yaml#L8-L46 # - apiGroups: # - "" # resources: # - nodes # - nodes/proxy # - nodes/metrics # - services # - endpoints # - pods # - ingresses # - configmaps # verbs: # - get # - list # - watch # - apiGroups: # - "extensions" # resources: # - ingresses/status # - ingresses # verbs: # - get # - list # - watch # - nonResourceURLs: # - "/metrics" # verbs: # - get 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: # Annotations for the ServiceAccount annotations: {} ## Exposed telegraf configuration ## For full list of possible values see `/docs/all-config-values.yaml` and `/docs/all-config-values.toml` ## ref: https://docs.influxdata.com/telegraf/v1.1/administration/configuration/ config: agent: interval: "10s" round_interval: true metric_batch_size: 1000 metric_buffer_limit: 10000 collection_jitter: "0s" flush_interval: "10s" flush_jitter: "0s" precision: "" debug: false quiet: false logfile: "" hostname: "$HOSTNAME" omit_hostname: false processors: - enum: mapping: field: "status" dest: "status_code" value_mappings: healthy: 1 problem: 2 critical: 3 outputs: - influxdb: urls: - "http://influxdb.monitoring.svc:8086" database: "telegraf" inputs: - statsd: service_address: ":8125" percentiles: - 50 - 95 - 99 metric_separator: "_" allowed_pending_messages: 10000 percentile_limit: 1000 metrics: health: enabled: false service_address: "http://:8888" threshold: 5000.0 internal: enabled: true collect_memstats: false # Lifecycle hooks # hooks: # postStart: ["/bin/sh", "-c", "echo Telegraf started"] # preStop: ["/bin/sh", "-c", "sleep 60"] ## Pod disruption budget configuration ## pdb: ## Specifies whether a Pod disruption budget should be created ## create: true minAvailable: 1 # maxUnavailable: 1