9.5. イメージの自動プルーニング
使用年数、ステータス、または制限の超過のためにシステムで不要となったイメージは、自動的にプルーニングされます。クラスター管理者は、Pruning Custom Resource を設定したり、これを保留にしたりすることができます。
前提条件
- クラスター管理者のパーミッション。
-
oc
CLI をインストールしている。
手順
-
imagepruners.imageregistry.operator.openshift.io/cluster
という名前のオブジェクトに以下のspec
およびstatus
フィールドが含まれることを確認します。
spec: schedule: 0 0 * * * 1 suspend: false 2 keepTagRevisions: 3 3 keepYoungerThan: 3600000000000 4 resources: {} 5 affinity: {} 6 nodeSelector: {} 7 tolerations: [] 8 successfulJobsHistoryLimit: 3 9 failedJobsHistoryLimit: 3 10 status: observedGeneration: 2 11 conditions: 12 - 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."
- 1
schedule
:CronJob
形式のスケジュールこれはオプションのフィールドで、デフォルトは dayly で午前 0 時でに設定されます。- 2
suspend
:true
に設定されている場合、プルーニングを実行しているCronJob
は中断されます。これはオプションのフィールドで、デフォルトはfalse
です。新規クラスターの初期値はtrue
です。- 3
keepTagRevisions
: 保持するタグ別のりビジョン数です。これはオプションのフィールドで、デフォルトは3
です。初期値は3
です。- 4
keepYoungerThan
: 指定の期間よりも後に作成されたイメージを保持します (ナノ秒単位)。これはオプションのフィールドで、デフォルトは3600000000000
(60 分) です。- 5
resources
: 標準のPod
リソースの要求および制限です。これはオプションのフィールドです。- 6
affinity
: 標準の Pod のアフィニティーです。これはオプションのフィールドです。- 7
nodeSelector
: イメージプルーナー Pod の標準の Pod ノードセレクター。これはオプションのフィールドです。- 8
tolerations
: 標準の Pod の容認です。これはオプションのフィールドです。- 9
successfulJobsHistoryLimit
: 保持する成功したジョブの最大数です。メトリクスがレポートされるようにするには>= 1
にする必要があります。これはオプションのフィールドで、デフォルトは3
です。初期値は3
です。- 10
failedJobsHistoryLimit
: 保持する失敗したジョブの最大数です。メトリクスがレポートされるようにするには>= 1
にする必要があります。これはオプションのフィールドで、デフォルトは3
です。初期値は3
です。- 11
observedGeneration
: Operator によって観察される生成です。- 12
conditions
: 以下のタイプの標準条件オブジェクトです。-
Available
: プルーニングジョブが作成されているかどうかを示します。理由には Ready または Error のいずれかを使用できます。 -
Scheduled
: 次のプルーニングジョブがスケジュールされているかどうかを示します。理由には、Scheduled、Suspended、または Error を使用できます。 -
Failed
: 最新のプルーニングジョブが失敗したかどうかを示します。
-
重要
プルーナーを管理するためのイメージレジストリー Operator の動作は、イメージレジストリー Operator の ClusterOperator
オブジェクトで指定される managementState
とは独立しています。イメージレジストリー Operator が Managed
状態ではない場合、イメージプルーナーは Pruning Custom Resource によって設定され、管理できます。
ただし、イメージレジストリー Operator の managementState
は、デプロイされたイメージプルーナージョブの動作を変更します。
-
Managed
: イメージプルーナーの--prune-registry
フラグはtrue
に設定されます。 -
Removed
: イメージプルーナーの--prune-registry
フラグはfalse
に設定されます。つまり、これは etcd のイメージメタデータのみのプルーニングを実行します。 -
Unmanaged
: イメージプルーナーの--prune-registry
フラグはfalse
に設定されます。