You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/en/blog/_posts/2018-07-11-dynamic-kubelet-configuration.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,8 @@ date: 2018-07-11
6
6
7
7
**Author**: Michael Taufen (Google)
8
8
9
+
**Editor’s note: The feature has been removed in the version 1.24 after deprecation in 1.22.**
10
+
9
11
**Editor’s note: this post is part of a [series of in-depth articles](https://kubernetes.io/blog/2018/06/27/kubernetes-1.11-release-announcement/) on what’s new in Kubernetes 1.11**
Copy file name to clipboardExpand all lines: content/en/blog/_posts/2020-12-02-dockershim-faq.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@ on the deprecation of Docker as a container runtime for Kubernetes kubelets, and
14
14
what that means, check out the blog post
15
15
[Don't Panic: Kubernetes and Docker](/blog/2020/12/02/dont-panic-kubernetes-and-docker/).
16
16
17
-
Also, you can read [check whether Dockershim deprecation affects you](/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-deprecation-affects-you/) to check whether it does.
17
+
Also, you can read [check whether Dockershim removal affects you](/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/) to check whether it does.
@@ -28,7 +32,7 @@ shouldn’t, use Docker as a development tool anymore. Docker is still a useful
28
32
tool for building containers, and the images that result from running `docker
29
33
build` can still run in your Kubernetes cluster.
30
34
31
-
If you’re using a managed Kubernetes service like GKE, EKS, or AKS (which [defaults to containerd](https://github.com/Azure/AKS/releases/tag/2020-11-16)) you will need to
35
+
If you’re using a managed Kubernetes service like AKS, EkS or GKE, you will need to
32
36
make sure your worker nodes are using a supported container runtime before
33
37
Docker support is removed in a future version of Kubernetes. If you have node
34
38
customizations you may need to update them based on your environment and runtime
@@ -37,8 +41,8 @@ testing and planning.
37
41
38
42
If you’re rolling your own clusters, you will also need to make changes to avoid
39
43
your clusters breaking. At v1.20, you will get a deprecation warning for Docker.
40
-
When Docker runtime support is removed in a future release (currently planned
41
-
for the 1.22 release in late 2021) of Kubernetes it will no longer be supported
44
+
When Docker runtime support is removed in a future release (<del>currently planned
45
+
for the 1.22 release in late 2021</del>) of Kubernetes it will no longer be supported
42
46
and you will need to switch to one of the other compliant container runtimes,
43
47
like containerd or CRI-O. Just make sure that the runtime you choose supports
44
48
the docker daemon configurations you currently use (e.g. logging).
as a part of the Kubernetes v1.20 release. For more detail
17
-
on what that means, check out the blog post
20
+
as a part of the Kubernetes v1.20 release. The Kubernetes
21
+
[v1.24 release](/releases/#release-v1-24) actually removed the dockershim
22
+
from Kubernetes.
23
+
24
+
For more on what that means, check out the blog post
18
25
[Don't Panic: Kubernetes and Docker](/blog/2020/12/02/dont-panic-kubernetes-and-docker/).
19
26
20
-
Also, you can read [check whether dockershim removal affects you](/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-deprecation-affects-you/)
21
-
to determine how much impact the removal of dockershim would have for you
22
-
or for your organization.
27
+
To determine the impact that the removal of dockershim would have for you or your organization,
28
+
you can read [Check whether dockershim removal affects you](/docs/tasks/administer-cluster/migrating-from-dockershim/check-if-dockershim-removal-affects-you/).
23
29
24
-
As the Kubernetes 1.24 release has become imminent, we've been working hard to try to make this a smooth transition.
30
+
In the months and days leading up to the Kubernetes 1.24 release, Kubernetes contributors worked hard to try to make this a smooth transition.
25
31
26
-
-We've written a blog post detailing our [commitment and next steps](/blog/2022/01/07/kubernetes-is-moving-on-from-dockershim/).
27
-
-We believe there are no major blockers to migration to [other container runtimes](/docs/setup/production-environment/container-runtimes/#container-runtimes).
28
-
-There is also a [Migrating from dockershim](/docs/tasks/administer-cluster/migrating-from-dockershim/) guide available.
29
-
-We've also created a page to list
32
+
-A blog post detailing our [commitment and next steps](/blog/2022/01/07/kubernetes-is-moving-on-from-dockershim/).
33
+
-Checking if there were major blockers to migration to [other container runtimes](/docs/setup/production-environment/container-runtimes/#container-runtimes).
34
+
-Adding a [migrating from dockershim](/docs/tasks/administer-cluster/migrating-from-dockershim/) guide.
35
+
-Creating a list of
30
36
[articles on dockershim removal and on using CRI-compatible runtimes](/docs/reference/node/topics-on-dockershim-and-cri-compatible-runtimes/).
31
37
That list includes some of the already mentioned docs, and also covers selected external sources
32
38
(including vendor guides).
33
39
34
-
### Why is the dockershim being removed from Kubernetes?
40
+
### Why was the dockershim removed from Kubernetes?
35
41
36
42
Early versions of Kubernetes only worked with a specific container runtime:
37
43
Docker Engine. Later, Kubernetes added support for working with other container runtimes.
@@ -49,26 +55,52 @@ In fact, maintaining dockershim had become a heavy burden on the Kubernetes main
49
55
50
56
Additionally, features that were largely incompatible with the dockershim, such
51
57
as cgroups v2 and user namespaces are being implemented in these newer CRI
52
-
runtimes. Removing support for the dockershim will allow further development in
53
-
those areas.
58
+
runtimes. Removing the dockershim from Kubernetes allows further development in those areas.
Docker popularized the Linux containers pattern and has been instrumental in
65
+
developing the underlying technology, however containers in Linux have existed
66
+
for a long time. The container ecosystem has grown to be much broader than just
67
+
Docker. Standards like OCI and CRI have helped many tools grow and thrive in our
68
+
ecosystem, some replacing aspects of Docker while others enhance existing
69
+
functionality.
70
+
71
+
### Will my existing container images still work?
72
+
73
+
Yes, the images produced from `docker build` will work with all CRI implementations.
74
+
All your existing images will still work exactly the same.
75
+
76
+
#### What about private images?
77
+
78
+
Yes. All CRI runtimes support the same pull secrets configuration used in
79
+
Kubernetes, either via the PodSpec or ServiceAccount.
80
+
57
81
### Can I still use Docker Engine in Kubernetes 1.23?
58
82
59
83
Yes, the only thing changed in 1.20 is a single warning log printed at [kubelet]
60
-
startup if using Docker Engine as the runtime. You'll see this warning in all versions up to 1.23. The dockershim removal occurs in Kubernetes 1.24.
84
+
startup if using Docker Engine as the runtime. You'll see this warning in all versions up to 1.23. The dockershim removal occurred
85
+
in Kubernetes 1.24.
86
+
87
+
If you're running Kubernetes v1.24 or later, see [Can I still use Docker Engine as my container runtime?](#can-i-still-use-docker-engine-as-my-container-runtime).
88
+
(Remember, you can switch away from the dockershim if you're using any supported Kubernetes release; from release v1.24, you
89
+
**must** switch as Kubernetes no longer incluides the dockershim).
Yes, the images produced from `docker build` will work with all CRI implementations.
86
-
All your existing images will still work exactly the same.
87
-
88
-
#### What about private images?
113
+
You can install `cri-dockerd` and use it to connect the kubelet to Docker Engine. Read [Migrate Docker Engine nodes from dockershim to cri-dockerd](/docs/tasks/administer-cluster/migrating-from-dockershim/migrate-dockershim-dockerd/) to learn more.
89
114
90
-
Yes. All CRI runtimes support the same pull secrets configuration used in
91
-
Kubernetes, either via the PodSpec or ServiceAccount.
92
-
93
-
### Are Docker and containers the same thing?
94
-
95
-
Docker popularized the Linux containers pattern and has been instrumental in
96
-
developing the underlying technology, however containers in Linux have existed
97
-
for a long time. The container ecosystem has grown to be much broader than just
98
-
Docker. Standards like OCI and CRI have helped many tools grow and thrive in our
99
-
ecosystem, some replacing aspects of Docker while others enhance existing
### What should I look out for when changing CRI implementations?
149
154
150
155
While the underlying containerization code is the same between Docker and most
@@ -153,24 +158,25 @@ common things to consider when migrating are:
153
158
154
159
- Logging configuration
155
160
- Runtime resource limitations
156
-
- Node provisioning scripts that call docker or use docker via it's control socket
157
-
-Kubectl plugins that require docker CLI or the control socket
161
+
- Node provisioning scripts that call docker or use Docker Engine via its control socket
162
+
-Plugins for `kubectl`that require the `docker` CLI or the Docker Engine control socket
158
163
- Tools from the Kubernetes project that require direct access to Docker Engine
159
164
(for example: the deprecated `kube-imagepuller` tool)
160
-
- Configuration of functionality like `registry-mirrors` and insecure registries
165
+
- Configuration of functionality like `registry-mirrors` and insecure registries
161
166
- Other support scripts or daemons that expect Docker Engine to be available and are run
162
167
outside of Kubernetes (for example, monitoring or security agents)
163
168
- GPUs or special hardware and how they integrate with your runtime and Kubernetes
164
169
165
170
If you use Kubernetes resource requests/limits or file-based log collection
166
-
DaemonSets then they will continue to work the same, but if you’ve customized
171
+
DaemonSets then they will continue to work the same, but if you've customized
167
172
your `dockerd` configuration, you’ll need to adapt that for your new container
168
173
runtime where possible.
169
174
170
175
Another thing to look out for is anything expecting to run for system maintenance
171
176
or nested inside a container when building images will no longer work. For the
172
-
former, you can use the [`crictl`][cr] tool as a drop-in replacement (see [mapping from docker cli to crictl](https://kubernetes.io/docs/tasks/debug/debug-cluster/crictl/#mapping-from-docker-cli-to-crictl)) and for the
173
-
latter you can use newer container build options like [img], [buildah],
177
+
former, you can use the [`crictl`][cr] tool as a drop-in replacement (see
178
+
[mapping from docker cli to crictl](https://kubernetes.io/docs/tasks/debug-application-cluster/crictl/#mapping-from-docker-cli-to-crictl))
179
+
and for the latter you can use newer container build options like [img], [buildah],
174
180
[kaniko], or [buildkit-cli-for-kubectl] that don’t require Docker.
0 commit comments