diff --git a/content/zh-cn/docs/tutorials/_index.md b/content/zh-cn/docs/tutorials/_index.md index 2feb4bd56d..0c77f56652 100644 --- a/content/zh-cn/docs/tutorials/_index.md +++ b/content/zh-cn/docs/tutorials/_index.md @@ -24,9 +24,9 @@ Before walking through each tutorial, you may want to bookmark the [Standardized Glossary](/docs/reference/glossary/) page for later references. --> Kubernetes 文档的这一部分包含教程。 -每个教程展示了如何完成一个比单个[任务](/zh/docs/tasks/)更大的目标。 +每个教程展示了如何完成一个比单个[任务](/zh-cn/docs/tasks/)更大的目标。 通常一个教程有几个部分,每个部分都有一系列步骤。在浏览每个教程之前, -你可能希望将[标准化术语表](/zh/docs/reference/glossary/)页面添加到书签,供以后参考。 +你可能希望将[标准化术语表](/zh-cn/docs/reference/glossary/)页面添加到书签,供以后参考。 ## 基础知识 {#basics} -* [Kubernetes 基础知识](/zh/docs/tutorials/Kubernetes-Basics/) +* [Kubernetes 基础知识](/zh-cn/docs/tutorials/Kubernetes-Basics/) 是一个深入的交互式教程,帮助你理解 Kubernetes 系统,并尝试一些基本的 Kubernetes 特性。 * [Kubernetes 介绍 (edX)](https://www.edx.org/course/introduction-kubernetes-linuxfoundationx-lfs158x#) -* [你好 Minikube](/zh/docs/tutorials/hello-minikube/) +* [你好 Minikube](/zh-cn/docs/tutorials/hello-minikube/) ## 配置 {#configuration} -* [示例:配置 Java 微服务](/zh/docs/tutorials/configuration/configure-java-microservice/) -* [使用 ConfigMap 配置 Redis](/zh/docs/tutorials/configuration/configure-redis-using-configmap/) +* [示例:配置 Java 微服务](/zh-cn/docs/tutorials/configuration/configure-java-microservice/) +* [使用 ConfigMap 配置 Redis](/zh-cn/docs/tutorials/configuration/configure-redis-using-configmap/) ## 无状态应用程序 {#stateless-applications} -* [公开外部 IP 地址访问集群中的应用程序](/zh/docs/tutorials/stateless-application/expose-external-ip-address/) -* [示例:使用 Redis 部署 PHP 留言板应用程序](/zh/docs/tutorials/stateless-application/guestbook/) +* [公开外部 IP 地址访问集群中的应用程序](/zh-cn/docs/tutorials/stateless-application/expose-external-ip-address/) +* [示例:使用 Redis 部署 PHP 留言板应用程序](/zh-cn/docs/tutorials/stateless-application/guestbook/) ## 有状态应用程序 {#stateful-applications} -* [StatefulSet 基础](/zh/docs/tutorials/stateful-application/basic-stateful-set/) -* [示例:WordPress 和 MySQL 使用持久卷](/zh/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/) -* [示例:使用有状态集部署 Cassandra](/zh/docs/tutorials/stateful-application/cassandra/) -* [运行 ZooKeeper,CP 分布式系统](/zh/docs/tutorials/stateful-application/zookeeper/) +* [StatefulSet 基础](/zh-cn/docs/tutorials/stateful-application/basic-stateful-set/) +* [示例:WordPress 和 MySQL 使用持久卷](/zh-cn/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/) +* [示例:使用有状态集部署 Cassandra](/zh-cn/docs/tutorials/stateful-application/cassandra/) +* [运行 ZooKeeper,CP 分布式系统](/zh-cn/docs/tutorials/stateful-application/zookeeper/) ## 服务 {#services} -* [使用源 IP](/zh/docs/tutorials/services/source-ip/) +* [使用源 IP](/zh-cn/docs/tutorials/services/source-ip/) ## 安全 {#security} -* [在集群级别应用 Pod 安全标准](/zh/docs/tutorials/security/cluster-level-pss/) -* [在名字空间级别应用 Pod 安全标准](/zh/docs/tutorials/security/ns-level-pss/) -* [AppArmor](/zh/docs/tutorials/security/apparmor/) -* [seccomp](/zh/docs/tutorials/security/seccomp/) +* [在集群级别应用 Pod 安全标准](/zh-cn/docs/tutorials/security/cluster-level-pss/) +* [在名字空间级别应用 Pod 安全标准](/zh-cn/docs/tutorials/security/ns-level-pss/) +* [AppArmor](/zh-cn/docs/tutorials/security/apparmor/) +* [seccomp](/zh-cn/docs/tutorials/security/seccomp/) ## {{% heading "whatsnext" %}} @@ -118,6 +118,6 @@ If you would like to write a tutorial, see [Content Page Types](/docs/contribute/style/page-content-types/) for information about the tutorial page. --> -如果你要编写教程,请参阅[内容页面类型](/zh/docs/contribute/style/page-content-types/) +如果你要编写教程,请参阅[内容页面类型](/zh-cn/docs/contribute/style/page-content-types/) 以获取有关教程页面类型的信息。 diff --git a/content/zh-cn/docs/tutorials/configuration/configure-java-microservice/configure-java-microservice.md b/content/zh-cn/docs/tutorials/configuration/configure-java-microservice/configure-java-microservice.md index b7c99d0e8e..b46c61ebd3 100644 --- a/content/zh-cn/docs/tutorials/configuration/configure-java-microservice/configure-java-microservice.md +++ b/content/zh-cn/docs/tutorials/configuration/configure-java-microservice/configure-java-microservice.md @@ -40,11 +40,11 @@ Although Secrets are also used to store key-value pairs, they differ from Config --> ConfigMaps 是存储非机密键值对的 API 对象。 在互动教程中,你会学到如何用 ConfigMap 来保存应用名字。 -ConfigMap 的更多信息,你可以在[这里](/zh/docs/tasks/configure-pod-container/configure-pod-configmap/)找到文档。 +ConfigMap 的更多信息,你可以在[这里](/zh-cn/docs/tasks/configure-pod-container/configure-pod-configmap/)找到文档。 Secrets 尽管也用来存储键值对,但区别于 ConfigMaps 的是:它针对机密/敏感数据,且存储格式为 Base64 编码。 secrets 的这种特性使得它适合于存储证书、密钥、令牌,上述内容你将在交互教程中实现。 -Secrets 的更多信息,你可以在[这里](/zh/docs/concepts/configuration/secret/)找到文档。 +Secrets 的更多信息,你可以在[这里](/zh-cn/docs/concepts/configuration/secret/)找到文档。 ## 示例:使用 MicroProfile、ConfigMaps、Secrets 实现外部化应用配置 -### [启动互动教程](/zh/docs/tutorials/configuration/configure-java-microservice/configure-java-microservice-interactive/) +### [启动互动教程](/zh-cn/docs/tutorials/configuration/configure-java-microservice/configure-java-microservice-interactive/) diff --git a/content/zh-cn/docs/tutorials/configuration/configure-redis-using-configmap.md b/content/zh-cn/docs/tutorials/configuration/configure-redis-using-configmap.md index 51abf7c180..6814327d59 100644 --- a/content/zh-cn/docs/tutorials/configuration/configure-redis-using-configmap.md +++ b/content/zh-cn/docs/tutorials/configuration/configure-redis-using-configmap.md @@ -15,7 +15,7 @@ content_type: tutorial -这篇文档基于[配置 Pod 以使用 ConfigMap](/zh/docs/tasks/configure-pod-container/configure-pod-configmap/) +这篇文档基于[配置 Pod 以使用 ConfigMap](/zh-cn/docs/tasks/configure-pod-container/configure-pod-configmap/) 这个任务,提供了一个使用 ConfigMap 来配置 Redis 的真实案例。 @@ -47,7 +47,7 @@ This page provides a real world example of how to configure Redis using a Config * Understand [Configure a Pod to Use a ConfigMap](/docs/tasks/configure-pod-container/configure-pod-configmap/). --> * 此页面上显示的示例适用于 `kubectl` 1.14 及以上的版本。 -* 理解[配置 Pod 以使用 ConfigMap](/zh/docs/tasks/configure-pod-container/configure-pod-configmap/)。 +* 理解[配置 Pod 以使用 ConfigMap](/zh-cn/docs/tasks/configure-pod-container/configure-pod-configmap/)。 @@ -370,7 +370,7 @@ kubectl delete pod/redis configmap/example-redis-config -* 了解有关 [ConfigMaps](/zh/docs/tasks/configure-pod-container/configure-pod-configmap/) 的更多信息。 +* 了解有关 [ConfigMaps](/zh-cn/docs/tasks/configure-pod-container/configure-pod-configmap/) 的更多信息。 diff --git a/content/zh-cn/docs/tutorials/hello-minikube.md b/content/zh-cn/docs/tutorials/hello-minikube.md index f9c15568c9..09c04dcb23 100644 --- a/content/zh-cn/docs/tutorials/hello-minikube.md +++ b/content/zh-cn/docs/tutorials/hello-minikube.md @@ -166,9 +166,9 @@ recommended way to manage the creation and scaling of Pods. ## 创建 Deployment -Kubernetes [*Pod*](/zh/docs/concepts/workloads/pods/) 是由一个或多个 +Kubernetes [*Pod*](/zh-cn/docs/concepts/workloads/pods/) 是由一个或多个 为了管理和联网而绑定在一起的容器构成的组。 本教程中的 Pod 只有一个容器。 -Kubernetes [*Deployment*](/zh/docs/concepts/workloads/controllers/deployment/) +Kubernetes [*Deployment*](/zh-cn/docs/concepts/workloads/controllers/deployment/) 检查 Pod 的健康状况,并在 Pod 中的容器终止的情况下重新启动新的容器。 Deployment 是管理 Pod 创建和扩展的推荐方法。 @@ -247,7 +247,7 @@ For more information about `kubectl`commands, see the [kubectl overview](/docs/reference/kubectl/). --> {{< note >}} -有关 `kubectl` 命令的更多信息,请参阅 [kubectl 概述](/zh/docs/reference/kubectl/)。 +有关 `kubectl` 命令的更多信息,请参阅 [kubectl 概述](/zh-cn/docs/reference/kubectl/)。 {{< /note >}} -* 进一步了解 [Deployment 对象](/zh/docs/concepts/workloads/controllers/deployment/)。 -* 进一步了解[部署应用](/zh/docs/tasks/run-application/run-stateless-application-deployment/)。 -* 进一步了解 [Service 对象](/zh/docs/concepts/services-networking/service/)。 +* 进一步了解 [Deployment 对象](/zh-cn/docs/concepts/workloads/controllers/deployment/)。 +* 进一步了解[部署应用](/zh-cn/docs/tasks/run-application/run-stateless-application-deployment/)。 +* 进一步了解 [Service 对象](/zh-cn/docs/concepts/services-networking/service/)。 diff --git a/content/zh-cn/docs/tutorials/kubernetes-basics/_index.html b/content/zh-cn/docs/tutorials/kubernetes-basics/_index.html index 35801b73fa..7054cf6e3c 100644 --- a/content/zh-cn/docs/tutorials/kubernetes-basics/_index.html +++ b/content/zh-cn/docs/tutorials/kubernetes-basics/_index.html @@ -55,25 +55,25 @@ card:
你可以使用 Kubernetes 命令行界面 Kubectl 创建和管理 Deployment。Kubectl 使用 Kubernetes API 与集群进行交互。在本单元中,你将学习创建在 Kubernetes 集群上运行应用程序的 Deployment 所需的最常见的 Kubectl 命令。
-创建 Deployment 时,你需要指定应用程序的容器映像以及要运行的副本数。你可以稍后通过更新 Deployment 来更改该信息; 模块 5 和 6 讨论了如何扩展和更新 Deployments。
+创建 Deployment 时,你需要指定应用程序的容器映像以及要运行的副本数。你可以稍后通过更新 Deployment 来更改该信息; 模块 5 和 6 讨论了如何扩展和更新 Deployments。
Now that you know what Deployments are, let's go to the online tutorial and deploy our first app!
-->对于我们的第一次部署,我们将使用打包在 Docker 容器中的 Node.js 应用程序。 要创建 Node.js 应用程序并部署 Docker 容器,请按照 - 你好 Minikube 教程.
+ 你好 Minikube 教程.现在你已经了解了 Deployment 的内容,让我们转到在线教程并部署我们的第一个应用程序!
在模块 2创建 Deployment 时, Kubernetes 添加了一个 Pod 来托管你的应用实例。Pod 是 Kubernetes 抽象出来的,表示一组一个或多个应用程序容器(如 Docker),以及这些容器的一些共享资源。这些资源包括:
+在模块 2创建 Deployment 时, Kubernetes 添加了一个 Pod 来托管你的应用实例。Pod 是 Kubernetes 抽象出来的,表示一组一个或多个应用程序容器(如 Docker),以及这些容器的一些共享资源。这些资源包括:
-在模块 2,你使用了 Kubectl 命令行界面。 你将继续在第3单元中使用它来获取有关已部署的应用程序及其环境的信息。 最常见的操作可以使用以下 kubectl 命令完成:
+在模块 2,你使用了 Kubectl 命令行界面。 你将继续在第3单元中使用它来获取有关已部署的应用程序及其环境的信息。 最常见的操作可以使用以下 kubectl 命令完成:
- 开始交互式教程 › + 开始交互式教程 › diff --git a/content/zh-cn/docs/tutorials/kubernetes-basics/expose/expose-interactive.html b/content/zh-cn/docs/tutorials/kubernetes-basics/expose/expose-interactive.html index 6e3f84b6cf..f222991cca 100644 --- a/content/zh-cn/docs/tutorials/kubernetes-basics/expose/expose-interactive.html +++ b/content/zh-cn/docs/tutorials/kubernetes-basics/expose/expose-interactive.html @@ -38,7 +38,7 @@ weight: 20 diff --git a/content/zh-cn/docs/tutorials/kubernetes-basics/expose/expose-intro.html b/content/zh-cn/docs/tutorials/kubernetes-basics/expose/expose-intro.html index 0bf2d8293c..a4484c6139 100644 --- a/content/zh-cn/docs/tutorials/kubernetes-basics/expose/expose-intro.html +++ b/content/zh-cn/docs/tutorials/kubernetes-basics/expose/expose-intro.html @@ -35,10 +35,10 @@ weight: 10Kubernetes Pod 是转瞬即逝的。 Pod 实际上拥有 生命周期。 当一个工作 Node 挂掉后, 在 Node 上运行的 Pod 也会消亡。 ReplicaSet 会自动地通过创建新的 Pod 驱动集群回到目标状态,以保证应用程序正常运行。 换一个例子,考虑一个具有3个副本数的用作图像处理的后端程序。这些副本是可替换的; 前端系统不应该关心后端副本,即使 Pod 丢失或重新创建。也就是说,Kubernetes 集群中的每个 Pod (即使是在同一个 Node 上的 Pod )都有一个唯一的 IP 地址,因此需要一种方法自动协调 Pod 之间的变更,以便应用程序保持运行。
+Kubernetes Pod 是转瞬即逝的。 Pod 实际上拥有 生命周期。 当一个工作 Node 挂掉后, 在 Node 上运行的 Pod 也会消亡。 ReplicaSet 会自动地通过创建新的 Pod 驱动集群回到目标状态,以保证应用程序正常运行。 换一个例子,考虑一个具有3个副本数的用作图像处理的后端程序。这些副本是可替换的; 前端系统不应该关心后端副本,即使 Pod 丢失或重新创建。也就是说,Kubernetes 集群中的每个 Pod (即使是在同一个 Node 上的 Pod )都有一个唯一的 IP 地址,因此需要一种方法自动协调 Pod 之间的变更,以便应用程序保持运行。
- Kubernetes 中的服务(Service)是一种抽象概念,它定义了 Pod 的逻辑集和访问 Pod 的协议。Service 使从属 Pod 之间的松耦合成为可能。 和其他 Kubernetes 对象一样, Service 用 YAML (更推荐) 或者 JSON 来定义. Service 下的一组 Pod 通常由 LabelSelector (请参阅下面的说明为什么你可能想要一个 spec 中不包含selector的服务)来标记。
Kubernetes 中的服务(Service)是一种抽象概念,它定义了 Pod 的逻辑集和访问 Pod 的协议。Service 使从属 Pod 之间的松耦合成为可能。 和其他 Kubernetes 对象一样, Service 用 YAML (更推荐) 或者 JSON 来定义. Service 下的一组 Pod 通常由 LabelSelector (请参阅下面的说明为什么你可能想要一个 spec 中不包含selector的服务)来标记。
尽管每个 Pod 都有一个唯一的 IP 地址,但是如果没有 Service ,这些 IP 不会暴露在集群外部。Service 允许你的应用程序接收流量。Service 也可以用在 ServiceSpec 标记type的方式暴露
externalName指定)公开 Service。不使用代理。这种类型需要kube-dns的v1.7或更高版本。更多关于不同 Service 类型的信息可以在使用源 IP 教程。 也请参阅 连接应用程序和 Service 。
+更多关于不同 Service 类型的信息可以在使用源 IP 教程。 也请参阅 连接应用程序和 Service 。
另外,需要注意的是有一些 Service 的用例没有在 spec 中定义selector。 一个没有selector创建的 Service 也不会创建相应的端点对象。这允许用户手动将服务映射到特定的端点。没有 selector 的另一种可能是你严格使用type: ExternalName来标记。
Service 通过一组 Pod 路由通信。Service 是一种抽象,它允许 Pod 死亡并在 Kubernetes 中复制,而不会影响应用程序。在依赖的 Pod (如应用程序中的前端和后端组件)之间进行发现和路由是由Kubernetes Service 处理的。
-Service 匹配一组 Pod 是使用 标签(Label)和选择器(Selector), 它们是允许对 Kubernetes 中的对象进行逻辑操作的一种分组原语。标签(Label)是附加在对象上的键/值对,可以以多种方式使用:
+Service 匹配一组 Pod 是使用 标签(Label)和选择器(Selector), 它们是允许对 Kubernetes 中的对象进行逻辑操作的一种分组原语。标签(Label)是附加在对象上的键/值对,可以以多种方式使用:
在之前的模块中,我们创建了一个 Deployment,然后通过 Service让其可以开放访问。Deployment 仅为跑这个应用程序创建了一个 Pod。 当流量增加时,我们需要扩容应用程序满足用户需求。
+在之前的模块中,我们创建了一个 Deployment,然后通过 Service让其可以开放访问。Deployment 仅为跑这个应用程序创建了一个 Pod。 当流量增加时,我们需要扩容应用程序满足用户需求。
扩缩 是通过改变 Deployment 中的副本数量来实现的。
@@ -99,7 +99,7 @@ weight: 10 -扩展 Deployment 将创建新的 Pods,并将资源调度请求分配到有可用资源的节点上,收缩 会将 Pods 数量减少至所需的状态。Kubernetes 还支持 Pods 的自动缩放,但这并不在本教程的讨论范围内。将 Pods 数量收缩到0也是可以的,但这会终止 Deployment 上所有已经部署的 Pods。
+扩展 Deployment 将创建新的 Pods,并将资源调度请求分配到有可用资源的节点上,收缩 会将 Pods 数量减少至所需的状态。Kubernetes 还支持 Pods 的自动缩放,但这并不在本教程的讨论范围内。将 Pods 数量收缩到0也是可以的,但这会终止 Deployment 上所有已经部署的 Pods。
@@ -127,7 +127,7 @@ weight: 10 diff --git a/content/zh-cn/docs/tutorials/kubernetes-basics/update/update-interactive.html b/content/zh-cn/docs/tutorials/kubernetes-basics/update/update-interactive.html index 9befc40bd7..e736e54638 100644 --- a/content/zh-cn/docs/tutorials/kubernetes-basics/update/update-interactive.html +++ b/content/zh-cn/docs/tutorials/kubernetes-basics/update/update-interactive.html @@ -32,7 +32,7 @@ weight: 20 diff --git a/content/zh-cn/docs/tutorials/kubernetes-basics/update/update-intro.html b/content/zh-cn/docs/tutorials/kubernetes-basics/update/update-intro.html index 8f53c752c3..6d25312eac 100644 --- a/content/zh-cn/docs/tutorials/kubernetes-basics/update/update-intro.html +++ b/content/zh-cn/docs/tutorials/kubernetes-basics/update/update-intro.html @@ -177,7 +177,7 @@ weight: 10 - 启动交互教程› + 启动交互教程› diff --git a/content/zh-cn/docs/tutorials/security/apparmor.md b/content/zh-cn/docs/tutorials/security/apparmor.md index 1ba304585a..00048de976 100644 --- a/content/zh-cn/docs/tutorials/security/apparmor.md +++ b/content/zh-cn/docs/tutorials/security/apparmor.md @@ -487,7 +487,7 @@ Kubernetes 目前不提供任何本地机制来将 AppArmor 配置文件加载 [Example](#example). --> * 通过在每个节点上运行 Pod 的 - [DaemonSet](/zh/docs/concepts/workloads/controllers/daemonset/)来确保加载了正确的配置文件。 + [DaemonSet](/zh-cn/docs/concepts/workloads/controllers/daemonset/)来确保加载了正确的配置文件。 可以在[这里](https://git.k8s.io/kubernetes/test/images/apparmor-loader)找到实现示例。 * 在节点初始化时,使用节点初始化脚本(例如 Salt、Ansible 等)或镜像。 * 通过将配置文件复制到每个节点并通过 SSH 加载它们,如[示例](#example)。 @@ -501,7 +501,7 @@ node with the required profile. --> 调度程序不知道哪些配置文件加载到哪个节点上,因此必须将全套配置文件加载到每个节点上。 另一种方法是为节点上的每个配置文件(或配置文件类)添加节点标签, -并使用[节点选择器](/zh/docs/concepts/configuration/assign-pod-node/)确保 +并使用[节点选择器](/zh-cn/docs/concepts/configuration/assign-pod-node/)确保 Pod 在具有所需配置文件的节点上运行。 @@ -513,7 +513,7 @@ PodSecurityPolicy is deprecated in Kubernetes v1.21, and will be removed in v1.2 See [PodSecurityPolicy](/docs/concepts/security/pod-security-policy/) documentation for more information. --> PodSecurityPolicy 在 Kubernetes v1.21 版本中已被废弃,将在 v1.25 版本移除。 -查看 [PodSecurityPolicy](/zh/docs/concepts/security/pod-security-policy/) 文档获取更多信息。 +查看 [PodSecurityPolicy](/zh-cn/docs/concepts/security/pod-security-policy/) 文档获取更多信息。 {{< /note >}} ## 正确选择要应用的 Pod 安全标准 {#choose-the-right-pod-security-standard-to-apply} -[Pod 安全准入](/zh/docs/concepts/security/pod-security-admission/) +[Pod 安全准入](/zh-cn/docs/concepts/security/pod-security-admission/) 允许你使用以下模式应用内置的 -[Pod 安全标准](/zh/docs/concepts/security/pod-security-standards/): +[Pod 安全标准](/zh-cn/docs/concepts/security/pod-security-standards/): `enforce`、`audit` 和 `warn`。 要收集信息以便选择最适合你的配置的 Pod 安全标准,请执行以下操作: @@ -431,7 +431,7 @@ created. - [Pod Security Standards](/docs/concepts/security/pod-security-standards/) - [Apply Pod Security Standards at the namespace level](/docs/tutorials/security/ns-level-pss/) --> -- 运行一个 [shell 脚本](/zh/examples/security/kind-with-cluster-level-baseline-pod-security.sh) +- 运行一个 [shell 脚本](/zh-cn/examples/security/kind-with-cluster-level-baseline-pod-security.sh) 一次执行前面的所有步骤: 1. 创建一个基于 Pod 安全标准的集群级别配置 2. 创建一个文件让 API 服务器消费这个配置 @@ -439,6 +439,6 @@ created. 4. 设置 kubectl 上下文为这个新集群 5. 创建一个最小的 Pod yaml 文件 6. 应用这个文件,在新集群中创建一个 Pod -- [Pod 安全准入](/zh/docs/concepts/security/pod-security-admission/) -- [Pod 安全标准](/zh/docs/concepts/security/pod-security-standards/) -- [在名字空间级别应用 Pod 安全标准](/zh/docs/tutorials/security/ns-level-pss/) \ No newline at end of file +- [Pod 安全准入](/zh-cn/docs/concepts/security/pod-security-admission/) +- [Pod 安全标准](/zh-cn/docs/concepts/security/pod-security-standards/) +- [在名字空间级别应用 Pod 安全标准](/zh-cn/docs/tutorials/security/ns-level-pss/) \ No newline at end of file diff --git a/content/zh-cn/docs/tutorials/security/ns-level-pss.md b/content/zh-cn/docs/tutorials/security/ns-level-pss.md index ae7350d9c0..ef3ea47a23 100644 --- a/content/zh-cn/docs/tutorials/security/ns-level-pss.md +++ b/content/zh-cn/docs/tutorials/security/ns-level-pss.md @@ -30,11 +30,11 @@ level. For instructions, refer to Pod 安全准入(PSA)在 v1.23 及更高版本默认启用, 因为它[升级到测试版(beta)](/blog/2021/12/09/pod-security-admission-beta/)。 Pod 安全准入是在创建 Pod 时应用 -[Pod 安全标准](/zh/docs/concepts/security/pod-security-standards/)的准入控制器。 +[Pod 安全标准](/zh-cn/docs/concepts/security/pod-security-standards/)的准入控制器。 在本教程中,你将应用 `baseline` Pod 安全标准,每次一个名字空间。 你还可以在集群级别一次将 Pod 安全标准应用于多个名称空间。 -有关说明,请参阅[在集群级别应用 Pod 安全标准](/zh/docs/tutorials/security/cluster-level-pss)。 +有关说明,请参阅[在集群级别应用 Pod 安全标准](/zh-cn/docs/tutorials/security/cluster-level-pss)。 ## {{% heading "prerequisites" %}} @@ -47,7 +47,7 @@ Install the following on your workstation: 在你的工作站中安装以下内容: - [KinD](https://kind.sigs.k8s.io/docs/user/quick-start/#installation) -- [kubectl](/zh/docs/tasks/tools/) +- [kubectl](/zh-cn/docs/tasks/tools/) -为了完成本篇教程中的所有步骤,你必须安装 [kind](/zh/docs/tasks/tools/#kind) -和 [kubectl](/zh/docs/tasks/tools/#kubectl)。 +为了完成本篇教程中的所有步骤,你必须安装 [kind](/zh-cn/docs/tasks/tools/#kind) +和 [kubectl](/zh-cn/docs/tasks/tools/#kubectl)。 本篇教程演示的某些示例仍然是 alpha 状态(自 v1.22 起),另一些示例则仅使用 seccomp 正式发布的功能。 你应该确保,针对你使用的版本, @@ -257,8 +257,8 @@ well as corresponding `--seccomp-default` [command line flag](/docs/reference/command-line-tools-reference/kubelet). Both have to be enabled simultaneously to use the feature. --> -`SeccompDefault` 是一个可选的 kubelet [特性门控](/zh/docs/reference/command-line-tools-reference/feature-gates) -以及相应的 `--seccomp-default` [命令行标志](/zh/docs/reference/command-line-tools-reference/kubelet)。 +`SeccompDefault` 是一个可选的 kubelet [特性门控](/zh-cn/docs/reference/command-line-tools-reference/feature-gates) +以及相应的 `--seccomp-default` [命令行标志](/zh-cn/docs/reference/command-line-tools-reference/kubelet)。 两者必须同时启用才能使用该功能。 -如果你已经启用了 `SeccompDefault` [特性门控](/zh/docs/reference/command-line-tools-reference/feature-gates/), +如果你已经启用了 `SeccompDefault` [特性门控](/zh-cn/docs/reference/command-line-tools-reference/feature-gates/), 只要没有指定其他 seccomp 配置文件,那么 Pod 就会使用 `SeccompDefault` 的 seccomp 配置文件。 否则,默认值为 `Unconfined`。 {{< /note >}} diff --git a/content/zh-cn/docs/tutorials/stateful-application/cassandra.md b/content/zh-cn/docs/tutorials/stateful-application/cassandra.md index ce1462388a..43be73dc8c 100644 --- a/content/zh-cn/docs/tutorials/stateful-application/cassandra.md +++ b/content/zh-cn/docs/tutorials/stateful-application/cassandra.md @@ -30,7 +30,7 @@ For more information on the features used in this tutorial, see --> 使用"StatefulSets"可以更轻松地将有状态的应用程序部署到你的 Kubernetes 集群中。 有关本教程中使用的功能的更多信息, -参阅 [StatefulSet](/zh/docs/concepts/workloads/controllers/statefulset/)。 +参阅 [StatefulSet](/zh-cn/docs/concepts/workloads/controllers/statefulset/)。 {{< note >}} 如果没有看到名为 `cassandra` 的服务,则表示创建失败。 -请阅读[调试服务](/zh/docs/tasks/debug/debug-application/debug-service/),以解决常见问题。 +请阅读[调试服务](/zh-cn/docs/tasks/debug/debug-application/debug-service/),以解决常见问题。 -[PersistentVolume](/zh/docs/concepts/storage/persistent-volumes/)(PV)是一块集群里由管理员手动提供, -或 kubernetes 通过 [StorageClass](/zh/docs/concepts/storage/storage-classes) 动态创建的存储。 -[PersistentVolumeClaim](/zh/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims) +[PersistentVolume](/zh-cn/docs/concepts/storage/persistent-volumes/)(PV)是一块集群里由管理员手动提供, +或 kubernetes 通过 [StorageClass](/zh-cn/docs/concepts/storage/storage-classes) 动态创建的存储。 +[PersistentVolumeClaim](/zh-cn/docs/concepts/storage/persistent-volumes/#persistentvolumeclaims) 是用户对存储的请求,该请求可由某个 PV 来满足。 PersistentVolumes 和 PersistentVolumeClaims 独立于 Pod 生命周期而存在, 在 Pod 重启,重新调度甚至删除过程中保存数据。 @@ -153,7 +153,7 @@ A [Secret](/docs/concepts/configuration/secret/) is an object that stores a piec Add a Secret generator in `kustomization.yaml` from the following command. You will need to replace `YOUR_PASSWORD` with the password you want to use. --> -[Secret](/zh/docs/concepts/configuration/secret/) 是存储诸如密码或密钥之类的敏感数据的对象。 +[Secret](/zh-cn/docs/concepts/configuration/secret/) 是存储诸如密码或密钥之类的敏感数据的对象。 从 1.14 开始,`kubectl`支持使用 kustomization 文件管理 Kubernetes 对象。 你可以通过`kustomization.yaml`中的生成器创建一个 Secret。 @@ -455,7 +455,7 @@ Do not leave your WordPress installation on this page. If another user finds it, * Learn more about [Port Forwarding](/docs/tasks/access-application-cluster/port-forward-access-application-cluster/) * Learn how to [Get a Shell to a Container](/docs/tasks/debug/debug-application/get-shell-running-container/) --> -* 进一步了解[自省与调试](/zh/docs/tasks/debug/debug-application/debug-running-pod/) -* 进一步了解 [Job](/zh/docs/concepts/workloads/controllers/jobs-run-to-completion/) -* 进一步了解[端口转发](/zh/docs/tasks/access-application-cluster/port-forward-access-application-cluster/) -* 了解如何[获得容器的 Shell](/zh/docs/tasks/debug/debug-application/get-shell-running-container/) +* 进一步了解[自省与调试](/zh-cn/docs/tasks/debug/debug-application/debug-running-pod/) +* 进一步了解 [Job](/zh-cn/docs/concepts/workloads/controllers/jobs-run-to-completion/) +* 进一步了解[端口转发](/zh-cn/docs/tasks/access-application-cluster/port-forward-access-application-cluster/) +* 了解如何[获得容器的 Shell](/zh-cn/docs/tasks/debug/debug-application/get-shell-running-container/) diff --git a/content/zh-cn/docs/tutorials/stateful-application/zookeeper.md b/content/zh-cn/docs/tutorials/stateful-application/zookeeper.md index e54ea6830f..561cd55ccf 100644 --- a/content/zh-cn/docs/tutorials/stateful-application/zookeeper.md +++ b/content/zh-cn/docs/tutorials/stateful-application/zookeeper.md @@ -26,9 +26,9 @@ Kubernetes using [StatefulSets](/docs/concepts/workloads/controllers/statefulset and [PodAntiAffinity](/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity). --> 本教程展示了在 Kubernetes 上使用 -[StatefulSet](/zh/docs/concepts/workloads/controllers/statefulset/), -[PodDisruptionBudget](/zh/docs/concepts/workloads/pods/disruptions/#pod-disruption-budget) 和 -[PodAntiAffinity](/zh/docs/concepts/scheduling-eviction/assign-pod-node/#亲和与反亲和) +[StatefulSet](/zh-cn/docs/concepts/workloads/controllers/statefulset/), +[PodDisruptionBudget](/zh-cn/docs/concepts/workloads/pods/disruptions/#pod-disruption-budget) 和 +[PodAntiAffinity](/zh-cn/docs/concepts/scheduling-eviction/assign-pod-node/#亲和与反亲和) 特性运行 [Apache Zookeeper](https://zookeeper.apache.org)。 ## {{% heading "prerequisites" %}} @@ -39,15 +39,15 @@ Kubernetes concepts. --> 在开始本教程前,你应该熟悉以下 Kubernetes 概念。 -- [Pods](/zh/docs/concepts/workloads/pods/) -- [集群 DNS](/zh/docs/concepts/services-networking/dns-pod-service/) -- [无头服务(Headless Service)](/zh/docs/concepts/services-networking/service/#headless-services) -- [PersistentVolumes](/zh/docs/concepts/storage/persistent-volumes/) +- [Pods](/zh-cn/docs/concepts/workloads/pods/) +- [集群 DNS](/zh-cn/docs/concepts/services-networking/dns-pod-service/) +- [无头服务(Headless Service)](/zh-cn/docs/concepts/services-networking/service/#headless-services) +- [PersistentVolumes](/zh-cn/docs/concepts/storage/persistent-volumes/) - [PersistentVolume 制备](https://github.com/kubernetes/examples/tree/{{< param "githubbranch" >}}/staging/persistent-volume-provisioning/) -- [StatefulSet](/zh/docs/concepts/workloads/controllers/statefulset/) -- [PodDisruptionBudget](/zh/docs/concepts/workloads/pods/disruptions/#pod-disruption-budget) -- [PodAntiAffinity](/zh/docs/concepts/scheduling-eviction/assign-pod-node/#亲和与反亲和) -- [kubectl CLI](/zh/docs/reference/kubectl/kubectl/) +- [StatefulSet](/zh-cn/docs/concepts/workloads/controllers/statefulset/) +- [PodDisruptionBudget](/zh-cn/docs/concepts/workloads/pods/disruptions/#pod-disruption-budget) +- [PodAntiAffinity](/zh-cn/docs/concepts/scheduling-eviction/assign-pod-node/#亲和与反亲和) +- [kubectl CLI](/zh-cn/docs/reference/kubectl/kubectl/) -[Kubernetes DNS](/zh/docs/concepts/services-networking/dns-pod-service/) +[Kubernetes DNS](/zh-cn/docs/concepts/services-networking/dns-pod-service/) 中的 A 记录将 FQDNs 解析成为 Pods 的 IP 地址。 如果 Pods 被调度,这个 A 记录将会使用 Pods 的新 IP 地址完成更新, 但 A 记录的名称不会改变。 @@ -836,7 +836,7 @@ consider deploying a [sidecar container](/docs/concepts/cluster-administration/l --> Kubernetes 支持与多种日志方案集成。你可以选择一个最适合你的集群和应用 的日志解决方案。对于集群级别的日志输出与整合,可以考虑部署一个 -[边车容器](/zh/docs/concepts/cluster-administration/logging#sidecar-container-with-logging-agent) +[边车容器](/zh-cn/docs/concepts/cluster-administration/logging#sidecar-container-with-logging-agent) 来轮转和提供日志数据。 ### 处理进程故障 -[重启策略](/zh/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy) +[重启策略](/zh-cn/docs/concepts/workloads/pods/pod-lifecycle/#restart-policy) 控制 Kubernetes 如何处理一个 Pod 中容器入口点的进程故障。 对于 StatefulSet 中的 Pods 来说,Always 是唯一合适的 RestartPolicy,也是默认值。 你应该**绝不**覆盖有状态应用的默认策略。 diff --git a/content/zh-cn/docs/tutorials/stateless-application/expose-external-ip-address.md b/content/zh-cn/docs/tutorials/stateless-application/expose-external-ip-address.md index d5910462e5..cd3989c3e8 100644 --- a/content/zh-cn/docs/tutorials/stateless-application/expose-external-ip-address.md +++ b/content/zh-cn/docs/tutorials/stateless-application/expose-external-ip-address.md @@ -28,9 +28,9 @@ external IP address. * Configure `kubectl` to communicate with your Kubernetes API server. For instructions, see the documentation for your cloud provider. --> - * 安装 [kubectl](/zh/docs/tasks/tools/)。 + * 安装 [kubectl](/zh-cn/docs/tasks/tools/)。 * 使用 Google Kubernetes Engine 或 Amazon Web Services 等云供应商创建 Kubernetes 集群。 - 本教程创建了一个[外部负载均衡器](/zh/docs/tasks/access-application-cluster/create-external-load-balancer/), + 本教程创建了一个[外部负载均衡器](/zh-cn/docs/tasks/access-application-cluster/create-external-load-balancer/), 需要云供应商。 * 配置 `kubectl` 与 Kubernetes API 服务器通信。有关说明,请参阅云供应商文档。 @@ -132,7 +132,7 @@ external IP address. {{< /note >}} --> 提示:`type=LoadBalancer` 服务由外部云服务提供商提供支持,本例中不包含此部分, - 详细信息请参考[此页](/zh/docs/concepts/services-networking/service/#loadbalancer) + 详细信息请参考[此页](/zh-cn/docs/concepts/services-networking/service/#loadbalancer) -进一步了解[将应用程序与服务连接](/zh/docs/concepts/services-networking/connect-applications-service/)。 +进一步了解[将应用程序与服务连接](/zh-cn/docs/concepts/services-networking/connect-applications-service/)。 diff --git a/content/zh-cn/docs/tutorials/stateless-application/guestbook.md b/content/zh-cn/docs/tutorials/stateless-application/guestbook.md index c50f04a521..25274ca7ed 100644 --- a/content/zh-cn/docs/tutorials/stateless-application/guestbook.md +++ b/content/zh-cn/docs/tutorials/stateless-application/guestbook.md @@ -136,7 +136,7 @@ The manifest file, included below, specifies a Deployment controller that runs a The guestbook application needs to communicate to the Redis to write its data. You need to apply a [Service](/docs/concepts/services-networking/service/) to proxy the traffic to the Redis Pod. A Service defines a policy to access the Pods. --> 留言板应用程序需要往 Redis 中写数据。因此,需要创建 -[Service](/zh/docs/concepts/services-networking/service/) 来转发 Redis Pod +[Service](/zh-cn/docs/concepts/services-networking/service/) 来转发 Redis Pod 的流量。Service 定义了访问 Pod 的策略。 {{< codenew file="application/guestbook/redis-leader-service.yaml" >}} @@ -239,7 +239,7 @@ The guestbook application needs to communicate with the Redis followers to read Guestbook 应用需要与 Redis 跟随者通信以读取数据。 为了让 Redis 跟随者可被发现,你必须创建另一个 -[Service](/zh/docs/concepts/services-networking/service/)。 +[Service](/zh-cn/docs/concepts/services-networking/service/)。 {{< codenew file="application/guestbook/redis-follower-service.yaml" >}} @@ -357,7 +357,7 @@ Guestbook 应用使用 PHP 前端。该前端被配置成与后端的 Redis 跟 The `Redis` Services you applied is only accessible within the Kubernetes cluster because the default type for a Service is [ClusterIP](/docs/concepts/services-networking/service/#publishing-services-service-types). `ClusterIP` provides a single IP address for the set of Pods the Service is pointing to. This IP address is accessible only within the cluster. --> 应用的 `Redis` 服务只能在 Kubernetes 集群中访问,因为服务的默认类型是 -[ClusterIP](/zh/docs/concepts/services-networking/service/#publishing-services-service-types)。 +[ClusterIP](/zh-cn/docs/concepts/services-networking/service/#publishing-services-service-types)。 `ClusterIP` 为服务指向的 Pod 集提供一个 IP 地址。这个 IP 地址只能在集群中访问。 -* 完成 [Kubernetes 基础](/zh/docs/tutorials/kubernetes-basics/) 交互式教程 +* 完成 [Kubernetes 基础](/zh-cn/docs/tutorials/kubernetes-basics/) 交互式教程 * 使用 Kubernetes 创建一个博客,使用 - [MySQL 和 Wordpress 的持久卷](/zh/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/#visit-your-new-wordpress-blog) -* 进一步阅读[连接应用程序](/zh/docs/concepts/services-networking/connect-applications-service/) -* 进一步阅读[管理资源](/zh/docs/concepts/cluster-administration/manage-deployment/#using-labels-effectively) + [MySQL 和 Wordpress 的持久卷](/zh-cn/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/#visit-your-new-wordpress-blog) +* 进一步阅读[连接应用程序](/zh-cn/docs/concepts/services-networking/connect-applications-service/) +* 进一步阅读[管理资源](/zh-cn/docs/concepts/cluster-administration/manage-deployment/#using-labels-effectively)