第 2 章 为 OpenShift Pipelines 设置计算资源配额


Red Hat OpenShift Pipelines 中的 ResourceQuota 对象控制每个命名空间的总资源消耗。您可以使用它来限制命名空间中创建的对象数量,具体取决于对象的类型。另外,您可以指定计算资源配额来限制命名空间中消耗的计算资源总量。

但是,您可能希望限制管道运行生成的 Pod 所消耗的计算资源数量,而不是为整个命名空间设置配额。目前,Red Hat OpenShift Pipelines 不会让您直接为管道指定计算资源配额。

要获得对管道使用计算资源的一定程度的控制,请考虑以下备选方法:

  • 为任务中的每个步骤设置资源请求和限值。

    示例:为任务中的每个步骤设置资源请求和限值。

    ...
    spec:
      steps:
        - name: step-with-limts
          computeResources:
            requests:
              memory: 1Gi
              cpu: 500m
            limits:
              memory: 2Gi
              cpu: 800m
    ...
    Copy to Clipboard Toggle word wrap

  • 通过为 LimitRange 对象指定值来设置资源限值。如需有关 LimitRange 的更多信息,请参阅限制范围限制资源消耗
  • 减少管道资源消耗
  • 设置和管理 每个项目的资源配额
  • 理想情况下,管道的计算资源配额应与管道运行中同时运行的 Pod 所消耗的计算资源总量相同。不过,运行任务的容器集会根据用例消耗计算资源。例如,Maven 构建任务可能需要为它构建的不同应用提供不同的计算资源。因此,您无法为通用管道中的任务预先确定计算资源配额。要提高计算资源使用率的可预测性,并对计算资源的使用进行控制,请将自定义管道用于不同的应用程序。
注意

在配置了 ResourceQuota 对象的命名空间中使用 Red Hat OpenShift Pipelines 时,任务运行和管道运行的 pod 可能会失败,并显示错误,如:failed quota: <quota name> must specify cpu, memory

要避免这个错误,请执行以下操作之一:

  • (推荐)为命名空间指定一个限制范围。
  • 为所有容器明确定义请求和限值。

如需更多信息,请参阅问题解决方案

如果您的用例没有通过这些方法解决,您可以使用优先级类的资源配额来实施临时解决方案。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat