ファイルシステムガイド

Red Hat Ceph Storage 4

Ceph ファイルシステムの設定およびマウント

Red Hat Ceph Storage Documentation Team

概要

本ガイドでは、Ceph Metadata Server(MDS)の設定方法と、Ceph File System(CephFS)の作成、マウント、および作業方法について説明します。

第1章 Ceph File System の概要

本章では、Ceph File System(CephFS)の概要と、その仕組みについて説明します。

1.1. Ceph ファイルシステム

Ceph File System(CephFS)は、POSIX 標準と互換性のあるファイルシステムで、Ceph Storage クラスターへのファイルアクセスを提供します。

CephFS を実行するには、最低でも 1 つの Metadata Server(MDS)デーモンが必要です。MDS デーモンは、Ceph File System に保管されたファイルに関連するメタデータを管理し、共有 Ceph Storage クラスターへのアクセスも調整します。

CephFS は、可能な限り POSIX セマンティックを使用します。たとえば、NFS などの他の多くの一般的なネットワークファイルシステムとは対照的に、CephFS はクライアント間で強力なキャッシュの一貫性を維持します。この目的は、ファイルシステムを使用するプロセスが、同じホストにある場合と異なるホスト上にある場合に同じ動作を行えるようにします。ただし、CephFS は厳格な POSIX セマンティクスから分岐する場合があります。詳細はを参照してください 「Ceph ファイルシステムにおける POSIX コンプライアンスの相違点」

Ceph ファイルシステムのコンポーネント

この図では、Ceph File System のさまざまな層を示しています。

+-----------------------+  +------------------------+
| CephFS Kernel Object  |  |      CephFS FUSE       |
+-----------------------+  +------------------------+

+---------------------------------------------------+
|            CephFS Library (libcephfs)             |
+---------------------------------------------------+

+---------------------------------------------------+
|      Ceph Storage Cluster Protocol (librados)     |
+---------------------------------------------------+

+---------------+ +---------------+ +---------------+
|      OSDs     | |      MDSs     | |    Monitors   |
+---------------+ +---------------+ +---------------+

下部層は、以下を含む基礎となるコアクラスターを表します。

  • Ceph File System データおよびメタデータを保存する OSD(ceph-osd)
  • Ceph File System のメタデータを管理するメタデータサーバー(ceph-mds)
  • クラスターマップのマスターコピーを管理するモニター(ceph-mon)

Ceph Storage Cluster Protocol レイヤーは、コアクラスターと対話するための Ceph ネイティブの librados ライブラリーを表します。

CephFS ライブラリーレイヤーには、librados 上に機能し、Ceph File System を表す CephFS libcephfs ライブラリーが含まれます。

上位レイヤーは、Ceph File Systems にアクセスできる 2 つのタイプのクライアントを表します。

この図では、Ceph File System コンポーネントがどのように相互に対話するかを詳細に説明します。

image-cephfs-architecture

Ceph File System には、主に以下のコンポーネントがあります。

  • クライアント は、CephFS を使用するアプリケーションの代わりに I/O 操作を実行するエンティティーを表します(FUSE クライアントの場合はceph-fuse、カーネルクライアント 場合は kcephfs)。クライアントはメタデータ要求をアクティブな MDS に送信します。返答すると、クライアントはファイルメタデータを認識し、メタデータとファイルデータの両方を安全にキャッシュできます。
  • メタデータサーバー はクライアントにメタデータを提供し、ホットメタデータをキャッシュしてバッキングメタデータストアの要求を軽減し、キャッシュの一貫性を維持するクライアントキャッシュを管理し、アクティブな MDS 間でホットメタデータを複製し、メタデータの変更を通常のフラッシュでバッキングメタデータプールに結合します。

1.2. CephFS の主な特長

Ceph File System では、以下の機能および機能強化が導入されました。

スケーラビリティー
メタデータサーバーの水平スケーリングとダイレクトクライアントの個別の OSD ノードを使用した読み取りおよび書き込みにより、Ceph File System のスケーラビリティーが高くなります。
Shared File System
Ceph File System は共有ファイルシステムであるため、複数のクライアントが同時に同じファイルシステムで動作します。
高可用性
Ceph File System は、Ceph Metadata Server(MDS)のクラスターを提供します。1 つがアクティブで、他の 1 つがスタンバイモードになります。アクティブな MDS が突然終了すると、スタンバイ MDS の 1 つがアクティブになります。その結果、クライアントマウントはサーバーの障害により引き続き動作します。この動作により、Ceph File System が高可用性になります。さらに、アクティブなメタデータサーバーを複数設定することもできます。詳細 ??? はを参照してください。
設定可能なファイルとディレクトリーのレイアウト
Ceph File System では、ファイルおよびディレクトリーのレイアウトを設定して、複数のプール、プール名前空間、およびオブジェクト全体でファイルストライピングモードを使用できます。詳細 「ファイルおよびディレクトリーのレイアウトの使用」 はを参照してください。
POSIX アクセス制御リスト(ACL)

Ceph File System は、POSIX アクセス制御リスト(ACL)をサポートします。ACL は、カーネルバージョン kernel-3.10.0-327.18.2.el7 を使用して、カーネルクライアントとしてマウントされた Ceph File Systems でデフォルトで有効になっています。

Fuse クライアントとしてマウントされた Ceph File Systems で ACL を使用するには、有効にする必要があります。詳細 「CephFS の制限事項」 はを参照してください。

クライアントクォータ
Ceph File System FUSE クライアントは、システム内の任意のディレクトリーへのクォータの設定をサポートします。クォータは、ディレクトリー階層の配下にあるバイト数またはファイル数を制限できます。クライアントクォータはデフォルトで有効になっています。

1.3. CephFS の制限事項

FUSE クライアントでのアクセス制御リスト(ACL)のサポート

FUSE クライアントとしてマウントされた Ceph File System で ACL 機能を使用するには、有効にする必要があります。これを行うには、Ceph 設定ファイルに以下のオプションを追加します。

[client]

client_acl_type=posix_acl

次に、Ceph クライアントを再起動します。

snapshots

CephFS スナップショット機能は、新規ファイルシステムでデフォルトで有効になっています。既存のファイルシステムで有効にするには、以下のコマンドを使用します。

ceph fs set <fs_name> allow_new_snaps true
複数の Ceph ファイルシステム

デフォルトでは、1 つのクラスターに複数の Ceph File Systems を作成することは無効になっています。Ceph File System を追加で作成しようとすると、以下のエラーが出力されます。

Error EINVAL: Creation of multiple filesystems is disabled.

1 つのクラスターで複数の Ceph File Systems を作成することはまだ完全にサポートされていないため、MDS またはクライアントノードが突然終了する可能性があります。

リスクを理解していて、複数の Ceph ファイルシステムを有効にする場合には、以下を使用します。

ceph fs flag set enable_multiple true  --yes-i-really-mean-it

1.4. Ceph ファイルシステムにおける POSIX コンプライアンスの相違点

本項では、Ceph File System(CephFS)が厳格な POSIX セマンティクスから分岐する状況を取り上げます。

  • クライアントがファイルの書き込みに失敗した場合、書き込み操作は必ずしもアトミックなとは限りません。つまり、クライアントは O_SYNC フラグで 8MB バッファーで開いているファイルで write() システムコールを呼び出し、予期せず終了し、書き込み操作は部分的にのみ適用される可能性があります。ローカルファイルシステムも含め、ほとんどすべてのファイルシステムがこの挙動を持ちます。
  • 書き込み操作が同時に発生する場合、オブジェクト境界を超える書き込み操作は必ずしもアトミックとは限りません。たとえば、A writes "aa|aa" と B writes "bb|bb" concurrently(ここで" |" はオブジェクトの境界)、"aa|bb" は適切な"aa| aa" または "bb|bb" では なく記述されます。
  • POSIX には telldir ()および seekdir () システムコールが含まれています。これにより、現在のディレクトリーオフセットを取得してその呼び出しに戻すことができます。CephFS はいつでもディレクトリーを断片化できるため、ディレクトリーの安定した整数オフセットを返すことは困難です。そのため、seekdir () システムコールをゼロ以外のオフセットに呼び出すと、多くの場合は機能する可能性はありますが、そうすることが保証されていません。オフセット 0 に seekdir() を呼び出すと、常に機能します。これは、rewinddir () システムコールと同じです。
  • Sparse ファイルは、stat() システムコールの st_blocks フィールドに不適切に伝播されます。CephFS は、割り当てまたは書き込みのファイルの部分を明示的に追跡しないため、st_blocks フィールドは常にブロックサイズで分割されたファイルサイズで設定されます。この動作により、du などのユーティリティーは、大容量の消費領域を過剰に消費します。
  • mmap() システムコールがファイルを複数のホストのメモリーにマッピングすると、書き込み操作は他のホストのキャッシュに一貫して伝播されません。つまり、ページがホスト A にキャッシュされ、ホスト B で更新されると、ホスト A ページは一貫して無効になりません。
  • CephFS クライアントは、スナップショットのアクセス、作成、削除、名前を変更するために使用される hidden .snap ディレクトリーを表示します。このディレクトリーは readdir() システムコールから除外されますが、同じ名前のファイルまたはディレクトリーを作成しようとするとエラーが返されます。マウント時に -o snapdirname=.<new_name> オプションを使用するか、client_snapdir 設定 オプションを使用して、この非表示ディレクトリーの名前 を変更できます。

1.5. その他のリソース

第2章 Metadata Server Daemon の設定

本章では、Ceph Metadata Server(MDS)デーモンを設定する方法について説明します。

  • MDS デーモンのさまざまな状態を理解するには、を参照してください ???
  • MDS 設定における「rank」の意味を理解するには、を参照してください ???
  • さまざまなスタンバイ MDS デーモンの設定タイプの詳細は、を参照してください ???
  • スタンバイ MDS デーモンを設定するには、を参照してください ???
  • 複数のアクティブな MDS デーモンを設定するには、を参照してください ???
  • アクティブな MDS デーモンの数を減らすには、を参照してください ???
  • MDS キャッシュサイズ制限については、を参照してください ???
注記

Red Hat Ceph Storage 3.2 以降、ceph-mds および ceph- fuse デーモンは、SELinux を Enforcing モードで実行することができます。

2.1. 前提条件

assembly_configuring-metadata-server-daemons.adoc - include::/modules/concept_states-of-metadata-server-daemons.adoc[leveloffset=+1] の unresolved ディレクティブ

assembly_configuring-metadata-server-daemons.adoc の unresolved ディレクティブ: include::/modules/concept_explanation-of-ranks-in-metadata-server-configuration.adoc[leveloffset=+1]

assembly_configuring-metadata-server-daemons.adoc の unresolved ディレクティブ: include::/modules/concept_types-of-standby-configuration.adoc[leveloffset=+1]

