4.3. Ceph File System サブボリューム


ストレージ管理者は、Ceph File System (CephFS) サブボリュームの作成、リスト表示、取得、メタデータの取得、削除が可能です。また、これらのサブボリュームのスナップショットの作成、リスト表示、および削除も可能です。CephFS サブボリュームは、独立した Ceph File Systems ディレクトリーツリーの抽象化です。

このセクションでは、以下を行う方法を説明します。

4.3.1. ファイルシステムのサブボリュームの作成

このセクションでは、Ceph File System (CephFS) サブボリュームを作成する方法を説明します。

注記

サブボリュームを作成する場合、そのサブボリュームグループ、データプールレイアウト、uid、gid、ファイルモード (8 進数)、およびサイズ (バイト単位) を指定できます。サブボリュームは、--namespace-isolated オプションを指定することで、別の RADOS namespace に作成できます。デフォルトでは、サブボリュームはデフォルトの subvolume グループ内に作成され、サブボリュームグループの 8 進数ファイルモード '755'、サブボリュームグループの gid、親ディレクトリーのデータプールレイアウトとサイズ制限がありません。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。

手順

  • CephFS サブボリュームを作成します。

    構文

    ceph fs subvolume create VOLUME_NAME SUBVOLUME_NAME [--size SIZE_IN_BYTES --group_name SUBVOLUME_GROUP_NAME --pool_layout DATA_POOL_NAME --uid _UID --gid GID --mode OCTAL_MODE] [--namespace-isolated]

    [root@mon ~]# ceph fs subvolume create cephfs sub0 --group_name subgroup0 --namespace-isolated

    subvolume がすでに存在している場合でも、コマンドは成功します。

4.3.2. ファイルシステムのサブボリュームのリスト表示

このセクションでは、Ceph File System (CephFS) サブボリュームをリスト表示する手順について説明します。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • CephFS サブボリューム。

手順

  • CephFS サブボリュームをリスト表示します。

    構文

    ceph fs subvolume ls VOLUME_NAME [--group_name SUBVOLUME_GROUP_NAME]

    [root@mon ~]# ceph fs subvolume ls cephfs --group_name subgroup0

4.3.3. ファイルシステムのサブボリュームのサイズ変更

このセクションでは、Ceph File System (CephFS) サブボリュームのサイズを変更する方法を説明します。

注記

ceph fs subvolume resize コマンドは、new_size で指定されたサイズでサブボリュームのクォータのサイズを変更します。--no_shrink フラグは、サブボリュームが現在使用されているサブボリュームのサイズを下回って縮小するのを防ぎます。サブボリュームは、f または infinitenew_size として渡すと、無限にリサイズできます。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • CephFS サブボリューム。

手順

  • CephFS サブボリュームのサイズを変更します。

    構文

    ceph fs subvolume resize VOLUME_NAME SUBVOLUME_NAME NEW_SIZE [--group_name SUBVOLUME_GROUP_NAME] [--no_shrink]

    [root@mon ~]# ceph fs subvolume resize cephfs sub0 1024000000 --group_name subgroup0 --no_shrink

4.3.4. ファイルシステムのサブボリュームの絶対パスを取得中

このセクションでは、Ceph File System (CephFS) サブボリュームの絶対パスを取得する方法を説明します。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • CephFS サブボリューム。

手順

  • CephFS サブボリュームの絶対パスを取得します。

    構文

    ceph fs subvolume getpath VOLUME_NAME SUBVOLUME_NAME [--group_name _SUBVOLUME_GROUP_NAME]

    [root@mon ~]# ceph fs subvolume getpath cephfs sub0 --group_name subgroup0

4.3.5. ファイルシステムのサブボリュームのメタデータの取得

このセクションでは、Ceph File System (CephFS) サブボリュームのメタデータを取得する方法について説明します。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • CephFS サブボリューム。

