Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

6.4. 每个用户限制自助项目数量

给定用户请求的自助置备项目数量可使用 ProjectRequestLimit admission control plug-in来限制。

重要

如果在 OpenShift Container Platform 3.1 或更早版本中使用 修改新项目模板中所述的流程创建了项目请求模板,则生成的模板不包括注解 openshift.io/requester: ${PROJECT_REQUESTING_USER},它用于 ProjectRequestLimitConfig。您必须添加注解。

要为用户指定限值,必须在 /etc/origin/master/master-config.yaml 的 master 配置文件内为插件指定配置。插件配置取用户标签选择器和关联的最大项目请求的列表作为值。

选择器按顺序评估。第一个与当前用户匹配的将用于确定项目的最大数量。如果没有指定选择器,则限制适用于所有用户。如果没有指定最多的项目数,则允许特定选择器有无限数量的项目。

以下配置为每个用户设置 2 个项目的全局限制,同时为带有 level=advanced 和无限制项目的用户使用 10 个项目

admissionConfig:
  pluginConfig:
    ProjectRequestLimit:
      configuration:
        apiVersion: v1
        kind: ProjectRequestLimitConfig
        limits:
        - selector:
            level: admin 1
        - selector:
            level: advanced 2
          maxProjects: 10
        - maxProjects: 2 3
1
对于选择器 level=admin,没有指定 maxProjects。这意味着具有此标签的用户最多没有项目请求。
2
对于选择器 level=advanced,允许最多允许 10 个项目。
3
对于第三个条目,没有指定选择器。这意味着它将应用到任何无法满足前两条规则的用户。由于规则按顺序评估,此规则应当在最后指定。
注意

管理用户和组标签 提供了有关如何为用户和组添加、删除或显示标签的进一步指导。

更改完成后,重启 OpenShift Container Platform 以使更改生效。

# master-restart api
# master-restart controllers