1.10. RHBA-2023:3256 - Red Hat Quay 3.9.0 发行版本


2023 年 8 月 14 日发布

Red Hat Quay release 3.9.0 现在包括在 Clair 4.7 中。此更新包括的程序错误修正信息包括在 RHBA-2023:3256 公告中。

1.10.1. Red Hat Quay 发行节奏

在下一个 Red Hat Quay 版本 3.10 版本中,产品将开始将其发行节奏和生命周期与 OpenShift Container Platform 保持一致。因此,Red Hat Quay 3.10 在 OpenShift Container Platform 4.14 发行版本大约四个周内提供,该版本目前会在 2024 年初发布。

使用当前的发行版本模型时,Red Hat Quay 3.8 和 Red Hat Quay 3.9 的总支持长度会很短,因为 Red Hat Quay 3.10 的发布早于之前的版本。为了为客户提供适当的时间准备更新,Red Hat Quay 3.8 和 Red Hat Quay 3.9 的全面支持和维护阶段已超出 Red Hat Quay 3.10 的发布。这是一次修改的时间。在 Red Hat Quay 3.10 和后续发行版本发布后,客户可以期望 Red Hat Quay 的支持生命周期阶段与 OpenShift Container Platform 版本保持一致。

如需更多信息,请参阅 Red Hat Quay 生命周期政策

1.10.2. Red Hat Quay 的新功能和增强

对 Red Hat Quay 进行了以下更新:

1.10.2.1. Clair 4.7

Clair 4.7 作为 Red Hat Quay 3.9 的一部分发布。

从 2023 年 9 月 25 日起,用于 Java 漏洞匹配的代码 Ready 依赖分析(CRDA)服务将不再可用于 Clair。服务的 API 移到不同的端点,且没有更新 Clair 来支持这个新端点的计划。相反,用户应该升级到 Red Hat Quay 3.9,以便保留由 Clair 从 Red Hat Quay 中存储的容器镜像索引的 CVE 报告,并提供额外的支持,而无需单独的 API 密钥。

Clair 的额外增强包括:

  • 对容器镜像中的 Golang 模块和 RubeGems 进行原生支持。
  • 更改到 OSV.dev,作为任何编程语言软件包管理器的漏洞数据库来源。

    • 这包括 GitHub 安全公告或 PyPA 等流行源。
    • 这允许离线功能。
  • 将 pyup.io 用于 Python,而 CRDA 用于 Java 被暂停。
  • Clair 现在支持 Java、Node Golang、Python 和 Ruby 依赖项。

1.10.2.2. 在地理复制环境中删除单个站点

Red Hat Quay 管理员现在可以从其地理复制环境中删除特定的站点。

如需更多信息,请参阅从 Red Hat Quay Operator 部署中删除地理复制站点

1.10.2.3. 配额管理增强

  • 在 Red Hat Quay 3.9 之前,配额管理功能通过将清单大小合并到存储库和命名空间级别来创建总计。这会产生一个问题,其中在单个 blob 中可多次计算。例如,在以前的 Red Hat Quay 版本中,如果在仓库和命名空间中多次引用 blob,则 Blob 每次被引用时都计入分配的配额。

    在这个版本中,单个 Blob 大小在存储库和命名空间级别总和。例如,如果同一存储库中的两个标签引用同一 blob,则该 Blob 的大小现在只计算为仓库总计一次。对配额管理功能的这个增强的工作原理是,使用回填 worker 计算现有存储库和命名空间的大小,然后为每个被推送或垃圾收集的每个镜像添加或减去。另外,当清单被垃圾回收时,从总数中减去,而在删除标签时会出现这种情况。

    注意

    因为减法发生在清单垃圾回收时的总数,所以大小计算会有一个延迟,直到它能够收集垃圾回收为止。有关 Red Hat Quay 垃圾回收的更多信息,请参阅 Red Hat Quay 垃圾回收

    另外,清单列表总数现在计算为仓库总计,从以前的 Red Hat Quay 版本升级时消耗的配额总量在 Red Hat Quay 3.9 中可能会不同。在某些情况下,新总数可能会超过存储库的之前设置的限制。Red Hat Quay 管理员可能需要调整存储库所分配的配额,以考虑这些更改。

    在 Red Hat Quay 3.9 中,Red Hat Quay 3.9 中的配额管理功能提供了更准确的存储增长和 registry 消耗的信息。因此,用户可以根据 Red Hat Quay 的实际使用,将配额限制放在命名空间和存储库大小。

    如需更多信息,请参阅 Red Hat Quay 3.9 的配额管理

