Back to Charts

**DEPRECATED** This repository has moved

stable/datadog/README.md

latest83.2 KB
Original Source

DEPRECATED This repository has moved

With upcoming deprecation of helm/charts repository, the Datadog Helm Charts repository has moved to: https://github.com/DataDog/helm-charts

You can use this new repository by doing:

bash
helm repo add datadog https://helm.datadoghq.com
helm repo update

You can now use datadog/datadog instead of stable/datadog in all your Helm commands, e.g.:

bash
# New installation
helm install --name <RELEASE_NAME> --set datadog.apiKey=<DATADOG_API_KEY> datadog/datadog
# Upgrade existing installation
helm upgrade --name <RELEASE_NAME> --set datadog.apiKey=<DATADOG_API_KEY> datadog/datadog

Datadog

Datadog is a hosted infrastructure monitoring platform. This chart adds the Datadog Agent to all nodes in your cluster via a DaemonSet. It also optionally depends on the kube-state-metrics chart. For more information about monitoring Kubernetes with Datadog, please refer to the Datadog documentation website.

Datadog offers two variants, switch to a -jmx tag if you need to run JMX/java integrations. The chart also supports running the standalone dogstatsd image.

See the Datadog JMX integration to learn more.

Prerequisites

Kubernetes 1.4+ or OpenShift 3.4+, note that:

Quick start

By default, the Datadog Agent runs in a DaemonSet. It can alternatively run inside a Deployment for special use cases.

Note: simultaneous DaemonSet + Deployment installation within a single release will be deprecated in a future version, requiring two releases to achieve this.

Installing the Datadog Chart

To install the chart with the release name <RELEASE_NAME>, retrieve your Datadog API key from your Agent Installation Instructions and run:

bash
helm install --name <RELEASE_NAME> \
  --set datadog.apiKey=<DATADOG_API_KEY> stable/datadog

By default, this Chart creates a Secret and puts an API key in that Secret. However, you can use manually created secret by setting the datadog.apiKeyExistingSecret value. After a few minutes, you should see hosts and metrics being reported in Datadog.

Create and provide a secret that contains your Datadog API Key

To create a secret that contains your Datadog API key, replace the <DATADOG_API_KEY> below with the API key for your organization. This secret is used in the manifest to deploy the Datadog Agent.

bash
DATADOG_SECRET_NAME=datadog-secret
kubectl create secret generic $DATADOG_SECRET_NAME --from-literal api-key="<DATADOG_API_KEY>" --namespace="default"

Note: This creates a secret in the default namespace. If you are in a custom namespace, update the namespace parameter of the command before running it.

Now, the installation command contains the reference to the secret.

bash
helm install --name <RELEASE_NAME> \
  --set datadog.apiKeyExistingSecret=$DATADOG_SECRET_NAME stable/datadog

Note: Provide a secret for the application key (AppKey) using the datadog.appKeyExistingSecret chart variable.

Enabling the Datadog Cluster Agent

Read about the Datadog Cluster Agent in the official documentation.

Run the following if you want to deploy the chart with the Datadog Cluster Agent:

bash
helm install --name datadog-monitoring \
    --set datadog.apiKey=<DATADOG_API_KEY> \
    --set datadog.appKey=<DATADOG_APP_KEY> \
    --set clusterAgent.enabled=true \
    --set clusterAgent.metricsProvider.enabled=true \
    stable/datadog

Note: Specifying clusterAgent.metricsProvider.enabled=true enables the External Metrics Server. If you want to learn to use this feature, you can check out this Datadog Cluster Agent walkthrough.

