過去問ドリル

LinuCレベル3 プラットフォームスペシャリスト 仮想化基盤のネットワークとストレージ 問16

仮想化基盤のネットワークとストレージ/Cephの理解と実装

Cephクラスタの管理ノードで「ceph auth get-or-create client.app mon 'allow r' osd 'allow rw pool=app'」を実行した。このコマンドの動作として適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル3 プラットフォームスペシャリストの出題範囲「仮想化基盤のネットワークとストレージ」に対応。実際の試験問題ではありません)

正解:A

解説

ceph authはcephx認証のユーザー(エンティティ)とその権限(ケイパビリティ)を管理するコマンドです。get-or-createは、指定したユーザーが存在しなければ指定の権限で作成し、存在すればそのキーを返します(既存ユーザーの権限と指定した権限が異なる場合は、キーを返さずエラーになります。権限を変更するには ceph auth caps を使います)。この例では、MONに対する読み取りと、プールappに限った読み書きだけを許可したユーザーclient.appができます。出力はキーリング形式なので、-o /etc/ceph/ceph.client.app.keyring のように保存してクライアントに配置すると、そのユーザーとして接続できます。作成済みのユーザーは ceph auth ls で一覧できます。

選択肢ごとの解説

  • A正しい。get-or-createはユーザーが無ければ指定の権限で作成し、キーリング形式でキーを出力します。
  • B誤り。プールの作成は ceph osd pool create、RBDイメージの作成は rbd create で行います。ceph authはユーザーと権限を管理するだけです。
  • C誤り。get-or-createは既存ユーザーであればそのキーを返すだけで、キーを作り直したり接続を切断したりはしません。
  • D誤り。ceph authはMONが保持する認証データベースを操作するもので、ceph.confの編集や設定ファイルの配布は行いません。
LinuCレベル3 プラットフォームスペシャリストの問題を演習モードで解く