assembly_configuring-metadata-server-daemons.adoc の unresolved ディレクティブ: include::/modules/procedure_configuring-standby-metadata-server-daemons.adoc[leveloffset=+1]

assembly_configuring-metadata-server-daemons.adoc の unresolved ディレクティブ: include::/modules/procedure_configuring-multiple-active-metadata-server-daemons.adoc[leveloffset=+1]

assembly_configuring-metadata-server-daemons.adoc の unresolved ディレクティブ: include::/modules/procedure_decreasing-the-number-of-active-mds-daemons.adoc[leveloffset=+1]

assembly_configuring-metadata-server-daemons.adoc の unresolved ディレクティブ: include::/modules/concept_understanding-mds-cache-size-limits.adoc[leveloffset=+1]

2.2. その他のリソース

第3章 Ceph ファイルシステムのデプロイ

本章では、Ceph File Systems を作成してマウントする方法を説明します。

Ceph ファイルシステムをデプロイするには、以下を行います。

  1. モニターノードに Ceph ファイルシステムを作成します。詳細 「Ceph ファイルシステムの作成」 はを参照してください。
  2. 正しいアクセス権限とパーミッションを持つクライアントユーザーを作成し、Ceph File System がマウントされるノードでそのキーを利用できるようにします。詳細 「Ceph File System クライアントユーザーの作成」 はを参照してください。
  3. 専用のノードに CephFS をマウントします。以下の方法のいずれかを選択します。

    1. CephFS をカーネルクライアントとしてマウントします。を参照してください。 「Ceph ファイルシステムのカーネルクライアントとしてのマウント」
    2. CephFS を Fuse クライアントとしてマウントします。を参照してください。 「FUSE クライアントとしての Ceph ファイルシステムのマウント」

3.1. 前提条件

3.2. Ceph ファイルシステムの作成

本項では、モニターノードで Ceph File System を作成する方法について説明します。

重要

デフォルトでは、Ceph Storage クラスターに Ceph File System を 1 つだけ作成できます。詳細 「CephFS の制限事項」 はを参照してください。

前提条件

手順

Monitor ホストおよび root ユーザーで以下のコマンドを使用します。

  1. データを格納するための 2 つのプールと、メタデータを保存するプールを作成します。

    ceph osd pool create <name> <pg_num>

    プール名と配置グループ(PG)の数を指定します。以下に例を示します。

    [root@monitor ~]# ceph osd pool create cephfs_data 64
    [root@monitor ~]# ceph osd pool create cephfs_metadata 64

    通常、メタデータプールは、データプールよりもオブジェクト数がはるかに少ないため、PG の保守的な数で開始できます。必要に応じて、PG の数を増やすことができます。推奨されるメタデータプールサイズは 64 PG から 512 PG までです。データプールのサイズを、ファイルシステムで想定するファイルの数とサイズに比例します。

    重要

    メタデータプールの場合は、

    • このプールへのデータ損失により、ファイルシステム全体にアクセスできなくなるため、レプリケーションレベルが高い
    • Solid-state Drive(SSD)ディスクなどのレイテンシーが低いストレージは、クライアントのファイルシステム操作の確認レイテンシーに直接影響するためです。
  2. Ceph ファイルシステムを作成します。

    ceph fs new <name> <metadata-pool> <data-pool>

    Ceph File System の名前、メタデータおよびデータプールを指定します。以下に例を示します。

    [root@monitor ~]# ceph fs new cephfs cephfs_metadata cephfs_data
  3. 設定に基づいて 1 つ以上の MDS がアクティブ状態にあることを確認します。

    ceph fs status <name>

    Ceph File System の名前を指定します。以下に例を示します。

    [root@monitor ~]# ceph fs status cephfs
    cephfs - 0 clients
    ======
    +------+--------+-------+---------------+-------+-------+
    | Rank | State  |  MDS  |    Activity   |  dns  |  inos |
    +------+--------+-------+---------------+-------+-------+
    |  0   | active | node1 | Reqs:    0 /s |   10  |   12  |
    +------+--------+-------+---------------+-------+-------+
    +-----------------+----------+-------+-------+
    |       Pool      |   type   |  used | avail |
    +-----------------+----------+-------+-------+
    | cephfs_metadata | metadata | 4638  | 26.7G |
    |   cephfs_data   |   data   |    0  | 26.7G |
    +-----------------+----------+-------+-------+
    
    +-------------+
    | Standby MDS |
    +-------------+
    |    node3    |
    |    node2    |
    +-------------+----

その他のリソース

3.3. Ceph File System クライアントユーザーの作成

Red Hat Ceph Storage 4 では、デフォルトで有効になっている認証に cephx を使用します。Ceph File System で cephx を使用するには、モニターノードで正しい認可機能を持つユーザーを作成し、Ceph File System がマウントされるノードでそのキーを利用できるようにします。

カーネルクライアントで鍵を使用できるようにするには、内部のキーを使用してクライアントノードにシークレットファイルを作成します。ユーザー空間(FUSE)クライアントの File System in User Space(FUSE)クライアントで鍵を利用できるようにするには、キーリングをクライアントノードにコピーします。

手順

  1. Monitor ホストで、クライアントユーザーを作成します。

    ceph auth get-or-create client.<id> <capabilities>

    クライアント ID および必要な機能を指定します。

    • 特定のディレクトリー内でのみマウントおよび作業するようにクライアントを制限するには、以下を行います。

      ceph auth get-or-create client.1 mon 'allow r' mds 'allow r, allow rw path=<directory>' osd 'allow rw'

      たとえば、クライアントを /home/cephfs/ ディレクトリー内のマウントおよび作業のみに制限するには、次のコマンドを実行します。

      [root@monitor ~]# ceph auth get-or-create client.1 mon 'allow r' mds 'allow r, allow rw path=/home/cephfs' osd 'allow rw'
      [client.1]
          key = AQACNoZXhrzqIRAABPKHTach4x03JeNadeQ9Uw==
    • クライアントがクラスター内の特定のプールへの書き込みおよび読み取りのみに制限するには、以下を実行します。

      ceph auth get-or-create client.1 mon 'allow r' mds 'allow rw' osd 'allow rw pool=<pool>'

      たとえば、クライアントが データ プールへの書き込みおよび読み書きのみを制限するには、次のコマンドを実行します。

      [root@monitor ~]# ceph auth get-or-create client.1 mon 'allow r' mds 'allow rw' osd 'allow rw pool=data'
    • クライアントがファイルおよびディレクトリーに使用される データ プールを変更しないようにするには、以下を実行します。

      [root@monitor ~]# ceph auth get-or-create client.1 mon 'allow r' mds 'allow rwp' osd 'allow rw'
      注記

      Ceph File System クライアントはその機能にアクセスできないため、メタデータ プールの機能は作成しないでください。

  2. 作成した鍵を確認します。

    ceph auth get client.<id>

    以下に例を示します。

    [root@monitor ~]# ceph auth get client.1
  3. カーネルクライアントを使用する予定がある場合は、前のステップで取得した鍵を使用してシークレットファイルを作成します。

    クライアントノードで、key = の後に文字列を /etc/ceph/ceph.client.<id>.secret にコピーします。

    たとえば、クライアント ID が 1 の場合は、キーと共に 1 行を /etc/ceph/ceph.client.1.secret に追加します。

    [root@client ~]# cat /etc/ceph/ceph.client.1.secret
    AQBSdFhcGZFUDRAAcKhG9Cl2HPiDMMRv4DC43A==
    重要

    key = と文字列の間は空白を入れないでください。そうでない場合は、マウントは機能しません。

  4. ユーザー空間(FUSE)クライアントで File System(FUSE)を使用する予定がある場合は、キーリングをクライアントにコピーします。

    1. Ceph Monitor ノードで、キーリングをファイルにエクスポートします。

      # ceph auth get client.<id> -o ceph.client.<id>.keyring

      たとえば、クライアント ID が 1 の場合は、

      [root@mon ~]# ceph auth get client.1 -o ceph.client.1.keyring
      exported keyring for client.1
    2. クライアントキーリングを Ceph Monitor ノードからクライアントノード上の /etc/ceph/ ディレクトリーにコピーします。

      scp root@<monitor>:/root/ceph.client.1.keyring /etc/ceph/

      <monitor> Ceph Monitor ノード名または IP に置き換えます。以下に例を示します。

      [root@client ~]# scp root@mon:/root/ceph.client.1.keyring /etc/ceph/ceph.client.1.keyring
  5. キーリングファイルの適切なパーミッションを設定します。

    chmod 644 <keyring>

    キーリングへのパスを指定します。以下に例を示します。

    [root@client ~]# chmod 644 /etc/ceph/ceph.client.1.keyring

その他のリソース

3.4. Ceph ファイルシステムのカーネルクライアントとしてのマウント

Ceph File System をカーネルクライアントとしてマウントすることができます。

重要

Red Hat Enterprise Linux 以外の Linux ディストリビューション上のクライアントは許可されますが、サポート対象外となります。これらのクライアントの使用時に MDS またはクラスターの他の部分に問題が見つかった場合は、Red Hat がクライアント側で問題に対処する必要がありますが、この問題はカーネルベンダーによって対処する必要があります。

3.4.1. 前提条件

  • クライアントノードで、Red Hat Ceph Storage 4 Tools リポジトリーを有効にします。

    Red Hat Enterprise Linux 7

    [root@client ~]# subscription-manager repos --enable=rhel-7-server-rhceph-4-tools-rpms

    Red Hat Enterprise Linux 8

    [root@client ~]# subscription-manager repos --enable=rhceph-4-tools-for-rhel-8-x86_64-rpms

  • Ceph 設定ファイルを Monitor ノードからクライアントノードにコピーします。

    scp root@<monitor>:/etc/ceph/ceph.conf /etc/ceph/ceph.conf

    <monitor> Monitor ホスト名または IP アドレスに置き換えます。以下に例を示します。

    [root@client ~]# scp root@192.168.0.1:/etc/ceph/ceph.conf /etc/ceph/ceph.conf
  • 設定ファイルの適切なパーミッションを設定します。

    [root@client ~]# chmod 644 /etc/ceph/ceph.conf

3.4.2. Ceph ファイルシステムをカーネルクライアントとして手動でマウント

Ceph File System をカーネルクライアントとして手動でマウントするには、mount ユーティリティーを使用します。

前提条件

  • Ceph ファイルシステムが作成されます。
  • ceph-common パッケージがインストールされている。

