示例:使用策略中心实现Kubernetes资源合规性治理
假设您是一家大型企业的平台工程师,负责整个基础设施环境的安全策略配置和管理,确保企业多个团队使用集群资源的合规性。利用UCS策略中心,您可以:
- 创建统一的策略实例:使用UCS策略中心创建一个统一的策略实例,包含所有团队需要遵循的安全和合规规定。这样一来,您可以确保所有团队在使用集群资源时遵循相同的标准。
- 自动化策略部署:在UCS策略中心启用并创建策略实例后,系统会自动将这些策略应用到多个集群中,这将大大减少手动配置的时间和出错的可能性。
- 监控策略实施情况:UCS策略中心能够提供诸如集群合规率、不合规资源、告警事件数以及强制拦截事件等多种监控数据。这些数据有助于您迅速发现和解决策略实施过程中的问题。
本教程将向您展示如何使用策略中心来实现Kubernetes资源的合规性治理指南。操作流程如下:
启用策略中心
- 登录UCS控制台,在左侧导航栏中选择“策略中心”。
- 单击页面中的“启用”按钮,弹出“启用策略管理功能”对话框。
- 在下拉列表中选择容器舰队或集群,单击“确定”,返回主页面。
您将会看到舰队或集群的策略管理状态显示为启用中。请耐心等待大约3分钟,策略管理将成功启用。
创建策略实例
- 登录UCS控制台,在左侧导航栏中选择“策略中心”。
- 在列表中找到已启用策略中心功能的容器舰队或集群,单击“创建策略实例”。
- 填写如下参数:
图1 创建策略实例
- 策略定义:从内置的33个策略定义中选择一个,本教程以“k8srequiredlabels”为例,该策略定义的作用是要求资源包含指定的标签,其值与提供的正则表达式匹配。这里设置标签的key为owner,正则表达式为^[a-zA-Z]+.agilebank.demo$。
- 策略执行方式:包括拦截和告警两种方式。拦截表示不符合策略要求的资源将无法创建,告警表示不符合策略要求的资源仅告警提醒,仍可以正常创建。本教程以“拦截”执行方式为例。
- 策略生效范围:选择生效的命名空间。本教程以“default”命名空间为例。
- 单击“创建”,创建完成后系统会自动分发策略,如果分发成功,策略实例将在集群中生效。
验证策略实例是否生效
策略实例分发成功后可在集群中执行符合策略实例的动作,此时该动作可正常执行;若在集群中执行不符合策略实例的动作,该动作将被拒绝掉(取决于设置的策略执行方式)。
尝试在集群中创建一个Pod,定义标签为:owner: user.agilebank.demo,符合策略实例,Pod可以创建成功。
如果在创建Pod时不包含策略实例中定义的标签,则Pod创建不成功,同时在“不合规资源”页签会生成相应的记录。