1.10.2.4. 为 Splunk 配置操作日志存储

在这个版本中,Red Hat Quay 管理员可以将日志转发到 Splunk 部署。这样,管理员可以执行日志分析并卸载内部数据库。

如需更多信息,请参阅为 Splunk 配置操作日志存储

1.10.2.5. Red Hat Quay UI v2 的改进

在 Red Hat Quay 3.8 中,一个新的 UI 作为技术预览。在 Red Hat Quay 3.9 中,对 UI v2 进行了以下改进:

  • 机器人帐户创建选项卡。
  • 机构设置标签页。
  • 镜像标签选项卡。
  • Repository 设置的选项卡。
  • 概述、安全报告和软件包漏洞报告。

有关 UI v2 启用的更多信息,请参阅使用 Red Hat Quay v2 UI

1.10.2.6. Nutanix Object Storage

在这个版本中,支持 Nutanix Object Storage。如需更多信息,请参阅 Nutanix Object Storage

1.10.3. 新的 Red Hat Quay 配置字段

在 Red Hat Quay 3.9 中添加了以下配置字段:

  • 在配额管理功能中添加了以下配置字段:

    • QUOTA_BACKFILL :启用配额回填工作程序来计算预先存在的 Blob 的大小。由于此参数总结了数据库中重复数据删除的总数据,所以可能会增加数据库负载。

      默认:True

    • QUOTA_TOTAL_DELAY_SECONDS :开始配额回填的时间延迟。滚动部署可能会导致总部署不正确。此字段 必须设置为 超过滚动部署完成所需的时间。

      默认 :1800

    • PERMANENTLY_DELETE_TAGS :启用与从时间窗中删除标签相关的功能。

      默认False

    • RESET_CHILD_MANIFEST_EXPIRATION :重置以子清单为目标的临时标签的过期时间。将这个功能设置为 True 时,子清单会立即收集垃圾回收。

      默认False

如需更多信息,请参阅 Red Hat Quay 3.9 的配置更新

  • 添加了以下配置字段来增强 Red Hat Quay 安全扫描程序功能:

    • FEATURE_SECURITY_SCANNER_NOTIFY_ON_NEW_INDEX: 是否允许发送有关新推送的漏洞的通知。

      默认:True

      如需更多信息,请参阅 安全扫描程序配置字段

  • 添加了以下配置字段来配置 Red Hat Quay 是否在从 3.8 3.9 升级时自动删除旧的持久性卷声明(PVC):

    • POSTGRES_UPGRADE_RETAIN_BACKUP :设置为 True 时,从 PostgreSQL 10 备份的持久性卷声明。

      默认False

  • 添加了以下配置字段来跟踪各种事件:

    • ACTION_LOG_AUDIT_LOGINS :设置为 True 时,跟踪高级事件,如登录和注销、UI,以及使用 Docker 进行常规用户、机器人帐户以及应用特定令牌帐户登录。

      默认:True

1.10.4. Red Hat Quay Operator

为 Red Hat Quay Operator 进行了以下更新:

  • 目前,Red Hat Quay Operator 和 Clair 使用 PostgreSQL 10。PostgreSQL 10 在 2022 年 11 月 10 日有其最终发行版本,不再被支持。

    在这个版本中,如果您的数据库由 Red Hat Quay Operator 管理,从 Red Hat Quay 3.8 3.9 更新会自动处理将 PostgreSQL 10 升级到 PostgreSQL 13。

    重要

    需要具有受管数据库的用户从 10 13 升级其 PostgreSQL 数据库。

    如果您不希望 Red Hat Quay Operator 从 10 13 升级 PostgreSQL 部署,则必须在 quayregistry.yaml 文件中将 PostgreSQL 参数设置为 managed: false。有关将数据库设置为非受管的更多信息,请参阅使用现有的 Postgres 数据库

    重要
    • 强烈建议您升级到 PostgreSQL 13。PostgreSQL 10 在 2022 年 11 月 10 日有其最终发行版本,不再被支持。如需更多信息,请参阅 PostgreSQL 版本策略

    如果您希望 PostgreSQL 数据库与 Red Hat Enterprise Linux (RHEL)系统相同的版本匹配,请参阅 迁移到 RHEL 8 的 RHEL 8 版本的 PostgreSQL或迁移到 RHEL 9 的 RHEL 9 版本