手順

  1. クライアントキーが作成されたかどうかを確認するには、次のコマンドを実行します。

    ceph auth get client.<id>

    以下に例を示します。

    [root@monitor ~]# ceph auth get client.1
    1. カーネルクライアントを使用する場合は、直前の手順で取得した鍵を使用してシークレットファイルを作成します。クライアントノードで、key = の後に文字列を /etc/ceph/ceph.client.<id>.secret にコピーします。たとえば、クライアント ID が 1 の場合は、キーと共に 1 行を /etc/ceph/ceph.client.1.secret に追加します。

      [root@client ~]# cat /etc/ceph/ceph.client.1.secret
      AQBSdFhcGZFUDRAAcKhG9Cl2HPiDMMRv4DC43A==
      重要

      key = と文字列の間は空白を入れないでください。そうでない場合は、マウントは機能しません。

  2. クライアントノードに mount ディレクトリーを作成します。

    mkdir -p <mount-point>

    以下に例を示します。

    [root@client]# mkdir -p /mnt/cephfs
  3. Ceph ファイルシステムをマウントします。複数の Ceph Monitor アドレスを指定する場合は、mount コマンドでコンマで区切り、単一のホスト名が複数の IP アドレスに解決されるように DNS サーバーを設定します。mount コマンドでそのホスト名を使用します。また、ユーザー名およびパスをシークレットファイルに設定します。

    mount -t ceph <monitor1-host-name>:6789,<monitor2-host-name>:6789,<monitor3-host-name>:6789:/ <mount-point> -o name=<user-name>,secretfile=<path>

    以下に例を示します。

    [root@client ~]# mount -t ceph mon1:6789,mon2:6789,mon3:6789:/ /mnt/cephfs -o name=1,secretfile=/etc/ceph/ceph.client.1.secret
  4. ファイルシステムが正常にマウントされたことを確認します。

    stat -f <mount-point>

    以下に例を示します。

    [root@client ~]# stat -f /mnt/cephfs

その他のリソース

3.4.3. Ceph ファイルシステムをカーネルクライアントとして自動マウントする

起動時に Ceph File System を自動的にマウントするには、/etc/fstab ファイルを編集します。

前提条件

手順

  1. クライアントホストで、Ceph File System をマウントするための新規ディレクトリーを作成します。

    mkdir -p <mount-point>

    以下に例を示します。

    [root@client ~]# mkdir -p /mnt/cephfs
  2. 以下のように /etc/fstab ファイルを編集します。

    #DEVICE                 PATH           TYPE     OPTIONS
    <host-name>:<port>,    <mount-point>   ceph     [name=<user-name>,
    <host-name>:<port>,        	                secret=<key>|
    <host-name>:<port>:/		                secretfile=<file>,
                                                    [<mount-options>]

    最初の列で、Monitor ホスト名とそのポートを設定します。複数の Monitor アドレスを指定する別の方法として、単一のホスト名が複数の IP アドレスに解決されるように DNS サーバーを設定することもできます。

    2 番目の列のマウントポイントと、そのタイプを 3 列目の ceph に設定します。

    名前とシークレットファイルのオプションをそれぞれ使用して、4 番目の列にユーザー および シークレットファイル を設定します。

    ネットワークの問題を防ぐために、networking サブシステムの後にファイルシステムがマウントされるようにするには、_netdev オプションを設定します。アクセス時間情報の設定が必要ない場合は、パフォーマンスを向上させるために noatime を設定します。

    以下に例を示します。

    #DEVICE         PATH                   TYPE    OPTIONS
    mon1:6789:/,    /mnt/cephfs            ceph    name=admin,
    mon2:6789:/,	                               secretfile=
    mon3:6789:/                                    /home/secret.key,
                                                   _netdev,noatime 00

    ファイルシステムは次回の起動時にマウントされます。

3.5. FUSE クライアントとしての Ceph ファイルシステムのマウント

ユーザー空間(FUSE)クライアントで、Ceph ファイルシステムをファイルシステムとしてマウントすることができます。

3.5.1. 前提条件

  • クライアントノードで、Red Hat Ceph Storage 4 Tools リポジトリーを有効にします。

    Red Hat Enterprise Linux 7

    [root@client ~]# subscription-manager repos --enable=rhel-7-server-rhceph-4-tools-rpms

    Red Hat Enterprise Linux 8

    [root@client ~]# subscription-manager repos --enable=rhceph-4-tools-for-rhel-8-x86_64-rpms

  • クライアントキーリングをクライアントノードにコピーします。詳細 「Ceph File System クライアントユーザーの作成」 はを参照してください。
  • Ceph 設定ファイルを Monitor ノードからクライアントノードにコピーします。

    scp root@<monitor>:/etc/ceph/ceph.conf /etc/ceph/ceph.conf

    <monitor> Monitor ホスト名または IP に置き換えます。以下に例を示します。

    [root@client ~]# scp root@192.168.0.1:/ceph.conf /etc/ceph/ceph.conf
  • 設定ファイルの適切なパーミッションを設定します。

    [root@client ~]# chmod 644 /etc/ceph/ceph.conf

3.5.2. FUSE クライアントとしての Ceph ファイルシステムの手動マウント

Ceph File System をユーザー空間(FUSE)クライアントの File System としてマウントするには、ceph-fuse ユーティリティーを使用します。

前提条件

  • Ceph File System がマウントされるノードに、ceph-fuse パッケージをインストールします。

    [root@client ~]# yum install ceph-fuse

手順

  1. マウントポイントとして使用するディレクトリーを作成します。MDS 機能で path オプションを使用した場合、マウントポイントは path で指定されるもの内になければなりません。

    mkdir <mount-point>

    以下に例を示します。

    [root@client ~]# mkdir /mnt/mycephfs
  2. ceph-fuse ユーティリティーを使用して Ceph File System をマウントします。

    ceph-fuse -n client.<client-name> <mount-point>

    以下に例を示します。

    [root@client ~]# ceph-fuse -n client.1 /mnt/mycephfs
    • ユーザーキーリングのデフォルト名と場所を使用しない場合( /etc/ceph/ceph.client.<client-name/id>.keyring)、--keyring オプションを使用してユーザーキーリングへのパスを指定します。以下に例を示します。

      [root@client ~]# ceph-fuse -n client.1 --keyring=/etc/ceph/client.1.keyring /mnt/mycephfs
    • クライアントをマウントのみに制限して特定のディレクトリー内で作業する場合は、-r オプションを使用して、そのパスを root として扱うようクライアントに指示します。

      ceph-fuse -n client.<client-name/id> <mount-point> -r <path>

      たとえば、/home/cephfs/ ディレクトリーを root として扱うようにクライアントに ID 1 を指示するには、次のコマンドを実行します。

      [root@client ~]# ceph-fuse -n client.1 /mnt/cephfs -r /home/cephfs
  3. ファイルシステムが正常にマウントされたことを確認します。

    stat -f <mount-point>

    以下に例を示します。

    [user@client ~]$ stat -f /mnt/cephfs

その他のリソース

3.5.3. FUSE クライアントとしての Ceph ファイルシステムの自動マウント

起動時に Ceph File System を自動的にマウントするには、/etc/fstab ファイルを編集します。

前提条件

手順

  1. クライアントホストで、Ceph File System をマウントするための新規ディレクトリーを作成します。

    mkdir -p <mount-point>

    以下に例を示します。

    [root@client ~]# mkdir -p /mnt/cephfs
  2. etc/fstab ファイルを以下のように編集します。

    #DEVICE     PATH            TYPE        OPTIONS
    none        <mount-point>   fuse.ceph   ceph.id=<user-id>
                                            [,ceph.conf=<path>],
                                            _netdev,defaults  0 0

    使用 ID(例: client- admin ではなく)およびマウントポイントを指定します。Ceph 設定ファイルをデフォルトの場所ではなく保存する場合は、conf オプションを使用します。さらに、必要なマウントオプションを指定します。ネットワークの問題を防ぐために、networking サブシステムの後にファイルシステムがマウントされることを確認する _netdev オプションの使用を検討してください。以下に例を示します。

    #DEVICE     PATH        TYPE        OPTIONS
    none        /mnt/ceph   fuse.ceph   ceph.id=admin,
                                        ceph.conf=/etc/ceph/cluster.conf,
                                        _netdev,defaults  0 0

    ファイルシステムは次回の起動時にマウントされます。

3.6. イレイジャーコーディングを使用した Ceph ファイルシステムの作成

デフォルトでは、Ceph はデータプールにレプリケートされたプールを使用します。必要に応じて、イレイジャーコーディングされたデータプールを追加することもできます。イレイジャーコーディングされたプールがサポートする Ceph File Systems(CephFS)では、レプリケートされたプールでバッキングされる Ceph File Systems と比較して、全体的なストレージは少なくなります。イレイジャーコーディングされたプールではストレージ全体が少なくなりますが、複製されたプールよりもメモリーやプロセッサーのリソースも使用します。

重要

イレイジャーコーディングされたプール上の Ceph File Systems はテクノロジープレビュー機能です。詳細は、「 Erasure Coding with Overwrites(テクノロジープレビュー) 」を参照してください。

重要

イレイジャーコーディングされたプール上の Ceph File Systems には、BlueStore オブジェクトストアを使用するプールが必要です。詳細は、「 Erasure Coding with Overwrites(テクノロジープレビュー) 」を参照してください。

重要

Red Hat は、レプリケートされたプールをデフォルトのデータプールとして使用することを推奨します。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスター
  • BlueStore OSD を使用するプール。

手順

  1. Ceph File System 用のイレイジャーコーディングされたデータプールを作成します。

    ceph osd pool create DATA_POOL PG_NUM erasure

    たとえば、64 の配置グループを設定して、cephfs-data-ec という名前の erasure- coded プールを作成するには、次のコマンドを実行します。

    [root@monitor ~]# ceph osd pool create cephfs-data-ec 64 erasure
  2. Ceph File System の複製されたメタデータプールを作成します。

    ceph osd pool create METADATA_POOL PG_NUM

    たとえば、64 の配置グループを設定して cephfs-metadata という名前のプールを作成するには、次のコマンドを実行します。

    [root@monitor ~]# ceph osd pool create cephfs-metadata 64
  3. erasure-coded プールで上書きを有効にします。

    ceph osd pool set DATA_POOL allow_ec_overwrites true

    たとえば、cephfs-data-ec という名前の erasure-coded プールで上書きを有効にするには、次のコマンドを実行します。

    [root@monitor ~]# ceph osd pool set cephfs-data-ec allow_ec_overwrites true
  4. Ceph ファイルシステムを作成します。

    ceph fs new FS_EC METADATA_POOL DATA_POOL
    注記

    デフォルトのデータプールに erasure でコーディングされたプールを使用することは推奨されません。--force を使用して上書きします。

    Ceph File System の名前とメタデータおよびデータプールを指定します。以下に例を示します。

    [root@monitor ~]# ceph fs new cephfs-ec cephfs-metadata cephfs-data-ec --force
  5. 設定に基づいて 1 つ以上の MDS がアクティブな状態に入ることを確認します。

    ceph fs status FS_EC

    Ceph File System の名前を指定します。以下に例を示します。

    [root@monitor ~]# ceph fs status cephfs-ec
    cephfs-ec - 0 clients
    ======
    +------+--------+-------+---------------+-------+-------+
    | Rank | State  |  MDS  |    Activity   |  dns  |  inos |
    +------+--------+-------+---------------+-------+-------+
    |  0   | active | node1 | Reqs:    0 /s |   10  |   12  |
    +------+--------+-------+---------------+-------+-------+
    +-----------------+----------+-------+-------+
    |       Pool      |   type   |  used | avail |
    +-----------------+----------+-------+-------+
    | cephfs-metadata | metadata | 4638  | 26.7G |
    |  cephfs-data-ec |   data   |    0  | 26.7G |
    +-----------------+----------+-------+-------+
    
    +-------------+
    | Standby MDS |
    +-------------+
    |    node3    |
    |    node2    |
    +-------------+
  6. データプールとして、さらにイレイジャーコーディングされたプールを既存のファイルシステムに追加する場合は、次のコマンドを実行します。

    1. Ceph File System 用のイレイジャーコーディングされたデータプールを作成します。

      ceph osd pool create DATA_POOL PG_NUM erasure

      たとえば、64 の配置グループを設定して、cephfs-data-ec1 という名前の erasure- coded プールを作成するには、次のコマンドを実行します。

      [root@monitor ~]# ceph osd pool create cephfs-data-ec1 64 erasure
    2. erasure-coded プールで上書きを有効にします。

      ceph osd pool set DATA_POOL allow_ec_overwrites true

      たとえば、cephfs-data-ec1 という名前の erasure-coded プールで上書きを有効にするには、次のコマンドを実行します。

      [root@monitor ~]# ceph osd pool set cephfs-data-ec1 allow_ec_overwrites true
    3. 新たに作成したプールを既存の Ceph File System に追加します。

      ceph fs add_data_pool FS_EC DATA_POOL

      たとえば、cephfs-data-ec1 という名前の erasure-coded プールを追加するには、次のコマンドを実行します。

      [root@monitor ~]# ceph fs add_data_pool cephfs-ec cephfs-data-ec1
    4. 設定に基づいて 1 つ以上の MDS がアクティブな状態に入ることを確認します。

      ceph fs status FS_EC

      Ceph File System の名前を指定します。以下に例を示します。

      [root@monitor ~]# ceph fs status cephfs-ec
      cephfs-ec - 0 clients
      ======
      +------+--------+-------+---------------+-------+-------+
      | Rank | State  |  MDS  |    Activity   |  dns  |  inos |
      +------+--------+-------+---------------+-------+-------+
      |  0   | active | node1 | Reqs:    0 /s |   10  |   12  |
      +------+--------+-------+---------------+-------+-------+
      +-----------------+----------+-------+-------+
      |       Pool      |   type   |  used | avail |
      +-----------------+----------+-------+-------+
      | cephfs-metadata | metadata | 4638  | 26.7G |
      |  cephfs-data-ec |   data   |    0  | 26.7G |
      |  cephfs-data-ec1|   data   |    0  | 26.7G |
      +-----------------+----------+-------+-------+
      
      +-------------+
      | Standby MDS |
      +-------------+
      |    node3    |
      |    node2    |
      +-------------+

その他のリソース

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. サブボリュームグループを作成します。デフォルトでは、サブボリュームグループは 8 進ファイルモード「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. サブボリュームを作成します。デフォルトでは、サブボリュームはデフォルトのサブボリュームグループ内に作成され、8 進ファイルモードの「755」、サブボリュームグループの UID、そのサブボリュームグループの 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. スナップショットのクローンを作成します。

    構文

    ceph fs subvolume snapshot protect VOLUME_NAME SUBVOLUME_NAME SNAP_NAME [--group_name _SUBVOLUME_GROUP_NAME]

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

    注記

    スナップショットを保護すると、クローン操作の進行中にスナップショットが削除されないようにできます。

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

    注記

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

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

      構文

      ceph fs subvolume snapshot clone VOLUME_NAME SUBVOLUME_NAME SNAP_NAME TARGET_SUBVOLUME_NAME

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

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

      構文

      ceph fs subvolume snapshot clone VOLUME_NAME SUBVOLUME_NAME SNAP_NAME TARGET_SUBVOLUME_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_GROUP_NAME --group_name _SUBVOLUME_GROUP_NAME

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

  7. クローン操作のステータスを確認します。

    構文

    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"
      }
    }

  8. クローン操作が完了したら、以下のコマンドを実行してスナップショットの保護を解除します。

    構文

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

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

