1 What: /sys/fs/lustre/version
3 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
5 Shows current running lustre version.
7 What: /sys/fs/lustre/pinger
9 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
11 Shows if the lustre module has pinger support.
12 "on" means yes and "off" means no.
14 What: /sys/fs/lustre/health
16 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
18 Shows whenever current system state believed to be "healthy",
19 "NOT HEALTHY", or "LBUG" whenever lustre has experienced
20 an internal assertion failure
22 What: /sys/fs/lustre/jobid_name
24 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
26 Currently running job "name" for this node to be transferred
27 to Lustre servers for purposes of QoS and statistics gathering.
28 Writing into this file will change the name, reading outputs
31 What: /sys/fs/lustre/jobid_var
33 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
35 Control file for lustre "jobstats" functionality, write new
36 value from the list below to change the mode:
37 disable - disable job name reporting to the servers (default)
38 procname_uid - form the job name as the current running
39 command name and pid with a dot in between
41 nodelocal - use jobid_name value from above.
43 What: /sys/fs/lustre/llite/<fsname>-<uuid>/blocksize
45 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
47 Biggest blocksize on object storage server for this filesystem.
49 What: /sys/fs/lustre/llite/<fsname>-<uuid>/kbytestotal
51 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
53 Shows total number of kilobytes of space on this filesystem
55 What: /sys/fs/lustre/llite/<fsname>-<uuid>/kbytesfree
57 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
59 Shows total number of free kilobytes of space on this filesystem
61 What: /sys/fs/lustre/llite/<fsname>-<uuid>/kbytesavail
63 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
65 Shows total number of free kilobytes of space on this filesystem
66 actually available for use (taking into account per-client
67 grants and filesystem reservations).
69 What: /sys/fs/lustre/llite/<fsname>-<uuid>/filestotal
71 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
73 Shows total number of inodes on the filesystem.
75 What: /sys/fs/lustre/llite/<fsname>-<uuid>/filesfree
77 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
79 Shows estimated number of free inodes on the filesystem
81 What: /sys/fs/lustre/llite/<fsname>-<uuid>/client_type
83 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
85 Shows whenever this filesystem considers this client to be
86 compute cluster-local or remote. Remote clients have
87 additional uid/gid convrting logic applied.
89 What: /sys/fs/lustre/llite/<fsname>-<uuid>/fstype
91 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
93 Shows filesystem type of the filesystem
95 What: /sys/fs/lustre/llite/<fsname>-<uuid>/uuid
97 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
99 Shows this filesystem superblock uuid
101 What: /sys/fs/lustre/llite/<fsname>-<uuid>/max_read_ahead_mb
103 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
105 Sets maximum number of megabytes in system memory to be
106 given to read-ahead cache.
108 What: /sys/fs/lustre/llite/<fsname>-<uuid>/max_read_ahead_per_file_mb
110 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
112 Sets maximum number of megabytes to read-ahead for a single file
114 What: /sys/fs/lustre/llite/<fsname>-<uuid>/max_read_ahead_whole_mb
116 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
118 For small reads, how many megabytes to actually request from
119 the server as initial read-ahead.
121 What: /sys/fs/lustre/llite/<fsname>-<uuid>/checksum_pages
123 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
125 Enables or disables per-page checksum at llite layer, before
126 the pages are actually given to lower level for network transfer
128 What: /sys/fs/lustre/llite/<fsname>-<uuid>/stats_track_pid
130 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
132 Limit Lustre vfs operations gathering to just a single pid.
133 0 to track everything.
135 What: /sys/fs/lustre/llite/<fsname>-<uuid>/stats_track_ppid
137 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
139 Limit Lustre vfs operations gathering to just a single ppid.
140 0 to track everything.
142 What: /sys/fs/lustre/llite/<fsname>-<uuid>/stats_track_gid
144 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
146 Limit Lustre vfs operations gathering to just a single gid.
147 0 to track everything.
149 What: /sys/fs/lustre/llite/<fsname>-<uuid>/statahead_max
151 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
153 Controls maximum number of statahead requests to send when
154 sequential readdir+stat pattern is detected.
156 What: /sys/fs/lustre/llite/<fsname>-<uuid>/statahead_agl
158 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
160 Controls if AGL (async glimpse ahead - obtain object information
161 from OSTs in parallel with MDS during statahead) should be
163 0 to disable, 1 to enable.
165 What: /sys/fs/lustre/llite/<fsname>-<uuid>/lazystatfs
167 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
169 Controls statfs(2) behaviour in the face of down servers.
170 If 0, always wait for all servers to come online,
171 if 1, ignote inactive servers.
173 What: /sys/fs/lustre/llite/<fsname>-<uuid>/max_easize
175 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
177 Shows maximum number of bytes file striping data could be
178 in current configuration of storage.
180 What: /sys/fs/lustre/llite/<fsname>-<uuid>/default_easize
182 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
184 Shows maximum observed file striping data seen by this
185 filesystem client instance.
187 What: /sys/fs/lustre/llite/<fsname>-<uuid>/xattr_cache
189 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
191 Controls extended attributes client-side cache.
192 1 to enable, 0 to disable.
194 What: /sys/fs/lustre/ldlm/cancel_unused_locks_before_replay
196 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
198 Controls if client should replay unused locks during recovery
199 If a client tends to have a lot of unused locks in LRU,
200 recovery times might become prolonged.
201 1 - just locally cancel unused locks (default)
202 0 - replay unused locks.
204 What: /sys/fs/lustre/ldlm/namespaces/<name>/resource_count
206 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
208 Displays number of lock resources (objects on which individual
209 locks are taken) currently allocated in this namespace.
211 What: /sys/fs/lustre/ldlm/namespaces/<name>/lock_count
213 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
215 Displays number or locks allocated in this namespace.
217 What: /sys/fs/lustre/ldlm/namespaces/<name>/lru_size
219 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
221 Controls and displays LRU size limit for unused locks for this
223 0 - LRU size is unlimited, controlled by server resources
224 positive number - number of locks to allow in lock LRU list
226 What: /sys/fs/lustre/ldlm/namespaces/<name>/lock_unused_count
228 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
230 Display number of locks currently sitting in the LRU list
233 What: /sys/fs/lustre/ldlm/namespaces/<name>/lru_max_age
235 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
237 Maximum number of milliseconds a lock could sit in LRU list
238 before client would voluntarily cancel it as unused.
240 What: /sys/fs/lustre/ldlm/namespaces/<name>/early_lock_cancel
242 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
244 Controls "early lock cancellation" feature on this namespace
245 if supported by the server.
246 When enabled, tries to preemtively cancel locks that would be
247 cancelled by verious operations and bundle the cancellation
248 requests in the same RPC as the main operation, which results
249 in significant speedups due to reduced lock-pingpong RPCs.
251 1 - enabled (default)
253 What: /sys/fs/lustre/ldlm/namespaces/<name>/pool/granted
255 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
257 Displays number of granted locks in this namespace
259 What: /sys/fs/lustre/ldlm/namespaces/<name>/pool/grant_rate
261 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
263 Number of granted locks in this namespace during last
266 What: /sys/fs/lustre/ldlm/namespaces/<name>/pool/cancel_rate
268 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
270 Number of lock cancellations in this namespace during
273 What: /sys/fs/lustre/ldlm/namespaces/<name>/pool/grant_speed
275 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
277 Calculated speed of lock granting (grant_rate - cancel_rate)
280 What: /sys/fs/lustre/ldlm/namespaces/<name>/pool/grant_plan
282 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
284 Estimated number of locks to be granted in the next time
285 interval in this namespace
287 What: /sys/fs/lustre/ldlm/namespaces/<name>/pool/limit
289 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
291 Controls number of allowed locks in this pool.
292 When lru_size is 0, this is the actual limit then.
294 What: /sys/fs/lustre/ldlm/namespaces/<name>/pool/lock_volume_factor
296 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
298 Multiplier for all lock volume calculations above.
299 Default is 1. Increase to make the client to more agressively
300 clean it's lock LRU list for this namespace.
302 What: /sys/fs/lustre/ldlm/namespaces/<name>/pool/server_lock_volume
304 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
306 Calculated server lock volume.
308 What: /sys/fs/lustre/ldlm/namespaces/<name>/pool/recalc_period
310 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
312 Controls length of time between recalculation of above
315 What: /sys/fs/lustre/ldlm/services/ldlm_cbd/threads_min
317 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
319 Controls minimum number of ldlm callback threads to start.
321 What: /sys/fs/lustre/ldlm/services/ldlm_cbd/threads_max
323 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
325 Controls maximum number of ldlm callback threads to start.
327 What: /sys/fs/lustre/ldlm/services/ldlm_cbd/threads_started
329 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
331 Shows actual number of ldlm callback threads running.
333 What: /sys/fs/lustre/ldlm/services/ldlm_cbd/high_priority_ratio
335 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
337 Controls what percentage of ldlm callback threads is dedicated
338 to "high priority" incoming requests.
340 What: /sys/fs/lustre/{obdtype}/{connection_name}/blocksize
342 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
344 Blocksize on backend filesystem for service behind this obd
345 device (or biggest blocksize for compound devices like lov
348 What: /sys/fs/lustre/{obdtype}/{connection_name}/kbytestotal
350 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
352 Total number of kilobytes of space on backend filesystem
353 for service behind this obd (or total amount for compound
354 devices like lov lmv)
356 What: /sys/fs/lustre/{obdtype}/{connection_name}/kbytesfree
358 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
360 Number of free kilobytes on backend filesystem for service
361 behind this obd (or total amount for compound devices
364 What: /sys/fs/lustre/{obdtype}/{connection_name}/kbytesavail
366 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
368 Number of kilobytes of free space on backend filesystem
369 for service behind this obd (or total amount for compound
370 devices like lov lmv) that is actually available for use
371 (taking into account per-client and filesystem reservations).
373 What: /sys/fs/lustre/{obdtype}/{connection_name}/filestotal
375 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
377 Number of inodes on backend filesystem for service behind this
380 What: /sys/fs/lustre/{obdtype}/{connection_name}/filesfree
382 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
384 Number of free inodes on backend filesystem for service
387 What: /sys/fs/lustre/mdc/{connection_name}/max_pages_per_rpc
389 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
391 Maximum number of readdir pages to fit into a single readdir
394 What: /sys/fs/lustre/{mdc,osc}/{connection_name}/max_rpcs_in_flight
396 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
398 Maximum number of parallel RPCs on the wire to allow on
399 this connection. Increasing this number would help on higher
400 latency links, but has a chance of overloading a server
401 if you have too many clients like this.
404 What: /sys/fs/lustre/osc/{connection_name}/max_pages_per_rpc
406 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
408 Maximum number of pages to fit into a single RPC.
409 Typically bigger RPCs allow for better performance.
410 Default: however many pages to form 1M of data (256 pages
411 for 4K page sized platforms)
413 What: /sys/fs/lustre/osc/{connection_name}/active
415 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
417 Controls accessibility of this connection. If set to 0,
418 fail all accesses immediately.
420 What: /sys/fs/lustre/osc/{connection_name}/checksums
422 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
424 Controls whenever to checksum bulk RPC data over the wire
426 1: enable (default) ; 0: disable
428 What: /sys/fs/lustre/osc/{connection_name}/contention_seconds
430 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
432 Controls for how long to consider a file contended once
433 indicated as such by the server.
434 When a file is considered contended, all operations switch to
435 synchronous lockless mode to avoid cache and lock pingpong.
437 What: /sys/fs/lustre/osc/{connection_name}/cur_dirty_bytes
439 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
441 Displays how many dirty bytes is presently in the cache for this
444 What: /sys/fs/lustre/osc/{connection_name}/cur_grant_bytes
446 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
448 Shows how many bytes we have as a "dirty cache" grant from the
449 server. Writing a value smaller than shown allows to release
450 some grant back to the server.
451 Dirty cache grant is a way Lustre ensures that cached successful
452 writes on client do not end up discarded by the server due to
453 lack of space later on.
455 What: /sys/fs/lustre/osc/{connection_name}/cur_lost_grant_bytes
457 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
459 Shows how many granted bytes were released to the server due
460 to lack of write activity on this client.
462 What: /sys/fs/lustre/osc/{connection_name}/grant_shrink_interval
464 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
466 Number of seconds with no write activity for this target
467 to start releasing dirty grant back to the server.
469 What: /sys/fs/lustre/osc/{connection_name}/destroys_in_flight
471 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
473 Number of DESTROY RPCs currently in flight to this target.
475 What: /sys/fs/lustre/osc/{connection_name}/lockless_truncate
477 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
479 Controls whether lockless truncate RPCs are allowed to this
481 Lockless truncate causes server to perform the locking which
482 is beneficial if the truncate is not followed by a write
484 1: enable ; 0: disable (default)
486 What: /sys/fs/lustre/osc/{connection_name}/max_dirty_mb
488 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
490 Controls how much dirty data this client can accumulate
491 for this target. This is orthogonal to dirty grant and is
492 a hard limit even if the server would allow a bigger dirty
494 While allowing higher dirty cache is beneficial for write
495 performance, flushing write cache takes longer and as such
496 the node might be more prone to OOMs.
497 Having this value set too low might result in not being able
498 to sent too many parallel WRITE RPCs.
501 What: /sys/fs/lustre/osc/{connection_name}/resend_count
503 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
505 Controls how many times to try and resend RPCs to this target
506 that failed with "recoverable" status, such as EAGAIN,
509 What: /sys/fs/lustre/lov/{connection_name}/numobd
511 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
513 Number of OSC targets managed by this LOV instance.
515 What: /sys/fs/lustre/lov/{connection_name}/activeobd
517 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
519 Number of OSC targets managed by this LOV instance that are
522 What: /sys/fs/lustre/lmv/{connection_name}/numobd
524 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
526 Number of MDC targets managed by this LMV instance.
528 What: /sys/fs/lustre/lmv/{connection_name}/activeobd
530 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
532 Number of MDC targets managed by this LMV instance that are
535 What: /sys/fs/lustre/lmv/{connection_name}/placement
537 Contact: "Oleg Drokin" <oleg.drokin@intel.com>
539 Determines policy of inode placement in case of multiple
541 CHAR - based on a hash of the file name used at creation time
543 NID - based on a hash of creating client network id.