如需有关 Red Hat Quay 3.8 3.9 流程的更多信息,请参阅升级 Red Hat Quay Operator 概述

1.10.5. Red Hat Quay 3.9 已知问题和限制

以下小节记录了 Red Hat Quay 3.9 的已知问题和限制。

1.10.5.1. 已知问题:

1.10.5.1.1. 升级已知问题

升级 Red Hat Quay 部署时有两个已知的问题:

  • 如果您的 Red Hat Quay 部署从一个 y-stream 升级到下一个(例如从 3.8.10 3.8.11),则不得将升级频道从 stable-3.8 切换到 stable-3.9。在 y-stream 升级过程中更改升级频道将不允许 Red Hat Quay 升级到 3.9。这是一个已知问题,并将在以后的 Red Hat Quay 版本中解决。
  • 当从 Red Hat Quay 3.7 升级到 3.9 时,您可能会收到以下错误: pg_dumpall: error: query failed: ERROR: xlog flush request 1/B446CCD8 不满足 --- flushed to 1/B0013858。这个问题的一个临时解决方案是,您可以在 OpenShift Container Platform 部署中删除 quayregistry-clair-postgres-upgrade 作业,这应该解决这个问题。
1.10.5.1.2. 其他已知问题
  • 使用 conftest pull 命令获取策略可能会返回以下错误: Error: download policies: client get: stat /policy/quay-quay-enterprise-847.apps.quaytest-847.qe.devcluster.openshift.com/conftest/policy:latest: no such file or directory.作为临时解决方案,您可以在 registry 主机上添加 oci:// 前缀。例如:

    $ conftest pull oci://mkoktest.quaydev.org/admin/conftest:v1

    这是一个已知问题,并将在以后的 Red Hat Quay 版本中解决。(PROJQUAY-5573)

  • Red Hat Quay 3.9 引入了对配额管理功能的更改。其中一个变化是时间窗中的标签现在计算您的机构的配额总数。

    当代理缓存功能在具有 硬配额 检查和机器设置设置的一个新机构中配置时 存在一个已知问题。在总和中,代理机构中的标签都给出一个标签过期时间,默认为 1 天。如果您的代理机构在您的机构设置下有一个时间机器策略设置为超过 几秒钟 的时间,且标签过期,则它不会立即可用于垃圾回收;它必须等到可以垃圾回收前的时间窗之外。因为垃圾回收时出现减法,并且修剪的标签保存在您的机构设置分配的时间范围内,所以镜像标签不会立即收集。这会导致配额消耗指标没有被更新,并运行代理机构通过分配的配额带来的风险。

    当为代理机构配置了硬配额检查时,Red Hat Quay 管理员将希望在时间窗内回收标签所占用的空间,以防止组织达到其分配的配额。作为临时解决方案,您可以在 Red Hat Quay UI 上的 Organizations Settings 下将代理机构的时间机器过期时间设置为 几秒钟。这会立即删除镜像标签,并允许更准确的配额消耗指标。

    这是使用软配额检查的代理机构的非签发,并可以被忽略。

  • 从地理复制的 Red Hat Quay 部署中删除站点时,在运行 python -m util.removelocation:/app/lib/python3.9/site-packages/tzlocal/unix.py:141: SyntaxWarning: "is not" with a literal.您意味着 "!="? while start is not 0: /app/lib/python3.9/site-packages/netaddr/strategy/{}init{}.py:189: SyntaxWarning: "is not" with a literal。您是否意味着 "!="? if word_sep is not ''.您可以通过输入 y 来确认删除您的站点。此错误是一个已知问题,将在以后的 Red Hat Quay 版本中删除。

1.10.5.2. Red Hat Quay 3.9 限制

  • 您必须使用 Splunk UI 查看 Red Hat Quay 操作日志。目前,在 Red Hat Quay Usage Logs 页面中查看 Splunk 操作日志不受支持,并返回以下信息: Method not implemented。Splunk 不支持日志查找

