From 5d53e2b7bbdac6f5d5d010d1dff19dcf28de5e40 Mon Sep 17 00:00:00 2001 From: Junxian Wu Date: Tue, 21 Apr 2020 09:02:14 +0800 Subject: [PATCH 1/4] Translate Limit Range to Chinese --- .../zh/docs/concepts/policy/limit-range.md | 148 ++++++++++++++++++ 1 file changed, 148 insertions(+) create mode 100644 content/zh/docs/concepts/policy/limit-range.md diff --git a/content/zh/docs/concepts/policy/limit-range.md b/content/zh/docs/concepts/policy/limit-range.md new file mode 100644 index 0000000000..d46599b8ea --- /dev/null +++ b/content/zh/docs/concepts/policy/limit-range.md @@ -0,0 +1,148 @@ +--- +title: 限制范围 +content_template: templates/concept +weight: 10 +--- + +{{% capture overview %}} + + + +默认情况下, Kubernetes 集群上的容器运行使用的[计算资源](/docs/user-guide/compute-resources) 没有上限。 +使用资源配额,集群管理员可以以命名空间为单位,限制其资源的使用与创建。 +在命名空间中,一个 Pod 或容器能够尽可能多地使用命名空间的资源配额所定义的 CPU 和内存。有人担心,一个 Pod 或容器会垄断所有可用的资源。限制范围是在命名空间内限制资源分配(给多个 Pod 或容器)的策略对象。 + +{{% /capture %}} + + +{{% capture body %}} + + + +一个 _限制范围_ 对象提供的限制能够做到: + +- 在一个命名空间中执行对每个 Pod 或容器最小和最大的资源使用量的限制。 +- 在一个命名空间中执行对每个 PersistentVolumeClaim 能申请的最小和最大的存储空间大小的限制。 +- 在一个命名空间中控制对一类资源的申请值和限制值的比值。 +- 设置一个命名空间中对计算资源的默认申请/限制值,并且自动的在运行时注入到多个容器中。 + + + +## 启用限制范围 + + + +对限制范围的支持默认在多数 Kubernetes 发行版中启用。当 apiserver 的 `--enable-admission-plugins` 标志的参数包含 `LimitRanger` 准入控制器时即启用。 + + + +当一个命名空间中有限制范围对象时,实施该限制范围对象所定义的限制。 + + + +限制范围的对象名称必须是合法的[DNS子域名](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names)。 + + + +### 限制范围总览 + + + +- 管理员在一个命名空间内创建一个 `LimitRange` 对象。 +- 用户在命名空间内创建 Pod ,容器和 PersistenctVolumeClaim 等资源。 +- `LimitRanger` 准入控制器对所有没有设置计算资源需求的 Pod 和容器设置默认值与限制值,并跟踪其使用量以保证没有超出命名空间中存在的任意限制范围对象中的最小、最大资源使用量以及使用量比值。 +- 若创建或更新资源(Pod ,容器, PersistentVolumeClaim)违反了限制范围的约束,向 API 服务器的请求会失败,并返回 HTTP 状态码 `403 FORBIDDEN` 与描述哪一项约束被违反的消息。 +- 若命名空间中的限制范围启用了对 `cpu` 和 `memory` 的限制,用户必须指定这些值的需求使用量与限制使用量。否则,系统将会拒绝创建 Pod。 +- 限制范围的验证仅在 Pod 准入阶段进行,不对正在运行的 Pod 进行验证。 + + + +能够使用限制范围策略的例子有: + +- 在一个有两个节点,8 GiB 内存与16个核的集群中,限制一个命名空间的 Pod 申请100m单位,最大500m单位的CPU,以及申请200Mi,最大600Mi的内存。 +- 为 spec 中没有 cpu 和内存需求值的容器定义默认 CPU 限制值与需求值150m,内存默认需求值300Mi。 + + + +在命名空间的总限制值小于 Pod 或容器的限制值的总和的情况下,可能会产生资源竞争。在这种情况下,将不会创建容器或 Pod。 + + + +竞争和对限制范围的改变都不会影响任何已经创建的资源。 + + + +## 示例 + + + +- 查看[如何配置每个命名空间最小和最大的 CPU 约束](/docs/tasks/administer-cluster/manage-resources/cpu-constraint-namespace/)。 +- 查看[如何配置每个命名空间最小和最大的内存约束](/docs/tasks/administer-cluster/manage-resources/memory-constraint-namespace/)。 +- 查看[如何配置每个命名空间默认的 CPU 申请值和限制值](/docs/tasks/administer-cluster/manage-resources/cpu-default-namespace/)。 +- 查看[如何配置每个命名空间默认的内存申请值和限制值](/docs/tasks/administer-cluster/manage-resources/memory-default-namespace/)。 +- 查看[如何配置每个命名空间最小和最大存储使用量](/docs/tasks/administer-cluster/limit-storage-consumption/#limitrange-to-limit-requests-for-storage)。 +- 查看[配置每个命名空间的配额的详细例子](/docs/tasks/administer-cluster/quota-memory-cpu-namespace/)。 + +{{% /capture %}} + +{{% capture whatsnext %}} + + + +查看[限制范围设计文档](https://git.k8s.io/community/contributors/design-proposals/resource-management/admission_control_limit_range.md)获取更多信息。 + +{{% /capture %}} From 992cbce0073169fdbff520adc91346a69db9a4ec Mon Sep 17 00:00:00 2001 From: Junxian Wu Date: Tue, 21 Apr 2020 10:50:50 +0800 Subject: [PATCH 2/4] fix based on tangqm's advice --- .../zh/docs/concepts/policy/limit-range.md | 44 +++++++++---------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/content/zh/docs/concepts/policy/limit-range.md b/content/zh/docs/concepts/policy/limit-range.md index d46599b8ea..b15c58589c 100644 --- a/content/zh/docs/concepts/policy/limit-range.md +++ b/content/zh/docs/concepts/policy/limit-range.md @@ -1,5 +1,5 @@ --- -title: 限制范围 +title: Limit Ranges content_template: templates/concept weight: 10 --- @@ -14,7 +14,7 @@ Within a namespace, a Pod or Container can consume as much CPU and memory as def 默认情况下, Kubernetes 集群上的容器运行使用的[计算资源](/docs/user-guide/compute-resources) 没有上限。 使用资源配额,集群管理员可以以命名空间为单位,限制其资源的使用与创建。 -在命名空间中,一个 Pod 或容器能够尽可能多地使用命名空间的资源配额所定义的 CPU 和内存。有人担心,一个 Pod 或容器会垄断所有可用的资源。限制范围是在命名空间内限制资源分配(给多个 Pod 或容器)的策略对象。 +在命名空间中,一个 Pod 或 Container 能够尽可能多地使用命名空间的资源配额所定义的 CPU 和内存。有人担心,一个 Pod 或 Container 会垄断所有可用的资源。LimitRange 是在命名空间内限制资源分配(给多个 Pod 或 Container)的策略对象。 {{% /capture %}} @@ -30,18 +30,18 @@ A _LimitRange_ provides constraints that can: - Set default request/limit for compute resources in a namespace and automatically inject them to Containers at runtime. --> -一个 _限制范围_ 对象提供的限制能够做到: +一个 _LimitRange_ 对象提供的限制能够做到: -- 在一个命名空间中执行对每个 Pod 或容器最小和最大的资源使用量的限制。 -- 在一个命名空间中执行对每个 PersistentVolumeClaim 能申请的最小和最大的存储空间大小的限制。 -- 在一个命名空间中控制对一类资源的申请值和限制值的比值。 -- 设置一个命名空间中对计算资源的默认申请/限制值,并且自动的在运行时注入到多个容器中。 +- 在一个命名空间中实施对每个 Pod 或 Container 最小和最大的资源使用量的限制。 +- 在一个命名空间中实施对每个 PersistentVolumeClaim 能申请的最小和最大的存储空间大小的限制。 +- 在一个命名空间中实施对一种资源的申请值和限制值的比值的控制。 +- 设置一个命名空间中对计算资源的默认申请/限制值,并且自动的在运行时注入到多个 Container 中。 -## 启用限制范围 +## 启用 LimitRange -对限制范围的支持默认在多数 Kubernetes 发行版中启用。当 apiserver 的 `--enable-admission-plugins` 标志的参数包含 `LimitRanger` 准入控制器时即启用。 +对 LimitRange 的支持默认在多数 Kubernetes 发行版中启用。当 apiserver 的 `--enable-admission-plugins` 标志的参数包含 `LimitRanger` 准入控制器时即启用。 -当一个命名空间中有限制范围对象时,实施该限制范围对象所定义的限制。 +当一个命名空间中有 LimitRange 时,实施该 LimitRange 所定义的限制。 -限制范围的对象名称必须是合法的[DNS子域名](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names)。 +LimitRange 的名称必须是合法的[DNS子域名](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names)。 -### 限制范围总览 +### LimitRange 总览 - 管理员在一个命名空间内创建一个 `LimitRange` 对象。 -- 用户在命名空间内创建 Pod ,容器和 PersistenctVolumeClaim 等资源。 -- `LimitRanger` 准入控制器对所有没有设置计算资源需求的 Pod 和容器设置默认值与限制值,并跟踪其使用量以保证没有超出命名空间中存在的任意限制范围对象中的最小、最大资源使用量以及使用量比值。 -- 若创建或更新资源(Pod ,容器, PersistentVolumeClaim)违反了限制范围的约束,向 API 服务器的请求会失败,并返回 HTTP 状态码 `403 FORBIDDEN` 与描述哪一项约束被违反的消息。 -- 若命名空间中的限制范围启用了对 `cpu` 和 `memory` 的限制,用户必须指定这些值的需求使用量与限制使用量。否则,系统将会拒绝创建 Pod。 -- 限制范围的验证仅在 Pod 准入阶段进行,不对正在运行的 Pod 进行验证。 +- 用户在命名空间内创建 Pod ,Container 和 PersistenctVolumeClaim 等资源。 +- `LimitRanger` 准入控制器对所有没有设置计算资源需求的 Pod 和 Container 设置默认值与限制值,并跟踪其使用量以保证没有超出命名空间中存在的任意 LimitRange 对象中的最小、最大资源使用量以及使用量比值。 +- 若创建或更新资源(Pod, Container, PersistentVolumeClaim)违反了 LimitRange 的约束,向 API 服务器的请求会失败,并返回 HTTP 状态码 `403 FORBIDDEN` 与描述哪一项约束被违反的消息。 +- 若命名空间中的 LimitRange 启用了对 `cpu` 和 `memory` 的限制,用户必须指定这些值的需求使用量与限制使用量。否则,系统将会拒绝创建 Pod。 +- LimitRange 的验证仅在 Pod 准入阶段进行,不对正在运行的 Pod 进行验证。 -能够使用限制范围策略的例子有: +能够使用 LimitRange 的例子有: - 在一个有两个节点,8 GiB 内存与16个核的集群中,限制一个命名空间的 Pod 申请100m单位,最大500m单位的CPU,以及申请200Mi,最大600Mi的内存。 -- 为 spec 中没有 cpu 和内存需求值的容器定义默认 CPU 限制值与需求值150m,内存默认需求值300Mi。 +- 为 spec 中没有 cpu 和内存需求值的 Container 定义默认 CPU 限制值与需求值150m,内存默认需求值300Mi。 -在命名空间的总限制值小于 Pod 或容器的限制值的总和的情况下,可能会产生资源竞争。在这种情况下,将不会创建容器或 Pod。 +在命名空间的总限制值小于 Pod 或 Container 的限制值的总和的情况下,可能会产生资源竞争。在这种情况下,将不会创建 Container 或 Pod。 -竞争和对限制范围的改变都不会影响任何已经创建的资源。 +竞争和对 LimitRange 的改变都不会影响任何已经创建的资源。 -查看[限制范围设计文档](https://git.k8s.io/community/contributors/design-proposals/resource-management/admission_control_limit_range.md)获取更多信息。 +查看[LimitRanger 设计文档](https://git.k8s.io/community/contributors/design-proposals/resource-management/admission_control_limit_range.md)获取更多信息。 {{% /capture %}} From 3906e25d2dbbbabeb0889ddebd4f998bdc708f87 Mon Sep 17 00:00:00 2001 From: Junxian Wu Date: Wed, 22 Apr 2020 08:39:56 +0800 Subject: [PATCH 3/4] fix typos, spaces, and some words --- content/zh/docs/concepts/policy/limit-range.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/content/zh/docs/concepts/policy/limit-range.md b/content/zh/docs/concepts/policy/limit-range.md index b15c58589c..47bb4c186a 100644 --- a/content/zh/docs/concepts/policy/limit-range.md +++ b/content/zh/docs/concepts/policy/limit-range.md @@ -1,5 +1,5 @@ --- -title: Limit Ranges +title: 限制范围 content_template: templates/concept weight: 10 --- @@ -63,13 +63,13 @@ The name of a LimitRange object must be a valid [DNS subdomain name](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names). --> -LimitRange 的名称必须是合法的[DNS子域名](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names)。 +LimitRange 的名称必须是合法的 [DNS 子域名](/docs/concepts/overview/working-with-objects/names#dns-subdomain-names)。 -### LimitRange 总览 +### 限制范围总览 - 管理员在一个命名空间内创建一个 `LimitRange` 对象。 -- 用户在命名空间内创建 Pod ,Container 和 PersistenctVolumeClaim 等资源。 +- 用户在命名空间内创建 Pod ,Container 和 PersistentVolumeClaim 等资源。 - `LimitRanger` 准入控制器对所有没有设置计算资源需求的 Pod 和 Container 设置默认值与限制值,并跟踪其使用量以保证没有超出命名空间中存在的任意 LimitRange 对象中的最小、最大资源使用量以及使用量比值。 - 若创建或更新资源(Pod, Container, PersistentVolumeClaim)违反了 LimitRange 的约束,向 API 服务器的请求会失败,并返回 HTTP 状态码 `403 FORBIDDEN` 与描述哪一项约束被违反的消息。 - 若命名空间中的 LimitRange 启用了对 `cpu` 和 `memory` 的限制,用户必须指定这些值的需求使用量与限制使用量。否则,系统将会拒绝创建 Pod。 @@ -95,10 +95,10 @@ Examples of policies that could be created using limit range are: - Define default CPU limit and request to 150m and memory default request to 300Mi for Containers started with no cpu and memory requests in their specs. --> -能够使用 LimitRange 的例子有: +能够使用限制范围创建策略的例子有: -- 在一个有两个节点,8 GiB 内存与16个核的集群中,限制一个命名空间的 Pod 申请100m单位,最大500m单位的CPU,以及申请200Mi,最大600Mi的内存。 -- 为 spec 中没有 cpu 和内存需求值的 Container 定义默认 CPU 限制值与需求值150m,内存默认需求值300Mi。 +- 在一个有两个节点,8 GiB 内存与16个核的集群中,限制一个命名空间的 Pod 申请 100m 单位,最大 500m 单位的 CPU,以及申请 200Mi,最大 600Mi 的内存。 +- 为 spec 中没有 cpu 和内存需求值的 Container 定义默认 CPU 限制值与需求值 150m,内存默认需求值 300Mi。 -竞争和对 LimitRange 的改变都不会影响任何已经创建的资源。 +竞争和对 LimitRange 的改变都不会影响任何已经创建了的资源。 -查看[LimitRanger 设计文档](https://git.k8s.io/community/contributors/design-proposals/resource-management/admission_control_limit_range.md)获取更多信息。 +查看 [LimitRanger 设计文档](https://git.k8s.io/community/contributors/design-proposals/resource-management/admission_control_limit_range.md)获取更多信息。 {{% /capture %}} From 2c82a8535f219cbae4bade46fcb3e51c2bd67cfc Mon Sep 17 00:00:00 2001 From: Junxian Wu Date: Wed, 22 Apr 2020 08:57:25 +0800 Subject: [PATCH 4/4] fix some words --- content/zh/docs/concepts/policy/limit-range.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/zh/docs/concepts/policy/limit-range.md b/content/zh/docs/concepts/policy/limit-range.md index 47bb4c186a..aa217f3311 100644 --- a/content/zh/docs/concepts/policy/limit-range.md +++ b/content/zh/docs/concepts/policy/limit-range.md @@ -12,9 +12,9 @@ With resource quotas, cluster administrators can restrict resource consumption a Within a namespace, a Pod or Container can consume as much CPU and memory as defined by the namespace's resource quota. There is a concern that one Pod or Container could monopolize all available resources. A LimitRange is a policy to constrain resource allocations (to Pods or Containers) in a namespace. --> -默认情况下, Kubernetes 集群上的容器运行使用的[计算资源](/docs/user-guide/compute-resources) 没有上限。 +默认情况下, Kubernetes 集群上的容器运行使用的[计算资源](/docs/user-guide/compute-resources) 没有限制。 使用资源配额,集群管理员可以以命名空间为单位,限制其资源的使用与创建。 -在命名空间中,一个 Pod 或 Container 能够尽可能多地使用命名空间的资源配额所定义的 CPU 和内存。有人担心,一个 Pod 或 Container 会垄断所有可用的资源。LimitRange 是在命名空间内限制资源分配(给多个 Pod 或 Container)的策略对象。 +在命名空间中,一个 Pod 或 Container 最多能够使用命名空间的资源配额所定义的 CPU 和内存用量。有人担心,一个 Pod 或 Container 会垄断所有可用的资源。LimitRange 是在命名空间内限制资源分配(给多个 Pod 或 Container)的策略对象。 {{% /capture %}}