手順

  • CephFS サブボリュームのメタデータを取得します。

    構文

    ceph fs subvolume info VOLUME_NAME SUBVOLUME_NAME [--group_name SUBVOLUME_GROUP_NAME]

    [root@mon ~]# ceph fs subvolume info cephfs sub0 --group_name subgroup0

    出力例

    # ceph fs subvolume info cephfs sub0
    {
        "atime": "2023-07-14 08:52:46",
        "bytes_pcent": "0.00",
        "bytes_quota": 1024000000,
        "bytes_used": 0,
        "created_at": "2023-07-14 08:52:46",
        "ctime": "2023-07-14 08:53:54",
        "data_pool": "cephfs.cephfs.data",
        "features": [
            "snapshot-clone",
            "snapshot-autoprotect",
            "snapshot-retention"
        ],
        "flavor": "2",
        "gid": 0,
        "mode": 16877,
        "mon_addrs": [
            "10.0.208.172:6789",
            "10.0.211.197:6789",
            "10.0.209.212:6789"
        ],
        "mtime": "2023-07-14 08:52:46",
        "path": "/volumes/_nogroup/sub0/834c5cbc-f5db-4481-80a3-aca92ff0e7f3",
        "pool_namespace": "",
        "state": "complete",
        "type": "subvolume",
        "uid": 0
    }

出力形式は JSON で、以下のフィールドが含まれます。

  • atime: "YYYY-MM-DD HH:MM:SS" 形式のサブボリュームパスのアクセス時間。
  • bytes_pcent: クォータが設定されている場合に使用するクォータ。それ以外の場合は "undefined" を表示します。
  • bytes_quota: クォータが設定されている場合のクォータサイズ (バイト単位)。それ以外の場合は "infinite" を表示します。
  • bytes_used: サブボリュームの現在の使用サイズ (バイト単位)。
  • created_at: サブボリュームを作成する時間 ("YYYY-MM-DD HH:MM:SS" 形式)。
  • ctime: サブボリュームの時間を "YYYY-MM-DD HH:MM:SS" 形式で変更します。
  • data_pool: サブボリュームが属するデータプール。
  • features: snapshot-clone"、"snapshot-autoprotect"、"snapshot-retention" などのサブボリュームでサポートされる機能。
  • flavor: サブボリュームのバージョン。バージョン 1 の場合は 1、バージョン 2 の場合は 2 です。
  • gid: サブボリュームパスのグループ ID。
  • モード: サブボリュームパスのモード。
  • mon_addrs: モニターアドレスのリスト。
  • mtime: サブボリュームパスの変更時間 ("YYYY-MM-DD HH:MM:SS" 形式)。
  • path: サブボリュームの絶対パス。
  • pool_namespace: サブボリュームの RADOS 名前空間。
  • state: サブボリュームの現在の状態 (例: "complete" または "snapshot-retained"d)
  • type: クローンかサブボリュームかを示すサブボリュームタイプ。
  • uid : サブボリュームパスのユーザー ID。

4.3.6. ファイルシステムのサブボリュームのスナップショットの作成

このセクションでは、Ceph File System (CephFS) サブボリュームのスナップショットを作成する方法を説明します。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • CephFS サブボリューム。
  • クライアントの読み取り (r) および書き込み (w) 機能のほかに、クライアントはファイルシステム内のディレクトリーパスに s フラグも必要になります。

手順

  1. s フラグがディレクトリーに設定されていることを確認します。

    構文

    ceph auth get CLIENT_NAME

    [root@mon ~]# ceph auth get client.0
    [client.0]
        key = AQAz7EVWygILFRAAdIcuJ12opU/JKyfFmxhuaw==
        caps mds = "allow rw, allow rws path=/bar" 1
        caps mon = "allow r"
        caps osd = "allow rw tag cephfs data=cephfs_a" 2

    1 2
    この例では、client.0 はファイルシステムの cephfs_abar ディレクトリーにスナップショットを作成または削除することができます。
  2. Ceph File System サブボリュームのスナップショットを作成します。

    構文

    ceph fs subvolume snapshot create VOLUME_NAME SUBVOLUME_NAME SNAP_NAME [--group_name GROUP_NAME]

    [root@mon ~]# ceph fs subvolume snapshot create cephfs sub0 snap0 --group_name subgroup0

4.3.7. スナップショットからのサブボリュームのクローン作成

サブボリュームスナップショットのクローン作成により、サブボリュームを作成できます。これは、スナップショットからサブボリュームにデータをコピーする非同期操作です。

注記

