差異處
這裏顯示兩個版本的差異處。
兩邊的前次修訂版 前次修改 下次修改 | 前次修改 | ||
tech:nfs_ganesha [2024/01/03 18:46] – [安裝與設定方式] jonathan | tech:nfs_ganesha [2025/03/27 18:22] (目前版本) – [常見問題] jonathan | ||
---|---|---|---|
行 1: | 行 1: | ||
====== 在 Ubuntu/ | ====== 在 Ubuntu/ | ||
- | * 因為詢問 ChatGPT | + | * 因為詢問 ChatGPT 是否有提升 NFS 服務效能的輔助軟體, |
* 也看到預設 Ubuntu/ | * 也看到預設 Ubuntu/ | ||
行 13: | 行 13: | ||
{ | { | ||
Export_ID = 1; | Export_ID = 1; | ||
- | Path = /nfsshare; | + | Path = / |
Pseudo = /nfsshare; | Pseudo = /nfsshare; | ||
Access_Type = RW; | Access_Type = RW; | ||
Squash = No_Root_Squash; | Squash = No_Root_Squash; | ||
- | FSAL | + | FSAL { |
- | | + | |
Name = VFS; | Name = VFS; | ||
} | } | ||
- | Clients = 10.20.0.0/ | + | |
+ | CLIENT { | ||
+ | | ||
+ | Access_Type = RW; | ||
+ | } | ||
} | } | ||
</ | </ | ||
* 設定啟動 nfs-ganesha 服務 <cli> | * 設定啟動 nfs-ganesha 服務 <cli> | ||
- | sudo systemctl | + | sudo systemctl |
sudo systemctl enable nfs-ganesha | sudo systemctl enable nfs-ganesha | ||
</ | </ | ||
行 75: | 行 78: | ||
===== 進階調教 ===== | ===== 進階調教 ===== | ||
* 調整自訂記憶體當 Cache | * 調整自訂記憶體當 Cache | ||
- | | + | |
- | * Mem_Max | + | * Mem_Cache_Size |
- | * Mem_Cache_Size 可能是 32 MB -> 512 MB -> Mem_Cache_Size = 536870912 | + | * Dir_MaxCacheSize |
- | * Dir_MaxCacheSize 可能是 512 KB -> 4096 KB -> Dir_MaxCacheSize = 4194304 | + | |
* 將設定加入 ganesha.conf 內< | * 將設定加入 ganesha.conf 內< | ||
NFS_Core_Param | NFS_Core_Param | ||
{ | { | ||
- | | + | |
- | Mem_Cache_Size | + | |
- | Dir_MaxCacheSize | + | Bind_Addr = 0.0.0.0; |
+ | Protocols = 3,4; # 支持 NFSv3 和 NFSv4 | ||
+ | } | ||
+ | |||
+ | _9P { | ||
+ | Nb_Worker = 16; # 工作線程現在在這裡 | ||
+ | } | ||
+ | |||
+ | MDCACHE { | ||
+ | Cache_Size | ||
+ | | ||
+ | } | ||
+ | |||
+ | TIRPC { | ||
+ | Max_Connections = 1024; # 替代 RPC_Max_Connections | ||
+ | Idle_Timeout_S = 300; # 替代 RPC_Idle_Timeout_S | ||
+ | Default_Buffer_Size = 1048576; | ||
+ | } | ||
+ | |||
+ | Cache_Parameters { | ||
+ | Entries_HWMark = 100000; | ||
+ | NParts = 32; # 增加分區數量以減少鎖競爭 | ||
+ | Cache_Size = 1000; # 緩存大小 | ||
+ | Use_Getattr_Directory_Invalidation = true; | ||
+ | } | ||
+ | |||
+ | # 關閉 Kerberos 以避免那些錯誤 | ||
+ | NFS_KRB5 { | ||
+ | Active_krb5 = false; | ||
+ | KeytabPath = "/ | ||
+ | PrincipalName = ""; | ||
+ | CCacheDir = ""; | ||
+ | } | ||
+ | |||
+ | LOG { | ||
+ | Default_Log_Level = EVENT; | ||
+ | RPC_Debug_Flags = 0; # 減少 RPC 調試信息 | ||
} | } | ||
行 105: | 行 143: | ||
</ | </ | ||
+ | ===== 常見問題 ===== | ||
+ | * 關閉 Ganasha 的作法 <cli> | ||
+ | systemctl stop nfs-ganesha | ||
+ | systemctl disable nfs-ganesha | ||
+ | </ | ||
{{tag> | {{tag> | ||