名前

vfs_ceph_new — libcepufs 低レベル API が提供する機能を利用

書式

vfs objects = ceph_new

説明

この VFS モジュールは samba(8) システムの一部である。

vfs_ceph_new VFS モジュールは Sambaが 使用する CephFS 固有の機能を公開する。

Ceph は、優れた性能、信頼性、スケーラビリティを提供するように設計された、 分散ネットワークファイルシステムである。これは、アプリケーションが、 POSIX 風のインタフェース経由で、Ceph 分散ファイルシステムへのアクセスを行うための、 共有ライブラリである。

このモジュールは、他のモジュールといっしょに使えるが、vfs objects リスト中では、最後に位置するモジュールでなければならない。このリストの、 ceph エントリより右にあるモジュールは無意味である。

vfs_ceph は、 Windows と POSIX ACL 間の マッピングを行う。 POSIX ACL を正しく処理させるために、 以下の Ceph 設定パラメータが自動的に設定される:

		client acl type = posix_acl
		fuse default permissions = false
	

注意: これは、libcepufs 低レベル API を使用する ceph モジュールの2番目の実装 である(パスベースの API を使用する元の vfs_ceph(8)モジュールと比較して)。 低レベル API を使用すると、Ceph ストレージ層へのより最適化された きめ細かなアクセスが可能になる。

設定

vfs_ceph_new は、ベースとなる 共有パスが Ceph ファイルシステムであることを要求する。

		[share]
		vfs objects = ceph_new
		path = /non-mounted/cephfs/path
		kernel share modes = no
	

vfs_ceph_newはファイルシステムのマウントを 必要としないため、共有pathは別の方法で扱われる。 接続された Ceph クラスタ上の Ceph ファイルシステム内の絶対パスとして 解釈される。 ctdb が Samba を管理する ctdb クラスタ環境では CTDB_SAMBA_SKIP_SHARE_CHECK=yesは、ローカル共有 パスチェックを無効にするように設定する必要がある。そうしないと、 ctdb は正常な状態に到達しない。

現在のところ、ファイルサービスが正しく動作するためには、 CepFS vfs モジュールで実行されている共有で kernel share modesを無効にする必要があることに注 意。

オプション

ceph_new:config_file = path

ceph 構成ファイル(configfile)を使う。既定値は空である。

例: ceph_new:config_file = /etc/ceph/ceph.conf

ceph_new:user_id = name

CephFS マウントハンドルに用いられるクライアント ID を 明示的に設定する。既定値は空である(既定で libcephfs クライアントを使用)。

例: ceph_new:user_id = samba

ceph_new:filesystem = fs_name

Ceph クラスタが複数のファイルシステムをサポートする場合に、 使用する CephFS ファイルシステムを明示的に選択できる。既定では 空である(Ceph クラスタの既定のファイルシステムを使用する)。

例: ceph_new:filesystem = myfs2

ceph_new:proxy = [ yes | no | auto ]

リソース使用率を最適化するために libceffs プロキシ ライブラリの使用を指示できるようにし、より多くの 同時クライアント接続を可能にする。前提条件には、 動的リンカ用にロード可能な場所に共有ライブラリ libcephfs_proxy.so.Xと、 アクティブな(実行中の)libcephfsd デーモンがあることである。

  • no (既定値) - プロキシ ライブラリを使わず、libcephfs.so.X 経由で通常の接続を行う。

  • yes - 常時プロキシ ライブラリを使用するが、前提条件が満たされない場合は クライアント接続要求は失敗する。

  • auto - プロキシ ライブラリの使用を試みるが、前提条件が満たされない場合は 通常の cepfs 接続に切り換える。

ceph_new:fscrypt = [ disabled | none | keybridge ]

FSCrypt スタイルの暗号化(サブ)ボリュームサポートを有効 にするように CephFS クライアントを構成する。有効にすると、 暗号化は空の共有に自動的に適用され、その共有への今後の 接続には同じキーマテリアルを持つ FSCrypt が必要になる。

  • disabled (既定値) - FSCrypt サポートが無効。

  • none - disabled のエイリアス。

  • keybridge - キー情報を取得するためのkeybridge RPC APIを使用して、 CepFS FSCrypt サポートを有効にする。このオプションを 設定するためには ceph_new:keybridge socket, ceph_new:keybridge scope, と ceph_new:keybridge name を指定することが必要である。

ceph_new:keybridge socket = type:path

指定されたソケットをリッスンする KeyBridge サーバーと 通信するための CepFS FSCrypt サポートを構成する。 KeyBridge サーバーは、varlink KeyBridge プロトコルを使用して、 1 つまたは複数の鍵配布サービス (KMIPなど) から鍵データを取得する。

許可されている唯一のタイプはunixである。 pathの 値は、キーブリッジサーバ用の Unix ドメインソケット へのパスである。 例: unix:/run/keybridge/keybridge.sock

指定された場合、このオプションは ceph_new:keybridge scopeceph_new:keybridge name オプションを指定することが必要である。

ceph_new:keybridge scope = scope

KeyBridge API リクエストのスコープ値を設定する。 スコープはキーのコンテキストを識別し、通常は特定の バックエンドにマッピングされる。使用可能なスコープ値は KeyBridge サーバーの構成によって異なる。 例: "kmip.testing".

指定された場合、このオプションは ceph_new:keybridge socketceph_new:keybridge name オプションを指定することが必要である。

ceph_new:keybridge name = name

KeyBridge API 要求の名前の値を設定する。これは KeyBridge サーバーがこの共有の暗号化を「ロック解除」するために 使用する、スコープ内のキーの名前または識別子である。 例: "volume1".

指定された場合、このオプションは ceph_new:keybridge socketceph_new:keybridge scope オプションを指定することが必要である。

ceph_new:keybridge kind = [ B64 | VALUE ]

KeyBridge API 要求のデータ・フィールドの種類を設定する。 KeyBridge サーバーは、Base64 でエンコードされた文字列 (B64) またはプレーン・テキスト (VALUE) を使用してデータを 交換できる。スコープに応じて、サーバーはなんらかの形式で キー情報をフェッチできる。データの種類を手動で選択する ときにはこのオプションを使用する。

指定しない場合は B64 が使われる。

バージョン

このマニュアルページは Samba バージョン 4.24.0 用である。

著者

オリジナルの Samba ソフトウェアと関連するユーティリティは、Andrew Tridgell によって作成された。現在 Samba は Samba Team に よって、Linux カーネルの開発と同様のオープンソースプロジェクト として開発が行なわれている。

日本語訳

このドキュメントは、Samba 4.24.0 - 4.24.0 に対応する。

このドキュメントの翻訳は

  • 太田俊哉 (ribbon@samba.gr.jp)

によって行なわれた。