资源配额策略控制可供用户使用的资源量。您可以定义资源配额策略,以便限制每个用户、项目或组织可以使用的资源。此过程中的用例对资源配额策略进行了介绍。

如果未定义任何资源配额策略,则不会应用任何监管,用户可以使用资源,直到所有可用资源用尽。

作为云管理员,您可以创建一个或多个资源配额策略并加以应用,例如,在组织级别应用。当整个组织的用户请求部署资源时,资源配额策略会跟踪资源的消耗,以确保新部署请求不会超出策略中定义的资源限制。

创建策略时,必须配置策略范围。范围确定了将策略应用于组织还是项目级别的资源。有关策略范围的详细信息,请参见 如何在 Service Broker 策略中配置范围
  • 如果策略范围是组织,则组织中的所有资源都将基于定义的策略进行管理。
  • 如果策略范围是多个项目,则与指定项目关联的资源将基于定义的策略进行管理。
  • 如果策略范围是单个项目,则与该项目关联的资源将基于定义的策略进行管理。其他项目不受影响。

定义资源配额时,必须指定每个资源的范围级别限制。级别限制加强了资源监管。例如,如果要将资源配额策略应用于整个组织,可以将范围级别设置为组织限制,也可以为一小部分定义限制,例如,该组织内的项目或用户。

在同一个策略中,对于每个范围级别的资源类型,只能设置一个限制。例如,在同一个策略中,可以在组织级别和为每个用户设置存储资源使用配额。在同一个策略中,无法在组织级别定义两个存储配额。

资源配额限制取决于广泛的策略范围。如果在定义资源配额限制后更改范围,则资源配额设置将删除,您必须重新开始。

范围级别下拉菜单包含以下选项。
选项 说明 可在以下策略范围级别使用
组织限制

限制可在组织级别使用的资源量。

具有组织限制的资源配额在组织中的所有用户或所有项目之间分发。

  • 组织
组织用户限制 限制每个用户可在组织内使用的资源总量。
  • 组织
项目限制

限制可在项目级别使用的资源量。

具有项目限制的资源配额在指定项目中的所有用户之间分发。

项目限制不累积。如果策略范围设置为多个项目,将对每个项目应用资源限制。

  • 组织
  • 多个项目
  • 项目
项目用户限制 限制属于指定项目的每个用户在项目级别可以使用的资源总量。
  • 组织
  • 多个项目
  • 项目
如何实施资源配额策略?
  • 可以实施多个资源配额策略。将评估资源配额策略,并将实施的策略应用于部署请求。如果在同一范围级别为资源定义了多个策略,将实施具有最低限制值的资源配额。此过程的用例提供了有关如何处理资源配额的更多信息。
  • 实施资源配额策略时,将根据资源配额评估所有现有部署资源,但正在进行中的部署请求除外。资源使用情况在部署请求完成后更新,因此正在进行中的请求不包括在评估中。
  • 资源配额策略实施不支持并发部署请求。例如,资源配额策略允许每个用户使用 15 GB 内存。一名用户触发两个并发部署请求,每个请求使用 10 GB 内存。该策略允许这两个请求,因为在请求部署时,该用户不使用任何内存,并且每个请求都满足 15 GB 的用户级别限制。请求完成后,资源使用情况将更新以反映这两个请求。如果该用户随后创建第三个部署请求,该请求将失败,因为没有剩余可用资源。
  • 部署云模板时,资源配额策略允许过度置备存储,因为在端点中置备计算机之前,系统不知道部署的实际存储大小。与并发请求类似,在资源使用情况更新并且系统发现置备资源超出资源配额限制后,该策略不允许任何后续请求。
  • 对于实施后操作,不实施资源配额策略。例如,如果在部署时资源配额限制为 2 个 CPU,则用户可以使用 2 个 CPU 进行部署,然后可以运行实施后操作,将数量增加至 6 个 CPU。实施后操作完成后,CPU 使用情况将更新,以反映新添加的资源,这会影响可供使用的资源总量。
在以下情况下应用资源配额策略:
  • 用户在 Cloud Assembly 中请求目录项或在 Service Broker 中请求云模板。
  • 创建新策略或更新现有策略时,系统可能需要长达两分钟才会应用更改。例如,如果在更新策略的两分钟内创建新部署,则策略更新可能不会应用于部署请求。

在此用例中,通过三个策略定义说明了如何构建资源配额策略和策略实施的结果。

过程

  1. 选择内容和策略 > 策略 > 定义 > 新建策略 > 资源配额策略
  2. 配置资源配额策略 1。
    作为云管理员,您希望控制如何在所管理的组织中的用户和项目之间分发资源。
    1. 定义策略的有效时间。
      设置 示例值
      Scope 组织

      该策略将应用于整个组织。

    2. 定义资源配额。
      范围级别 资源和限制
      组织限制 CPU = 2000
      组织用户限制 CPU = 10
      项目限制 CPU = 200
      项目用户限制 CPU = 5
    在此场景中,可供组织中所有用户使用的总量为 2000 个 CPU,每个项目可以使用的总量为 200 个 CPU。每个用户在其所属的每个项目中最多可以使用 5 个 CPU,但在所有部署中合计不超过 10 个 CPU。达到范围级别限制后,超过此限制的任何新部署请求将失败。
  3. 配置资源配额策略 2。
    作为项目管理员,您希望控制如何在所管理的几个项目中的开发人员之间分发资源。
    1. 定义策略的有效时间。
      设置 示例值
      范围

      多个项目

      定义项目条件。例如,

      Project name contains dev

      该策略仅应用于名称中包含短语 dev 的项目。

    2. 定义资源配额。
      范围级别 资源和限制
      项目限制 CPU = 100
      项目用户限制 CPU = 10
    在此场景中,将评估每个范围级别可用的资源,并实施策略 1 和策略 2。将应用这两个策略之间的最低限制。
    • 应用策略 1 中的项目用户限制,因为定义的值低于策略 2 中的值。
    • 应用策略 2 中的项目限制,因为定义的值低于策略 1 中的值。
    • 策略 1 中定义的组织级别限制也应用于在策略 2 范围内指定的项目。
  4. 配置资源配额策略 3。
    作为云管理员,您希望在用户之间平均分发项目级别和组织级别的资源。
    1. 定义策略的有效时间。
      设置 示例值
      范围

      组织

      该策略将应用于整个组织。

    2. 定义资源配额。
      范围级别 资源和限制
      组织限制 CPU = 1000
      组织用户限制 CPU = 50
      项目用户限制 CPU = 3
      在此场景中,将评估每个范围级别可用的资源,并实施全部三个策略。同样,将应用这三个策略之间的最低范围级别限制。
      • 应用策略 3 中的项目用户限制,因为定义的值低于策略 1 和策略 2 中的值。
      • 不应用策略 3 中的组织用户限制,而是应用策略 1 中定义的限制,因为该值较低。
      • 应用策略 3 中定义的组织级别限制,因为该值低于策略 1 中的值。
    基于以上配置示例,下图汇总了如何应用多个策略的资源配额。

    如何在不同范围级别应用多个资源配额策略的示例。

后续步骤