3.5. Ceph File System のカーネルクライアントとしてのマウント
Ceph File System (CephFS) は、システムの起動時に手動で、または自動でカーネルクライアントとしてマウントできます。
Red Hat Enterprise Linux の他に、他の Linux ディストリビューションで実行しているクライアントは許可されますが、サポートされていません。これらのクライアントの使用時に、CephFS Metadata Server またはその他のストレージクラスターで問題が見つかる場合、Red Hat はそれらに対応します。原因がクライアント側にある場合は、Linux ディストリビューションのカーネルベンダーがこの問題に対応する必要があります。
前提条件
- Linux ベースのクライアントノードへのルートレベルのアクセス。
- Ceph Monitor ノードへの root レベルのアクセス。
- 既存の Ceph File System。
手順
Ceph Storage クラスターを使用するようにクライアントノードを設定します。
Red Hat Ceph Storage 7 Tools リポジトリーを有効にします。
Red Hat Enterprise Linux 9
[root@client01 ~]# subscription-manager repos --enable=rhceph-6-tools-for-rhel-9-x86_64-rpms
ceph-common
パッケージをインストールします。[root@client01 ~]# dnf install ceph-common
モニターノードの Cephadm シェルにログインします。
例
[root@host01 ~]# cephadm shell
Ceph クライアントキーリングを Ceph Monitor ノードからクライアントノードにコピーします。
構文
scp /ceph.client.ID.keyring root@CLIENT_NODE_NAME:/etc/ceph/ceph.client.ID.keyring
CLIENT_NODE_NAME を Ceph クライアントのホスト名または IP アドレスに置き換えます。
例
[ceph: root@host01 /]# scp /ceph.client.1.keyring root@client01:/etc/ceph/ceph.client.1.keyring
Ceph 設定ファイルを Monitor ノードからクライアントノードにコピーします。
構文
scp /etc/ceph/ceph.conf root@CLIENT_NODE_NAME:/etc/ceph/ceph.conf
CLIENT_NODE_NAME を Ceph クライアントのホスト名または IP アドレスに置き換えます。
例
[ceph: root@host01 /]# scp /etc/ceph/ceph.conf root@client01:/etc/ceph/ceph.conf
クライアントノードから、設定ファイルに適切なパーミッションを設定します。
[root@client01 ~]# chmod 644 /etc/ceph/ceph.conf
- automatically または manually のいずれかを選択します。
Manually Mounting
クライアントノードにマウントディレクトリーを作成します。
構文
mkdir -p MOUNT_POINT
例
[root@client01 ~]# mkdir -p /mnt/cephfs
Ceph ファイルシステムをマウントします。複数の Ceph Monitor アドレスを指定するには、
mount
コマンドでコンマで区切って、マウントポイントを指定し、クライアント名を設定します。注記Red Hat Ceph Storage 4.1 の時点で、
mount.ceph
はキーリングファイルを直接読み取りできます。そのため、シークレットファイルは不要になりました。name=CLIENT_ID
でクライアント ID を指定すると、mount.ceph
は適切なキーリングファイルを検索します。構文
mount -t ceph MONITOR-1_NAME:6789,MONITOR-2_NAME:6789,MONITOR-3_NAME:6789:/ MOUNT_POINT -o name=CLIENT_ID,fs=FILE_SYSTEM_NAME
例
[root@client01 ~]# mount -t ceph mon1:6789,mon2:6789,mon3:6789:/ /mnt/cephfs -o name=1,fs=cephfs01
注記1 つのホスト名が複数の IP アドレスに解決するように DNS サーバーを設定できます。次に、コンマ区切りリストを指定する代わりに、
mount
コマンドでその 1 つのホスト名を使用できます。注記また、Monitor ホスト名は
:/
に置き換えられ、mount.ceph
は Ceph 設定ファイルを読み取り、どのモニターに接続するかを判断することもできます。注記nowsync
オプションを設定して、Red Hat Ceph Storage クラスターでファイルの作成と削除を非同期的に実行できます。これにより、整合性に影響を与えずにこれらのシステムコールのラウンドトリップレイテンシーを回避することで、一部のワークロードのパフォーマンスが改善されます。nowsync
オプションには、Red Hat Enterprise Linux 9.0 以降を搭載したカーネルクライアントが必要です。例
[root@client01 ~]# mount -t ceph mon1:6789,mon2:6789,mon3:6789:/ /mnt/cephfs -o nowsync,name=1,fs=cephfs01
ファイルシステムが正常にマウントされていることを確認します。
構文
stat -f MOUNT_POINT
例
[root@client01 ~]# stat -f /mnt/cephfs
自動マウント
クライアントホストで、Ceph ファイルシステムをマウントする新しいディレクトリーを作成します。
構文
mkdir -p MOUNT_POINT
例
[root@client01 ~]# mkdir -p /mnt/cephfs
以下のように
/etc/fstab
ファイルを編集します。構文
#DEVICE PATH TYPE OPTIONS MON_0_HOST:PORT, MOUNT_POINT ceph name=CLIENT_ID, MON_1_HOST:PORT, ceph.client_mountpoint=/VOL/SUB_VOL_GROUP/SUB_VOL/UID_SUB_VOL, fs=FILE_SYSTEM_NAME, MON_2_HOST:PORT:/q[_VOL_]/SUB_VOL/UID_SUB_VOL, [ADDITIONAL_OPTIONS]
最初の列 は、Ceph Monitor ホスト名とポート番号を設定します。
2 列目 は、マウントポイントを設定します。
3 列目 は、ファイルシステムのタイプ (ここでは CephFS 用
ceph
) を設定します。4 番目のコラム は、
name
およびsecretfile
オプションを使用してユーザー名やシークレットファイルなどのさまざまなオプションを設定します。ceph.client_mountpoint
オプションを使用して、特定のボリューム、サブボリューム、およびサブボリュームを設定できます。ネットワークサブシステムの開始後にファイルシステムがマウントされ、ハングやネットワークの問題を回避するために、
_netdev
オプションを設定します。アクセス時間情報が必要ない場合は、noatime
オプションを設定するとパフォーマンスが向上します。5 番目のコラムと 6 番目のコラム をゼロに設定します。
例
#DEVICE PATH TYPE OPTIONS DUMP FSCK mon1:6789, /mnt/cephfs ceph name=1, 0 0 mon2:6789, ceph.client_mountpoint=/my_vol/my_sub_vol_group/my_sub_vol/0, mon3:6789:/ fs=cephfs01, _netdev,noatime
Ceph File System は、次回のシステム起動時にマウントされます。
注記Red Hat Ceph Storage 4.1 の時点で、
mount.ceph
はキーリングファイルを直接読み取りできます。そのため、シークレットファイルは不要になりました。name=CLIENT_ID
でクライアント ID を指定すると、mount.ceph
は適切なキーリングファイルを検索します。注記また、Monitor ホスト名は
:/
に置き換えられ、mount.ceph
は Ceph 設定ファイルを読み取り、どのモニターに接続するかを判断することもできます。
関連情報
-
mount(8)
man ページを参照してください。 - Ceph ユーザーの作成の詳細は、Red Hat Ceph Storage 管理ガイド の Ceph ユーザー管理 の章を参照してください。
- 詳細は、Red Hat Ceph Storage File System ガイド の Ceph File Systems の作成 セクションを参照してください。