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