検索

第9章 ターゲットボリュームのスペースを再利用

download PDF

削除されたファイルまたはゼロデータのチャンクは、Ceph クラスター上のストレージ領域を占有する場合があり、その結果、利用可能なストレージ領域が不正確に報告されます。スペースの再利用操作では、ターゲットボリュームに対して次の操作を実行することで、このような不一致を削除します。

  • fstrim: この操作は、Filesystem モードのボリューム上で、スペース再利用操作の実行時にボリュームが Pod にマウントされている場合にのみ実行されます。
  • rbd sparsify: この操作は、ボリュームがどの Pod にも接続されていないときに実行され、4M サイズのゼロ化データのチャンクによって占められていたスペースを回収します。
注記
  • スペースの回収操作は、Ceph RBD ボリュームでのみサポートされます。
  • スペースのの回収操作の実行時には、パフォーマンスが低下します。

アップグレードされたクラスターの場合は、さらに続行する前に、以下のコマンドを実行します。

$ oc patch cm rook-ceph-operator-config -n openshift-storage -p $'data:\n "CSI_ENABLE_CSIADDONS": "true”'

以下のいずれかの方法を使用して、スペースを回収できます。

  • Annotating PersistentVolumeClaims を使用したスペース再利用操作の有効化 (スペースの回収操作を有効にするために使用する推奨方法)
  • ReclaimSpaceJob を使用したスペースの回収操作の有効化
  • ReclaimSpaceCronJob を使用したスペースの回収操作の有効化

9.1. Annotating PersistentVolumeClaims を使用してスペースの回収操作を有効にする

この手順を使用して PersistentVolumeClaims にアノテーションを付け、指定されたスケジュールに基づいてスペースの回収操作を自動的に呼び出すことができるようにします。

注記
  • スケジュール値は、定期的な操作リクエストの間隔を設定する Kubernetes CronJob と同じ形式です。
  • 推奨されるスケジュール間隔は @weekly です。スケジュール間隔の値が空であるか無効な形式の場合、デフォルトのスケジュール値は @weekly に設定されます。
  • スケジュールされた各操作間のサポートされる最小間隔は、少なくとも 24 時間です。たとえば、@daily (毎日 00:00) または 0 3 * * * (毎日 3:00) です。
  • ReclaimSpace 操作は、オフピーク、メンテナンス時間帯、またはワークロードの入出力が低いと予想される時間帯にスケジュールします。
  • ReclaimSpaceCronJob は、schedule が変更されると再作成されます。アノテーションが削除されると自動的に削除されます。

手順

  1. 永続ボリュームクレーム (PVC) の詳細を取得します。

    $ oc get pvc data-pvc
    NAME      STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                          AGE
    data-pvc  Bound    pvc-f37b8582-4b04-4676-88dd-e1b95c6abf74   1Gi        RWO            ocs-storagecluster-ceph-rbd           20h
  2. アノテーション reclaimspace.csiaddons.openshift.io/schedule=@monthly を PVC に追加して、reclaimspacecronjob を作成します。

    $ oc annotate pvc data-pvc "reclaimspace.csiaddons.openshift.io/schedule=@monthly"
    persistentvolumeclaim/data-pvc annotated
  3. reclaimspacecronjob"<pvc-name>-xxxxxxx" の形式で作成されていることを確認します。

    $ oc get reclaimspacecronjobs.csiaddons.openshift.io
    NAME                    SCHEDULE    SUSPEND   ACTIVE   LASTSCHEDULE   AGE
    data-pvc-1642663516     @monthly                                      3s
  4. このジョブを自動的に実行するようにスケジュールを変更します。

    $ oc annotate pvc data-pvc "reclaimspace.csiaddons.openshift.io/schedule=@weekly" --overwrite=true
    persistentvolumeclaim/data-pvc annotated
  5. reclaimspacecronjob のスケジュールが変更されていることを確認します。

    $ oc get reclaimspacecronjobs.csiaddons.openshift.io
    NAME                  SCHEDULE    SUSPEND   ACTIVE   LASTSCHEDULE   AGE
    data-pvc-1642664617   @weekly                                       3s
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.