[stable/datadog] Use dedicated endpoints for liveness and readiness probes (#21942)

Signed-off-by: Lénaïc Huard <lenaic.huard@datadoghq.com>
This commit is contained in:
Lénaïc Huard
2020-06-23 06:07:41 -07:00
committed by GitHub
parent 31a5c76ada
commit 77eb3fc924
6 changed files with 78 additions and 28 deletions
+4
View File
@@ -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
+1 -1
View File
@@ -1,6 +1,6 @@
apiVersion: v1
name: datadog
version: 2.3.12
version: 2.3.13
appVersion: "7"
description: Datadog Agent
keywords:
+7 -5
View File
@@ -317,7 +317,6 @@ helm install --name <RELEASE_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 <RELEASE_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 <RELEASE_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 <RELEASE_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` |
@@ -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 }}
@@ -150,4 +150,6 @@
{{- end }}
livenessProbe:
{{ toYaml .Values.agents.containers.agent.livenessProbe | indent 4 }}
readinessProbe:
{{ toYaml .Values.agents.containers.agent.readinessProbe | indent 4 }}
{{- end -}}
+62 -10
View File
@@ -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