10.10. タグとイメージの管理
このセクションでは、Red Hat Quay 内でタグとイメージを管理する方法を制御する設定フィールドについて説明します。これらの設定は、イメージのクリーンアップを自動化し、リポジトリーミラーを管理して、キャッシュを通じてパフォーマンスを向上させるのに役立ちます。
これらのフィールドは次の目的で使用できます。
- タグが付いていないイメージや古くなったイメージの有効期限ポリシーを定義します。
- 外部リポジトリーのレジストリーへのミラーリングを有効にしてスケジュールします。
- モデルキャッシュを活用して、タグおよびリポジトリー操作のパフォーマンスを最適化します。
これらのオプションは、最新のイメージレジストリー環境を維持するのに役立ちます。
10.10.1. タグの有効期限の設定フィールド リンクのコピーリンクがクリップボードにコピーされました!
タグの有効期限とガベージコレクションを自動化するには、次の設定オプションを使用できます。これらの機能は、定義されたポリシーに基づいて未使用または期限切れのタグのクリーンアップを可能にすることで、ストレージ使用量の管理に役立ちます。
| フィールド | 型 | 説明 |
|---|---|---|
| FEATURE_GARBAGE_COLLECTION | Boolean |
リポジトリーのガベージコレクションを有効にするかどうか。 |
|
TAG_EXPIRATION_OPTIONS | 文字列の配列 |
有効にすると、ユーザーが namespace 内のタグの有効期限を選択できるオプション。 |
|
DEFAULT_TAG_EXPIRATION | 文字列 |
タイムマシンのデフォルトの設定可能なタグ有効期限。 |
| FEATURE_CHANGE_TAG_EXPIRATION | Boolean |
ユーザーおよび組織が namespace のタグの有効期限を変更できるかどうか。 |
| FEATURE_AUTO_PRUNE | Boolean |
|
| NOTIFICATION_TASK_RUN_MINIMUM_INTERVAL_MINUTES | Integer |
有効期限が切れるイメージに関する通知を再実行する頻度を定義する間隔 (分単位)。 |
| DEFAULT_NAMESPACE_AUTOPRUNE_POLICY | Object | 組織全体のデフォルトの自動プルーニングポリシー。 |
| .method: number_of_tags | Object | 保持するタグの数を指定するオプション。 |
| .value: <integer> | Integer |
method: number_of_tags と一緒に使用した場合に、保持するタグの数を示します。
たとえば、2 つのタグを保持するには、 |
| .creation_date | Object | タグを保持する期間を指定するオプション。 |
| .value: <integer> | Integer |
creation_date と一緒に使用した場合に、タグを保持する期間を示します。
秒 ( |
| AUTO_PRUNING_DEFAULT_POLICY_POLL_PERIOD | Integer | 自動プルーナーワーカーをレジストリーレベルで実行する期間。デフォルトでは、1 日に 1 回 (24 時間に 1 回) 実行されるように設定されています。値は秒単位で指定する必要があります。 |
| FEATURE_IMAGE_EXPIRY_TRIGGER | Boolean |
ユーザーがイメージの有効期限に関する通知をセットアップできるようにします。通知は v2 UI でのみ返されます。 |
タグ有効期限の YAML サンプル
# ...
FEATURE_GARBAGE_COLLECTION: true
TAG_EXPIRATION_OPTIONS:
- 1w
- 2w
- 1m
- 90d
DEFAULT_TAG_EXPIRATION: 2w
FEATURE_CHANGE_TAG_EXPIRATION: true
FEATURE_AUTO_PRUNE: true
NOTIFICATION_TASK_RUN_MINIMUM_INTERVAL_MINUTES: 300
DEFAULT_NAMESPACE_AUTOPRUNE_POLICY:
method: number_of_tags
value: 10
AUTO_PRUNING_DEFAULT_POLICY_POLL_PERIOD: 86400
FEATURE_IMAGE_EXPIRY_TRIGGER: false
# ...
- 1
- 残すタグを 10 個に指定します。
作成日に基づくレジストリー自動プルーニングポリシーの YAML サンプル
# ...
DEFAULT_NAMESPACE_AUTOPRUNE_POLICY:
method: creation_date
value: 1y
# ...
- 1
- 作成日から 1 年後にプルーニングするタグを指定します。
10.10.2. 設定フィールドのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay のミラーリングにより、リポジトリーとアップストリームソースの自動同期が可能になります。この機能は、リモートコンテナーイメージのローカルミラーを維持したり、非接続環境での可用性を確保したり、キャッシュを通じてパフォーマンスを向上させたりするのに役立ちます。
関連情報
| フィールド | 型 | 説明 |
|---|---|---|
| FEATURE_REPO_MIRROR | Boolean |
リポジトリーミラーリングを有効または無効にします。 |
| REPO_MIRROR_INTERVAL | 数値 |
次にリポジトリーミラー候補をチェックするまでの秒数。 |
| REPO_MIRROR_SERVER_HOSTNAME | 文字列 |
|
| REPO_MIRROR_TLS_VERIFY | Boolean |
HTTPS を必要とし、ミラー時に Quay レジストリーの証明書を検証します。 |
| REPO_MIRROR_ROLLBACK | Boolean |
デフォルト: |
ミラーリング設定の YAML サンプル
# ...
FEATURE_REPO_MIRROR: true
REPO_MIRROR_INTERVAL: 30
REPO_MIRROR_SERVER_HOSTNAME: "openshift-quay-service"
REPO_MIRROR_TLS_VERIFY: true
REPO_MIRROR_ROLLBACK: false
# ...
10.10.3. ModelCache 設定フィールド リンクのコピーリンクがクリップボードにコピーされました!
ModelCache は、アクセスされたデータを保存し、データベースの負荷を軽減するために Red Hat Quay が使用するキャッシュメカニズムです。Quay は、デフォルトの Memcache のほか、Redis や Redis Cluster など、キャッシュ用の複数のバックエンドをサポートしています。
- Memcache (デフォルト): 追加の設定は必要ありません。
- Redis: 単一インスタンスとして、または読み取り専用レプリカとして設定できます。
- Redis Cluster: 大規模なデプロイメントに高可用性とシャーディングを提供します。
| フィールド | 型 | 説明 |
|---|---|---|
| DATA_MODEL_CACHE_CONFIG.engine | 文字列 |
キャッシュバックエンドエンジン。 |
| .redis_config.primary.host | 文字列 |
|
| .redis_config.primary.port | 数値 | プライマリー Redis インスタンスによって使用されるポート。 |
| .redis_config.primary.password | 文字列 |
プライマリー Redis インスタンスで認証するためのパスワード。 |
| .redis_config.primary.ssl | Boolean | プライマリー Redis 接続に SSL/TLS を使用するかどうか。 |
| .redis_config.startup_nodes | マップの配列 |
|
| redis_config.password | 文字列 |
Redis クラスターでの認証に使用されるパスワード。 |
| .redis_config.read_from_replicas | Boolean | Redis クラスターのレプリカからの読み取り操作を許可するかどうか。 |
| .redis_config.skip_full_coverage_check | Boolean | true に設定すると、Redis クラスターの完全なカバレッジチェックがスキップされます。 |
| .redis_config.ssl | Boolean | Redis クラスター通信に SSL/TLS を使用するかどうか。 |
| .replica.host | 文字列 | Redis レプリカインスタンスのホスト名。オプション: |
| .replica.port | 数値 | Redis レプリカインスタンスによって使用されるポート。 |
| .replica.password | 文字列 |
Redis レプリカのパスワード。 |
| .replica.ssl | Boolean | Redis レプリカ接続に SSL/TLS を使用するかどうか。 |
オプションのレプリカ付き単一 Redis の YAML サンプル
# ...
DATA_MODEL_CACHE_CONFIG:
engine: redis
redis_config:
primary:
host: <redis-primary.example.com>
port: 6379
password: <redis_password>>
ssl: true
replica:
host: <redis-replica.example.com>
port: 6379
password: <redis_password>
ssl: true
# ...
クラスター化された Redis の YAML サンプル
# ...
DATA_MODEL_CACHE_CONFIG:
engine: <rediscluster>
redis_config:
startup_nodes:
- host: <redis-node-1.example.com>
port: 6379
- host: <redis-node-2.example.com>
port: 6379
password: <cluster_password>
read_from_replicas: true
skip_full_coverage_check: true
ssl: true
# ...