Docker Deprecation in Kubernetes
Kubernetes is deprecating Docker as a runtime starting after version 1.20, and some cloud providers have deprecated Docker in their images.
If you are running a version of Kubernetes where Docker has been deprecated, the Docker socket is no longer present, or has no information about the containers running by Kubernetes, and the Docker check does not work. You can find details about Docker runtime on kubernetes.io. This means that you must enable either the containerd or the CRI-O check depending on the container runtime you are using. The container metrics collected from the new container runtime replace the Docker metrics.
With version 7.27+ of the Datadog Agent, the Agent automatically detects the environment you are running, and you do not need to make any configuration changes.
If you are using Agent < v7.27, you must specify your container runtime socket path:
Note: You may need to update your existing monitors, dashboards, and SLOs because metrics names change—for example, from
Set the path to your container runtime socket with the
datadog.criSocketPath parameter in the Helm chart.
Remove any references to the Docker socket, as well as any Docker socket volume mounts.
Use the environment variable
DD_CRI_SOCKET_PATH to point to your container runtime socket path. Set on all Agent containers if using dedicated containers:
- name: DD_CRI_SOCKET_PATH
Mount the socket from your host to the Agent container:
- name: containerdsocket
- mountPath: /host/var/run