その他のリソース

第4章 Ceph File System ボリューム、サブボリュームグループ、およびサブボリュームの使用

ストレージ管理者は、Red Hat の Ceph Container Storage Interface(CSI)を使用して Ceph File System(CephFS)エクスポートを管理できます。これにより、OpenStack のファイルシステムサービス(Manila)などの他のサービスを使用することができます。これには、共通のコマンドラインインターフェースで対話することができます。Ceph Manager デーモン(ceph-mgr)の ボリューム モジュールは、Ceph File Systems(CephFS)をエクスポートする機能を実装します。

Ceph Manager ボリュームモジュールは、以下のファイルシステムのエクスポート抽象を実装します。

  • CephFS ボリューム
  • CephFS サブボリュームグループ
  • CephFS サブボリューム

本章では、以下を行う方法について説明します。

4.1. Ceph File System ボリューム

ストレージ管理者は、Ceph File System(CephFS)ボリュームの作成、一覧表示、および削除を行うことができます。CephFS ボリュームは、Ceph File Systems の抽象化です。

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

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

Ceph Manager のオーケストレーターモジュールにより、Ceph File System(CephFS)用の meta Data Server(MDS)が作成されます。本項では、CephFS ボリュームを作成する方法について説明します。

注記

これにより、データおよびメタデータプールと共に Ceph File System が作成されます。

前提条件

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

手順

  1. CephFS ボリュームを作成します。

    構文

    ceph fs volume create VOLUME_NAME

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

4.1.2. ファイルシステムボリュームの一覧表示

本項では、Ceph File System(CephFS)ボリュームを一覧表示する手順について説明します。

前提条件

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

手順

  1. CephFS ボリュームを一覧表示します。

    [root@mon ~]# ceph fs volume ls

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

Ceph Manager のオーケストレーターモジュールにより、Ceph File System(CephFS)の meta Data Server(MDS)が削除されます。本項では、Ceph File System(CephFS)ボリュームを削除する方法について説明します。

前提条件

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

手順

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

    構文

    ceph fs volume rm VOLUME_NAME [--yes-i-really-mean-it]

    [root@mon ~]# ceph fs volume rm cephfs --yes-i-really-mean-it

4.2. Ceph File System のサブボリュームグループ

ストレージ管理者は、絶対パスの作成、一覧表示、フェッチ、Ceph File System(CephFS)サブボリュームグループの削除を行うことができます。また、これらのサブボリュームグループのスナップショットを作成、一覧表示、および削除することもできます。CephFS のサブボリュームグループはディレクトリーレベルで抽象化され、一式のサブボリューム間でポリシー(例: ファイルのレイアウト)に影響します。

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

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

本項では、Ceph File System(CephFS)サブボリュームグループを作成する方法について説明します。

注記

サブボリュームグループの作成時に、データプールのレイアウト、uid、gid、およびファイルモードを 8 進法で指定します。デフォルトでは、サブボリュームグループは、8 進ファイルモード '755'、uid '0'、gid '0'、およびその親ディレクトリーのデータプールレイアウトで作成されます。

前提条件

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

手順

  1. CephFS サブボリュームグループを作成します。

    構文

    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

    サブボリュームグループがすでに存在する場合でも、コマンドは成功します。

4.2.2. ファイルシステムのサブボリュームグループの一覧表示

本項では、Ceph File System(CephFS)サブボリュームグループの一覧を表示する手順を説明します。

前提条件

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

手順

  1. CephFS サブボリュームグループを一覧表示します。

    構文

    ceph fs subvolumegroup ls VOLUME_NAME

    [root@mon ~]# ceph fs subvolumegroup ls cephfs

4.2.3. ファイルシステムサブボリュームグループの絶対パスの取得

本項では、Ceph File System(CephFS)サブボリュームグループの絶対パスを取得する方法を説明します。

前提条件

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

手順

  1. CephFS サブボリュームグループの絶対パスを取得します。

    構文

    ceph fs subvolumegroup getpath VOLUME_NAME GROUP_NAME

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

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

本項では、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

    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. CephFS サブボリュームグループのスナップショットを作成します。

    構文

    ceph fs subvolumegroup snapshot create VOLUME_NAME _GROUP_NAME SNAP_NAME

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

    このコマンドは、サブボリュームグループ下のすべてのサブボリュームを暗黙的にスナップショット化します。

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

本項では、Ceph File System(CephFS)サブボリュームグループのスナップショットを一覧表示する手順を説明します。

前提条件

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

手順

  1. CephFS サブボリュームグループのスナップショットを一覧表示します。

    構文

    ceph fs subvolumegroup snapshot ls VOLUME_NAME GROUP_NAME

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

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

本項では、Ceph File System(CephFS)サブボリュームグループのスナップショットを削除する手順を説明します。

注記

--force フラグを使用すると、スナップショットが存在しない場合に失敗します。

前提条件

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

手順

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

    構文

    ceph fs subvolumegroup snapshot rm VOLUME_NAME GROUP_NAME SNAP_NAME [--force]

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

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

本項では、Ceph File System(CephFS)サブボリュームグループを削除する方法を説明します。

注記

サブボリュームグループが削除されると、空または存在しない場合は失敗します。--force フラグを使用すると、存在しないサブボリュームグループを削除できます。

前提条件

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

手順

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

    構文

    ceph fs volume rm VOLUME_NAME GROUP_NAME [--force]

    [root@mon ~]# ceph fs volume rm cephfs subgroup0 --force

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

ストレージ管理者は、絶対パスの作成、一覧表示、フェッチ、メタデータの取得、Ceph File System(CephFS)サブボリュームの削除を行うことができます。また、これらのサブボリュームのスナップショットを作成、一覧表示、および削除することもできます。CephFS サブボリュームは、独立した Ceph File Systems ディレクトリーツリーの抽象です。

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

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

本項では、Ceph File System(CephFS)サブボリュームを作成する方法について説明します。

注記

サブボリュームの作成時に、そのサブボリュームグループ、データプールレイアウト、uid、gid、ファイルモードを 8 進数で指定し、バイト単位のサイズを指定できます。デフォルトでは、サブボリュームはデフォルトのサブボリュームグループ内に作成され、8 進ファイルモードの「755」、サブボリュームグループの UID、サブボリュームグループの gid、親ディレクトリーのデータプールレイアウト、サイズ制限はありません。

前提条件

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

手順

  1. 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]

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

    サブボリュームがすでに存在する場合でも、コマンドは成功します。

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

本項では、Ceph File System(CephFS)サブボリュームを一覧表示する手順について説明します。

