mirror of
https://github.com/helm/charts.git
synced 2026-09-05 12:27:30 +00:00
* [stable/datadog] Add options to use new cluster-agent Signed-off-by: Corey O'Brien <corey@reactiveops.com> * Fix appVersion and use apps/v1 Signed-off-by: Corey O'Brien <corey@reactiveops.com> * Address review comments Signed-off-by: Corey O'Brien <corey@reactiveops.com>
251 lines
8.1 KiB
YAML
251 lines
8.1 KiB
YAML
# Default values for datadog.
|
|
image:
|
|
# This chart is compatible with different images, please choose one
|
|
repository: datadog/agent # Agent6
|
|
# repository: datadog/dogstatsd # Standalone DogStatsD6
|
|
tag: 6.4.2 # Use 6.4.2-jmx to enable jmx fetch collection
|
|
pullPolicy: IfNotPresent
|
|
## It is possible to specify docker registry credentials
|
|
## See https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod
|
|
# pullSecrets:
|
|
# - name: regsecret
|
|
|
|
# NB! Normally you need to keep Datadog DaemonSet enabled!
|
|
# The exceptional case could be a situation when you need to run
|
|
# single DataDog pod per every namespace, but you do not need to
|
|
# re-create a DaemonSet for every non-default namespace install.
|
|
# Note, that StatsD and DogStatsD work over UDP, so you may not
|
|
# get guaranteed delivery of the metrics in Datadog-per-namespace setup!
|
|
daemonset:
|
|
enabled: true
|
|
## Bind ports on the hostNetwork. Useful for CNI networking where hostPort might
|
|
## not be supported. The ports will need to be available on all hosts. Can be
|
|
## used for custom metrics instead of a service endpoint.
|
|
## WARNING: Make sure that hosts using this are properly firewalled otherwise
|
|
## metrics and traces will be accepted from any host able to connect to this host.
|
|
# useHostNetwork: true
|
|
|
|
## Sets the hostPort to the same value of the container port. Can be used as
|
|
## for sending custom metrics. The ports will need to be available on all
|
|
## hosts.
|
|
## WARNING: Make sure that hosts using this are properly firewalled otherwise
|
|
## metrics and traces will be accepted from any host able to connect to this host.
|
|
# useHostPort: true
|
|
|
|
## Run the agent in the host's PID namespace. This is required for Dogstatsd origin
|
|
## detection to work. See https://docs.datadoghq.com/developers/dogstatsd/unix_socket/
|
|
# useHostPID: true
|
|
|
|
## Annotations to add to the DaemonSet's Pods
|
|
# podAnnotations:
|
|
# scheduler.alpha.kubernetes.io/tolerations: '[{"key": "example", "value": "foo"}]'
|
|
|
|
## Allow the DaemonSet to schedule on tainted nodes (requires Kubernetes >= 1.6)
|
|
# tolerations: []
|
|
|
|
## Allow the DaemonSet to schedule on selected nodes
|
|
# Ref: https://kubernetes.io/docs/user-guide/node-selection/
|
|
# nodeSelector: {}
|
|
|
|
## Allow the DaemonSet to schedule ussing affinity rules
|
|
# Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
|
# affinity: {}
|
|
|
|
## Allow the DaemonSet to perform a rolling update on helm update
|
|
## ref: https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/
|
|
# updateStrategy: RollingUpdate
|
|
|
|
# Apart from DaemonSet, deploy Datadog agent pods and related service for
|
|
# applications that want to send custom metrics. Provides DogStasD service.
|
|
#
|
|
# HINT: If you want to use datadog.collectEvents, keep deployment.replicas set to 1.
|
|
deployment:
|
|
enabled: false
|
|
replicas: 1
|
|
# 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: []
|
|
|
|
# If you're using a NodePort-type service and need a fixed port, set this parameter.
|
|
# dogstatsdNodePort: 8125
|
|
# traceNodePort: 8126
|
|
|
|
## deploy the kube-state-metrics deployment
|
|
## ref: https://github.com/kubernetes/charts/tree/master/stable/kube-state-metrics
|
|
##
|
|
|
|
# service:
|
|
# type: LoadBalancer
|
|
# annotations: {}
|
|
|
|
kubeStateMetrics:
|
|
enabled: true
|
|
|
|
# This is the new cluster agent implementation that handles cluster-wide
|
|
# metrics more cleanly, separates concerns for better rbac, and implements
|
|
# the external metrics API so you can autoscale HPAs based on datadog
|
|
# metrics
|
|
clusterAgent:
|
|
image:
|
|
repository: datadog/cluster-agent
|
|
tag: 0.9.1
|
|
pullPolicy: IfNotPresent
|
|
enabled: false
|
|
## This needs to be at least 32 characters a-zA-z
|
|
## It is a preshared key between the node agents and the cluster agent
|
|
token: ""
|
|
replicas: 1
|
|
## Enable the metricsProvider to be able to scale based on metrics in Datadog
|
|
metricsProvider:
|
|
enabled: false
|
|
resources:
|
|
requests:
|
|
cpu: 200m
|
|
memory: 256Mi
|
|
limits:
|
|
cpu: 200m
|
|
memory: 256Mi
|
|
|
|
datadog:
|
|
## You'll need to set this to your Datadog API key before the agent will run.
|
|
## ref: https://app.datadoghq.com/account/settings#agent/kubernetes
|
|
##
|
|
# apiKey:
|
|
|
|
## Use existing Secret which stores API key instead of creating a new one
|
|
# apiKeyExistingSecret:
|
|
|
|
## If you are using clusterAgent.metricsProvider.enabled = true, you'll need
|
|
## a datadog app key for read access to the metrics
|
|
# appKey:
|
|
|
|
## Use existing Secret which stores APP key instead of creating a new one
|
|
# appKeyExistingSecret:
|
|
|
|
## dd-agent container name
|
|
##
|
|
name: dd-agent
|
|
|
|
## Set logging verbosity.
|
|
## ref: https://github.com/DataDog/docker-dd-agent#environment-variables
|
|
## Note: For Agent6 (image `datadog/agent`) the valid log levels are
|
|
## trace, debug, info, warn, error, critical, and off
|
|
##
|
|
logLevel: WARNING
|
|
|
|
## Un-comment this to make each node accept non-local statsd traffic.
|
|
## ref: https://github.com/DataDog/docker-dd-agent#environment-variables
|
|
##
|
|
# nonLocalTraffic: true
|
|
|
|
## Set host tags.
|
|
## ref: https://github.com/DataDog/docker-dd-agent#environment-variables
|
|
##
|
|
# tags:
|
|
|
|
## Enables event collection from the kubernetes API
|
|
## ref: https://github.com/DataDog/docker-dd-agent#environment-variables
|
|
##
|
|
collectEvents: false
|
|
|
|
## Enables log collection
|
|
## ref: https://docs.datadoghq.com/agent/basic_agent_usage/kubernetes/#log-collection-setup
|
|
##
|
|
# logsEnabled: false
|
|
# logsConfigContainerCollectAll: false
|
|
|
|
## Un-comment this to enable APM and tracing, on port 8126
|
|
## ref: https://github.com/DataDog/docker-dd-agent#tracing-from-the-host
|
|
##
|
|
# apmEnabled: true
|
|
|
|
## Un-comment this to enable live process monitoring
|
|
## ref: https://docs.datadoghq.com/graphing/infrastructure/process/#kubernetes-daemonset
|
|
##
|
|
# processAgentEnabled: true
|
|
|
|
## The dd-agent supports many environment variables
|
|
## ref: https://github.com/DataDog/datadog-agent/tree/master/Dockerfiles/agent#environment-variables
|
|
##
|
|
# env:
|
|
# - name:
|
|
# value:
|
|
|
|
## The dd-agent supports detailed process and container monitoring and
|
|
## requires control over the volume and volumeMounts for the daemonset
|
|
## or deployment.
|
|
## ref: https://docs.datadoghq.com/guides/process/
|
|
##
|
|
# volumes:
|
|
# - hostPath:
|
|
# path: /etc/passwd
|
|
# name: passwd
|
|
# volumeMounts:
|
|
# - name: passwd
|
|
# mountPath: /etc/passwd
|
|
# readOnly: true
|
|
|
|
## Enable leader election mechanism for event collection
|
|
##
|
|
leaderElection: false
|
|
|
|
## Set the lease time for leader election
|
|
##
|
|
# leaderLeaseDuration: 600
|
|
|
|
## Provide additional check configurations (static and Autodiscovery)
|
|
## Each key will become a file in /conf.d
|
|
## ref: https://github.com/DataDog/datadog-agent/tree/master/Dockerfiles/agent#optional-volumes
|
|
## ref: https://docs.datadoghq.com/agent/autodiscovery/
|
|
##
|
|
# confd:
|
|
# redisdb.yaml: |-
|
|
# init_config:
|
|
# instances:
|
|
# - host: "name"
|
|
# port: "6379"
|
|
# kubernetes_state.yaml: |-
|
|
# ad_identifiers:
|
|
# - kube-state-metrics
|
|
# init_config:
|
|
# instances:
|
|
# - kube_state_url: http://%%host%%:8080/metrics
|
|
|
|
## Provide additional custom checks as python code
|
|
## Each key will become a file in /checks.d
|
|
## ref: https://github.com/DataDog/datadog-agent/tree/master/Dockerfiles/agent#optional-volumes
|
|
##
|
|
# checksd:
|
|
# service.py: |-
|
|
|
|
## datadog-agent resource requests and limits
|
|
## Make sure to keep requests and limits equal to keep the pods in the Guaranteed QoS class
|
|
## Ref: http://kubernetes.io/docs/user-guide/compute-resources/
|
|
##
|
|
resources:
|
|
requests:
|
|
cpu: 200m
|
|
memory: 256Mi
|
|
limits:
|
|
cpu: 200m
|
|
memory: 256Mi
|
|
|
|
rbac:
|
|
## If true, create & use RBAC resources
|
|
create: true
|
|
|
|
## Ignored if rbac.create is true
|
|
serviceAccountName: default
|
|
|
|
tolerations: []
|
|
|
|
kube-state-metrics:
|
|
rbac:
|
|
create: true
|
|
|
|
## Ignored if rbac.create is true
|
|
serviceAccountName: default
|