Skip to content

Commit 3bdfba7

Browse files
AugustasVTim Bannister
andauthored
Apply suggestions from code review
Thank you sftim for recommended changes. Co-authored-by: Tim Bannister <[email protected]>
1 parent e0eb752 commit 3bdfba7

File tree

1 file changed

+21
-12
lines changed

1 file changed

+21
-12
lines changed

content/en/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents.md

Lines changed: 21 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,19 +12,28 @@ Docker is being deprecated. You can find a deprecation FAQ at [Don't Panic: Kube
1212

1313
## Telemetry and security agents
1414

15-
There are a few ways agents may be run on kubernetes cluster. Agents have a direct
16-
dependency on Docker when they run on nodes or as daemonsets. Some telemetry and
17-
security agents may rely on certain logs or metrics specific for Docker that would not
18-
be available any longer. This document does not cover these cases.
19-
20-
### Why do telemetry agents talk to Docker?
21-
22-
Historically, Kubernetes was built on top of Docker. Kubernetes is managing networking and scheduling, Docker was placing and operating containers on a node. So you can get scheduling-related metadata like a pod name from Kubernetes and containers state information from Docker. Over time more runtimes were created to manage containers. Also there are projects and kubernetes features that generalize container status information extraction across many runtimes.
23-
24-
But some agents are still Docker-dependent. They may run commands like [`docker ps`](https://docs.docker.com/engine/reference/commandline/ps/)
15+
Within a Kubernetes cluster there are a few different ways to run telemetry or security agents.
16+
Some agents have a direct dependency on Docker Engine when they as DaemonSets or
17+
directly on nodes.
18+
19+
### Why do some telemetry agents communicate with Docker Engine?
20+
21+
Historically, Kubernetes was written to work specifically with Docker Engine.
22+
Kubernetes took care of networking and scheduling, relying on Docker Engine for launching
23+
and running containers (within Pods) on a node. Some information that is relevant to telemetry,
24+
such as a pod name, is only available from Kubernetes components. Other data, such as container
25+
metrics, is not the responsibility of the container runtime. Early yelemetry agents needed to query the
26+
container runtime **and** Kubernetes to report an accurate picture. Over time, Kubernetes gained
27+
the ability to support multiple runtimes, and now supports any runtime that is compatible with
28+
the container runtime interface.
29+
30+
Some telemetry agents rely specifically on Docker Engine tooling. For example, an agent
31+
might run a command such as
32+
[`docker ps`](https://docs.docker.com/engine/reference/commandline/ps/)
2533
or [`docker top`](https://docs.docker.com/engine/reference/commandline/top/) to list
26-
containers and processes or [docker logs](https://docs.docker.com/engine/reference/commandline/logs/)
27-
to subscribe on docker logs. With the deprecating of Docker as a container runtime,
34+
containers and processes or [`docker logs`](https://docs.docker.com/engine/reference/commandline/logs/)
35+
to receive streamed logs. If nodes in your existing cluster use
36+
Docker Engine, and you switch to a different container runtime,
2837
these commands will not work any longer.
2938

3039
### Identify DaemonSets that depend on Docker {#identify-docker-dependency}

0 commit comments

Comments
 (0)