第 2 章 策略部署
Kubernetes API 用于定义和与策略交互。您需要确保环境满足内部企业安全标准,适用于 Kubernetes 集群上托管的工作负载的软件工程、安全工程、弹性、安全性以及监管合规性。
2.1. 部署选项
CertificatePolicy
、ConfigurationPolicy
和 OperatorPolicy
策略和 Gatekeeper 约束可以通过两种方式部署到受管集群。您可以使用 Hub 集群策略框架 或使用外部工具部署策略,将策略 部署到受管集群。查看每个选项的以下描述:
- hub 集群策略框架
-
第一种方法是利用 hub 集群中的策略框架。这包括在 hub 集群上的
Policy
对象中定义策略和 Gatekeeper 约束,并使用Placement
和PlacementBinding
选择策略部署到哪些集群。策略框架处理发送到受管集群,状态聚合回 hub 集群。Policy
对象在 Red Hat Advanced Cluster Management for Kubernetes 控制台的 Policies 表中表示。 - 使用外部工具部署策略
- 另外,您可以使用外部工具(如 Red Hat OpenShift GitOps)将策略和 Gatekeeper 约束直接提供给受管集群。Red Hat Advanced Cluster Management 控制台中的发现策略表中会显示您的策略,如果配置管理策略已经就位,但需要使用 Red Hat Advanced Cluster Management 策略来补充策略,则可以选择使用 Red Hat Advanced Cluster Management 控制台。
2.1.1. 策略部署比较表
请参阅以下比较表以了解哪个选项支持特定的功能,这有助于决定哪个部署策略更适合您的用例:
功能 | 策略框架 | 使用外部工具部署 |
---|---|---|
hub 集群模板 | 是 | 否 |
受管集群模板 | 是 | 是 |
Red Hat Advanced Cluster Management 控制台支持 | 是 | 是的,您可以从 Discover policies 表中查看外部工具部署的策略。使用外部工具部署的策略不会显示在 Governance Overview 仪表板中。您必须在受管集群中启用搜索。 |
策略分组 |
是的,您可以通过 |
从外部工具部署时,您无法直接在策略上使用策略分组,但每个分组的 Argo CD |
策略事件历史记录 | 您可以查看 hub 集群中存储的每个策略的最后 10 个事件。 | 否,但您可以从每个受管集群的控制器日志中提取策略事件历史记录。 |
策略依赖项 | 是 | 否。或者,您可以使用 Argo CD sync waves 功能来定义依赖项。 |
策略生成器 | 是 | 否 |
OpenShift GitOps 健康检查 您必须为比 2.13 更早的 Argo CD 版本完成额外的配置。 | 是 | 是 |
策略合规历史记录 API (技术预览)(已弃用) | 是 | 否 |
OpenShift GitOps 在受管集群中应用原生 Kubernetes 清单和 Red Hat Advanced Cluster Management 策略 | 不,您必须在 Red Hat Advanced Cluster Management hub 集群中部署策略。 | 是 |
hub 集群上的策略状态指标用于警报 | 是 | 否 |
在违反的策略上运行 Ansible 作业 |
是,使用 | 否 |