3.2. Ceph File Systems の作成
Ceph Monitor ノードで複数の Ceph File Systems (CephFS) を作成することができます。
前提条件
- 実行中、および正常な Red Hat Ceph Storage クラスター
-
Ceph Metadata Server デーモン (
ceph-mds) のインストールおよび設定 - Ceph Monitor ノードへの root レベルのアクセス。
- Ceph クライアントノードへのルートレベルのアクセスがある。
手順
Ceph Storage クラスターを使用するようにクライアントノードを設定します。
Red Hat Ceph Storage Tools リポジトリーを有効にします。
Red Hat Enterprise Linux 8
[root@client01 ~]# subscription-manager repos --enable=rhceph-6-tools-for-rhel-8-x86_64-rpmsRed Hat Enterprise Linux 9
[root@client01 ~]# subscription-manager repos --enable=rhceph-6-tools-for-rhel-9-x86_64-rpmsceph-fuseパッケージをインストールします。[root@client ~]# dnf install ceph-fuseCeph クライアントキーリングを Ceph Monitor ノードからクライアントノードにコピーします。
構文
scp root@MONITOR_NODE_NAME:/etc/ceph/KEYRING_FILE /etc/ceph/MONITOR_NODE_NAME は、Ceph Monitor ホスト名または IP アドレスに置き換えます。
例
[root@client ~]# scp root@192.168.0.1:/etc/ceph/ceph.client.1.keyring /etc/ceph/Ceph 設定ファイルを Monitor ノードからクライアントノードにコピーします。
構文
scp root@MONITOR_NODE_NAME:/etc/ceph/ceph.conf /etc/ceph/ceph.confMONITOR_NODE_NAME は、Ceph 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
Ceph File System を作成します。
構文
ceph fs volume create FILE_SYSTEM_NAME例
[root@mon ~]# ceph fs volume create cephfs01この手順を繰り返して、追加のファイルシステムを作成します。
注記このコマンドを実行すると、Ceph は新しいプールを自動的に作成し、新しいファイルシステムをサポートする新たな Ceph Metadata Server (MDS) デーモンをデプロイします。また、これにより MDS アフィニティーを適宜設定します。
Ceph クライアントから新しい Ceph File System へのアクセスを確認します。
Ceph クライアントが新しいファイルシステムへのアクセスを承認します。
構文
ceph fs authorize FILE_SYSTEM_NAME CLIENT_NAME DIRECTORY PERMISSIONS例
[root@mon ~]# ceph fs authorize cephfs01 client.1 / rw [client.1] key = BQAmthpf81M+JhAAiHDYQkMiCq3x+J0n9e8REK== [root@mon ~]# ceph auth get client.1 exported keyring for client.1 [client.1] key = BQAmthpf81M+JhAAiHDYQkMiCq3x+J0n9e8REK== caps mds = "allow rw fsname=cephfs01" caps mon = "allow r fsname=cephfs01" caps osd = "allow rw tag cephfs data=cephfs01"注記必要に応じて、
root_squashオプションを指定することで安全対策を追加できます。これにより、uid=0またはgid=0のクライアントが書き込み操作を行うのを許可することで、誤って削除のシナリオは阻止されますが、読み取り操作は引き続き許可されます。例
[root@mon ~]# ceph fs authorize cephfs01 client.1 / rw root_squash /volumes rw [client.1] key = BQAmthpf81M+JhAAiHDYQkMiCq3x+J0n9e8REK== [root@mon ~]# ceph auth get client.1 [client.1] key = BQAmthpf81M+JhAAiHDYQkMiCq3x+J0n9e8REK== caps mds = "allow rw fsname=cephfs01 root_squash, allow rw fsname=cephfs01 path=/volumes" caps mon = "allow r fsname=cephfs01" caps osd = "allow rw tag cephfs data=cephfs01"この例では、
/volumesディレクトリーツリー内ではファイルシステムcephfs01に対してroot_squashが有効になります。重要Ceph クライアントは、それが承認されている CephFS のみを認識することができます。
Ceph ユーザーのキーリングを Ceph クライアントノードにコピーします。
構文
ceph auth get CLIENT_NAME > OUTPUT_FILE_NAME scp OUTPUT_FILE_NAME TARGET_NODE_NAME:/etc/ceph例
[root@mon ~]# ceph auth get client.1 > ceph.client.1.keyring exported keyring for client.1 [root@mon ~]# scp ceph.client.1.keyring client:/etc/ceph root@client's password: ceph.client.1.keyring 100% 178 333.0KB/s 00:00Ceph クライアントノードで、新しいディレクトリーを作成します。
構文
mkdir PATH_TO_NEW_DIRECTORY_NAME例
[root@client ~]# mkdir /mnt/mycephfsCeph クライアントノードで、新しい Ceph File System をマウントします。
構文
ceph-fuse PATH_TO_NEW_DIRECTORY_NAME -n CEPH_USER_NAME --client-fs=_FILE_SYSTEM_NAME例
[root@client ~]# ceph-fuse /mnt/mycephfs/ -n client.1 --client-fs=cephfs01 ceph-fuse[555001]: starting ceph client 2022-05-09T07:33:27.158+0000 7f11feb81200 -1 init, newargv = 0x55fc4269d5d0 newargc=15 ceph-fuse[555001]: starting fuse- Ceph クライアントノードで、新しいマウントポイントのディレクトリーコンテンツをリスト表示するか、新しいマウントポイントにファイルを作成します。