13.5. 自动修剪镜像


要在 OpenShift Container Platform 中回收 OpenShift 镜像 registry 中的存储,并定义镜像保留周期,您可以配置自动镜像修剪器。

您可以在修剪自定义资源(CR)上设置调度、暂停和保留选项。

先决条件

  • 您可以使用具有集群管理员权限的账户访问 OpenShift Container Platform 集群。
  • 安装 oc CLI。
重要

用于管理修剪器的 Image Registry Operator 的行为与在 Image Registry Operator 的 ClusterOperator 对象上指定的 managementState 无关。如果 Image Registry Operator 没有处于 Managed 状态,则镜像修剪器仍然可以被 Pruning Custom Resource 配置和管理。

但是,Image Registry Operator 的 managementState 会更改部署的镜像修剪器任务的行为:

  • Managed: 镜像修剪器的 --prune-registry 标志被设置为 true。
  • Removed: 镜像修剪器的 --prune-registry 标志被设置为 false,这意味着它只在 etcd 中修剪镜像元数据。

流程

  • 验证名为 imagepruners.imageregistry.operator.openshift.io/cluster 的项包括以下 spec 和 status 字段:

    spec:
      schedule: 0 0 * * *
      suspend: false
      keepTagRevisions: 3
      keepYoungerThanDuration: 60m
      keepYoungerThan: 3600000000000
      resources: {}
      affinity: {}
      nodeSelector: {}
      tolerations: []
      successfulJobsHistoryLimit: 3
      failedJobsHistoryLimit: 3
    status:
      observedGeneration: 2
      conditions:
      - type: Available
        status: "True"
        lastTransitionTime: 2019-10-09T03:13:45
        reason: Ready
        message: "Periodic image pruner has been created."
      - type: Scheduled
        status: "True"
        lastTransitionTime: 2019-10-09T03:13:45
        reason: Scheduled
        message: "Image pruner job has been scheduled."
      - type: Failed
        staus: "False"
        lastTransitionTime: 2019-10-09T03:13:45
        reason: Succeeded
        message: "Most recent image pruning job succeeded."

    其中:

    规格表
    CronJob 格式的调度。这是可选字段,默认为每日的午夜。
    spec.suspend
    如果设置为 true,则运行修剪的 CronJob 将暂停。这是可选字段,默认为 false。新集群上的初始值为 false。
    spec.keepTagRevisions
    要保留的每个标签的修订版本数量。这是可选字段,默认为 3。初始值为 3。
    spec.keepYoungerThanDuration
    保留比此持续时间更早的镜像。这是可选字段。如果没有指定值,则使用 keepYoungerThan,或默认值 60m (60分钟)。
    spec.keepYoungerThan
    已弃用。与 keepYoungerThanDuration 相同,但持续时间被指定为纳秒的整数。这是可选字段。当设置 keepYoungerThanDuration 时,会忽略此字段。
    规格资源
    标准 pod 资源请求和限值。这是可选字段。
    spec.affinity
    标准 pod 关联性。这是可选字段。
    nodeSelector
    标准 pod 节点选择器。这是可选字段。
    spec.tolerations
    标准 pod 容限。这是可选字段。
    .spec.successfulJobsHistoryLimit
    要保留的作业的最大数量。必须大于或等于 1 以确保报告指标。这是可选字段,默认为 3。初始值为 3。
    .spec.failedJobsHistoryLimit
    要保留的最大失败作业数。必须大于或等于 1 以确保报告指标。这是可选字段,默认为 3。初始值为 3。
    status.observedGeneration
    Operator 观察到的生成。
    status.conditions

    具有以下类型的标准条件对象:

    • 可用:指示修剪任务是否已创建。原因可以是 Ready 或 Error。
    • 调度:指示是否调度了下一个修剪任务。原因可以是 Scheduled, Suspended, 或 Error。
    • 失败:指示最新修剪任务是否失败。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部