4.12. 自动修剪任务运行和管道运行
过时的 TaskRun
和 PipelineRun
对象及其执行的实例占用了可用于活跃运行的物理资源。为了防止这个问题,Red Hat OpenShift Pipelines 会提供注解,集群管理员可使用该注解自动修剪不同的命名空间中未使用的对象及其实例。
注意
- 从 Red Hat OpenShift Pipelines 1.6 开始,会默认启用 auto-pruning。
- 通过指定注解配置自动修剪会影响整个命名空间。您无法选择性地自动修剪一个命名空间中的独立任务运行和管道运行。
4.12.1. 自动修剪任务运行和管道运行的注解
要自动修剪任务运行和管道运行,您可以在命名空间中创建以下注解:
-
operator.tekton.dev/prune.schedule
:如果此注解的值与TektonConfig
自定义资源定义中指定的值不同,则会在该命名空间中创建新的 cron 作业。 -
operator.tekton.dev/prune.skip
:设置为true
时,配置它的命名空间不会被修剪。 -
operator.tekton.dev/prune.resources
:此注解接受以逗号分隔的资源列表。要修剪单一资源,如管道运行,将此注解设置为"pipelinerun"
。要修剪多个资源,如任务运行和管道运行,将此注解设置为"taskrun, pipelinerun"
。 -
operator.tekton.dev/prune.keep
:使用此注解保留资源而不进行修剪。 operator.tekton.dev/prune.keep-since
:使用此注解来根据其存在的时间来保留资源。此注解的值必须等于资源的年龄(以分钟为单位)。例如,若要保留在五天内创建的资源,请将keep-since
设置为7200
。注意keep
和keep-since
注释是互斥的。对于任何资源,您只能配置其中一个。-
operator.tekton.dev/prune.strategy
:将此注解的值设置为keep
或keep-since
。
例如,请考虑以下注解,这些注解会保留在最后五天中创建的所有任务运行和管道运行,并删除旧的资源:
auto-pruning 注解示例
... annotations: operator.tekton.dev/prune.resources: "taskrun, pipelinerun" operator.tekton.dev/prune.keep-since: 7200 ...
4.12.2. 其他资源
- 如需有关手动修剪各种对象的信息,请参阅修剪对象以回收资源。