创建和管理策略实例
策略实例是用于指导Gatekeeper执行特定策略定义以及执行方式的指令集。它们充当规则集合,帮助您在Kubernetes集群中强制执行安全策略和一致性。本节将指导您如何创建和管理策略实例。
前提条件
已为容器舰队或集群启用策略中心功能。
约束与限制
如果用户通过kubectl命令删除了集群中的策略实例,您需要在界面上先删除相应的策略实例,然后重新创建。这样,系统才会再次下发新的策略实例到集群中。
创建策略实例
- 登录UCS控制台,在左侧导航栏中选择“策略中心”。
- 在列表中找到已启用策略中心功能的容器舰队或集群,单击“创建策略实例”。
- 填写如下参数:
图1 创建策略实例
- 策略定义:从内置的33个策略定义中选择一个,以便为您的集群或容器舰队配置资源审计规则。尽管当前不支持自定义策略定义,但这些预定义的策略定义基本可以满足您在合规性和安全性方面的需求。策略定义的详细介绍请参阅策略定义库概述。
- 策略执行方式:包括拦截和告警两种方式。拦截表示不符合策略要求的资源将无法创建,告警表示不符合策略要求的资源仅告警提醒,仍可以正常创建。
- 策略生效范围:选择生效的命名空间。
- 单击“创建”,创建完成后系统会自动分发策略,如果分发成功,策略实例将在集群中生效。
策略实例分发成功后可在集群中执行符合策略实例的动作,此时该动作可正常执行;若在集群中执行不符合策略实例的动作,该动作将被拒绝掉或者上报告警事件。
修改/删除策略实例
作为平台工程师,您通常需要定期审视和更新策略实例,或者删除一些不再使用的策略实例。要执行这些操作,请参考以下步骤:
- 登录UCS控制台,在左侧导航栏中选择“策略中心”。
- 在列表中找到已启用策略中心功能的容器舰队或集群,单击舰队或集群名称,进入详情页面。
- 在“策略实施详情”中单击“策略实例”页签。
- 找到待操作的策略实例,单击操作列的“编辑”或“删除”,完成相关参数的修改,或者删除策略实例。
查看策略实施状态
在容器舰队或集群的策略详情页,可以查看策略实施详情和状态,以及舰队或集群的不合规资源、告警事件和强制拦截事件的情况。您可以根据这些数据评估集群的合规情况,并及时采取修复措施。
- 当前,不合规资源统计的上报时间大约在15至30分钟之间。
- 如果下发策略实例后未对违规资源进行拦截或告警,请检查是否已开启ValidatingAdmissionPolicy特性门控、是否已启用ValidatingAdmissionWebhook和MutatingAdmissionWebhook准入控制器,详情请参考准入控制器的作用是什么?