[zh-cn] updated /migrate-dockershim-dockerd.md

pull/35543/head
Michael 2022-07-29 20:24:32 +08:00
parent b7b53e6405
commit 691da5bd0b
4 changed files with 21 additions and 19 deletions

View File

@ -4,7 +4,7 @@ title: "更新:移除 Dockershim 的常见问题"
linkTitle: "移除 Dockershim 的常见问题"
date: 2022-02-17
slug: dockershim-faq
aliases: [ 'zh/dockershim' ]
aliases: [ '/zh-cn/dockershim' ]
---
<!--
layout: blog
@ -91,7 +91,7 @@ special code to help with the transition, and made that _dockershim_ code part o
itself.
-->
Kubernetes 的早期版本仅适用于特定的容器运行时Docker Engine。
后来Kubernetes 增加了对使用其他容器运行时的支持。[创建](/blog/2016/12/container-runtime-interface-cri-in-kubernetes/) CRI
后来Kubernetes 增加了对使用其他容器运行时的支持。[创建](/blog/2016/12/container-runtime-interface-cri-in-kubernetes/) CRI
标准是为了实现编排器(如 Kubernetes和许多不同的容器运行时之间交互操作。
Docker Engine 没有实现CRI接口因此 Kubernetes 项目创建了特殊代码来帮助过渡,
并使 dockershim 代码成为 Kubernetes 的一部分。

View File

@ -36,5 +36,5 @@ Kubernetes 系统组件通过它与 {{< glossary_tooltip text="Docker Engine" te
<!--
Starting with version 1.24, dockershim has been removed from Kubernetes. For more information, see [Dockershim FAQ](/dockershim).
-->
从 Kubernetes v1.24 开始dockershim 已从 Kubernetes 中移除.
想了解更多信息,可参考[移除 Dockershim 的常见问题](/zh-cn/dockershim)。
从 Kubernetes v1.24 开始dockershim 已从 Kubernetes 中移除
想了解更多信息,可参考[移除 Dockershim 的常见问题](/zh-cn/dockershim)。

View File

@ -67,8 +67,7 @@ may [fail](https://github.com/kubernetes/kubeadm/issues/31).
一般来讲,硬件设备会拥有唯一的地址,但是有些虚拟机的地址可能会重复。
Kubernetes 使用这些值来唯一确定集群中的节点。
如果这些值在每个节点上不唯一,可能会导致安装
[失败](https://github.com/kubernetes/kubeadm/issues/31)。
如果这些值在每个节点上不唯一,可能会导致安装[失败](https://github.com/kubernetes/kubeadm/issues/31)。
<!--
## Check network adapters
@ -78,7 +77,8 @@ route, we recommend you add IP route(s) so Kubernetes cluster addresses go via t
-->
## 检查网络适配器
如果你有一个以上的网络适配器,同时你的 Kubernetes 组件通过默认路由不可达,我们建议你预先添加 IP 路由规则,这样 Kubernetes 集群就可以通过对应的适配器完成连接。
如果你有一个以上的网络适配器,同时你的 Kubernetes 组件通过默认路由不可达,我们建议你预先添加 IP 路由规则,
这样 Kubernetes 集群就可以通过对应的适配器完成连接。
<!--
## Letting iptables see bridged traffic
@ -121,7 +121,8 @@ need to be open in order for Kubernetes components to communicate with each othe
## 检查所需端口{#check-required-ports}
启用这些[必要的端口](/zh-cn/docs/reference/ports-and-protocols/)后才能使 Kubernetes 的各组件相互通信。可以使用 netcat 之类的工具来检查端口是否启用,例如:
启用这些[必要的端口](/zh-cn/docs/reference/ports-and-protocols/)后才能使 Kubernetes 的各组件相互通信。
可以使用 netcat 之类的工具来检查端口是否启用,例如:
```shell
nc 127.0.0.1 6443
@ -132,8 +133,8 @@ The pod network plugin you use may also require certain ports to be
open. Since this differs with each pod network plugin, please see the
documentation for the plugins about what port(s) those need.
-->
你使用的 Pod 网络插件 (详见后续章节) 也可能需要开启某些特定端口。由于各个 Pod 网络插件的功能都有所不同,
请参阅他们各自文档中对端口的要求。
你使用的 Pod 网络插件 (详见后续章节) 也可能需要开启某些特定端口。
由于各个 Pod 网络插件的功能都有所不同,请参阅他们各自文档中对端口的要求。
<!--
## Installing a container runtime {#installing-runtime}
@ -180,9 +181,11 @@ For that reason, an additional service [cri-dockerd](https://github.com/Mirantis
has to be installed. cri-dockerd is a project based on the legacy built-in
Docker Engine support that was [removed](/dockershim) from the kubelet in version 1.24.
-->
Docker Engine 没有实现 [CRI](/zh-cn/docs/concepts/architecture/cri/),而这是容器运行时在 Kubernetes 中工作所需要的。
Docker Engine 没有实现 [CRI](/zh-cn/docs/concepts/architecture/cri/)
而这是容器运行时在 Kubernetes 中工作所需要的。
为此,必须安装一个额外的服务 [cri-dockerd](https://github.com/Mirantis/cri-dockerd)。
cri-dockerd 是一个基于传统的内置Docker引擎支持的项目它在 1.24 版本从 kubelet 中[移除](/zh-cn/dockershim)。
cri-dockerd 是一个基于传统的内置 Docker 引擎支持的项目,
它在 1.24 版本从 kubelet 中[移除](/zh-cn/dockershim)。
{{< /note >}}
<!--
@ -260,14 +263,14 @@ but not vice versa.
For information about installing `kubectl`, see [Install and set up kubectl](/docs/tasks/tools/).
-->
kubeadm **不能** 帮你安装或者管理 `kubelet``kubectl`所以你需要
确保它们与通过 kubeadm 安装的控制平面的版本相匹配。
kubeadm **不能** 帮你安装或者管理 `kubelet``kubectl`
所以你需要确保它们与通过 kubeadm 安装的控制平面的版本相匹配。
如果不这样做,则存在发生版本偏差的风险,可能会导致一些预料之外的错误和问题。
然而,控制平面与 kubelet 间的相差一个次要版本不一致是支持的,但 kubelet
的版本不可以超过 API 服务器的版本。
例如1.7.0 版本的 kubelet 可以完全兼容 1.8.0 版本的 API 服务器,反之则不可以。
有关安装 `kubectl` 的信息,请参阅[安装和设置 kubectl](/zh-cn/docs/tasks/tools/)文档。
有关安装 `kubectl` 的信息,请参阅[安装和设置 kubectl](/zh-cn/docs/tasks/tools/) 文档。
{{< warning >}}
<!--

View File

@ -122,7 +122,7 @@ to `cri-dockerd`.
`<NODE_NAME>` 替换为节点名称。
<!--
1. Drain the node to safely evict running Pods:
1. Drain the node to safely evict running Pods:
-->
2. 腾空节点以安全地逐出所有运行中的 Pod
@ -186,8 +186,7 @@ kubeadm 工具将节点上的套接字存储为控制面上 `Node` 对象的注
1. 将 `kubeadm.alpha.kubernetes.io/cri-socket` 标志从
`/var/run/dockershim.sock` 更改为 `unix:///var/run/cri-dockerd.sock`
1. 保存所作更改。保存时,`Node` 对象被更新
1. 保存所作更改。保存时,`Node` 对象被更新。
<!--
## Restart the kubelet
@ -228,6 +227,6 @@ kubectl uncordon <NODE_NAME>
* Read the [dockershim removal FAQ](/dockershim/).
* [Learn how to migrate from Docker Engine with dockershim to containerd](/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/).
-->
* 阅读 [dockershim 移除常见问题](/zh-cn/dockershim)。
* 阅读 [移除 Dockershim 的常见问题](/zh-cn/dockershim)。
* [了解如何从基于 dockershim 的 Docker Engine 迁移到 containerd](/zh-cn/docs/tasks/administer-cluster/migrating-from-dockershim/change-runtime-containerd/)。