前提条件

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

手順

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

手順

  1. 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.4. ファイルシステムサブボリュームのメタデータの取得

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

前提条件

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

手順

  1. 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

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

本項では、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

    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.6. ファイルシステムサブボリュームのスナップショットの一覧表示

本項では、Ceph File System(CephFS)サブボリュームのスナップショットを一覧表示する手順を説明します。

前提条件

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

手順

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

    構文

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

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

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

本項では、Ceph File System(CephFS)サブボリュームグループのスナップショットを削除する手順を説明します。

注記

--force フラグを使用すると、スナップショットが存在しない場合に失敗します。

前提条件

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

手順

  1. 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

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

本項では、Ceph File System(CephFS)サブボリュームを削除する方法について説明します。

注記

このコマンドは、サブボリュームとその内容を削除します。これは 2 つのステップで行います。まず、サブボリュームをごみ箱フォルダーに移動し、そのコンテンツを非同期的にパージします。スナップショットがある場合、サブボリュームの削除は失敗します。存在しない場合は、サブボリュームの削除に失敗します。--force フラグを使用すると、存在しないサブボリュームを削除できます。

前提条件

  • 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]

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

4.4. その他のリソース

第5章 Ceph ファイルシステムの管理

本章では、一般的な Ceph File System 管理タスクについて説明します。

5.1. 前提条件

5.2. ディレクトリーツリーの MDS ランクへのマッピング

本セクションでは、ディレクトリーとそのサブディレクトリーを特定のアクティブな Metadata Server(MDS)のランクにマッピングし、そのメタデータがそのランクを保持する MDS デーモンのみが管理されるようにする方法を説明します。この方法では、アプリケーションの負荷を均等に分散したり、ユーザーのメタデータ要求の影響をクラスター全体に制限したりできます。

重要

内部バランサーはすでにアプリケーションの負荷を動的に分散していることに注意してください。そのため、ディレクトリーツリーを、特定の慎重に選択したアプリケーションに対してのみ順位にマッピングします。さらに、ディレクトリーがランキングにマップされると、バランサーはこれを分割できません。その結果、マッピングされたディレクトリー内の多くの操作が、その優先順位と管理する MDS デーモンをオーバーロードできます。

前提条件

  • 複数のアクティブな MDS デーモンを設定します。詳細 ??? はを参照してください。
  • attr パッケージがマウントされた Ceph File System のクライアントノードにインストールされていることを確認します。

手順

  • ディレクトリーの ceph.dir.pin 拡張属性を設定します。

    setfattr -n ceph.dir.pin -v <rank> <directory>

    たとえば、/home/ceph-user/ ディレクトリーのすべてのサブディレクトリーを 2 階層に割り当てるには、次のコマンドを実行します。

    [user@client ~]$ setfattr -n ceph.dir.pin -v 2 /home/ceph-user

5.3. MDS ランクからのディレクトリーツリーの関連付け解除

本セクションでは、特定のアクティブなメタデータサーバー(MDS)からディレクトリーを関連付け解除する方法を説明します。

前提条件

  • attr パッケージがマウントされた Ceph File System のクライアントノードにインストールされていることを確認します。

手順

  • ceph.dir.pin 拡張属性をディレクトリー上の -1 に設定します。

    setfattr -n ceph.dir.pin -v -1 <directory>

    たとえば、/home/ceph-user/ ディレクトリーを MDS のランクから切り離すには、次のコマンドを実行します。

    [user@client ~]$ serfattr -n ceph.dir.pin -v -1 /home/ceph-user

    /home/ceph-user/ の個別にマッピングされたサブディレクトリーは影響を受けないことに注意してください。

5.4. ファイルおよびディレクトリーのレイアウトの使用

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

5.4.1. 前提条件

  • attr パッケージがインストールされていることを確認します。

assembly_working-with-file-and-directory-layouts.adoc - include::/modules/concept_understanding-file-and-directory-layouts.adoc[leveloffset=+1] の unresolved ディレクティブ

assembly_working-with-file-and-directory-layouts.adoc - include::/modules/procedure_setting-file-and-directory-layouts.adoc[leveloffset=+1] の unresolved ディレクティブ

assembly_working-with-file-and-directory-layouts.adoc - include::/modules/procedure_viewing-file-and-directory-layouts.adoc[leveloffset=+1] の unresolved ディレクティブ

assembly_working-with-file-and-directory-layouts.adoc - include::/modules/procedure_removing-directory-layouts.adoc[leveloffset=+1] の unresolved ディレクティブ

5.5. データプールの追加

Ceph File System(CephFS)は、データの保管に使用する複数のプールを追加することをサポートします。これは、以下に役立ちます。

  • 削減された冗長プールへのログデータの保存
  • SSD または NVMe プールへのユーザーのホームディレクトリーの保存
  • 基本的なデータ分離。

Ceph File System で別のデータプールを使用する前に、本項で説明されているように追加する必要があります。

デフォルトでは、ファイルデータの保管に CephFS は、作成中に指定された初期データプールを使用します。セカンダリーデータプールを使用するには、ファイルおよびディレクトリーレイアウトを使用して、プールのファイルデータを保存するようにファイルシステム階層の一部を設定する必要もあります。詳細 「ファイルおよびディレクトリーのレイアウトの使用」 はを参照してください。

手順

Monitor ホストおよび root ユーザーで以下のコマンドを使用します。

  1. 新しいデータプールを作成します。

    ceph osd pool create <name> <pg_num>

    以下に置き換えてください。

    • <name> はプールの名前に置き換えます。
    • <pg_num> は、配置グループ(PGs)の数に置き換えます。

    以下に例を示します。

    [root@monitor]# ceph osd pool create cephfs_data_ssd 64
    pool 'cephfs_data_ssd' created
  2. 新たに作成されたプールをメタデータサーバーの制御の下に追加します。

    ceph fs add_data_pool <fs_name> <name>

    以下に置き換えてください。

    • <fs_name> は、ファイルシステムの名前に置き換えます。
    • <name> はプールの名前に置き換えます。

    以下に例を示します。

    [root@monitor]# ceph fs add_data_pool cephfs cephfs_data_ssd
    added data pool 6 to fsmap
  3. プールが正常に追加されたことを確認します。

    [root@monitor]# ceph fs ls
    name: cephfs, metadata pool: cephfs_metadata, data pools: [cephfs_data cephfs_data_ssd]
  4. cephx 認証を使用する場合は、クライアントが新しいプールにアクセスできるようにします。詳細 「Ceph File System クライアントユーザーの作成」 はを参照してください。

5.6. Ceph File System クォータの使用

ストレージ管理者は、ファイルシステム内の任意のディレクトリーでクォータを表示、設定、および削除できます。クォータ制限は、バイト数またはディレクトリー内のファイル数に設定できます。

5.6.1. 前提条件

  • attr パッケージがインストールされていることを確認します。

5.6.2. Ceph File System のクォータ

本項では、CephFS におけるクォータのプロパティーとその制限について説明します。

クォータの制限について

  • CephFS のクォータは、設定した制限に達するとデータの書き込みを停止するために、ファイルシステムをマウントするクライアントの連携に依存します。ただし、クォータのみでは、非信頼のクライアントがファイルシステムを満たしないようにすることはできません。
  • ファイルシステムにデータを書き込むプロセスが、設定された制限に達すると、データ量がクォータ制限に達するまでの間、およびプロセスがデータの書き込みを停止した場合に、短い時間が経過します。通常、期間は 10 秒で測定されます。ただし、プロセスはこの期間中にデータの書き込みを継続します。プロセスが書き込む追加データの量は、停止するまでの経過時間により異なります。
  • Linux カーネルクライアントのバージョン 4.17 以降は、CephFS クォータをサポートするためにユーザー空間クライアント、libcephfs、および ceph-fuse を使用します。ただし、これらのカーネルクライアントは mimic+ クラスターのクォータのみをサポートしています。最近のバージョンも含めるカーネルクライアントは、クォータの拡張属性を設定できる場合でも、古いストレージクラスターのクォータを管理できません。
  • パスベースのアクセス制限を使用する場合は、クライアントが制限されているディレクトリー、またはその下にネストされたディレクトリーにクォータを設定してください。クライアントが MDS 機能に基づいて特定のパスへのアクセスを制限し、クォータがクライアントがアクセスできないance ディレクトリーに設定されていると、クライアントはクォータを強制しません。たとえば、クライアントが /home/ ディレクトリーにアクセスできず、クォータが /home/ に設定されていると クライアントはそのクォータを /home/user/ ディレクトリーに強制できません。
  • 削除または変更されたスナップショットファイルデータは、クォータに対してカウントされません。See also: http://tracker.ceph.com/issues/24284

5.6.3. クォータの表示

本セクションでは、getfattr コマンド および ceph.quota 拡張属性を使用して、ディレクトリーのクォータ設定を表示する方法を説明します。

注記

属性がディレクトリーの inode に表示される場合、そのディレクトリーにはクォータが設定されています。属性が inode に表示されない場合、その親ディレクトリーにクォータが設定されている場合もありますが、ディレクトリーにはクォータが設定されていません。拡張属性の値が 0 の場合、クォータは設定されません。

前提条件

  • attr パッケージがインストールされていることを確認します。

手順

  1. CephFS クォータを表示するには、以下を実行します。

    1. バイト制限クォータの使用:

      構文

      getfattr -n ceph.quota.max_bytes DIRECTORY

      [root@fs ~]# getfattr -n ceph.quota.max_bytes /cephfs/

    2. ファイル制限クォータの使用:

      構文

      getfattr -n ceph.quota.max_files DIRECTORY

      [root@fs ~]# getfattr -n ceph.quota.max_files /cephfs/

その他のリソース

  • 詳細は、man ページの getfattr(1) を参照してください。

5.6.4. クォータの設定

本セクションでは、setfattr コマンド および ceph.quota 拡張属性を使用して、ディレクトリーのクォータを設定する方法について説明します。

前提条件

  • attr パッケージがインストールされていることを確認します。

手順

  1. CephFS クォータを設定するには、以下を実行します。

    1. バイト制限クォータの使用:

      構文

      setfattr -n ceph.quota.max_bytes -v 100000000 /some/dir

      [root@fs ~]# setfattr -n ceph.quota.max_bytes -v 100000000 /cephfs/

      この例では、100000000 バイトは 100 MB と等しくなります。

    2. ファイル制限クォータの使用:

      構文

      setfattr -n ceph.quota.max_files -v 10000 /some/dir

      [root@fs ~]# setfattr -n ceph.quota.max_files -v 10000 /cephfs/

      この例では、10000 は 10,000 ファイルと等しくなります。

その他のリソース

  • 詳細は、man ページの setfattr(1) を参照してください。

5.6.5. クォータの削除

本セクションでは、setfattr コマンド および ceph.quota 拡張属性を使用して、ディレクトリーからクォータを削除する方法を説明します。

