3.3. Ceph File System クライアントユーザーの作成
Red Hat Ceph Storage 3 は認証に cephx
を使用します。これはデフォルトで有効になります。Ceph File System で cephx
を使用するには、Monitor ノードで正しい承認機能を備えたユーザーを作成し、その鍵を Ceph File System がマウントされるノードで利用できるようにします。
カーネルクライアントで使用するために鍵を使用できるようにするには、そのキーでクライアントノードでシークレットファイルを作成します。ユーザー空間(FUSE)クライアントのファイルシステムで鍵を利用できるようにするには、キーリングをクライアントノードにコピーします。
手順
Monitor ホストで、クライアントユーザーを作成します。
ceph auth get-or-create client.<id> <capabilities>
クライアント ID と必要な機能を指定します。
クライアントをクラスター内の特定のプールからのみ書き込み/読み取りに制限するには、以下を実行します。
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 r' osd 'allow r pool=<pool>'
たとえば、クライアントが
データ
プールを変更しないようにするには、次のコマンドを実行します。[root@monitor ~]# ceph auth get-or-create client.1 mon 'allow r' mds 'allow r' osd 'allow r pool=data'
注記Ceph File System クライアントはアクセスできないので、
メタデータ
プールの機能は作成しないでください。
作成したキーを確認します。
ceph auth get client.<id>
以下に例を示します。
[root@monitor ~]# ceph auth get client.1
カーネルクライアントを使用する予定がある場合は、前の手順で取得したキーを使用してシークレットファイルを作成します。
クライアントノードで、
key =
の後に文字列を/etc/ceph/ceph.client.<id>.secret にコピーします。
たとえば、クライアント ID が
1
の場合は、キーを使用して/etc/ceph/ceph.client.1.secret
に 1 つの行を追加します。[root@client ~]# cat /etc/ceph/ceph.client.1.secret AQBSdFhcGZFUDRAAcKhG9Cl2HPiDMMRv4DC43A==
重要key =
と文字列の間にスペースを含めないでください。そうでないとマウントが動作しません。User Space(FUSE)クライアントで File System を使用する予定がある場合は、キーリングをクライアントにコピーします。
Monitor ノードで、キーリングをファイルにエクスポートします。
# ceph auth get client.<id> -o ceph.client.<id>.keyring
たとえば、クライアント ID が
1
の場合は、以下のようになります。[root@monitor ~]# ceph auth get client.1 -o ceph.client.1.keyring exported keyring for client.1
クライアントキーリングを Monitor ノードからクライアントノードの
/etc/ceph/
ディレクトリーにコピーします。scp root@<monitor>:/root/ceph.client.1.keyring /etc/ceph/ceph.client.1.keyring
<
;monitor>
を Monitor ホスト名または IP に置き換えます。以下に例を示します。[root@client ~]# scp root@192.168.0.1:/root/ceph.client.1.keyring /etc/ceph/ceph.client.1.keyring
キーリングファイルに適切なパーミッションを設定します。
chmod 644 <keyring>
キーリングへのパスを指定します。以下に例を示します。
[root@client ~]# chmod 644 /etc/ceph/ceph.client.1.keyring
その他のリソース
- Red Hat Ceph Storage 3 の 『管理ガイド』 の「 ユーザー 管理」の章