From c1a068574b3a448c604b9bcf903535947323c72f Mon Sep 17 00:00:00 2001 From: Michael Date: Fri, 2 Jun 2023 10:47:06 +0800 Subject: [PATCH] [zh] sync /concepts/policy/ --- content/zh-cn/docs/concepts/policy/_index.md | 145 +++++++++++++++++-- 1 file changed, 136 insertions(+), 9 deletions(-) diff --git a/content/zh-cn/docs/concepts/policy/_index.md b/content/zh-cn/docs/concepts/policy/_index.md index 20481c50cc..e30408e6e9 100644 --- a/content/zh-cn/docs/concepts/policy/_index.md +++ b/content/zh-cn/docs/concepts/policy/_index.md @@ -1,21 +1,148 @@ --- title: "策略" weight: 90 -description: 可配置的、可应用到一组资源的策略。 +no_list: true +description: 通过策略管理安全性和最佳实践。 --- - -{{< note >}} + + -有关 Kubernetes 中的 NetworkPolicy 的文档, -请参阅[网络策略](/zh-cn/docs/concepts/services-networking/network-policies/)。 -{{< /note >}} \ No newline at end of file +Kubernetes 策略是管理其他配置或运行时行为的一些配置。 +Kubernetes 提供了各种形式的策略,具体如下所述: + + + + +## 使用 API 对象应用策略 {#apply-policies-using-api-objects} + +一些 API 对象可用作策略。以下是一些示例: + +* [NetworkPolicy](/zh-cn/docs/concepts/services-networking/network-policies/) 用于限制工作负载的出入站流量。 +* [LimitRange](/zh-cn/docs/concepts/policy/limit-range/) 管理多个不同对象类别的资源分配约束。 +* [ResourceQuota](/zh-cn/docs/concepts/policy/resource-quotas/) + 限制{{< glossary_tooltip text="名字空间" term_id="namespace" >}}的资源消耗。 + + +## 使用准入控制器应用策略 {#apply-policies-using-admission-controllers} + +{{< glossary_tooltip text="准入控制器" term_id="admission-controller" >}}运行在 API 服务器上, +可以验证或变更 API 请求。某些准入控制器用于应用策略。 +例如,[AlwaysPullImages](/zh-cn/docs/reference/access-authn-authz/admission-controllers/#alwayspullimages) +准入控制器会修改新 Pod,将镜像拉取策略设置为 `Always`。 + + +Kubernetes 具有多个内置的准入控制器,可通过 API 服务器的 `--enable-admission-plugins` 标志进行配置。 + +关于准入控制器的详细信息(包括可用准入控制器的完整列表),请查阅专门的章节: + +* [准入控制器](/zh-cn/docs/reference/access-authn-authz/admission-controllers/) + + +## 使用 ValidatingAdmissionPolicy 应用策略 {#apply-policies-using-validatingadmissionpolicy} + +验证性的准入策略允许使用通用表达式语言 (CEL) 在 API 服务器中执行可配置的验证检查。 +例如,`ValidatingAdmissionPolicy` 可用于禁止使用 `latest` 镜像标签。 + + +`ValidatingAdmissionPolicy` 对请求 API 进行操作,可就不合规的配置执行阻止、审计和警告用户等操作。 +有关 `ValidatingAdmissionPolicy` API 的详细信息及示例,请查阅专门的章节: + +* [验证准入策略](/zh-cn/docs/reference/access-authn-authz/validating-admission-policy/) + + +## 使用动态准入控制应用策略 {#apply-policies-using-dynamic-admission-control} + +动态准入控制器(或准入 Webhook)作为单独的应用在 API 服务器之外运行, +这些应用注册自身后可以接收 Webhook 请求以便对 API 请求进行验证或变更。 + + +动态准入控制器可用于在 API 请求上应用策略并触发其他基于策略的工作流。 +动态准入控制器可以执行一些复杂的检查,包括需要读取其他集群资源和外部数据的复杂检查。 +例如,镜像验证检查可以从 OCI 镜像仓库中查找数据,以验证容器镜像签名和证明信息。 + +有关动态准入控制的详细信息,请查阅专门的章节: + +* [动态准入控制](/zh-cn/docs/reference/access-authn-authz/extensible-admission-controllers/) + + +### 实现 {#implementations-admission-control} + +{{% thirdparty-content %}} + + +Kubernetes 生态系统中正在开发作为灵活策略引擎的动态准入控制器,例如: + +- [Kubewarden](https://github.com/kubewarden) +- [Kyverno](https://kyverno.io) +- [OPA Gatekeeper](https://github.com/open-policy-agent/gatekeeper) +- [Polaris](https://polaris.docs.fairwinds.com/admission-controller/) + + +## 使用 Kubelet 配置应用策略 {#apply-policies-using-kubelet-configurations} + +Kubernetes 允许在每个工作节点上配置 Kubelet。一些 Kubelet 配置可以视为策略: + +* [进程 ID 限制和保留](/zh-cn/docs/concepts/policy/pid-limiting/)用于限制和保留可分配的 PID。 +* [节点资源管理器](/zh-cn/docs/concepts/policy/node-resource-managers/)可以为低延迟和高吞吐量工作负载管理计算、内存和设备资源。