PFSSサーバのNFSスレッド数の確認・変更方法
| 登録日 | :2025/11/09 20:35 |
|---|---|
| カテゴリ | :Linux |
PFSSサーバがNFS-Ganeshaを使用している場合のNFSスレッド数(worker thread)確認・設定方法について回答します。
NFS-Ganeshaのスレッド数とは
Ganeshaでは「worker thread」が実際にリクエストを処理するスレッドで、これがNFSサーバのスレッド数に相当します。
デフォルトは少数のスレッドですが、多数のリクエストを効率的にさばくために数十〜100以上に増やすことが推奨されます。
スレッド数(worker thread)確認方法
Ganeshaの動作ログやステータスから確認可能です。
サービス状態を確認:
systemctl status nfs-ganesha
Ganeshaログファイル(例:/var/log/ganesha/ganesha.log)にworkerスレッド関連の記述があるか確認
スレッド数の設定(ganesha.conf)
ganesha.confファイルのNFSV4またはNFSブロックに以下のパラメータを追加または修正します。
NFS {
Threads = 100; # スレッド数を100に設定
# 他の設定例
# ...
}
もしくはグローバル設定ブロックNFSV4でも同様に設定可能(ganesha.conf内)
設定例:
EXPORT {
# Export設定…
}
NFS {
Threads = 100;
}
変更後の反映手順
設定ファイル/etc/ganesha/ganesha.confなどを編集
Ganeshaサービスを再起動
sudo systemctl restart nfs-ganesha
ログやステータスで反映確認
補足
多すぎるスレッド数はCPUリソース消費の増加を招くため、サーバスペックを踏まえてチューニングしてください
必要に応じてログレベルを上げて詳細診断を行うことも可能です
以上がNFS-GaneshaのNFSスレッド数の確認と設定方法になります。必要に応じて具体的なganesha.confの内容例も提供可能です。
設定ファイルと重要コマンド例
以下はNFS-Ganeshaの事前設定やチューニングで使う設定ファイル例と重要コマンド例です。
ganesha.conf の設定例(一部抜粋)
NFS_CORE_PARAM {
Enable_NLM = false; # ロックマネージャは無効化例
Enable_RQUOTA = false; # クォータ機能無効化例
Protocols = 4; # NFSv4のみ有効化
Threads = 100; # workerスレッド数100に設定
}
EXPORT_DEFAULTS {
Access_Type = RW;
Attr_Expiration_Time = 0.5;
Delegations = false;
}
EXPORT {
Export_Id = 101;
Path = "/data"; # エクスポートするパス
Pseudo = "/pseudo";
Access_Type = RW;
FSAL {
Name = VFS; # ファイルシステム取得方法
}
SecType = "sys";
Squash = "No_root_squash";
}
LOG {
Default_Log_Level = WARN;
}
重要コマンド例
サービス管理
sudo systemctl restart nfs-ganesha # Ganeshaサーバの再起動
sudo systemctl status nfs-ganesha # 状態確認
workerスレッド数の確認
ps -L -p $(pidof ganesha) # スレッド数表示
ファイルディスクリプタ上限確認
ulimit -n # 現在の上限
cat /proc/$(pidof ganesha)/limits | grep "Max open files"
参考ファイルパス例
設定ファイルパス例
/etc/ganesha/ganesha.conf
/etc/ganesha/nfs-ganesha.conf
これら設定でworker thread数やログ制御、エクスポート設定などを管理しつつ適切な性能チューニングを行います。
具体的な環境変数やチューニングパラメータの追加・変更も必要に応じて可能です。