非常に大規模なデータセットの場合、クローン作成は非効率的です。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • スナップショットの作成や書き込み機能の削除に加えて、クライアントはファイルシステム内のディレクトリーパスに s フラグが必要です。

    構文

    CLIENT_NAME
        key = AQAz7EVWygILFRAAdIcuJ12opU/JKyfFmxhuaw==
        caps mds = allow rw, allow rws path=DIRECTORY_PATH
        caps mon = allow r
        caps osd = allow rw tag cephfs data=DIRECTORY_NAME

    以下の例では、client.0 はファイルシステム cephfs_abar ディレクトリーにスナップショットを作成または削除することができます。

    [client.0]
        key = AQAz7EVWygILFRAAdIcuJ12opU/JKyfFmxhuaw==
        caps mds = "allow rw, allow rws path=/bar"
        caps mon = "allow r"
        caps osd = "allow rw tag cephfs data=cephfs_a"

手順

  1. Ceph File System (CephFS) ボリュームを作成します。

    構文

    ceph fs volume create VOLUME_NAME

    [root@mon ~]# ceph fs volume create cephfs

    これにより、CephFS ファイルシステム、そのデータおよびメタデータプールが作成されます。

  2. サブボリュームグループを作成します。デフォルトでは、サブボリュームグループは、モード '755' および、親ディレクトリーのデータプールレイアウトで作成されます。

    構文

    ceph fs subvolumegroup create VOLUME_NAME GROUP_NAME [--pool_layout DATA_POOL_NAME --uid UID --gid GID --mode OCTAL_MODE]

    [root@mon ~]# ceph fs subvolumegroup create cephfs subgroup0

  3. サブボリュームを作成します。デフォルトでは、サブボリュームはデフォルトの subvolume グループ内に作成され、サブボリュームグループの 8 進数ファイルモード '755'、サブボリュームグループの gid、親ディレクトリーのデータプールレイアウトとサイズ制限がありません。

    構文

    ceph fs subvolume create VOLUME_NAME SUBVOLUME_NAME [--size SIZE_IN_BYTES --group_name SUBVOLUME_GROUP_NAME --pool_layout DATA_POOL_NAME --uid _UID --gid GID --mode OCTAL_MODE]

    [root@mon ~]# ceph fs subvolume create cephfs sub0 --group_name subgroup0

  4. サブボリュームのスナップショットを作成します。

    構文

    ceph fs subvolume snapshot create VOLUME_NAME _SUBVOLUME_NAME SNAP_NAME [--group_name SUBVOLUME_GROUP_NAME]

    [root@mon ~]# ceph fs subvolume snapshot create cephfs sub0 snap0  --group_name subgroup0

  5. クローン操作を開始します。

    注記

    デフォルトでは、クローン作成されたサブボリュームがデフォルトのグループに作成されます。

    1. ソースサブボリュームとターゲットのクローンがデフォルトのグループにある場合は、以下のコマンドを実行します。

      構文

      ceph fs subvolume snapshot clone VOLUME_NAME SUBVOLUME_NAME SNAP_NAME TARGET_CLONE_NAME

      [root@mon ~]# ceph fs subvolume snapshot clone cephfs sub0 snap0 clone0

    2. ソースサブボリュームがデフォルト以外のグループにある場合は、以下のコマンドでソース subvolume グループを指定します。

      構文

      ceph fs subvolume snapshot clone VOLUME_NAME SUBVOLUME_NAME SNAP_NAME TARGET_CLONE_NAME --group_name SUBVOLUME_GROUP_NAME

      [root@mon ~]# ceph fs subvolume snapshot clone cephfs sub0 snap0 clone0 --group_name subgroup0

    3. ターゲットのクローンがデフォルト以外のグループにある場合は、以下のコマンドでターゲットグループを指定します。

      構文

      ceph fs subvolume snapshot clone VOLUME_NAME SUBVOLUME_NAME SNAP_NAME TARGET_CLONE_NAME --target_group_name SUBVOLUME_GROUP_NAME

      [root@mon ~]# ceph fs subvolume snapshot clone cephfs sub0 snap0 clone0 --target_group_name subgroup1

  6. clone 操作のステータスを確認します。

    構文

    ceph fs clone status VOLUME_NAME CLONE_NAME [--group_name TARGET_GROUP_NAME]

    [root@mon ~]# ceph fs clone status cephfs clone0 --group_name subgroup1
    
    {
      "status": {
        "state": "complete"
      }
    }

関連情報

4.3.8. ファイルシステムのサブボリュームのスナップショットのリスト表示

このセクションでは、Ceph File システム (CephFS) サブボリュームのスナップショットをリスト表示する手順について説明します。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • CephFS サブボリューム。
  • サブボリュームのスナップショット。