1.10.6. Red Hat Quay 程序错误修复

  • 在以前的版本中,在 Red Hat Quay 轻量级目录访问协议(LDAP)部署中,存在一个错误,禁止在团队同步和其他情况下使用引用。在这个版本中,Red Hat Quay 可以全局关闭引用,以确保所有组件都有正确的行为。
  • 在以前的版本中,只有最后的访问时间戳记录在 Red Hat Quay 中。这个问题已被解决,现在记录以下时间戳:

    • 登录到 Red Hat Quay UI。
    • 从 Red Hat Quay UI 注销。
    • 通过 Docker CLI (registry API)为常规用户登录。
    • 通过 Docker CLI (Registry API)登录机器人帐户。
    • 通过 Docker CLI (Registry API)为特定于应用程序的令牌帐户登录。

      您可以通过在 config.yaml 文件中将 ACTION_LOG_AUDIT_LOGINS 设置为 false 来禁用此时间戳功能。此字段默认设置为 true

      注意

      从客户端(Docker 或 Podman)注销事件不会导致请求到 registry API,因此无法跟踪。

  • PROJQUAY-4614.将 conftest mediatypes 添加到默认的 Quay 配置中。
  • PROJQUAY-4865.删除未使用的依赖项。
  • PROJQUAY-4957.限制持续失败的清单索引。
  • PROJQUAY-5009. secscan: add api client timeout。
  • PROJQUAY-5018.忽略清单中的未知介质类型。
  • PROJQUAY-5237.组织中的存储库数量在新 UI 中不正确。
  • PROJQUAY-4993.支持 Action Log Forward to Splunk.
  • PROJQUAY-4567.机器人令牌.
  • PROJQUAY-5289.为在新 UI 中通过 SSO 登录的帐户创建一个新用户名。
  • PROJQUAY-5362.API:添加过滤到标签 API。
  • PROJQUAY-5207.第 3 阶段:Quay.io 承诺.
  • PROJQUAY-4608.Quay Operator 应该为 Quay 和 Clair 安装完全支持的 Postgres 版本。
  • PROJQUAY-5050.无法直接向 quay 提供一个链接,指向在旧 UI 和新 UI 中工作的镜像。
  • PROJQUAY-5253。不要在首次登录时将横线转换为下划线。
  • PROJQUAY-4303.存储消耗计算中会忽略多架构镜像。
  • PROJQUAY-4304。空存储库报告存储消耗。
  • PROJQUAY-5634.oci: 允许镜像配置中的可选组件设置为 "null"。
  • PROJQUAY-5639.Quay 3.9.0 在普通用户下删除机构失败,并显示未经授权的错误。
  • PROJQUAY-5642.Quay 3.9.0 镜像高漏洞由 Redhat ACS 报告。
  • PROJQUAY-5630.Quay 3.9.0 Quay 镜像高漏洞 CVE-2022-28948.

1.10.7. Red Hat Quay 功能跟踪器

在 Red Hat Quay 中添加了新的特性,其中的一些功能当前还只是一个技术预览。技术预览功能是实验性的功能,它不适用于生产环境。

之前版本中的一些功能已被弃用或删除。弃用的功能仍然包含在 Red Hat Quay 中,但计划在以后的发行版本中删除,且不建议在新的部署中使用。有关 Red Hat Quay 中已弃用和删除功能的最新列表,请参阅表 1.1。表后列出了更详细的、已弃用和删除的功能信息。

表 1.1. 技术预览
功能Quay 3.9Quay 3.8Quay 3.7

单站点复制删除

公开发行

-

-

Splunk 日志转发

公开发行

-

-

Nutanix Object Storage

公开发行

-

-

Docker v1 支持

已弃用

已弃用

公开发行

FEATURE_UI_V2

技术预览

技术预览

-

FEATURE_LISTEN_IP_VERSION

公开发行

公开发行

-

LDAP_SUPERUSER_FILTER

公开发行

公开发行

-

LDAP_RESTRICTED_USER_FILTER

公开发行

公开发行

-

FEATURE_SUPERUSERS_FULL_ACCESS

公开发行

公开发行

-

GLOBAL_READONLY_SUPER_USERS

公开发行

公开发行

-

FEATURE_RESTRICTED_USERS

公开发行

公开发行

-

RESTRICTED_USERS_WHITELIST

公开发行

公开发行

-

配额管理和强制

公开发行

公开发行

公开发行

Red Hat Quay 构建增强

公开发行

公开发行

公开发行

Red Hat Quay 作为上游 registry 的代理缓存

公开发行

公开发行

技术预览

geo-replication - Red Hat Quay Operator

公开发行

公开发行

公开发行

高级 Clair 配置

公开发行

公开发行

公开发行

支持 Microsoft Azure Government (MAG)

公开发行

公开发行

公开发行

使用 Clair 的 Java 扫描

技术预览

技术预览

技术预览

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.