9.3. ReclaimSpaceCronJob を使用したスペースの回収操作の有効化
ReclaimSpaceCronJob
は毎日、毎週などの指定されたスケジュールに基づいてスペースの回収操作を呼び出します。ReclaimSpaceCronJob
は永続ボリューム要求に対して 1 回だけ作成する必要があります。スケジュール属性を使用すると、CSI-addons コントローラーは、要求された時間と間隔で ReclaimSpaceJob
を作成します。
注記
-
推奨されるスケジュール間隔は
@weekly
です。 -
スケジュールされた各操作間の最小間隔は、少なくとも 24 時間である必要があります。たとえば、
@daily
(毎日 00:00) または 0 3 * * *(毎日 3:00) です。 - ReclaimSpace 操作は、オフピーク、メンテナンス時間帯、またはワークロードの入出力が低いと予想される時間帯にスケジュールします。
手順
スペースの回収操作用に次のカスタムリソースを作成して適用します
apiVersion: csiaddons.openshift.io/v1alpha1 kind: ReclaimSpaceCronJob metadata: name: reclaimspacecronjob-sample spec: jobTemplate: spec: target: persistentVolumeClaim: data-pvc schedule: '@weekly' concurrencyPolicy: Forbid
ここで、
concurrencyPolicy
-
以前の
ReclaimSpaceJob
がまだ実行中に、新しいReclaimSpaceJob
がaimSpaceCronJob
によってスケジュールされた場合の変更について説明します。デフォルトのForbid
は新しいジョブの開始を防ぎますが、Replace
を使用すると、障害状態にある可能性のある実行中のジョブを削除して、新しいジョブを作成できます。 failedJobsHistoryLimit
-
トラブルシューティングのために保持される、失敗した
ReclaimSpaceJobs
の数を指定します。 jobTemplate
-
要求された
ReclaimSpaceJob
操作の詳細を記述する ReclaimSpaceJob.spec 構造体を指定します。 successfulJobsHistoryLimit
-
成功した
ReclaimSpaceJob
操作の数を指定します。 schedule
- 定期的な操作リクエストの間隔を指定します。Kubernetes CronJobs と同じ形式です。
-
スペース回収操作の実行が不要になった場合、またはターゲット PVC が削除された場合は、
ReclaimSpaceCronJob
カスタムリソースを削除します。