1GANESHA-CORE-CONFIG(8) NFS-Ganesha GANESHA-CORE-CONFIG(8)
2
3
4
6 ganesha-core-config - NFS Ganesha Core Configuration File
7
9 /etc/ganesha/ganesha.conf
10
11
13 NFS-Ganesha reads the configuration data from: | /etc/ganesha/gane‐
14 sha.conf
15
16 This file lists NFS related core config options.
17
18 NFS_CORE_PARAM {}
19 Core parameters:
20
21 NFS_Port (uint16, range 0 to UINT16_MAX, default 2049)
22 Port number used by NFS Protocol.
23
24 MNT_Port (uint16, range 0 to UINT16_MAX, default 0)
25 Port number used by MNT Protocol.
26
27 NLM_Port (uint16, range 0 to UINT16_MAX, default 0)
28 Port number used by NLM Protocol.
29
30 Rquota_Port (uint16, range 0 to UINT16_MAX, default 875)
31 Port number used by Rquota Protocol.
32
33 Bind_addr(IPv4 or IPv6 addr, default 0.0.0.0)
34 The address to which to bind for our listening port.
35
36 NFS_Program(uint32, range 1 to INT32_MAX, default 100003)
37 RPC program number for NFS.
38
39 MNT_Program(uint32, range 1 to INT32_MAX, default 100005)
40 RPC program number for MNT.
41
42 NLM_Program(uint32, range 1 to INT32_MAX, default 100021)
43 RPC program number for NLM.
44
45 Nb_Worker(uint32, range 1 to 1024*128, default 256)
46 Number of worker threads.
47
48 Drop_IO_Errors(bool, default false)
49 For NFSv3, whether to drop rather than reply to requests yield‐
50 ing I/O errors. It results in client retry.
51
52 Drop_Inval_Errors(bool, default false)
53 For NFSv3, whether to drop rather than reply to requests yield‐
54 ing invalid argument errors. False by default and settable with
55 Drop_Inval_Errors.
56
57 Drop_Delay_Errors(bool, default false)
58 For NFSv3, whether to drop rather than reply to requests yield‐
59 ing delay errors. False by default and settable with
60 Drop_Delay_Errors.
61
62 Plugins_Dir(path, default /usr/lib64/ganesha )
63 Path to the directory containing server specific modules
64
65 Enable_NFS_Stats(bool, default true)
66 Whether to collect perfomance statistics. By default the perfo‐
67 mance counting is enabled. Enable_NFS_Stats can be enabled or
68 disabled dynamically via ganesha_stats.
69
70 Enable_Fast_Stats(bool, default false)
71 Whether to use fast stats. If enabled this will skip statistics
72 counters collection for per client and per export.
73
74 Enable_FSAL_Stats(bool, default false)
75 Whether to count and collect FSAL specific performance statis‐
76 tics. Enable_FSAL_Stats can be enabled or disabled dynamically
77 via ganesha_stats
78
79 Enable_FULLV3_Stats(bool, default false)
80 Whether to count and collect "detailed statistics" for NFSv3.
81 Enable_FULLV3_Stats can be enabled or disabled dynamically via
82 ganesha_stats.
83
84 Enable_FULLV4_Stats(bool, default false)
85 Whether to count and collect "detailed statistics" for NFSv4.
86 Enable_FULLV4_Stats can be enabled or disabled dynamically via
87 ganesha_stats.
88
89 Short_File_Handle(bool, default false)
90 Whether to use short NFS file handle to accommodate VMware NFS
91 client. Enable this if you have a VMware NFSv3 client. VMware
92 NFSv3 client has a max limit of 56 byte file handles.
93
94 Manage_Gids_Expiration(int64, range 0 to 7*24*60*60, default 30*60)
95 How long the server will trust information it got by calling
96 getgroups() when "Manage_Gids = TRUE" is used in a export entry.
97
98 heartbeat_freq(uint32, range 0 to 5000 default 1000)
99 Frequency of dbus health heartbeat in ms.
100
101 Enable_NLM(bool, default true)
102 Whether to support the Network Lock Manager protocol.
103
104 Blocked_Lock_Poller_Interval(int64, range 0 to 180, default 10)
105 Polling interval for blocked lock polling thread
106
107 Protocols(enum list, default [3,4,9P])
108
109 Possible values:
110 3, 4, NFS3, NFS4, V3, V4, NFSv3, NFSv4, 9P
111
112 The protocols that Ganesha will listen for. This is a hard
113 limit, as this list determines which sockets are opened. This
114 list can be restricted per export, but cannot be expanded.
115
116 NSM_Use_Caller_Name(bool, default false)
117 Whether to use the supplied name rather than the IP address in
118 NSM operations.
119
120 Clustered(bool, default true)
121 Whether this Ganesha is part of a cluster of Ganeshas. Its ven‐
122 dor specific option.
123
124 fsid_device(bool, default false)
125 Whether to use device major/minor for fsid.
126
127 mount_path_pseudo(bool, default false)
128 Whether to use Pseudo (true) or Path (false) for NFS v3 and 9P
129 mounts.
130
131 This option defaults to false for backward compatibility, how‐
132 ever, for new setups, it's strongly recommended to be set true
133 since it then means the same server path for the mount is used
134 for both v3 and v4.x.
135
136 Dbus_Name_Prefix
137 DBus name prefix. Required if one wants to run multiple ganesha
138 instances on single host. The prefix should be different for
139 every ganesha instance. If this is set, the dbus name will be
140 <prefix>.org.ganesha.nfsd
141
142 Parameters controlling TCP DRC behavior:
143 DRC_Disabled(bool, default false)
144 Whether to disable the DRC entirely.
145
146 TCP_Npart(uint32, range 1 to 20, default 1)
147 Number of partitions in the tree for the TCP DRC.
148
149 DRC_TCP_Size(uint32, range 1 to 32767, default 1024)
150 Maximum number of requests in a transport's DRC.
151
152 DRC_TCP_Cachesz(uint32, range 1 to 255, default 127)
153 Number of entries in the O(1) front-end cache to a TCP Duplicate
154 Request Cache.
155
156 DRC_TCP_Hiwat(uint32, range 1 to 256, default 64)
157 High water mark for a TCP connection's DRC at which to start
158 retiring entries if we can.
159
160 DRC_TCP_Recycle_Npart(uint32, range 1 to 20, default 7)
161 Number of partitions in the recycle tree that holds per-connec‐
162 tion DRCs so they can be used on reconnection (or recycled.)
163
164 DRC_TCP_Recycle_Expire_S(uint32, range 0 to 60*60, default 600)
165 How long to wait (in seconds) before freeing the DRC of a dis‐
166 connected client.
167
168 DRC_TCP_Checksum(bool, default true)
169 Whether to use a checksum to match requests as well as the XID
170
171 Parameters controlling UDP DRC behavior:
172 DRC_UDP_Npart(uint32, range 1 to 100, default 7)
173 Number of partitions in the tree for the UDP DRC.
174
175 DRC_UDP_Size(uint32, range 512, to 32768, default 32768)
176 Maximum number of requests in the UDP DRC.
177
178 DRC_UDP_Cachesz(uint32, range 1 to 2047, default 599)
179 Number of entries in the O(1) front-end cache to the UDP Dupli‐
180 cate Request Cache.
181
182 DRC_UDP_Hiwat(uint32, range 1 to 32768, default 16384)
183 High water mark for the UDP DRC at which to start retiring
184 entries if we can
185
186 DRC_UDP_Checksum(bool, default true)
187 Whether to use a checksum to match requests as well as the XID.
188
189 Parameters affecting the relation with TIRPC:
190 RPC_Max_Connections(uint32, range 1 to 10000, default 1024)
191 Maximum number of connections for TIRPC.
192
193 RPC_Idle_Timeout_S(uint32, range 0 to 60*60, default 300)
194 Idle timeout (seconds). Default to 300 seconds.
195
196 MaxRPCSendBufferSize(uint32, range 1 to 1048576*9, default 1048576)
197 Size of RPC send buffer.
198
199 MaxRPCRecvBufferSize(uint32, range 1 to 1048576*9, default 1048576)
200 Size of RPC receive buffer.
201
202 RPC_Ioq_ThrdMax(uint32, range 1 to 1024*128 default 200)
203 TIRPC ioq max simultaneous io threads
204
205 RPC_GSS_Npart(uint32, range 1 to 1021, default 13)
206 Partitions in GSS ctx cache table
207
208 RPC_GSS_Max_Ctx(uint32, range 1 to 1048576, default 16384)
209 Max GSS contexts in cache. Default 16k
210
211 RPC_GSS_Max_Gc(uint32, range 1 to 1048576, default 200)
212 Max entries to expire in one idle check
213
214 Parameters for TCP:
215 Enable_TCP_keepalive(bool, default true)
216 Whether tcp sockets should use SO_KEEPALIVE
217
218 TCP_KEEPCNT(UINT32, range 0 to 255, default 0 -> use system defaults)
219 Maximum number of TCP probes before dropping the connection
220
221 TCP_KEEPIDLE(UINT32, range 0 to 65535, default 0 -> use system
222 defautls)
223 Idle time before TCP starts to send keepalive probes
224
225 TCP_KEEPINTVL(INT32, range 0 to 65535, default 0 -> use system
226 defaults)
227 Time between each keepalive probe
228
229 NFS_IP_NAME {}
230 Index_Size(uint32, range 1 to 51, default 17)
231 Configuration for hash table for NFS Name/IP map.
232
233 Expiration_Time(uint32, range 1 to 60*60*24, default 3600)
234 Expiration time for ip-name mappings.
235
236 NFS_KRB5 {}
237 PrincipalName(string, default "nfs")
238
239 KeytabPath(path, default )
240 Kerberos keytab.
241
242 CCacheDir(path, default /var/run/ganesha )
243 The ganesha credential cache.
244
245 Active_krb5(bool, default false)
246 Whether to activate Kerberos 5. Defaults to true (if Kerberos
247 support is compiled in)
248
249 NFSv4 {}
250 Graceless(bool, default false)
251 Whether to disable the NFSv4 grace period.
252
253 Lease_Lifetime(uint32, range 0 to 120, default 60)
254 The NFSv4 lease lifetime.
255
256 Grace_Period(uint32, range 0 to 180, default 90)
257 The NFS grace period.
258
259 DomainName(string, default localdomain )
260 Domain to use if we aren't using the nfsidmap.
261
262 IdmapConf(path, default /etc/idmapd.conf )
263 Path to the idmap configuration file.
264
265 UseGetpwnam(bool, default false if using idmap, true otherwise)
266 Whether to use local password (PAM, on Linux) rather than
267 nfsidmap.
268
269 Allow_Numeric_Owners(bool, default true)
270 Whether to allow bare numeric IDs in NFSv4 owner and group iden‐
271 tifiers.
272
273 Only_Numeric_Owners(bool, default false)
274 Whether to ONLY use bare numeric IDs in NFSv4 owner and group
275 identifiers.
276
277 Delegations(bool, default false)
278 Whether to allow delegations.
279
280 Deleg_Recall_Retry_Delay(uint32_t, range 0 to 10, default 1)
281 Delay after which server will retry a recall in case of failures
282
283 pnfs_mds(bool, default false)
284 Whether this a pNFS MDS server. For FSAL Gluster, if this is
285 true, set pnfs_mds in gluster block as well.
286
287 pnfs_ds(bool, default false)
288 Whether this a pNFS DS server.
289
290 RecoveryBackend(path, default fs )
291 Use different backend for client info:
292
293 · fs : filesystem
294
295 · fs_ng: filesystem (better resiliency)
296
297 · rados_kv : rados key-value
298
299 · rados_ng : rados key-value (better resiliency)
300
301 · rados_cluster: clustered rados backend (active/active)
302
303 Minor_Versions(enum list, values [0, 1, 2], default [0, 1, 2])
304 List of supported NFSV4 minor version numbers.
305
306 Slot_Table_Size(uint32, range 1 to 1024, default 64)
307 Size of the NFSv4.1 slot table
308
309 RADOS_KV {}
310 ceph_conf(string, no default)
311 Connection to ceph cluster, should be file path for ceph config‐
312 uration.
313
314 userid(path, no default)
315 User ID to ceph cluster.
316
317 namespace(string, default NULL)
318 RADOS Namespace in which to store objects
319
320 pool(string, default nfs-ganesha )
321 Pool for client info.
322
323 grace_oid(string, default grace )
324 Name of the object containing the rados_cluster grace DB
325
326 nodeid(string, default result of gethostname())
327 Unique node identifier within rados_cluster
328
329 RADOS_URLS {}
330 ceph_conf(string, no default)
331 Connection to ceph cluster, should be file path for ceph config‐
332 uration.
333
334 userid(path, no default)
335 User ID to ceph cluster.
336
337 watch_url(url, no default)
338 rados:// URL to watch for notifications of config changes. When
339 a notification is received, the server will issue a SIGHUP to
340 itself.
341
342
343
344
345 Jun 05, 2019 GANESHA-CORE-CONFIG(8)