前提条件

  • attr パッケージがインストールされていることを確認します。

手順

  1. CephFS クォータを削除するには、以下を実行します。

    1. バイト制限クォータの使用:

      構文

      setfattr -n ceph.quota.max_bytes -v 0 DIRECTORY

      [root@fs ~]# setfattr -n ceph.quota.max_bytes -v 0 /cephfs/

    2. ファイル制限クォータの使用:

      構文

      setfattr -n ceph.quota.max_files -v 0 DIRECTORY

      [root@fs ~]# setfattr -n ceph.quota.max_files -v 0 /cephfs/

その他のリソース

  • 詳細は、man ページの setfattr(1) を参照してください。

5.6.6. その他のリソース

  • 詳細は、man ページの getfattr(1) を参照してください。
  • 詳細は、man ページの setfattr(1) を参照してください。

5.7. Ceph ファイルシステムの削除

ストレージ管理者は、Ceph File System(CephFS)を削除できます。これを行う前に、すべてのデータをバックアップし、すべてのクライアントがローカルにファイルシステムのマウントを解除していることを確認することを検討してください。

警告

この操作は破壊的であり、Ceph File System に保存されているデータを永続的にアクセスできなくなります。

前提条件

  • データのバックアップを作成します。
  • Ceph Monitor ノードへの root ユーザーとしてアクセスします。

手順

  1. クラスターにマークを付けます。

    ceph fs set name cluster_down true

    以下に置き換えてください。

    • name と、削除する Ceph File System の名前

    以下に例を示します。

    [root@monitor]# ceph fs set cephfs cluster_down true
    marked down
  2. Ceph File System のステータスを表示します。

    ceph fs status

    以下に例を示します。

    [root@monitor]# ceph fs status
    cephfs - 0 clients
    ======
    +------+--------+-------+---------------+-------+-------+
    | Rank | State  |  MDS  |    Activity   |  dns  |  inos |
    +------+--------+-------+---------------+-------+-------+
    |  0   | active | ceph4 | Reqs:    0 /s |   10  |   12  |
    +------+--------+-------+---------------+-------+-------+
    +-----------------+----------+-------+-------+
    |       Pool      |   type   |  used | avail |
    +-----------------+----------+-------+-------+
    | cephfs_metadata | metadata | 2246  |  975G |
    |   cephfs_data   |   data   |    0  |  975G |
    +-----------------+----------+-------+-------+
  3. ステータスに示されたすべての MDS の順位を満たします。

    # ceph mds fail rank

    以下に置き換えてください。

    • 失敗する MDS デーモンのランク付け

    以下に例を示します。

    [root@monitor]# ceph mds fail 0
  4. Ceph ファイルシステムを削除します。

    ceph fs rm name --yes-i-really-mean-it

    以下に置き換えてください。

    • name と、削除する Ceph File System の名前

    以下に例を示します。

    [root@monitor]# ceph fs rm cephfs --yes-i-really-mean-it
  5. ファイルシステムが正常に削除されたことを確認します。

    [root@monitor]# ceph fs ls
  6. オプション。削除したファイルシステムに関連付けられたデータおよびメタデータプールを削除します。『 Red Hat Ceph Storage 4 ストレージストラテジーガイド』の「 プールの削除 」セクションを参照してください

5.8. クライアントの最小バージョンの設定

サードパーティーのクライアントが Red Hat Ceph Storage Ceph File System(CephFS)に接続する必要がある最小限のバージョンを設定することができます。min_compat_client パラメーターを設定して、古いクライアントがファイルシステムをマウントしないようにします。また、CephFS は min_compat_client で設定されたバージョンよりも古いバージョンを使用する現在接続されているクライアントを自動的にエビクトします。

この設定は、バグが含まれる古いクライアントや機能互換性がクラスターへの接続や他のクライアントの中断を防ぐことです。たとえば、古いバージョンの CephFS クライアントによっては機能が適切に解放されない可能性があり、他のクライアントリクエストの処理が遅くなる可能性があります。

min_compat_client の値は、アップストリームの Ceph バージョンに基づいています。Red Hat では、サードパーティーのクライアントが Red Hat Ceph Storage クラスターと同じメジャーバージョンのアップストリームを使用することを推奨します。以下の表を参照して、アップストリームバージョンと対応する Red Hat Ceph Storage バージョンを表示します。

表5.1 min_compat_client values

アップストリームの Ceph バージョンRed Hat Ceph Storage バージョン

luminous

12.2

Red Hat Ceph Storage 3

mimic

13.2

該当なし

nautilus

14.2

Red Hat Ceph Storage 4

重要

Red Hat Enterprise Linux 7 を使用する場合は、Red Hat Enterprise Linux 7 は余計な クライアントと見なされ、それ以降のバージョンを使用する場合に CephFS でマウントポイントにアクセスできないため、min_compat_ client を luminous よりも新しいバージョンに設定しないでください。

前提条件

  • Ceph File System がデプロイされた動作用 Red Hat Ceph Storage クラスター

手順

  1. クライアントの最小バージョンを設定します。

    ceph fs set name min_compat_client release

    name を Ceph File System の名前に置き換え、release をクライアントの最小バージョンに置き換えます。たとえば、cephfs Ceph File System で、少なくとも nautilus アップストリームバージョンを使用するようにクライアントを制限するには、以下のコマンドを実行します。

    $ ceph fs set cephfs min_compat_client nautilus

    利用可能 表5.1「min_compat_client values」 な値の一覧と、それらが Red Hat Ceph Storage バージョンに対応する方法については、を参照してください。

第6章 Ceph ファイルシステムのマウント解除

本章では、ユーザー空間(FUSE)クライアントでカーネルまたはファイルシステムとしてマウントされている Ceph File System のマウントを解除する方法を説明します。

6.1. カーネルクライアントとしてマウントされる Ceph ファイルシステムのマウント解除

本項では、カーネルクライアントとしてマウントされる Ceph File System のマウントを解除する方法を説明します。

手順

  • カーネルクライアントとしてマウントされている Ceph File System のマウントを解除するには、以下を実行します。

    umount <mount-point>

    ファイルシステムがマウントされるマウントポイントを指定します。

    [root@client ~]# umount /mnt/cephfs

その他のリソース

  • man ページの umount(8)

6.2. FUSE クライアントとしてマウントされた Ceph ファイルシステムのマウント解除

本項では、ユーザー空間(FUSE)クライアントでファイルシステムとしてマウントされる Ceph File System のマウントを解除する方法を説明します。

手順

  • FUSE にマウントされている Ceph ファイルシステムをアンマウントするには、以下を実行します。

    fusermount -u <mount-point>

    ファイルシステムがマウントされるマウントポイントを指定します。

    [root@client ~]# fusermount -u /mnt/cephfs

その他のリソース

  • man ページの ceph-fuse(8)

付録A Troubleshooting

A.1. CephFS 正常性メッセージ

クラスターのヘルスチェック

Ceph monitor デーモンは、MDS クラスターの特定の状態に応じてヘルスメッセージを生成します。以下は、クラスターの正常性メッセージとその説明です。

MDS ランク <ranks> has failed
1 つ以上の MDS ランクは、現時点でいずれの MDS デーモンにも割り当てられません。クラスターは、適切な代替デーモンが起動するまで復旧しません。
MDS ランク <ranks> が破損する
1 つ以上の MDS のランクが、保存されたメタデータに深刻な損傷を受けており、メタデータが修復されるまで再起動できません。
MDS クラスターが低下する
1 つ以上の MDS ランクは現在稼働していないため、問題が解決されるまで、クライアントはメタデータ I/O を一時停止する可能性があります。これには、失敗または破損するランクが含まれます。また、MDS で実行されているが、依然として アクティブな 状態ではない(例: 再生 状態の順)順も含まれます。
MDS <names> are laggy
MDS デーモンは、mds_beacon_interval オプションで指定した間隔(デフォルトは 4 秒)でモニターにビーコン メッセージを送信する必要があります。mds_beacon_grace オプション(デフォルトは 15 秒)で指定された時間内に MDS デーモンの送信に失敗する 、Ceph monitor は MDS デーモンを laggy としてマークし、利用可能な場合は自動的にスタンバイデーモンに置き換えます。
デーモン報告されたヘルスチェック

MDS デーモンは、さまざまな不要な状態を特定して、ceph status コマンドの出力で返します。この条件には、人間が判読できるメッセージや、JSON 出力に表示される MDS_HEALTH を起動する一意のコードがあります。以下は、デーモンメッセージ、コード、および説明の一覧です。

"トリムについて』…​"

Code: MDS_HEALTH_TRIM

CephFS は、ログセグメントに分割されるメタデータジャーナルを維持します。ジャーナルの長さ(セグメントの数)は、mds_log_max_segments 設定により制御されます。セグメントの数がその設定を超えると、MDS はメタデータを書き戻し、最も古いセグメントを削除(trim)できるようにします。このプロセスが遅い場合や、ソフトウェアのバグがトリミングを妨げる場合は、このヘルスメッセージが表示されます。このメッセージのしきい値は、セグメント数が 2 倍の mds_log_max_segments になります。

"client <name> failsing to capability release"

コード: MDS_HEALTH_CLIENT_LATE_RELEASE、MDS_HEALTH_CLIENT_LATE_RELEASE_MANY

CephFS クライアントは MDS によって機能発行されます。この機能は、ロックと同じように機能します。たとえば、別のクライアントにアクセスする必要がある場合、MDS はクライアントに機能を解放するよう要求する場合があります。クライアントが応答しない場合は、即座に実行できないか、または実行に失敗する可能性があります。クライアントが mds_revoke_cap_timeout オプションで指定された時間よりも長い時間が経過すると表示されます(デフォルトは 60 秒)。

"client <name> failsing to cache pressure"

コード: MDS_HEALTH_CLIENT_RECALL、MDS_HEALTH_CLIENT_RECALL_MANY

クライアントはメタデータキャッシュを維持します。クライアントキャッシュの inode などの項目は MDS キャッシュでも固定されます。MDS がキャッシュを縮小して独自のキャッシュサイズ制限の範囲内に留まる必要がある場合、MDS はメッセージをクライアントに送信してキャッシュを縮小します。クライアントが応答しない場合は、MDS がキャッシュサイズに適切に配置されなくなり、最終的に MDS がメモリーが不足し、突然終了する可能性があります。クライアントが mds_recall_state_timeout オプションで指定された時間よりも準拠するのに時間がかかっている場合は、このメッセージが表示されます(デフォルトは 60 秒)。詳細 ??? はを参照してください。

"client name failsing to advance its older client/flush tid"(クライアント名が最も古いクライアント/フラッシュ tid を続行できない)

コード: MDS_HEALTH_CLIENT_OLDEST_TID、MDS_HEALTH_CLIENT_OLDEST_TID_MANY

