1.16. RHBA-2023:3256 - Red Hat Quay 3.9.0 リリース
発行日 2023 年 8 月 14 日
Red Hat Quay リリース 3.9.0 が Clair 4.7 で利用できるようになりました。更新に含まれるバグ修正は、RHBA-2023:3256 アドバイザリーにリストされています。
1.16.1. Red Hat Quay のリリース頻度 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay の次のリリースであるバージョン 3.10 では、この製品のリリース頻度とライフサイクルを OpenShift Container Platform と調整し始めます。その結果、Red Hat Quay 3.10 は、現時点では 2024 年第 4 四半期初めにリリース予定の OpenShift Container Platform 4.14 リリースから約 4 週間以内に一般提供される予定です。
現在のリリースモデルでは、Red Hat Quay 3.10 のリリースが以前のリリースよりも早くスケジュールされているため、Red Hat Quay 3.8 と Red Hat Quay 3.9 の合計サポート期間は短縮されます。更新準備に適切な時間をお客様に提供するため、Red Hat Quay 3.8 および Red Hat Quay 3.9 の完全なサポートおよびメンテナンスのフェーズが、Red Hat Quay 3.10 のリリースを超えるように修正されました。これは 1 回限りの修正です。Red Hat Quay 3.10 以降のリリースのリリース後、お客様は Red Hat Quay のサポートライフサイクルフェーズが OpenShift Container Platform リリースと一致することを期待できます。
詳細は、Red Hat Quay ライフサイクルポリシー を参照してください。
1.16.2. Red Hat Quay の新機能と機能強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay に対して次の更新が行われました。
1.16.2.1. Clair 4.7 リンクのコピーリンクがクリップボードにコピーされました!
Clair 4.7 は Red Hat Quay 3.9 の一部としてリリースされました。
2023 年 9 月 25 日以降、Java 脆弱性照合用の Code Ready dependency Analytics (CRDA) サービスが Clair で使用できなくなります。このサービスの API は別のエンドポイントに移動されています。この新しいエンドポイントをサポートするために Clair を更新する予定はありません。Clair によってインデックス付けされた Java Maven パッケージに関する CVE レポートを Red Hat Quay に保存されているコンテナーイメージから継続的に取得するには、このサービスを使用する代わりに、Red Hat Quay 3.9 にアップグレードする必要があります。これにより、オフラインサポートを追加で利用でき、個別の API キーが不要になります。
Clair に対する追加の機能拡張には次のものが含まれます。
- コンテナーイメージ内の Golang モジュールと RubeGem のインデックス作成のネイティブサポート。
プログラミング言語パッケージマネージャーの脆弱性データベースソースとして OSV.dev に変更します。
- これには、GitHub Security Advisories や PyPA などの一般的なソースが含まれます。
- これにより、オフライン機能が利用できます。
- Python 用の pyup.io および Java 用の CRDA の使用は一時停止されています。
- Clair は、Java、Golang、Python、および Ruby の依存関係をサポートするようになりました。
1.16.2.2. geo レプリケーション環境の単一サイトの削除 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay 管理者は、geo レプリケートされた環境から特定のサイトを削除できるようになりました。
詳細は、Red Hat Quay Operator デプロイメントから geo レプリケートされたサイトを削除する を参照してください。
1.16.2.3. クォータ管理の強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay 3.9 より前のバージョンでは、クォータ管理機能はリポジトリーと namespace レベルでマニフェストのサイズを組み合わせて合計を作成していました。これにより、単一のブロブが複数回カウントされて合計が算出される可能性があるという問題が発生しました。たとえば、Red Hat Quay の以前のバージョンでは、Blob がリポジトリーおよび namespace 内で複数回参照されている場合、Blob は参照されるたびに割り当てられたクォータにカウントされていました。
このリリースでは、個々の BLOB サイズがリポジトリーレベルと namespace レベルで合計されます。たとえば、同じリポジトリー内の 2 つのタグが同じ BLOB を参照している場合、その BLOB のサイズはリポジトリーの合計に対して 1 回だけカウントされまるようになりました。クォータ管理機能が強化され、バックフィルワーカーを使用して既存のリポジトリーと namespace のサイズを計算し、その後プッシュまたはガベージコレクションされたすべてのイメージの合計を加算または減算することによって機能するようになりました。さらに、合計からの減算はマニフェストがガベージコレクションされるときに発生しますが、以前はタグが削除されたときに発生していました。
注記マニフェストがガベージコレクションされるときに合計から減算が発生するため、ガベージコレクションが可能になるまでサイズの計算に遅れが生じます。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 によるストレージの実際の使用量に基づいて、namespace とリポジトリーのサイズにクォータ制限を設けることができます。
詳細は、Red Hat Quay 3.9 のクォータ管理 を参照してください。
1.16.2.4. Splunk のアクションログストレージの設定 リンクのコピーリンクがクリップボードにコピーされました!
このリリースでは、Red Hat Quay 管理者はログを Splunk デプロイメントに転送できるようになりました。これにより、管理者はログ分析を実行し、内部データベースをオフロードできるようになります。
詳細は、Splunk のアクションログストレージの設定 を参照してください。
1.16.2.5. Red Hat Quay UI v2 の機能強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay 3.8 では、新しい UI がテクノロジープレビューとして導入されました。Red Hat Quay 3.9 では、UI v2 に次の機能強化が加えられています。
- ロボットアカウント作成用のタブ。
- 組織設定のタブ。
- イメージタグのタブ。
- リポジトリー設定のタブ。
- 概要、セキュリティーレポート、およびパッケージの脆弱性レポート。
UI v2 の有効化の詳細は、Red Hat Quay v2 UI の使用 を参照してください。
1.16.2.6. Nutanix Object Storage リンクのコピーリンクがクリップボードにコピーされました!
今回のリリースにより、Nutanix Object Storage がサポートされるようになりました。詳細は、Nutanix オブジェクトストレージ を参照してください。
1.16.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
詳細は、セキュリティースキャナー設定フィールド を参照してください。
バージョン 3.8
3.9 にアップグレードするときに、Red Hat Quay が古い Persistent Volume Claim (PVC) を自動的に削除するかどうかを設定するために、次の設定フィールドが追加されました。 POSTGRES_UPGRADE_RETAIN_BACKUP:
True
に設定すると、PostgreSQL 10 からの永続ボリューム要求がバックアップされます。デフォルト:
False
さまざまなイベントを追跡するために、次の設定フィールドが追加されました。
ACTION_LOG_AUDIT_LOGINS:
True
に設定すると、UI へのログインとログアウト、通常ユーザー、ロボットアカウント、アプリケーション固有のトークンアカウントによる Docker を使用したログインなどの高度なイベントが追跡されます。デフォルト:
True
1.16.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 にアップグレードされます。
重要マネージドデータベースを使用しているユーザーは、PostgreSQL データベースを 10 から 13 にアップグレードすることが求められます。
Red Hat Quay Operator により PostgreSQL デプロイメントが 10 から 13 にアップグレードされることを望まない場合は、
quayregistry.yaml
ファイルで PostgreSQL パラメーターをmanage: false
に設定する必要があります。データベースを管理対象外に設定する方法について、詳細は 既存 Postgres データベースの使用 を参照してください。重要- PostgreSQL 13 にアップグレードすることが強く推奨されます。PostgreSQL 10 は 2022 年 11 月 10 日に最終リリースとなり、サポートされなくなりました。詳細は、PostgreSQL のバージョン管理ポリシー を参照してください。
PostgreSQL データベースと Red Hat Enterprise Linux (RHEL) システムのバージョンを一致させるには、RHEL 8 の場合は PostgreSQL の RHEL 8 バージョンへの移行、RHEL 9 の場合は PostgreSQL の RHEL 9 バージョンへの移行 を参照してください。
Red Hat Quay 3.8
1.16.5. Red Hat Quay 3.9 の既知の問題と制限事項 リンクのコピーリンクがクリップボードにコピーされました!
以下のセクションでは、Red Hat Quay 3.9 の既知の問題と制限事項について説明します。
1.16.5.1. 既知の問題: リンクのコピーリンクがクリップボードにコピーされました!
1.16.5.1.1. 既知の問題のアップグレード リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay デプロイメントをアップグレードする際には、次の 2 つの既知の問題があります。
-
Red Hat Quay デプロイメントを 1 つの y ストリームから次の y ストリームにアップグレードする場合 (たとえば、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 is not satisfied --- flushed only to 1/B0013858
この問題の回避策として、OpenShift Container Platform デプロイメント上のquayregistry-clair-postgres-upgrade
ジョブを削除すると、問題が解決されます。
1.16.5.1.2. その他の既知の問題 リンクのコピーリンクがクリップボードにコピーされました!
conftest pull
コマンドを使用してポリシーを取得すると、Error: download policies: client get: stat /policy/quayregistry-quay-quay-enterprise-847.apps.quaytest-847.qe.devcluster.openshift.com/conftest/policy:latest: no such file or directory
エラーが返される場合があります。回避策として、レジストリーホストにoci://
接頭辞を追加できます。以下に例を示します。conftest pull oci://mkoktest.quaydev.org/admin/conftest:v1
$ conftest pull oci://mkoktest.quaydev.org/admin/conftest:v1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow これは既知の問題であり、Red Hat Quay の今後のバージョンで修正される予定です。(PROJQUAY-5573)
Red Hat Quay 3.9 では、クォータ管理機能に変更が加えられました。これらの変更の 1 つとして、タイムマシンウィンドウ内のタグが組織のクォータ合計にカウントされるようになりました。
新しい組織でプロキシーキャッシュ機能が有効になっており、組織設定で ハードクォータチェック とタイムマシン設定が 数秒 より長く設定されている場合に、既知の問題が発生します。つまり、プロキシー組織内のタグにはすべて、デフォルトで 1 日のタグ有効期限が課されます。プロキシー組織の組織設定でタイムマシンポリシーが 数秒 より長く設定されており、タグの有効期限が切れた場合、すぐにはガベージコレクションに使用できなくなります。ガベージコレクションが実行される前に、タイムマシンのウィンドウの外に出るまで待機する必要があります。減算はガベージコレクション時に発生し、プルーニングされたタグは組織の設定によって割り当てられた時間枠内に抑えられるため、イメージタグはすぐにはガベージコレクションされません。これにより、クォータ消費メトリックが更新されなくなり、プロキシー組織が割り当てられたクォータを超過するリスクが生じます。
プロキシー組織にハードクォータチェックが設定されている場合、Red Hat Quay 管理者は、組織が割り当てられたクォータに到達しないように、タイムマシンウィンドウ内でタグにより占有されているスペースを再利用する必要があります。一時的な回避策として、Red Hat Quay UI の Organizations
Settings で、プロキシー組織のタイムマシンの有効期限を 数秒 に設定できます。これによりイメージタグがすぐに削除され、クォータ消費メトリクスをより正確に指定できます。 これは、ソフトクォータチェックを採用しているプロキシー組織にとっては問題ではないため、無視できます。
-
geo レプリケートされた Red Hat Quay デプロイメントからサイトを削除する場合、
python -m util.removelocation
を実行すると、次のエラーが発生する場合があります。/app/lib/python3.9/site-packages/tzlocal/unix.py:141: SyntaxWarning: "is not" with a literal.Did you mean "!="? while start is not 0: /app/lib/python3.9/site-packages/netaddr/strategy/{}init{}.py:189: SyntaxWarning: "is not" with a literal.Did you mean "!="? if word_sep is not ''
y
を入力して、サイトの削除を確認できます。このエラーは既知の問題であり、Red Hat Quay の将来のバージョンでは削除される予定です。
1.16.5.2. Red Hat Quay 3.9 の制限事項 リンクのコピーリンクがクリップボードにコピーされました!
-
Red Hat Quay アクションログを表示するには、Splunk UI を使用する必要があります。現時点では、Red Hat Quay 使用状況ログ ページでの Splunk アクションログの表示はサポートされておらず、次のメッセージが返されます。
Method not implemented.Splunk does not support log lookups
.
1.16.6. Red Hat Quay のバグ修正 リンクのコピーリンクがクリップボードにコピーされました!
- 以前は、Red Hat Quay Lightweight Directory Access Protocol (LDAP) デプロイメントで、チームの同期およびその他の状況で参照を使用できないというバグがありました。この更新により、Red Hat Quay の参照をグローバルにオフにして、すべてのコンポーネントで適切な動作を確保できるようになりました。
以前は、Red Hat Quay には最終アクセスのタイムスタンプのみが記録されていました。この問題は修正され、次のタイムスタンプが記録されるようになりました。
- Red Hat Quay UI にログインします。
- Red Hat Quay UI からログアウトします。
- 通常ユーザーの場合は、Docker CLI (レジストリー API) 経由でログインします。
- ロボットアカウントの場合は、Docker CLI (レジストリー API) 経由でログインします。
アプリケーション固有のトークンアカウントの場合は、Docker CLI (レジストリー API) 経由でログインします。
config.yaml
ファイルでACTION_LOG_AUDIT_LOGINS
をFalse
に設定することで、このタイムスタンプ機能を無効にすることができます。このフィールドは、デフォルトでTrue
に設定されています。注記クライアント側 (Docker または Podman) からのログアウトイベントは、レジストリー API へのリクエストを引き起こさないため、追跡できません。
- PROJQUAY-4614: conftest メディアタイプをデフォルトの Quay 設定に追加します。
- PROJQUAY-4865: 未使用の依存関係を削除します。
- PROJQUAY-4957: 継続的に失敗するマニフェストのインデックス作成を制限します。
- PROJQUAY-5009: ecscan: api クライアントのタイムアウトを追加します。
- PROJQUAY-5018: マニフェストの不明なメディアタイプを無視します。
- PROJQUAY-5237: 新しい UI では、組織内のリポジトリーの数が正しくありません。
- PROJQUAY-4993: サポートアクションログを Splunk に転送します。
- PROJQUAY-4567: ロボットトークン。
- PROJQUAY-5289: 新しい UI で SSO 経由でログインするアカウントの新しいユーザー名を作成します。
- PROJQUAY-5362: API: Tags API にフィルタリングを追加します。
- PROJQUAY-5207: フェーズ 3: Quay.io Summit Deliverables。
- PROJQUAY-4608: Quay Operator は、Quay および Clair 用の完全にサポートされているバージョンの Postgres をインストールする必要があります。
- PROJQUAY-5050: 古い UI と新しい UI の両方で動作するイメージに直接 quay へのリンクを提供することはできません。
- 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.16.7. Red Hat Quay 機能トラッカー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay に新機能が追加され、その一部は現在テクノロジープレビューにあります。テクノロジープレビュー機能は実験的な機能であり、本番環境での使用を目的としたものではありません。
以前のリリースで利用可能であった一部の機能が非推奨になるか、削除されました。非推奨の機能は引き続き Red Hat Quay に含まれていますが、今後のリリースで削除される予定であり、新しいデプロイメントには推奨されません。Red Hat Quay で非推奨および削除された機能の最新のリストは、表 1.1 を参照してください。非推奨になったか、削除された機能の詳細情報は、表の後に記載されています。
機能 | Quay 3.9 | Quay 3.8 | Quay 3.7 |
---|---|---|---|
一般提供 | - | - | |
一般提供 | - | - | |
一般提供 | - | - | |
Docker v1 サポート | 非推奨 | 非推奨 | 一般提供 |
テクノロジープレビュー | テクノロジープレビュー | - | |
一般提供 | 一般提供 | - | |
一般提供 | 一般提供 | - | |
一般提供 | 一般提供 | - | |
一般提供 | 一般提供 | - | |
一般提供 | 一般提供 | - | |
一般提供 | 一般提供 | - | |
一般提供 | 一般提供 | - | |
一般提供 | 一般提供 | 一般提供 | |
一般提供 | 一般提供 | 一般提供 | |
一般提供 | 一般提供 | テクノロジープレビュー | |
一般提供 | 一般提供 | 一般提供 | |
一般提供 | 一般提供 | 一般提供 | |
Microsoft Azure Government (MAG) のサポート | 一般提供 | 一般提供 | 一般提供 |
テクノロジープレビュー | テクノロジープレビュー | テクノロジープレビュー |