6.3.3.5. デフォルトのエクスポート設定の変更
gluster CLI オプションを使用して、NFS-Ganesha 経由でボリュームをエクスポートまたはエクスポート解除することを推奨します。ただし、本項では、NFS-Ganesha で設定可能なパラメーターの変更について説明します。このようなパラメーターを変更するには、NFS-Ganesha を手動で起動する必要があります。
サポートされるエクスポートオプションは、man ページの ganesha-export-config 8 を参照してください。
デフォルトのエクスポート設定を変更するには、既存の ganesha クラスターのいずれかのノードで以下の手順を実行します。
/run/gluster/shared_storage/nfs-ganesha/exports/
にある対応するエクスポートファイルで必要なフィールドを編集または追加します。- 以下のコマンドを実行します。
# /usr/libexec/ganesha/ganesha-ha.sh --refresh-config <HA_CONF_DIR> <volname>
各オプションについての説明は以下のとおりです。
- HA_CONF_DIR: ganesha-ha.conf ファイルを含むディレクトリーパス。デフォルトでは、
/run/gluster/shared_storage/nfs-ganesha
にあります。 - volname - エクスポート設定を変更する必要があるボリュームの名前。
エクスポート設定ファイルのサンプル:
以下は、エントリーのエクスポートに必要なデフォルトのパラメーターセットです。ここで指定する値は、NFS-Ganesha の起動または停止に CLI オプションによって使用されるデフォルト値です。
# cat export.conf EXPORT{ Export_Id = 1 ; # Export ID unique to each export Path = "volume_path"; # Path of the volume to be exported. Eg: "/test_volume" FSAL { name = GLUSTER; hostname = "10.xx.xx.xx"; # IP of one of the nodes in the trusted pool volume = "volume_name"; # Volume name. Eg: "test_volume" } Access_type = RW; # Access permissions Squash = No_root_squash; # To enable/disable root squashing Disable_ACL = true; # To enable/disable ACL Pseudo = "pseudo_path"; # NFSv4 pseudo path for this export. Eg: "/test_volume_pseudo" Protocols = "3”, “4" ; # NFS protocols supported Transports = "UDP”, “TCP" ; # Transport protocols supported SecType = "sys"; # Security flavors supported }
以降のセクションで、NFS-Ganesha を使用するさまざまな設定について説明します。想定される動作を確認するには
export.conf
ファイルにマイナーな変更を加える必要があります。
- 特定クライアントのパーミッションの提供
- NFSv4 ACL の有効化および無効化
- NFSv4 マウントに疑似パスを提供
- サブディレクトリーのエクスポート
6.3.3.5.1. 特定クライアントのパーミッションの提供
EXPORT
ブロックで指定したパラメーター値とパーミッションの値は、エクスポートしたボリュームをマウントするクライアントに適用されます。特定のクライアントに特定のパーミッションを提供するには、EXPORT
ブロック
内にクライアントブロックを追加します。
たとえば、クライアント 10.00.00.01 に特定のパーミッションを割り当てるには、
EXPORT
ブロックに以下のブロックを追加します。
client { clients = 10.00.00.01; # IP of the client. access_type = "RO"; # Read-only permissions Protocols = "3"; # Allow only NFSv3 protocol. anonymous_uid = 1440; anonymous_gid = 72; }
その他のクライアントはすべて、
client
ブロックで宣言されたパーミッションを継承します。