クライアントと MDS サーバー間の通信を行う CephFS プロトコルは、最も古い tid というフィールドを使用して、MDS がクライアント要求を完全に完了したことを MDS に通知します。これにより、MDS はそれらを無視することができます。応答しないクライアントがこのフィールドを続行できない場合、MDS がクライアント要求によって使用されるリソースを適切にクリーンアップできなくなる可能性があります。このメッセージは、MDS 側で完了し、クライアントの 最も古い tid 値で対応していない max_completed_requests オプション(デフォルトは 100000)で指定された数を超える要求がある場合に表示されます。

"metadata damage detected"

Code: MDS_HEALTH_DAMAGE

メタデータプールからの読み取り時に、破損するか、メタデータが欠落していました。このメッセージは、MDS が動作を継続するため、破損したサブツリーにクライアントにアクセスすると、破損したサブツリーに I/O エラーを返すため、十分な障害が分離されたことを示します。Damage ls 管理ソケットコマンドを使用して、破損の詳細を表示します。このメッセージは、破損が発生するとすぐに表示されます。

"mDS in read-only mode"

Code: MDS_HEALTH_READ_ONLY

MDS が読み取り専用モードになり、EROFS エラーコード をすべてのメタデータの変更を試みるクライアント操作に返します。MDS は読み取り専用モードになります。

  • メタデータプールへの書き込み中に書き込みエラーが発生した場合。
  • 管理者が、force_readonly 管理ソケットコマンドを使用して MDS を読み取り専用モードに強制的 に入力する場合。
"<N> 遅延要求がブロックされる"

Code: MDS_HEALTH_SLOW_REQUEST

MDS の実行速度が非常に遅い、またはバグが発生したことを示す 1 つ以上のクライアント要求がすぐに完了していない。ops 管理 socket コマンドを使用して、未処理のメタデータ操作を一覧表示します。クライアント要求の時間が mds_op_complaint_time オプションで指定された値よりも長い場合、このメッセージが表示されます(デフォルトは 30 秒)。

""Too many inodes in cache"

Code: MDS_HEALTH_CACHE_OVERSIZED

MDS は管理者が設定した制限に従うためにキャッシュのトリミングに失敗しています。MDS キャッシュが大きすぎると、デーモンは利用可能なメモリーを使い切ってしまう可能性があり、予期せずに終了する可能性があります。MDS キャッシュサイズがその制限よりも 50% 大きい場合は、このメッセージが表示されます(デフォルトでは)。詳細 ??? はを参照してください。

付録B 設定リファレンス

B.1. MDS 設定リファレンス

