diff --git a/stable/datadog/CHANGELOG.md b/stable/datadog/CHANGELOG.md index 7313277dfd..718f3c94a1 100644 --- a/stable/datadog/CHANGELOG.md +++ b/stable/datadog/CHANGELOG.md @@ -1,5 +1,9 @@ # Datadog changelog +## 2.3.13 + +* Use two distinct health endpoints for liveness and readiness probes. + ## 2.3.12 * Fix endpoints checks scheduling between agent and cluster check runners diff --git a/stable/datadog/Chart.yaml b/stable/datadog/Chart.yaml index df0bd3758a..b4e994af75 100644 --- a/stable/datadog/Chart.yaml +++ b/stable/datadog/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v1 name: datadog -version: 2.3.12 +version: 2.3.13 appVersion: "7" description: Datadog Agent keywords: diff --git a/stable/datadog/README.md b/stable/datadog/README.md index b8beeb2a8b..7f144f2ee0 100644 --- a/stable/datadog/README.md +++ b/stable/datadog/README.md @@ -317,7 +317,6 @@ helm install --name \ | `datadog.podAnnotationsAsTags` | Kubernetes Annotations to Datadog Tags mapping | `nil` | | `datadog.podLabelsAsTags` | Kubernetes Labels to Datadog Tags mapping | `nil` | | `datadog.securityContext` | Allows you to overwrite the default securityContext applied to the container | `nil` | -| `datadog.livenessProbe` | Overrides the default liveness probe | http port 5555 | | `datadog.acInclude` | Include containers based on image name | `nil` | | `datadog.acExclude` | Exclude containers based on image name | `nil` | | `datadog.systemProbe.enabled` | enable system probe collection | `false` | @@ -340,6 +339,8 @@ helm install --name \ | `agents.containers.agent.resources.requests.cpu` | CPU resource requests for the agent container | `200m` | | `agents.containers.agent.resources.limits.memory` | Memory resource limits for the agent container | `256Mi` | | `agents.containers.agent.resources.requests.memory` | Memory resource requests for the agent container | `256Mi` | +| `agents.containers.agent.livenessProbe` | Overrides the default liveness probe | http check on /live with port 5555 | +| `agents.containers.agent.readinessProbe` | Overrides the default readiness probe | http check on /ready with port 5555 | | `agents.containers.processAgent.env` | Additional list of environment variables to use in the process-agent container | `nil` | | `agents.containers.processAgent.logLevel` | Process agent log verbosity | `INFO` | | `agents.containers.processAgent.resources.limits.cpu` | CPU resource limits for the process-agent container | `100m` | @@ -396,9 +397,9 @@ helm install --name \ | `clusterAgent.resources.requests.memory` | Memory resource requests | `256Mi` | | `clusterAgent.resources.limits.memory` | Memory resource limits | `256Mi` | | `clusterAgent.tolerations` | List of node taints to tolerate | `[]` | -| `clusterAgent.healthPort` | Overrides the default health port used by the liveness and readiness endpoint | `8080` | -| `clusterAgent.livenessProbe` | Overrides the default liveness probe | `http check on /healthz with port 8080` | -| `clusterAgent.readinessProbe` | Overrides the default readiness probe | `http check on /healthz with port 8080` | +| `clusterAgent.healthPort` | Overrides the default health port used by the liveness and readiness endpoint | `5555` | +| `clusterAgent.livenessProbe` | Overrides the default liveness probe | `http check on /live with port 5555` | +| `clusterAgent.readinessProbe` | Overrides the default readiness probe | `http check on /ready with port 5555` | | `clusterAgent.strategy` | Which update strategy to deploy the cluster-agent | RollingUpdate with 0 maxUnavailable, 1 maxSurge | | `clusterAgent.useHostNetwork` | If true, use the host's network | `nil` | | `clusterAgent.dnsConfig` | If set, configure dnsConfig options in datadog cluster agent containers | `nil` | @@ -414,7 +415,8 @@ helm install --name \ | `clusterChecksRunner.nodeSelector` | Node selectors | `nil` | | `clusterChecksRunner.tolerations` | List of node taints to tolerate | `nil` | | `clusterChecksRunner.affinity` | Node affinities | avoid running pods on the same node | -| `clusterChecksRunner.livenessProbe` | Overrides the default liveness probe | http port 5555 | +| `clusterChecksRunner.livenessProbe` | Overrides the default liveness probe | http check on /live with port 5555 | +| `clusterChecksRunner.readinessProbe` | Overrides the default readiness probe | http check on /ready with port 5555 | | `clusterChecksRunner.rbac.create` | If true, create & use RBAC resources for clusterchecks agent's pods | `true` | | `clusterChecksRunner.rbac.dedicated` | If true, use dedicated RBAC resources for clusterchecks agent's pods | `false` | | `clusterChecksRunner.rbac.serviceAccount` | existing ServiceAccount to use (ignored if rbac.create=true) for clusterchecks agent's pods | `default` | diff --git a/stable/datadog/templates/agent-clusterchecks-deployment.yaml b/stable/datadog/templates/agent-clusterchecks-deployment.yaml index ecf6440cb8..2d80e1c70d 100644 --- a/stable/datadog/templates/agent-clusterchecks-deployment.yaml +++ b/stable/datadog/templates/agent-clusterchecks-deployment.yaml @@ -103,20 +103,10 @@ spec: {{- end }} resources: {{ toYaml .Values.clusterChecksRunner.resources | indent 10 }} -{{- if .Values.clusterChecksRunner.livenessProbe }} livenessProbe: {{ toYaml .Values.clusterChecksRunner.livenessProbe | indent 10 }} -{{- else }} - livenessProbe: - httpGet: - path: /health - port: 5555 - initialDelaySeconds: 15 - periodSeconds: 15 - timeoutSeconds: 5 - successThreshold: 1 - failureThreshold: 6 -{{- end }} + readinessProbe: +{{ toYaml .Values.clusterChecksRunner.readinessProbe | indent 10 }} affinity: {{- if .Values.clusterChecksRunner.affinity }} {{ toYaml .Values.clusterChecksRunner.affinity | indent 8 }} diff --git a/stable/datadog/templates/container-agent.yaml b/stable/datadog/templates/container-agent.yaml index d2ba97e518..e2fa3bcff0 100644 --- a/stable/datadog/templates/container-agent.yaml +++ b/stable/datadog/templates/container-agent.yaml @@ -150,4 +150,6 @@ {{- end }} livenessProbe: {{ toYaml .Values.agents.containers.agent.livenessProbe | indent 4 }} + readinessProbe: +{{ toYaml .Values.agents.containers.agent.readinessProbe | indent 4 }} {{- end -}} diff --git a/stable/datadog/values.yaml b/stable/datadog/values.yaml index 6211b1a0e2..d914c32fc5 100644 --- a/stable/datadog/values.yaml +++ b/stable/datadog/values.yaml @@ -490,9 +490,9 @@ clusterAgent: # affinity: # {} - ## @param healthPort - integer - optional - default: 8080 + ## @param healthPort - integer - optional - default: 5555 ## Port number use the cluster-agent to server healthz endpoint - healthPort: 8080 + healthPort: 5555 ## @param livenessProbe - object - required ## Override the agent's liveness probe logic from the default: @@ -501,18 +501,28 @@ clusterAgent: # livenessProbe: httpGet: - port: 5000 - path: /metrics + port: 5555 + path: /live scheme: HTTP + initialDelaySeconds: 15 + periodSeconds: 15 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 6 ## @param readinessProbe - object - required ## Override the cluster-agent's readiness probe logic from the default: # readinessProbe: httpGet: - port: 5000 - path: /metrics + port: 5555 + path: /ready scheme: HTTP + initialDelaySeconds: 15 + periodSeconds: 15 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 6 ## @param strategy - string - required ## Allow the Cluster Agent deployment to perform a rolling update on helm update @@ -668,7 +678,22 @@ agents: # livenessProbe: httpGet: - path: /health + path: /live + port: 5555 + initialDelaySeconds: 15 + periodSeconds: 15 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 6 + + ## @param readinessProbe - object - required + ## Override the agent's readiness probe logic from the default: + ## In case of issues with the probe, you can disable it with the + ## following values, to allow easier investigating: + # + readinessProbe: + httpGet: + path: /ready port: 5555 initialDelaySeconds: 15 periodSeconds: 15 @@ -999,14 +1024,41 @@ clusterChecksRunner: # tolerations: # [] - ## @param livenessProbe - object - optional - ## Override the agent's liveness probe logic from the default: + ## @param livenessProbe - object - required ## In case of issues with the probe, you can disable it with the ## following values, to allow easier investigating: # - livenessProbe: + # livenessProbe: # exec: # command: ["/bin/true"] + # + livenessProbe: + httpGet: + path: /live + port: 5555 + initialDelaySeconds: 15 + periodSeconds: 15 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 6 + + ## @param readinessProbe - object - required + ## In case of issues with the probe, you can disable it with the + ## following values, to allow easier investigating: + # + # readinessProbe: + # exec: + # command: ["/bin/true"] + # + readinessProbe: + httpGet: + path: /ready + port: 5555 + initialDelaySeconds: 15 + periodSeconds: 15 + timeoutSeconds: 5 + successThreshold: 1 + failureThreshold: 6 ## @param env - list of object - optional ## The dd-agent supports many environment variables