The Leader Election is enabled by default in the chart for the Cluster Agent. Only the Cluster Agent(s) participate in the election, in case you have several replicas configured (using clusterAgent.replicas.

Cluster Agent Token

You can specify the Datadog Cluster Agent token used to secure the communication between the Cluster Agent(s) and the Agents with clusterAgent.token.

If you don't specify a token, a random one is generated at each deployment so you must use --recreate-pods to ensure all pod use the same token. seeDatadog Chart notes to learn more.

Upgrading

From 1.x to 2.x

⚠️ Migrating from 1.x to 2.x requires a manual action.

The datadog chart has been refactored to regroup the values.yaml parameters in a more logical way. Please follow the migration guide to update you values.yaml file.

From 1.19.0 onwards

Version 1.19.0 introduces the use of release name as full name if it contains the chart name(datadog in this case). E.g. with a release name of datadog, this renames the DaemonSet from datadog-datadog to datadog. The suggested approach is to delete the release and reinstall it.

From 1.0.0 onwards

Starting with version 1.0.0, this chart does not support deploying Agent 5.x anymore. If you cannot upgrade to Agent 6.x or later, you can use a previous version of the chart by calling helm install with --version 0.18.0.

See 0.18.1's README to see which options were supported at the time.

Uninstalling the Chart

To uninstall/delete the <RELEASE_NAME> deployment:

bash
helm delete <RELEASE_NAME> --purge

The command removes all the Kubernetes components associated with the chart and deletes the release.

Configuration

As a best practice, a YAML file that specifies the values for the chart parameters should be provided to configure the chart:

  1. Copy the default datadog-values.yaml value file.
  2. Set the apiKey parameter with your Datadog API key.
  3. Upgrade the Datadog Helm chart with the new datadog-values.yaml file:
bash
helm upgrade -f datadog-values.yaml <RELEASE_NAME> stable/datadog --recreate-pods

See the All configuration options section to discover all possibilities offered by the Datadog chart.

Enabling Log Collection

Update your datadog-values.yaml file with the following log collection configuration:

yaml
datadog:
  # (...)
  logs:
    enabled: true
    containerCollectAll: true

then upgrade your Datadog Helm chart:

bash
helm upgrade -f datadog-values.yaml <RELEASE_NAME> stable/datadog --recreate-pods

Enabling Process Collection

Update your datadog-values.yaml file with the process collection configuration:

yaml
datadog:
  # (...)
  processAgent:
    enabled: true
    processCollection: true

then upgrade your Datadog Helm chart:

bash
helm upgrade -f datadog-values.yaml <RELEASE_NAME> stable/datadog --recreate-pods

Enabling System Probe Collection

The system-probe agent only runs in dedicated container environment. Update your datadog-values.yaml file with the system-probe collection configuration:

yaml
datadog:
  # (...)
  systemProbe:
    # (...)
    enabled: true

# (...)

then upgrade your Datadog Helm chart:

bash
helm upgrade -f datadog-values.yaml <RELEASE_NAME> stable/datadog --recreate-pods

Kubernetes event collection

Use the Datadog Cluster Agent to collect Kubernetes events. Please read the official documentation for more context.

Alternatively set the datadog.leaderElection, datadog.collectEvents and rbac.create options to true in order to enable Kubernetes event collection.

conf.d and checks.d

The Datadog entrypoint copies files with a .yaml extension found in /conf.d and files with .py extension in /checks.d to /etc/datadog-agent/conf.d and /etc/datadog-agent/checks.d respectively.

The keys for datadog.confd and datadog.checksd should mirror the content found in their respective ConfigMaps. Update your datadog-values.yaml file with the check configurations:

yaml
datadog:
  confd:
    redisdb.yaml: |-
      ad_identifiers:
        - redis
        - bitnami/redis
      init_config:
      instances:
        - host: "%%host%%"
          port: "%%port%%"
    jmx.yaml: |-
      ad_identifiers:
        - openjdk
      instance_config:
      instances:
        - host: "%%host%%"
          port: "%%port_0%%"
    redisdb.yaml: |-
      init_config:
      instances:
        - host: "outside-k8s.example.com"
          port: 6379

then upgrade your Datadog Helm chart:

bash
helm upgrade -f datadog-values.yaml <RELEASE_NAME> stable/datadog --recreate-pods

For more details, please refer to the documentation.

Kubernetes Labels and Annotations

To map Kubernetes node labels and pod labels and annotations to Datadog tags, provide a dictionary with kubernetes labels/annotations as keys and Datadog tags key as values in your datadog-values.yaml file:

yaml
nodeLabelsAsTags:
  beta.kubernetes.io/instance-type: aws_instance_type
  kubernetes.io/role: kube_role
yaml
podAnnotationsAsTags:
  iam.amazonaws.com/role: kube_iamrole
yaml
podLabelsAsTags:
  app: kube_app
  release: helm_release

then upgrade your Datadog Helm chart:

bash
helm upgrade -f datadog-values.yaml <RELEASE_NAME> stable/datadog --recreate-pods

CRI integration

As of the version 6.6.0, the Datadog Agent supports collecting metrics from any container runtime interface used in your cluster. Configure the location path of the socket with datadog.criSocketPath; default is the Docker container runtime socket. To deactivate this support, you just need to unset the datadog.criSocketPath setting. Standard paths are:

  • Docker socket: /var/run/docker.sock
  • Containerd socket: /var/run/containerd/containerd.sock
  • Cri-o socket: /var/run/crio/crio.sock

All configuration options

The following table lists the configurable parameters of the Datadog chart and their default values. Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,

bash
helm install --name <RELEASE_NAME> \
  --set datadog.apiKey=<DATADOG_API_KEY>,datadog.logLevel=DEBUG \
  stable/datadog
ParameterDescriptionDefault
targetSystemTarget OS of this installation (supported: linux, windows)linux
datadog.apiKeyYour Datadog API keynil You must provide your own key
datadog.apiKeyExistingSecretIf set, use the secret with a provided name instead of creating a new onenil
datadog.appKeyDatadog APP key required to use metricsProvidernil You must provide your own key
datadog.appKeyExistingSecretIf set, use the secret with a provided name instead of creating a new onenil
agents.image.repositoryThe image repository to pull fromdatadog/agent
agents.image.tagThe image tag to pull7.19.0
agents.image.doNotCheckTagBy default, the helm chart will check that the version provided in agents.image.tag is superior to the minimal version requested by the chart. If doNotCheckTag is explicitly set to true, this check is skipped. This is useful for custom tags that are not respecting semantic versioning.false
agents.image.pullPolicyImage pull policyIfNotPresent
agents.image.pullSecretsImage pull secretsnil
nameOverrideOverride name of app""
fullnameOverrideOverride full name of app""
agents.rbac.createIf true, create & use RBAC resourcestrue
agents.rbac.serviceAccountNameexisting ServiceAccount to use (ignored if rbac.create=true)default
datadog.siteSite ('datadoghq.com' or 'datadoghq.eu')nil
datadog.dd_urlDatadog intake servernil
datadog.envAdditional Datadog environment variablesnil
datadog.logLevelAgent log verbosity (possible values: trace, debug, info, warn, error, critical, and off)INFO
datadog.logs.enabledEnable log collectionnil
datadog.logs.containerCollectAllCollect logs from all containersnil
datadog.logs.containerCollectUsingFilesCollect container logs from files on disk instead of container runtime APItrue
datadog.apm.enabledEnable tracing from the hostfalse
datadog.apm.portUsed to override the default agent APM Port8126
datadog.apm.useSocketVolumeEnable APM over Unix Domain SocketFalse
datadog.apm.socketPathCustom path to the socket, has to be located in the /var/run/datadog/ folder path/var/run/datadog/apm.socket
datadog.apm.hostPathhost directory that contains the trace-agent socket path/var/run/datadog/
datadog.clusterChecks.enabledEnable Cluster Checks on both the Cluster Agent and the Agent daemonsetfalse
datadog.processAgent.enabledEnable live process and container monitoring agent. Possible values: true enable process-agent, false disable process-agenttrue
datadog.processAgent.processCollectionEnable live process collection. Possible values: true enable process collection, false disable process collectionfalse
datadog.checksdAdditional custom checks as python codenil
datadog.confdAdditional check configurations (static and Autodiscovery)nil
datadog.dockerSocketPathPath to the docker socket/var/run/docker.sock
datadog.criSocketPathPath to the container runtime socket (default is Docker runtime)nil
datadog.tagsSet host tagsnil
datadog.dogstatsd.originDetectionEnable origin detection for container taggingFalse
datadog.dogstatsd.portUsed to override the default agent DogStatsD Port8125
datadog.dogstatsd.useHostPIDIf true, use the host's PID namespacenil
datadog.dogstatsd.useHostPortIf true, use the same ports for both host and containernil
datadog.dogstatsd.nonLocalTrafficEnable statsd reporting from any external ipFalse
datadog.dogstatsd.useSocketVolumeEnable dogstatsd over Unix Domain SocketFalse
datadog.dogstatsd.socketPathCustom path to the socket, has to be located in the /var/run/datadog/ folder path/var/run/datadog/dsd.socket
datadog.dogstatsd.hostPathhost directory that contains the dogstatsd socket/var/run/datadog/
datadog.nodeLabelsAsTagsKubernetes Node Labels to Datadog Tags mappingnil
datadog.podAnnotationsAsTagsKubernetes Annotations to Datadog Tags mappingnil
datadog.podLabelsAsTagsKubernetes Labels to Datadog Tags mappingnil
datadog.securityContextAllows you to overwrite the default securityContext applied to the containernil
datadog.acInclude(Deprecated) Include containers based on image namenil
datadog.acExclude(Deprecated) Exclude containers based on image namenil
datadog.containerIncludeInclude containers based on image name, container name or kubernetes namespacenil
datadog.containerExcludeExclude containers based on image name, container name or kubernetes namespacenil
datadog.containerIncludeMetricsInclude containers for metrics collection based on image name, container name or kubernetes namespacenil
datadog.containerExcludeMetricsExclude containers from metrics based on image name, container name or kubernetes namespacenil
datadog.containerIncludeLogsInclude containers for logs collection based on image name, container name or kubernetes namespacenil
datadog.containerExcludeLogsExclude containers from logs based on image name, container name or kubernetes namespacenil
datadog.systemProbe.enabledenable system probe collectionfalse
datadog.systemProbe.seccompApply an ad-hoc seccomp profile to system-probe to restrict its privilegeslocalhost/system-probe
datadog.systemProbe.seccompRootSeccomp root directory for system-probe/var/lib/kubelet/seccomp
datadog.systemProbe.debugPortThe port to expose pprof and expvar for system-probe agent, it is not enabled if the value is set to 00
datadog.systemProbe.enableConntrackIf true, system-probe connects to the netlink/conntrack subsystem to add NAT information to connection data. Ref: http://conntrack-tools.netfilter.org/true
datadog.systemProbe.bpfDebugIf true, system-probe writes debug logs to /sys/kernel/debug/tracing/trace_pipefalse
datadog.systemProbe.apparmorApparmor profile for system-probeunconfined
datadog.systemProbe.enableTCPQueueLengthEnable the TCP queue length eBPF-based checkfalse
datadog.systemProbe.enableOOMKillEnable the OOM kill eBPF-based checkfalse
datadog.orchestratorExplorer.enabledEnable the Orchestrator Explorer data collectionfalse
agents.podAnnotationsAnnotations to add to the DaemonSet's Podsnil
agents.podLabelslabels to add to each podnil
agents.tolerationsList of node taints to tolerate (requires Kubernetes >= 1.6)nil
agents.nodeSelectorNode selectorsnil
agents.affinityNode affinitiesnil
agents.useHostNetworkIf true, use the host's networknil
agents.dnsConfigIf set, configure dnsConfig options in datadog agent containersnil
agents.containers.agent.envAdditional list of environment variables to use in the agent containernil
agents.containers.agent.logLevelAgent log verbosityINFO
agents.containers.agent.resources.limits.cpuCPU resource limits for the agent containernot set
agents.containers.agent.resources.requests.cpuCPU resource requests for the agent containernot set
agents.containers.agent.resources.limits.memoryMemory resource limits for the agent containernot set
agents.containers.agent.resources.requests.memoryMemory resource requests for the agent containernot set
agents.containers.agent.livenessProbeOverrides the default liveness probehttp check on /live with port 5555
agents.containers.agent.readinessProbeOverrides the default readiness probehttp check on /ready with port 5555
agents.containers.processAgent.envAdditional list of environment variables to use in the process-agent containernil
agents.containers.processAgent.logLevelProcess agent log verbosityINFO
agents.containers.processAgent.resources.limits.cpuCPU resource limits for the process-agent container100m
agents.containers.processAgent.resources.requests.cpuCPU resource requests for the process-agent container100m
agents.containers.processAgent.resources.limits.memoryMemory resource limits for the process-agent container200Mi
agents.containers.processAgent.resources.requests.memoryMemory resource requests for the process-agent container200Mi
agents.containers.traceAgent.envAdditional list of environment variables to use in the trace-agent containernil
agents.containers.traceAgent.logLevelTrace agent log verbosityINFO
agents.containers.traceAgent.resources.limits.cpuCPU resource limits for the trace-agent container100m
agents.containers.traceAgent.resources.requests.cpuCPU resource requests for the trace-agent container100m
agents.containers.traceAgent.resources.limits.memoryMemory resource limits for the trace-agent container200Mi
agents.containers.traceAgent.resources.requests.memoryMemory resource requests for the trace-agent container200Mi
agents.containers.systemProbe.envAdditional list of environment variables to use in the system-probe containernil
agents.containers.systemProbe.logLevelSystem probe log verbosityINFO
agents.containers.systemProbe.resources.limits.cpuCPU resource limits for the system-probe container100m
agents.containers.systemProbe.resources.requests.cpuCPU resource requests for the system-probe container100m
agents.containers.systemProbe.resources.limits.memoryMemory resource limits for the system-probe container200Mi
agents.containers.systemProbe.resources.requests.memoryMemory resource requests for the system-probe container200Mi
agents.containers.initContainers.resources.limits.cpuCPU resource limits for the init containers containernot set
agents.containers.initContainers.resources.requests.cpuCPU resource requests for the init containers containernot set
agents.containers.initContainers.resources.limits.memoryMemory resource limits for the init containers containernot set
agents.containers.initContainers.resources.requests.memoryMemory resource requests for the init containers containernot set
agents.priorityClassNameWhich Priority Class to associate with the daemonsetnil
agents.useConfigMapConfigures a configmap to provide the agent configuration. Use this in combination with the agent.customAgentConfig parameter.false
agents.customAgentConfigSpecify custom contents for the datadog agent config (datadog.yaml). Note the agents.useConfigMap parameter needs to be set to true for this parameter to be taken into account.{}
agents.updateStrategyWhich update strategy to deploy the daemonsetRollingUpdate with 10% maxUnavailable
agents.volumesAdditional volumes for the daemonset or deploymentnil
agents.volumeMountsAdditional volumeMounts for the daemonset or deploymentnil
agents.podSecurity.podSecurityPolicy.createIf true, create a PodSecurityPolicy resource for the Agent's Pods. Supported only for Linux agent's daemonset.False
agents.podSecurity.securityContextConstraints.createIf true, create a SecurityContextConstraints resource for the Agent's Pods. Supported only for Linux agent's daemonset.False
datadog.podSecurity.securityContextAllows you to overwrite the default securityContext applied to the containerdefault security context configuration
agents.podSecurity.privilegedIf true, allowed privileged containersFalse
agents.podSecurity.capabiliteslist of allowed capabilities[SYS_ADMIN, SYS_RESOURCE, SYS_ADMIN, IPC_LOCK]
agents.podSecurity.volumeslist of allowed volumes types[configMap,downwardAPI,emptyDir,ostPath,secret]
agents.podSecurity.seccompProfilesList of allowed seccomp profiles["*"]
agents.podSecurity.apparmorProfilesList of allowed apparmor profiles["*"]
datadog.leaderElectionEnable the leader Election featurefalse
datadog.leaderLeaseDurationThe duration for which a leader stays elected.60 sec, 15 if Cluster Checks enabled
datadog.collectEventsEnable Kubernetes event collection. Requires leader election.false
datadog.kubeStateMetricsEnabledIf true, create kube-state-metricstrue
clusterAgent.enabledUse the cluster-agent for cluster metrics (Kubernetes 1.10+ only)false
clusterAgent.tokenA cluster-internal secret for agent-to-agent communication. Must be 32+ characters a-zA-ZGenerates a random value
clusterAgent.tokenExistingSecretIf set, use the secret with a provided name instead of creating a new onenil
clusterAgent.image.repositoryThe image repository for the cluster-agentdatadog/cluster-agent
clusterAgent.image.tagThe image tag to pull1.2.0
clusterAgent.image.pullPolicyImage pull policyIfNotPresent
clusterAgent.image.pullSecretsImage pull secretsnil
clusterAgent.commandOverride the default command to run in the containernil
clusterAgent.rbac.createIf true, create & use RBAC resources for cluster agent's podstrue
clusterAgent.rbac.serviceAccountexisting ServiceAccount to use (ignored if rbac.create=true) for cluster agent's podsdefault
clusterAgent.metricsProvider.enabledEnable Datadog metrics as a source for HPA scalingfalse
clusterAgent.metricsProvider.service.typeThe type of service to use for the clusterAgent metrics serverClusterIP
clusterAgent.metricsProvider.service.portThe port for service to use for the clusterAgent metrics server (Kubernetes >= 1.15)8443
clusterAgent.envAdditional Datadog environment variables for the cluster-agentnil
clusterAgent.confdAdditional check configurations (static and Autodiscovery)nil
clusterAgent.podAnnotationsAnnotations to add to the Cluster Agent Pod(s)nil
clusterAgent.podLabelsLabels to add to the Cluster Agent Pod(s)nil
clusterAgent.createPodDisruptionBudgetEnable a pod disruption budget to apply to the Cluster Agent podsfalse
clusterAgent.priorityClassNameName of the priorityClass to apply to the Cluster Agentnil
clusterAgent.nodeSelectorNode selectors to apply to the Cluster Agent deploymentnil
clusterAgent.affinityNode affinities to apply to the Cluster Agent deploymentnil
clusterAgent.resources.requests.cpuCPU resource requestsnot set
clusterAgent.resources.limits.cpuCPU resource limitsnot set
clusterAgent.resources.requests.memoryMemory resource requestsnot set
clusterAgent.resources.limits.memoryMemory resource limitsnot set
clusterAgent.tolerationsList of node taints to tolerate[]
clusterAgent.healthPortOverrides the default health port used by the liveness and readiness endpoint5555
clusterAgent.livenessProbeOverrides the default liveness probehttp check on /live with port 5555
clusterAgent.readinessProbeOverrides the default readiness probehttp check on /ready with port 5555
clusterAgent.strategyWhich update strategy to deploy the cluster-agentRollingUpdate with 0 maxUnavailable, 1 maxSurge
clusterAgent.useHostNetworkIf true, use the host's networknil
clusterAgent.dnsConfigIf set, configure dnsConfig options in datadog cluster agent containersnil
clusterAgent.volumesAdditional volumes for the cluster-agent deploymentnil
clusterAgent.volumeMountsAdditional volumeMounts for the cluster-agent deploymentnil
clusterChecksRunner.enabledEnable Datadog agent deployment dedicated for running Cluster Checks. It allows having different resources (Request/Limit) for Cluster Checks agent pods.false
clusterChecksRunner.envAdditional Datadog environment variables for Cluster Checks Deploymentnil
clusterChecksRunner.createPodDisruptionBudgetEnable a pod disruption budget to apply to the Cluster Checks podsfalse
clusterChecksRunner.resources.requests.cpuCPU resource requestsnot set
clusterChecksRunner.resources.limits.cpuCPU resource limitsnot set
clusterChecksRunner.resources.requests.memoryMemory resource requestsnot set
clusterChecksRunner.resources.limits.memoryMemory resource limitsnot set
clusterChecksRunner.nodeSelectorNode selectorsnil
clusterChecksRunner.tolerationsList of node taints to toleratenil
clusterChecksRunner.affinityNode affinitiesavoid running pods on the same node
clusterChecksRunner.livenessProbeOverrides the default liveness probehttp check on /live with port 5555
clusterChecksRunner.readinessProbeOverrides the default readiness probehttp check on /ready with port 5555
clusterChecksRunner.rbac.createIf true, create & use RBAC resources for clusterchecks agent's podstrue
clusterChecksRunner.rbac.dedicatedIf true, use dedicated RBAC resources for clusterchecks agent's podsfalse
clusterChecksRunner.rbac.serviceAccountexisting ServiceAccount to use (ignored if rbac.create=true) for clusterchecks agent's podsdefault
clusterChecksRunner.rbac.serviceAccountAnnotationsAnnotations to add to the ServiceAccount if clusterChecksRunner.rbac.dedicated is true{}
clusterChecksRunner.strategyWhich update strategy to deploy the Cluster Checks DeploymentRollingUpdate with 0 maxUnavailable, 1 maxSurge
clusterChecksRunner.volumesAdditional volumes for the Cluster Checks deploymentnil
clusterChecksRunner.volumeMountsAdditional volumeMounts for the Cluster Checks deploymentnil
clusterChecksRunner.dnsConfigIf set, configure dnsConfig options in datadog cluster agent clusterChecks containersnil
kube-state-metrics.rbac.createIf true, create & use RBAC resources for kube-state-metricstrue
kube-state-metrics.serviceAccount.createIf true, create & use serviceAccounttrue
kube-state-metrics.serviceAccount.nameIf not set & create is true, use template fullname
kube-state-metrics.resourcesOverwrite the default kube-state-metrics container resources (Optional)

Configuration options for Windows deployments

Some options above are not working/not available on Windows, here is the list of unsupported options:

ParameterReason
datadog.dogstatsd.useHostPIDHost PID not supported by Windows Containers
datadog.dogstatsd.useSocketVolumeUnix sockets not supported on Windows
datadog.dogstatsd.socketPathUnix sockets not supported on Windows
datadog.processAgent.processCollectionUnable to access host/other containers processes
datadog.systemProbe.enabledSystem probe is not available for Windows
datadog.systemProbe.seccompSystem probe is not available for Windows
datadog.systemProbe.seccompRootSystem probe is not available for Windows
datadog.systemProbe.debugPortSystem probe is not available for Windows
datadog.systemProbe.enableConntrackSystem probe is not available for Windows
datadog.systemProbe.bpfDebugSystem probe is not available for Windows
datadog.systemProbe.apparmorSystem probe is not available for Windows
agents.useHostNetworkHost network not supported by Windows Containers