mon force standby active
description
true に設定すると、スタンバイ再生モードでの force MDS がアクティブであることを確認します。Ceph 設定ファイルの [mon] セクションまたは [global] セクションの下に設定します。
type
ブール値
デフォルト
true
mds 最大値
description
クラスターの作成時にアクティブな MDS デーモンの数。Ceph 設定ファイルの [mon] セクションまたは [global] セクションの下に設定します。
type
32 ビット整数
デフォルト
1
MDS の最大ファイルサイズ
description
新しいファイルシステムの作成時に設定できる最大ファイルサイズ。
type
64 ビットの整数署名なし
デフォルト
1ULL << 40
MDS キャッシュメモリー制限
description
MDS がキャッシュに対して強制するメモリー制限。Red Hat は、mds キャッシュサイズパラメーターの代わりに、このパラメーターを使用することを推奨します。
type
64 ビットの整数署名なし
デフォルト
1073741824
MDS キャッシュの予約
description
MDS キャッシュが維持するキャッシュ予約(メモリーまたは inode)。この値は、設定された最大キャッシュのパーセンテージです。MDS が予約に分散し始めると、キャッシュサイズが減少するまでクライアント状態を呼び出します。予約を復元するためにサイズが減少します。
type
float
デフォルト
0.05
MDS キャッシュのサイズ
description
キャッシュする inode の数。値が 0 の場合は無制限の数字を示します。Red Hat は、mds_cache_memory_limit を使用して MDS キャッシュが使用するメモリー量を制限することを推奨します。
type
32 ビット整数
デフォルト
0
MDS キャッシュの中間
description
(上部から)キャッシュ LRU の新規アイテムの挿入ポイント。
type
float
デフォルト
0.7
MDS dir コミットの比率
description
ディレクトリーの一部には、(部分的な更新ではなく)完全更新を使用して Ceph コミットする前に誤った情報が含まれています。
type
float
デフォルト
0.5
MDS dir の最大コミットサイズ
description
ディレクトリーを小規模なトランザクション(MB 単位)に分割する前に、ディレクトリーの更新の最大サイズ。
type
32 ビット整数
デフォルト
90
MDS の減少半減期
description
MDS キャッシュの半減期。
type
float
デフォルト
5
MDS ビーコン間隔
description
モニターに送信されるビーコンメッセージの頻度(秒単位)。
type
float
デフォルト
4
MDS ベーコンの猶予
description
Ceph の前にビーコンのない間隔は MDS ラグリーを宣言し ます (場合によってはそれを置き換えます)。
type
float
デフォルト
15
MDS のブラックリスト間隔
description
OSD マップで失敗した MDS デーモンのブラックリスト時間。
type
float
デフォルト
24.0*60.0
MDS セッションタイムアウト
description
Ceph の性能およびリースがタイムアウトするまでのクライアントの停止間隔(秒単位)。
type
float
デフォルト
60
MDS セッションの自動閉じる
description
Ceph がラッキークライアントのセッションを閉じる まで の間隔(秒単位)。
type
float
デフォルト
300
MDS の再接続タイムアウト
description
MDS の再起動中にクライアントが再接続するのを待機する間隔(秒単位)。
type
float
デフォルト
45
MDS ティック間隔
description
MDS が内部の定期的なタスクを実行する頻度。
type
float
デフォルト
5
MDS dirstat の最小間隔
description
ツリーに再帰統計を伝搬しないようにする最小間隔(秒単位)。
type
float
デフォルト
1
MDS scatter nudge の間隔
description
ディレクトリー統計の変更がどの程度迅速に伝播されるか。
type
float
デフォルト
5
MDS クライアントの事前割り当て
description
クライアントセッションごとに事前割り当てる inode 番号の数。
type
32 ビット整数
デフォルト
1000
MDS の初期応答
description
MDS がジャーナルにコミットする前に、クライアントが要求結果を表示できるかどうかを決定します。
type
ブール値
デフォルト
true
MDS による tmap の使用
description
ディレクトリーの更新 は trivialmap を使用します。
type
ブール値
デフォルト
true
MDS のデフォルトディレクトリーハッシュ
description
ディレクトリーのフラグメント間でファイルのハッシュに使用する機能。
type
32 ビット整数
デフォルト
2 (つまり rjenkins
MDS ログ
description
MDS がジャーナルメタデータの更新を行う必要がある場合は true に設定します(ベンチマークのみで無効)。
type
ブール値
デフォルト
true
MDS ログの破損イベントのスキップ
description
ジャーナルの再生中に MDS が破損したジャーナルイベントをスキップしようとするかどうかを決定します。
type
ブール値
デフォルト
false
MDS ログの最大イベント
description
Ceph がトリム処理を開始するまでのジャーナルの最大イベント。制限を無効にするには -1 に設定します。
type
32 ビット整数
デフォルト
-1
MDS ログの最大セグメント
description
Ceph がトリムリングを開始するまでのセグメント(オブジェクト)の最大数。制限を無効にするには -1 に設定します。
type
32 ビット整数
デフォルト
30
MDS ログの最大有効期限
description
並行して期限切れになるセグメントの最大数。
type
32 ビット整数
デフォルト
20
MDS ログの eopen サイズ
description
EOpen イベントの inode の 最大 数。
type
32 ビット整数
デフォルト
100
MDS のサンプル間隔
description
(断片化の決定に対して)ディレクトリーの気調のサンプルの頻度を決定します。
type
float
デフォルト
3
MDS の複製しきい値
description
Ceph が他のノードへのメタデータの複製を試みるまでの最大気調。
type
float
デフォルト
8000
MDS │ unreplicate しきい値
description
Ceph が他のノードへのメタデータの複製を停止するまでの最小の使用率。
type
float
デフォルト
0
MDS にフグ
description
MDS がディレクトリーを断片化するかどうかを決定します。
type
ブール値
デフォルト
false
MDS を分割するサイズ
description
MDS のディレクトリーの最大サイズは、ディレクトリーの断片を小規模なビットに分割します。root ディレクトリーには、デフォルトのフラグメントサイズ制限が 10000 に設定されています。
type
32 ビット整数
デフォルト
10000
MDS を分割した rd
description
Ceph がディレクトリーの断片を分割する前に、最大読み取りの気性。
type
float
デフォルト
25000
MDS スプリット wr
description
Ceph がディレクトリーの断片を分割する前に、最大ディレクトリー書き込みの気性。
type
float
デフォルト
10000
MDS スプリットビット
description
ディレクトリーの断片を分割するビット数。
type
32 ビット整数
デフォルト
3
MDS をマージするサイズ
description
Ceph が隣接するディレクトリーの断片のマージを試みる前の最小ディレクトリーサイズ。
type
32 ビット整数
デフォルト
50
MDS をマージ rd
description
Ceph がオーバーディレクトリーの断片をマージする前に、最小読み取りの気性。
type
float
デフォルト
1000
MDS ✓ マージ wr
description
Ceph がオーバーディレクトリーの断片をマージする前に、最小書き込みの気性。
type
float
デフォルト
1000
MDS の間隔
description
MDS ノード間のワークロード交換の頻度(秒単位)。
type
32 ビット整数
デフォルト
10
MDS のフラグメント間隔
description
ディレクトリーの断片化を調整する頻度(秒単位)。
type
32 ビット整数
デフォルト
5
MDS のアイドルしきい値
description
Ceph がサブツリーを親に移行する前の最小の気調。
type
float
デフォルト
0
MDS の最大値
description
Ceph が停止する前にバランサーを実行する反復回数。テスト目的でのみ使用されます。
type
32 ビット整数
デフォルト
-1
MDS max until
description
Ceph が停止するまでのバランサーの実行秒数。テスト目的でのみ使用されます。
type
32 ビット整数
デフォルト
-1
MDS モード
description

MDS 負荷を計算する方法:

  • 1 = Hybrid.
  • 2 = 要求レートとレイテンシー。
  • 3 = CPU 負荷。
type
32 ビット整数
デフォルト
0
MDS の最小リバランス
description
Ceph が移行する前に最低のサブツリーの温度。
type
float
デフォルト
0.1
MDS min start
description
Ceph がサブツリーを検索する前に、サブツリーの最低気数。
type
float
デフォルト
0.2
MDS ✓ need min
description
許可するターゲットサブツリーサイズの最小数です。
type
float
デフォルト
0.8
MDS を最大が必要
description
許可されるターゲットサブツリーの最大分数。
type
float
デフォルト
1.2
MDS │ midchunk
description
Ceph は、ターゲットサブツリーのこの割合を超えるサブツリーを移行します。
type
float
デフォルト
0.3
MDS │ minchunk
description
Ceph は、ターゲットサブツリーのこの割合よりも小さいサブツリーを無視します。
type
float
デフォルト
0.001
MDS のターゲット削除最小
description
Ceph より前のバランサーの反復回数は、MDS マップから古い MDS ターゲットを削除します。
type
32 ビット整数
デフォルト
5
MDS のターゲット削除の最大値
description
Ceph 以前のバランサーの反復の最大数は、MDS マップから古い MDS ターゲットを削除します。
type
32 ビット整数
デフォルト
10
MDS の再生間隔
description
standby -replay モード(ホットスタンバイ )のジャーナルのポーリング間隔。
type
float
デフォルト
1
MDS シャットダウンチェック
description
MDS のシャットダウン中にキャッシュをポーリングする間隔。
type
32 ビット整数
デフォルト
0
MDS thrash エクスポート
description
Ceph は、ノード間でサブツリーをランダムにエクスポートします(テストのみ)。
type
32 ビット整数
デフォルト
0
MDS のスラッシュフラグメント
description
Ceph は無作為に断片化またはマージします。
type
32 ビット整数
デフォルト
0
マップ上の MDS ダンプキャッシュ
description
Ceph は MDS キャッシュの内容を各 MDS マップのファイルにダンプします。
type
ブール値
デフォルト
false
再参加後の MDS ダンプキャッシュ
description
リカバリー中にキャッシュに再度参加した後に、Ceph は MDS キャッシュの内容をファイルにダンプします。
type
ブール値
デフォルト
false
MDS verify scatter
description
Ceph は、さまざまな scatter/gather invariants が true であることを想定します(開発者のみ)。
type
ブール値
デフォルト
false
MDS debug scatterstat
description
Ceph は、さまざまな再帰統計の不変性が true であることを仮定します(開発者のみ)。
type
ブール値
デフォルト
false
MDS debug flag
description
便利な場合には、Ceph はディレクトリーの断片化を検証します(開発者のみ)。
type
ブール値
デフォルト
false
MDS のデバッグ認証ピン
description
デバッグ認証のピンが不変(開発者用のみ)。
type
ブール値
デフォルト
false
MDS デバッグサブツリー
description
デバッグサブツリーの不変(開発者のみ)。
type
ブール値
デフォルト
false
MDS での mdstable の強制終了
description
Ceph は MDS Table コードに MDS の障害を挿入します(開発者のみが対象)。
type
32 ビット整数
デフォルト
0
MDS のエクスポートの強制終了
description
Ceph は、サブツリーのエクスポートコードに MDS の失敗を注入します(開発者のみが対象)。
type
32 ビット整数
デフォルト
0
MDS のインポートの停止
description
Ceph は、サブツリーのインポートコードに MDS の失敗を注入します(開発者のみが対象)。
type
32 ビット整数
デフォルト
0
MDS の強制終了リンク
description
Ceph はハードリンクコードに MDS の障害を挿入します(開発者のみが対象)。
type
32 ビット整数
デフォルト
0
MDS で名前変更の強制終了
description
Ceph は名前変更コードに MDS の失敗を注入します(開発者のみが対象)。
type
32 ビット整数
デフォルト
0
MDS 消去セッション
description
Ceph は起動時にすべてのクライアントセッションを削除します(テスト用のみ)。
type
ブール値
デフォルト
0
MDS 消去(事前割り当て)
description
Ceph は起動時に inode の事前割り当てメタデータを削除します(テストのみ)。
type
ブール値
デフォルト
0
MDS skip ino
description
起動時にスキップする inode 番号の数(テストのみ)。
type
32 ビット整数
デフォルト
0
名前の MDS スタンバイ
description
MDS デーモンは、この設定で指定された名前の別の MDS デーモンに対してスタンバイします。
type
string
デフォルト
該当なし
MDS スタンバイ
description
MDS デーモンのインスタンスは、このランクの別の MDS デーモンインスタンスのスタンバイ状態になります。
type
32 ビット整数
デフォルト
-1
MDS スタンバイの再生
description
MDS デーモンが、アクティブな MDS(ホットスタンバイ)のログをポーリングして再生するかどうかを決定します。
type
ブール値
デフォルト
false

B.2. Journaler 設定リファレンス

journaler allow split entries
description
エントリーがストライプ境界にまたがるようにします。
type
ブール値
required
いいえ
デフォルト
true
ジャーナナーの書き込みヘッド間隔
description
ジャーナルヘッドオブジェクトを更新する頻度。
type
integer
required
いいえ
デフォルト
15
ジャーナラーの事前フェッチの期間
description
ジャーナルの再生で先に読み取るストライプ期間。
type
integer
required
いいえ
デフォルト
10
ジャーナルのプレゼロ期間
description
書き込み位置からゼロまでのストライプ期間。
type
integer
required
いいえ
デフォルト
10
ジャーナナーのバッチ間隔
description
人為的に発生するレイテンシーを秒単位で最大化します。
type
double
required
いいえ
デフォルト
.001
journaler バッチ最大値
description
フラッシュが遅延する最大バイト数。
type
64 ビット符号なし整数
required
いいえ
デフォルト
0

B.3. Fuse クライアント設定リファレンス

本項には、CephFS FUSE クライアントの設定オプションが記載されています。[client] セクションの下にある Ceph 設定ファイルで設定します。

client_acl_type
description
ACL タイプを設定します。現在、POSIX ACL または空の文字列を有効にする場合は posix_acl の値のみを使用できます。このオプションは、fuse_default_permissionsfalse に設定されている場合にのみ有効になります。
type
string
デフォルト
"" (ACL の強制なし)
client_cache_mid
description
クライアントキャッシュの中間ポイントを設定します。中間ポイントは、最近使用した一覧をホットおよびウォームリストに分割します。
type
float
デフォルト
0.75
client_cache のサイズ
description
クライアントが保持する inode の数をメタデータキャッシュに設定します。
type
integer
デフォルト
16384 (16 MB)
client_caps_release_delay
description
機能リリース間の遅延を秒単位で設定します。この遅延は、別のユーザー空間操作に機能が必要な場合に、クライアントが機能を解放するのを待機する秒数を設定します。
type
integer
デフォルト
5 (秒)
client_debug_force_sync_read
description
true に設定すると、クライアントはローカルページキャッシュを使用する代わりに、OSD から直接データを読み込みます。
type
ブール値
デフォルト
false
client_dirsize_rbytes
description
true に設定した場合は、ディレクトリーの再帰サイズを使用します(つまり、すべての descendants の合計)。
type
ブール値
デフォルト
true
client_max_inline_size
description
RADOS の別のデータオブジェクトではなく、ファイル inode に保存されているインラインデータの最大サイズを設定します。この設定は、inline_data フラグが MDS マップに設定されている場合にのみ適用されます。
type
integer
デフォルト
4096
client_metadata
description
自動生成されたバージョン、ホスト名、およびその他のメタデータに加えて、各 MDS に送信されるクライアントメタデータのコンマ区切り文字列。
type
string
デフォルト
"" (追加のメタデータなし)
client_mount_gid
description
CephFS マウントのグループ ID を設定します。
type
integer
デフォルト
-1
client_mount_timeout
description
CephFS マウントのタイムアウトを秒単位で設定します。
type
float
デフォルト
300.0
client_mount_uid
description
CephFS マウントのユーザー ID を設定します。
type
integer
デフォルト
-1
client_mountpoint
description
ceph-fuse コマンドの -r オプションの代替手段を参照してください。
type
string
デフォルト
/
client_oc
description
オブジェクトのキャッシュを有効にします。
type
ブール値
デフォルト
true
client_oc_max_dirty
description
オブジェクトキャッシュの最大ダーティーバイト数を設定します。
type
integer
デフォルト
104857600 (100MB)
client_oc_max_dirty_age
description
ライトバック前に、オブジェクトキャッシュのダーティーデータの最大期間を秒単位で設定します。
type
float
デフォルト
5.0 (秒)
client_oc_max_objects
description
オブジェクトキャッシュの最大オブジェクト数を設定します。
type
integer
デフォルト
1000
client_oc_size
description
クライアントキャッシュするデータのバイト数を設定します。
type
integer
デフォルト
209715200 (200 MB)
client_oc_target_dirty
description
ダーティーデータのターゲットサイズを設定します。Red Hat は、この番号を減らすことを推奨します。
type
integer
デフォルト
8388608 (8MB)
client_permissions
description
すべての I/O 操作でクライアントの権限を確認します。
type
ブール値
デフォルト
true
client_quota_df
description
statfs 操作のルートディレクトリークォータを報告します。
type
ブール値
デフォルト
true
client_readahead_max_bytes
description
今後の読み取り操作のためにカーネルが先に読み取る最大バイト数を設定します。client_readahead_max_periods 設定によって上書きされます。
type
integer
デフォルト
0 (無制限)
client_readahead_max_periods
description
カーネルが先に読み取るファイルレイアウト期間(オブジェクトサイズとストライプの数)の数を設定します。client_readahead_max_bytes 設定を上書きします。
type
integer
デフォルト
4
client_readahead_min
description
カーネルが先に読み取る最小数バイトを設定します。
type
integer
デフォルト
131072 (128KB)
client_snapdir
description
スナップショットディレクトリー名を設定します。
type
string
デフォルト
".snap"
client_tick_interval
description
機能更新とその他のアップキーピングの間隔を秒単位で設定します。
type
float
デフォルト
1.0
client_use_random_mds
description
リクエストごとにランダム MDS を選択します。
type
ブール値
デフォルト
false
fuse_default_permissions
description
false に設定すると、ceph-fuse ユーティリティーは、FUSE のパーミッションの適用に依存するのではなく、独自のパーミッションチェックを行います。クライアント acl type=posix_acl オプションとともに false に設定して、POSIX ACL を有効にします。
type
ブール値
デフォルト
true

開発者のオプション

重要

これらのオプションは内部で使用されます。オプションの一覧のみを完了するためにここに一覧表示されます。

client_debug_getattr_caps
description
MDS からの応答に必要な機能が含まれているかどうかを確認します。
type
ブール値
デフォルト
false
client_debug_inject_tick_delay
description
クライアントティック間の一時的な遅延を追加します。
type
integer
デフォルト
0
client_inject_fixed_oldest_tid
description, type
ブール値
デフォルト
false
client_inject_release_failure
description, type
ブール値
デフォルト
false
client_trace
description
すべてのファイル操作のトレースファイルへのパス。出力は、Ceph 合成クライアントで使用されるように設計されています。詳細は、man ページの ceph-syn(8) を参照してください。
type
string
デフォルト
"" (無効)