From 9e3ff0a1b3f050ded096b61b74e1b60f1e9bf16e Mon Sep 17 00:00:00 2001 From: Sean Wei Date: Thu, 26 May 2022 17:46:00 +0800 Subject: [PATCH] [zh] Remove reviewer for topology and cluster-kubeadm --- .../tools/kubeadm/create-cluster-kubeadm.md | 114 ++++++++++-------- .../tools/kubeadm/ha-topology.md | 44 +++---- 2 files changed, 85 insertions(+), 73 deletions(-) diff --git a/content/zh/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md b/content/zh/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md index e6fa988fc8..cb8fac642f 100644 --- a/content/zh/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md +++ b/content/zh/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm.md @@ -1,11 +1,8 @@ --- -reviewers: -- sig-cluster-lifecycle title: 使用 kubeadm 创建集群 content_type: task weight: 30 --- - -使用 `kubeadm`,你能创建一个符合最佳实践的最小化 Kubernetes 集群。事实上,你可以使用 `kubeadm` 配置一个通过 [Kubernetes 一致性测试](https://kubernetes.io/blog/2017/10/software-conformance-certification) 的集群。 + +使用 `kubeadm`,你能创建一个符合最佳实践的最小化 Kubernetes 集群。 +事实上,你可以使用 `kubeadm` 配置一个通过 +[Kubernetes 一致性测试](https://kubernetes.io/blog/2017/10/software-conformance-certification)的集群。 `kubeadm` 还支持其他集群生命周期功能, -例如 [启动引导令牌](/zh/docs/reference/access-authn-authz/bootstrap-tokens/) 和集群升级。 +例如[启动引导令牌](/zh/docs/reference/access-authn-authz/bootstrap-tokens/)和集群升级。 -[Kubernetes 版本及版本偏差策略](/zh/docs/setup/release/version-skew-policy/#supported-versions) 适用于 `kubeadm` 以及整个 Kubernetes。 +[Kubernetes 版本及版本偏差策略](/zh/docs/setup/release/version-skew-policy/#supported-versions)适用于 `kubeadm` 以及整个 Kubernetes。 查阅该策略以了解支持哪些版本的 Kubernetes 和 `kubeadm`。 该页面是为 Kubernetes {{< param "version" >}} 编写的。 @@ -103,7 +107,7 @@ Any commands under `kubeadm alpha` are, by definition, supported on an alpha lev -## 目标 +## 目标 {#objectives} -## 操作指南 +## 操作指南 {#instructions} -### 主机准备 +### 主机准备 {#preparing-the-hosts} -### 准备所需的容器镜像 +### 准备所需的容器镜像 {#preparing-the-required-container-images} -### 初始化控制平面节点 +### 初始化控制平面节点 {#initializing-your-control-plane-node} -### 关于 apiserver-advertise-address 和 ControlPlaneEndpoint 的注意事项 +### 关于 apiserver-advertise-address 和 ControlPlaneEndpoint 的注意事项 {#considerations-about-apiserver-advertise-address-and-controlplaneendpoint} -### 更多信息 +### 更多信息 {#more-information} -要使用配置文件配置 `kubeadm init` 命令,请参见[带配置文件使用 kubeadm init](/zh/docs/reference/setup-tools/kubeadm/kubeadm-init/#config-file)。 +要使用配置文件配置 `kubeadm init` 命令, +请参见[带配置文件使用 kubeadm init](/zh/docs/reference/setup-tools/kubeadm/kubeadm-init/#config-file)。 -要自定义控制平面组件,包括可选的对控制平面组件和 etcd 服务器的活动探针提供 IPv6 支持,请参阅[自定义参数](/zh/docs/setup/production-environment/tools/kubeadm/control-plane-flags/)。 +要自定义控制平面组件,包括可选的对控制平面组件和 etcd 服务器的活动探针提供 IPv6 支持, +请参阅[自定义参数](/zh/docs/setup/production-environment/tools/kubeadm/control-plane-flags/)。 -请参阅实现 [Kubernetes 网络模型](/zh/docs/concepts/cluster-administration/networking/#how-to-implement-the-kubernetes-networking-model) 的附加组件列表。 +请参阅实现 [Kubernetes 网络模型](/zh/docs/concepts/cluster-administration/networking/#how-to-implement-the-kubernetes-networking-model)的附加组件列表。 -### 控制平面节点隔离 +### 控制平面节点隔离 {#control-plane-node-isolation} * SSH 到机器 * 成为 root (例如 `sudo su -`) -* 运行 `kubeadm init` 输出的命令。例如: +* 运行 `kubeadm init` 输出的命令,例如: -```bash -kubeadm join --token : --discovery-token-ca-cert-hash sha256: -``` + ```bash + kubeadm join --token : --discovery-token-ca-cert-hash sha256: + ``` -默认情况下,令牌会在24小时后过期。如果要在当前令牌过期后将节点加入集群, +默认情况下,令牌会在 24 小时后过期。如果要在当前令牌过期后将节点加入集群, 则可以通过在控制平面节点上运行以下命令来创建新令牌: ```bash @@ -715,7 +725,7 @@ with `kubectl -n kube-system rollout restart deployment coredns` after at least -### (可选)从控制平面节点以外的计算机控制集群 +### (可选)从控制平面节点以外的计算机控制集群 {#optional-controlling-your-cluster-from-machines-other-than-the-control-plane-node} {{< note >}} -上面的示例假定为 root 用户启用了SSH访问。如果不是这种情况, -你可以使用 `scp` 将 admin.conf 文件复制给其他允许访问的用户。 +上面的示例假定为 root 用户启用了 SSH 访问。如果不是这种情况, +你可以使用 `scp` 将 `admin.conf` 文件复制给其他允许访问的用户。 admin.conf 文件为用户提供了对集群的超级用户特权。 该文件应谨慎使用。对于普通用户,建议生成一个你为其授予特权的唯一证书。 @@ -756,7 +766,7 @@ admin.conf 文件为用户提供了对集群的超级用户特权。 -### (可选)将API服务器代理到本地主机 +### (可选)将 API 服务器代理到本地主机 {#optional-proxying-api-server-to-localhost} -你现在可以在本地访问API服务器 http://localhost:8001/api/v1 +你现在可以在本地访问 API 服务器 `http://localhost:8001/api/v1`。 -### 删除节点 +### 删除节点 {#remove-the-node} 如果你想重新开始,只需运行 `kubeadm init` 或 `kubeadm join` 并加上适当的参数。 @@ -853,7 +863,7 @@ appropriate arguments. -### 清理控制平面 +### 清理控制平面 {#clean-up-the-control-plane} -有关此子命令及其选项的更多信息,请参见[`kubeadm reset`](/zh/docs/reference/setup-tools/kubeadm/kubeadm-reset/)参考文档。 +有关此子命令及其选项的更多信息,请参见 [`kubeadm reset`](/zh/docs/reference/setup-tools/kubeadm/kubeadm-reset/) 参考文档。 @@ -879,7 +889,7 @@ options. * Verify that your cluster is running properly with [Sonobuoy](https://github.com/heptio/sonobuoy) * See [Upgrading kubeadm clusters](/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/) for details about upgrading your cluster using `kubeadm`. -* Learn about advanced `kubeadm` usage in the [kubeadm reference documentation](/docs/reference/setup-tools/kubeadm) +* Learn about advanced `kubeadm` usage in the [kubeadm reference documentation](/docs/reference/setup-tools/kubeadm/kubeadm) * Learn more about Kubernetes [concepts](/docs/concepts/) and [`kubectl`](/docs/reference/kubectl/). * See the [Cluster Networking](/docs/concepts/cluster-administration/networking/) page for a bigger list of Pod network add-ons. @@ -893,8 +903,8 @@ options. --> * 使用 [Sonobuoy](https://github.com/heptio/sonobuoy) 验证集群是否正常运行。 * 有关使用 kubeadm 升级集群的详细信息,请参阅[升级 kubeadm 集群](/zh/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/)。 -* 在 [kubeadm 参考文档](/zh/docs/reference/setup-tools/kubeadm)中了解有关高级 `kubeadm` 用法的信息。 -* 了解有关 Kubernetes [概念](/zh/docs/concepts/)和 [`kubectl`](/zh/docs/reference/kubectl/) 的更多信息。 +* 在 [kubeadm 参考文档](/zh/docs/reference/setup-tools/kubeadm/kubeadm)中了解有关 `kubeadm` 进阶用法的信息。 +* 了解有关 Kubernetes [概念](/zh/docs/concepts/)和 [`kubectl`](/zh/docs/reference/kubectl/)的更多信息。 * 有关 Pod 网络附加组件的更多列表,请参见[集群网络](/zh/docs/concepts/cluster-administration/networking/)页面。 * 请参阅[附加组件列表](/zh/docs/concepts/cluster-administration/addons/)以探索其他附加组件, 包括用于 Kubernetes 集群的日志记录,监视,网络策略,可视化和控制的工具。 @@ -917,8 +927,8 @@ options. * SIG Cluster Lifecycle mailing list: [kubernetes-sig-cluster-lifecycle](https://groups.google.com/forum/#!forum/kubernetes-sig-cluster-lifecycle) --> -* 有关 bugs, 访问 [kubeadm GitHub issue tracker](https://github.com/kubernetes/kubeadm/issues) -* 有关支持, 访问 +* 有关漏洞,访问 [kubeadm GitHub issue tracker](https://github.com/kubernetes/kubeadm/issues) +* 有关支持,访问 [#kubeadm](https://kubernetes.slack.com/messages/kubeadm/) Slack 频道 * General SIG 集群生命周期开发 Slack 频道: [#sig-cluster-lifecycle](https://kubernetes.slack.com/messages/sig-cluster-lifecycle/) @@ -942,7 +952,7 @@ match the kubeadm version with the versions of the control plane components, kub ### kubeadm's skew against the Kubernetes version --> -### kubeadm 中的 Kubernetes 版本偏差 +### kubeadm 中的 Kubernetes 版本偏差 {#kubeadm-s-skew-against-the-kubernetes-version} -### kubeadm 中 kubelet 的版本偏差 +### kubeadm 中 kubelet 的版本偏差 {#kubeadm-s-skew-against-the-kubelet} -### kubeadm 支持的 kubeadm 的版本偏差 +### kubeadm 支持的 kubeadm 的版本偏差 {#kubeadm-s-skew-against-kubeadm} -`kubeadm upgrade`的例子: +`kubeadm upgrade` 的例子: * 用于创建或升级节点的 kubeadm 版本为 {{< skew prevMinorVersion >}}。 * 用于升级节点的 kubeadm 版本必须为 {{< skew prevMinorVersion >}} 或 {{< skew latestVersion >}}。 @@ -1064,7 +1074,7 @@ data and may need to be recreated from scratch. -解决方法: +解决方法: * 使用多个控制平面节点。你可以阅读 - [可选的高可用性拓扑](/zh/docs/setup/production-environment/tools/kubeadm/ha-topology/) 选择集群拓扑提供的 - [高可用性](/zh/docs/setup/production-environment/tools/kubeadm/high-availability/). + [可选的高可用性拓扑](/zh/docs/setup/production-environment/tools/kubeadm/ha-topology/)选择集群拓扑提供的 + [高可用性](/zh/docs/setup/production-environment/tools/kubeadm/high-availability/)。 -kubeadm deb/rpm 软件包和二进制文件是为 amd64,arm (32-bit),arm64,ppc64le 和 s390x 构建的遵循[多平台提案](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/multi-platform.md)。 +kubeadm deb/rpm 软件包和二进制文件是为 amd64、arm (32-bit)、arm64、ppc64le 和 s390x 构建的遵循[多平台提案](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/multi-platform.md)。 -本页面介绍了配置高可用(HA) Kubernetes 集群拓扑的两个选项。 +本页面介绍了配置高可用(HA)Kubernetes 集群拓扑的两个选项。 在设置 HA 集群之前,你应该仔细考虑每种拓扑的优缺点。 +{{< note >}} - -{{< note >}} -kubeadm 静态引导 etcd 集群。 +kubeadm 静态引导 etcd 集群。 阅读 etcd [集群指南](https://github.com/etcd-io/etcd/blob/release-3.4/Documentation/op-guide/clustering.md#static)以获得更多详细信息。 {{< /note >}} @@ -55,18 +51,20 @@ kubeadm 静态引导 etcd 集群。 -## 堆叠(Stacked) etcd 拓扑 +## 堆叠(Stacked)etcd 拓扑 {#stacked-etcd-topology} -堆叠(Stacked) HA 集群是一种这样的[拓扑](https://en.wikipedia.org/wiki/Network_topology), +堆叠(Stacked)HA 集群是一种这样的[拓扑](https://en.wikipedia.org/wiki/Network_topology), 其中 etcd 分布式数据存储集群堆叠在 kubeadm 管理的控制平面节点上,作为控制平面的一个组件运行。 -每个控制平面节点运行 `kube-apiserver`,`kube-scheduler` 和 `kube-controller-manager` 实例。 +每个控制平面节点运行 `kube-apiserver`、`kube-scheduler` 和 `kube-controller-manager` 实例。 @@ -81,13 +79,15 @@ and `kube-scheduler` instances. 这同样适用于本地 `kube-controller-manager` 和 `kube-scheduler` 实例。 -这种拓扑将控制平面和 etcd 成员耦合在同一节点上。相对使用外部 etcd 集群 , +这种拓扑将控制平面和 etcd 成员耦合在同一节点上。相对使用外部 etcd 集群, 设置起来更简单,而且更易于副本管理。 然而,堆叠集群存在耦合失败的风险。如果一个节点发生故障,则 etcd 成员和控制平面实例都将丢失, 并且冗余会受到影响。你可以通过添加更多控制平面节点来降低此风险。 @@ -112,31 +112,33 @@ on control plane nodes when using `kubeadm init` and `kubeadm join --control-pla -## 外部 etcd 拓扑 +## 外部 etcd 拓扑 {#external-etcd-topology} -具有外部 etcd 的 HA 集群是一种这样的[拓扑](https://en.wikipedia.org/wiki/Network_topology), +具有外部 etcd 的 HA 集群是一种这样的[拓扑](https://zh.wikipedia.org/wiki/%E7%BD%91%E7%BB%9C%E6%8B%93%E6%89%91), 其中 etcd 分布式数据存储集群在独立于控制平面节点的其他节点上运行。 就像堆叠的 etcd 拓扑一样,外部 etcd 拓扑中的每个控制平面节点都运行 `kube-apiserver`,`kube-scheduler` 和 `kube-controller-manager` 实例。 -同样,`kube-apiserver` 使用负载均衡器暴露给工作节点。但是,etcd 成员在不同的主机上运行, +同样,`kube-apiserver` 使用负载均衡器暴露给工作节点。但是 etcd 成员在不同的主机上运行, 每个 etcd 主机与每个控制平面节点的 `kube-apiserver` 通信。 -这种拓扑结构解耦了控制平面和 etcd 成员。因此,它提供了一种 HA 设置, +这种拓扑结构解耦了控制平面和 etcd 成员。因此它提供了一种 HA 设置, 其中失去控制平面实例或者 etcd 成员的影响较小,并且不会像堆叠的 HA 拓扑那样影响集群冗余。 -但是,此拓扑需要两倍于堆叠 HA 拓扑的主机数量。 +但此拓扑需要两倍于堆叠 HA 拓扑的主机数量。 @@ -152,6 +154,6 @@ A minimum of three hosts for control plane nodes and three hosts for etcd nodes - - [使用 kubeadm 设置高可用集群](/zh/docs/setup/production-environment/tools/kubeadm/high-availability/) +- [使用 kubeadm 设置高可用集群](/zh/docs/setup/production-environment/tools/kubeadm/high-availability/)