手順

  • CephFS サブボリュームのスナップショットをリスト表示します。

    構文

    ceph fs subvolume snapshot ls VOLUME_NAME SUBVOLUME_NAME [--group_name SUBVOLUME_GROUP_NAME]

    [root@mon ~]# ceph fs subvolume snapshot ls cephfs sub0 --group_name subgroup0

4.3.9. ファイルシステムサブボリュームのスナップショットのメタデータの取得。

このセクションでは、Ceph File System (CephFS) サブボリュームのスナップショットのメタデータを取得する手順について説明します。

前提条件

  • CephFS がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • CephFS サブボリューム。
  • サブボリュームのスナップショット。

手順

  1. CephFS サブボリュームのスナップショットのメタデータを取得します。

    構文

    ceph fs subvolume snapshot info VOLUME_NAME SUBVOLUME_NAME SNAP_NAME [--group_name SUBVOLUME_GROUP_NAME]

    [root@mon ~]# ceph fs subvolume snapshot info cephfs sub0 snap0 --group_name subgroup0

    出力例

    {
        "created_at": "2022-05-09 06:18:47.330682",
        "data_pool": "cephfs_data",
        "has_pending_clones": "no",
        "size": 0
    }

出力形式は JSON で、以下のフィールドが含まれます。

  • created_at: スナップショットの作成時間 ("YYYY-MM-DD HH:MM:SS:ffffff" 形式)。
  • data_pool: スナップショットが属するデータプール。
  • has_pending_clones: スナップショットの選択が進行中の場合は "yes" そうでなければ "no"。
  • サイズ: スナップショットサイズ (バイト単位)。

4.3.10. ファイルシステムのサブボリュームの削除

このセクションでは、Ceph File System (CephFS) サブボリュームを削除する方法を説明します。

注記

ceph fs subvolume rm コマンドは、2 つのステップでサブボリュームとその内容を削除します。まず、サブボリュームをゴミ箱フォルダーに移動し、そのコンテンツを非同期的にパージします。

サブボリュームは、--retain-snapshots オプションを使用してサブボリュームの既存のスナップショットを保持できます。スナップショットが保持されると、そのサブボリュームは、保持済みスナップショットが関係するすべての操作に対して空であると見なされます。保持されるスナップショットは、サブボリュームを再作成するクローンソースとして使用するか、新しいサブボリュームにクローンを作成します。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • CephFS サブボリューム。

手順

  1. CephFS サブボリュームを削除します。

    構文

    ceph fs subvolume rm VOLUME_NAME SUBVOLUME_NAME [--group_name SUBVOLUME_GROUP_NAME] [--force] [--retain-snapshots]

    [root@mon ~]# ceph fs subvolume rm cephfs sub0 --group_name subgroup0 --retain-snapshots

  2. 保持されるスナップショットからサブボリュームを再作成するには、以下を実行します。

    構文

    ceph fs subvolume snapshot clone VOLUME_NAME DELETED_SUBVOLUME RETAINED_SNAPSHOT NEW_SUBVOLUME --group_name SUBVOLUME_GROUP_NAME --target_group_name SUBVOLUME_TARGET_GROUP_NAME

    • NEW_SUBVOLUMEは、以前に削除された同じサブボリュームにするか、新しいサブボリュームにクローンを作成します。

    [root@mon ~]# ceph fs subvolume snapshot clone cephfs sub0 snap0 sub1 --group_name subgroup0 --target_group_name subgroup0

4.3.11. ファイルシステムのサブボリュームのスナップショットの削除

このセクションでは、Ceph File System (CephFS) サブボリュームグループのスナップショットを削除する手順について説明します。

注記

--force フラグを使用すると、コマンドを正常に実行でき、スナップショットが存在しない場合には失敗します。

前提条件

  • Ceph File System がデプロイされている稼働中の Red Hat Ceph Storage クラスター。
  • Ceph Monitor での少なくとも読み取りアクセス。
  • Ceph Manager ノードの読み取りおよび書き込み機能。
  • Ceph File System ボリューム。
  • サブボリュームグループのスナップショット。

手順

  • CephFS サブボリュームのスナップショットを削除します。

    構文

    ceph fs subvolume snapshot rm VOLUME_NAME SUBVOLUME_NAME SNAP_NAME [--group_name GROUP_NAME --force]

    [root@mon ~]# ceph fs subvolume snapshot rm cephfs sub0 snap0 --group_name subgroup0 --force

関連情報

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.