]> git.proxmox.com Git - ceph.git/blob - ceph/src/common/options/mds.yaml.in
45a7862f76537d34683a994d4a51f74d0d3c721c
[ceph.git] / ceph / src / common / options / mds.yaml.in
1 # -*- mode: YAML -*-
2 ---
3
4 options:
5 - name: mds_alternate_name_max
6 type: size
7 level: advanced
8 desc: set the maximum length of alternate names for dentries
9 default: 8_K
10 services:
11 - mds
12 flags:
13 - runtime
14 - name: mds_valgrind_exit
15 type: bool
16 level: dev
17 default: false
18 services:
19 - mds
20 flags:
21 - runtime
22 - name: mds_standby_replay_damaged
23 type: bool
24 level: dev
25 default: false
26 flags:
27 - runtime
28 - name: mds_numa_node
29 type: int
30 level: advanced
31 desc: set mds's cpu affinity to a numa node (-1 for none)
32 default: -1
33 services:
34 - mds
35 flags:
36 - startup
37 - name: mds_data
38 type: str
39 level: advanced
40 desc: path to MDS data and keyring
41 default: /var/lib/ceph/mds/$cluster-$id
42 services:
43 - mds
44 flags:
45 - no_mon_update
46 with_legacy: true
47 - name: mds_join_fs
48 type: str
49 level: basic
50 desc: file system MDS prefers to join
51 long_desc: This setting indicates which file system name the MDS should prefer to
52 join (affinity). The monitors will try to have the MDS cluster safely reach a
53 state where all MDS have strong affinity, even via failovers to a standby.
54 services:
55 - mds
56 flags:
57 - runtime
58 # max xattr kv pairs size for each dir/file
59 - name: mds_max_xattr_pairs_size
60 type: size
61 level: advanced
62 desc: maximum aggregate size of extended attributes on a file
63 default: 64_K
64 services:
65 - mds
66 with_legacy: true
67 - name: mds_cache_trim_interval
68 type: secs
69 level: advanced
70 desc: interval in seconds between cache trimming
71 default: 1
72 services:
73 - mds
74 flags:
75 - runtime
76 - name: mds_cache_release_free_interval
77 type: secs
78 level: dev
79 desc: interval in seconds between heap releases
80 default: 10
81 services:
82 - mds
83 flags:
84 - runtime
85 - name: mds_cache_memory_limit
86 type: size
87 level: basic
88 desc: target maximum memory usage of MDS cache
89 long_desc: This sets a target maximum memory usage of the MDS cache and is the primary
90 tunable to limit the MDS memory usage. The MDS will try to stay under a reservation
91 of this limit (by default 95%; 1 - mds_cache_reservation) by trimming unused metadata
92 in its cache and recalling cached items in the client caches. It is possible for
93 the MDS to exceed this limit due to slow recall from clients. The mds_health_cache_threshold
94 (150%) sets a cache full threshold for when the MDS signals a cluster health warning.
95 default: 4_G
96 services:
97 - mds
98 flags:
99 - runtime
100 - name: mds_cache_reservation
101 type: float
102 level: advanced
103 desc: amount of memory to reserve for future cached objects
104 fmt_desc: The cache reservation (memory or inodes) for the MDS cache to maintain.
105 Once the MDS begins dipping into its reservation, it will recall
106 client state until its cache size shrinks to restore the
107 reservation.
108 default: 0.05
109 services:
110 - mds
111 flags:
112 - runtime
113 - name: mds_health_cache_threshold
114 type: float
115 level: advanced
116 desc: threshold for cache size to generate health warning
117 default: 1.5
118 services:
119 - mds
120 - name: mds_cache_mid
121 type: float
122 level: advanced
123 desc: midpoint for MDS cache LRU
124 fmt_desc: The insertion point for new items in the cache LRU
125 (from the top).
126 default: 0.7
127 services:
128 - mds
129 - name: mds_cache_trim_decay_rate
130 type: float
131 level: advanced
132 desc: decay rate for trimming MDS cache throttle
133 default: 1
134 services:
135 - mds
136 flags:
137 - runtime
138 - name: mds_cache_trim_threshold
139 type: size
140 level: advanced
141 desc: threshold for number of dentries that can be trimmed
142 default: 256_K
143 services:
144 - mds
145 flags:
146 - runtime
147 - name: mds_max_file_recover
148 type: uint
149 level: advanced
150 desc: maximum number of files to recover file sizes in parallel
151 default: 32
152 services:
153 - mds
154 with_legacy: true
155 - name: mds_dir_max_commit_size
156 type: int
157 level: advanced
158 desc: maximum size in megabytes for a RADOS write to a directory
159 fmt_desc: The maximum size of a directory update before Ceph breaks it into
160 smaller transactions (MB).
161 default: 10
162 services:
163 - mds
164 with_legacy: true
165 - name: mds_dir_keys_per_op
166 type: int
167 level: advanced
168 desc: number of directory entries to read in one RADOS operation
169 default: 16384
170 services:
171 - mds
172 with_legacy: true
173 - name: mds_decay_halflife
174 type: float
175 level: advanced
176 desc: rate of decay for temperature counters on each directory for balancing
177 default: 5
178 services:
179 - mds
180 with_legacy: true
181 - name: mds_beacon_interval
182 type: float
183 level: advanced
184 desc: interval in seconds between MDS beacon messages sent to monitors
185 default: 4
186 services:
187 - mds
188 with_legacy: true
189 - name: mds_beacon_grace
190 type: float
191 level: advanced
192 desc: tolerance in seconds for missed MDS beacons to monitors
193 fmt_desc: The interval without beacons before Ceph declares an MDS laggy
194 (and possibly replace it).
195 default: 15
196 services:
197 - mds
198 with_legacy: true
199 - name: mds_heartbeat_reset_grace
200 type: uint
201 level: advanced
202 desc: the basic unit of tolerance in how many circles in a loop, which will
203 keep running by holding the mds_lock, it must trigger to reset heartbeat
204 default: 1000
205 services:
206 - mds
207 - name: mds_heartbeat_grace
208 type: float
209 level: advanced
210 desc: tolerance in seconds for MDS internal heartbeat
211 default: 15
212 services:
213 - mds
214 - name: mds_enforce_unique_name
215 type: bool
216 level: advanced
217 desc: require MDS name is unique in the cluster
218 default: true
219 services:
220 - mds
221 with_legacy: true
222 # whether to blocklist clients whose sessions are dropped due to timeout
223 - name: mds_session_blocklist_on_timeout
224 type: bool
225 level: advanced
226 desc: blocklist clients whose sessions have become stale
227 default: true
228 services:
229 - mds
230 with_legacy: true
231 # whether to blocklist clients whose sessions are dropped via admin commands
232 - name: mds_session_blocklist_on_evict
233 type: bool
234 level: advanced
235 desc: blocklist clients that have been evicted
236 default: true
237 services:
238 - mds
239 with_legacy: true
240 # how many sessions should I try to load/store in a single OMAP operation?
241 - name: mds_sessionmap_keys_per_op
242 type: uint
243 level: advanced
244 desc: number of omap keys to read from the SessionMap in one operation
245 default: 1_K
246 services:
247 - mds
248 with_legacy: true
249 - name: mds_recall_max_caps
250 type: size
251 level: advanced
252 desc: maximum number of caps to recall from client session in single recall
253 default: 30000
254 services:
255 - mds
256 flags:
257 - runtime
258 - name: mds_recall_max_decay_rate
259 type: float
260 level: advanced
261 desc: decay rate for throttle on recalled caps on a session
262 default: 1.5
263 services:
264 - mds
265 flags:
266 - runtime
267 - name: mds_recall_max_decay_threshold
268 type: size
269 level: advanced
270 desc: decay threshold for throttle on recalled caps on a session
271 default: 128_K
272 services:
273 - mds
274 flags:
275 - runtime
276 - name: mds_recall_global_max_decay_threshold
277 type: size
278 level: advanced
279 desc: decay threshold for throttle on recalled caps globally
280 default: 128_K
281 services:
282 - mds
283 flags:
284 - runtime
285 - name: mds_recall_warning_threshold
286 type: size
287 level: advanced
288 desc: decay threshold for warning on slow session cap recall
289 default: 256_K
290 services:
291 - mds
292 flags:
293 - runtime
294 - name: mds_recall_warning_decay_rate
295 type: float
296 level: advanced
297 desc: decay rate for warning on slow session cap recall
298 default: 60
299 services:
300 - mds
301 flags:
302 - runtime
303 - name: mds_session_cache_liveness_decay_rate
304 type: float
305 level: advanced
306 desc: decay rate for session liveness leading to preemptive cap recall
307 long_desc: This determines how long a session needs to be quiescent before the MDS
308 begins preemptively recalling capabilities. The default of 5 minutes will cause
309 10 halvings of the decay counter after 1 hour, or 1/1024. The default magnitude
310 of 10 (1^10 or 1024) is chosen so that the MDS considers a previously chatty session
311 (approximately) to be quiescent after 1 hour.
312 default: 5_min
313 services:
314 - mds
315 see_also:
316 - mds_session_cache_liveness_magnitude
317 flags:
318 - runtime
319 - name: mds_session_cache_liveness_magnitude
320 type: size
321 level: advanced
322 desc: decay magnitude for preemptively recalling caps on quiet client
323 long_desc: This is the order of magnitude difference (in base 2) of the internal
324 liveness decay counter and the number of capabilities the session holds. When
325 this difference occurs, the MDS treats the session as quiescent and begins recalling
326 capabilities.
327 default: 10
328 services:
329 - mds
330 see_also:
331 - mds_session_cache_liveness_decay_rate
332 flags:
333 - runtime
334 - name: mds_session_cap_acquisition_decay_rate
335 type: float
336 level: advanced
337 desc: decay rate for session readdir caps leading to readdir throttle
338 long_desc: The half-life for the session cap acquisition counter of caps acquired
339 by readdir. This is used for throttling readdir requests from clients slow to
340 release caps.
341 default: 10
342 services:
343 - mds
344 flags:
345 - runtime
346 - name: mds_session_cap_acquisition_throttle
347 type: uint
348 level: advanced
349 desc: throttle point for cap acquisition decay counter
350 default: 500000
351 services:
352 - mds
353 - name: mds_session_max_caps_throttle_ratio
354 type: float
355 level: advanced
356 desc: ratio of mds_max_caps_per_client that client must exceed before readdir may
357 be throttled by cap acquisition throttle
358 default: 1.1
359 services:
360 - mds
361 - name: mds_cap_acquisition_throttle_retry_request_timeout
362 type: float
363 level: advanced
364 desc: timeout in seconds after which a client request is retried due to cap acquisition
365 throttling
366 default: 0.5
367 services:
368 - mds
369 # detecting freeze tree deadlock
370 - name: mds_freeze_tree_timeout
371 type: float
372 level: dev
373 default: 30
374 services:
375 - mds
376 with_legacy: true
377 # collapse N-client health metrics to a single 'many'
378 - name: mds_health_summarize_threshold
379 type: int
380 level: advanced
381 desc: threshold of number of clients to summarize late client recall
382 default: 10
383 services:
384 - mds
385 with_legacy: true
386 # seconds to wait for clients during mds restart
387 # make it (mdsmap.session_timeout - mds_beacon_grace)
388 - name: mds_reconnect_timeout
389 type: float
390 level: advanced
391 desc: timeout in seconds to wait for clients to reconnect during MDS reconnect recovery
392 state
393 default: 45
394 services:
395 - mds
396 with_legacy: true
397 - name: mds_deny_all_reconnect
398 type: bool
399 level: advanced
400 desc: flag to deny all client reconnects during failover
401 default: false
402 services:
403 - mds
404 flags:
405 - runtime
406 - name: mds_tick_interval
407 type: float
408 level: advanced
409 desc: time in seconds between upkeep tasks
410 fmt_desc: How frequently the MDS performs internal periodic tasks.
411 default: 5
412 services:
413 - mds
414 with_legacy: true
415 # try to avoid propagating more often than this
416 - name: mds_dirstat_min_interval
417 type: float
418 level: dev
419 default: 1
420 services:
421 - mds
422 fmt_desc: The minimum interval (in seconds) to try to avoid propagating
423 recursive stats up the tree.
424 with_legacy: true
425 # how quickly dirstat changes propagate up the hierarchy
426 - name: mds_scatter_nudge_interval
427 type: float
428 level: advanced
429 desc: minimum interval between scatter lock updates
430 fmt_desc: How quickly dirstat changes propagate up.
431 default: 5
432 services:
433 - mds
434 with_legacy: true
435 - name: mds_client_prealloc_inos
436 type: int
437 level: advanced
438 desc: number of unused inodes to pre-allocate to clients for file creation
439 fmt_desc: The number of inode numbers to preallocate per client session.
440 default: 1000
441 services:
442 - mds
443 with_legacy: true
444 - name: mds_client_delegate_inos_pct
445 type: uint
446 level: advanced
447 desc: percentage of preallocated inos to delegate to client
448 default: 50
449 services:
450 - mds
451 flags:
452 - runtime
453 - name: mds_early_reply
454 type: bool
455 level: advanced
456 desc: additional reply to clients that metadata requests are complete but not yet
457 durable
458 fmt_desc: Determines whether the MDS should allow clients to see request
459 results before they commit to the journal.
460 default: true
461 services:
462 - mds
463 with_legacy: true
464 - name: mds_replay_unsafe_with_closed_session
465 type: bool
466 level: advanced
467 desc: complete all the replay request when mds is restarted, no matter the session
468 is closed or not
469 default: false
470 services:
471 - mds
472 flags:
473 - startup
474 - name: mds_default_dir_hash
475 type: int
476 level: advanced
477 desc: hash function to select directory fragment for dentry name
478 fmt_desc: The function to use for hashing files across directory fragments.
479 # CEPH_STR_HASH_RJENKINS
480 default: 2
481 services:
482 - mds
483 with_legacy: true
484 - name: mds_log_pause
485 type: bool
486 level: dev
487 default: false
488 services:
489 - mds
490 with_legacy: true
491 - name: mds_log_skip_corrupt_events
492 type: bool
493 level: dev
494 default: false
495 services:
496 - mds
497 fmt_desc: Determines whether the MDS should try to skip corrupt journal
498 events during journal replay.
499 with_legacy: true
500 - name: mds_log_max_events
501 type: int
502 level: advanced
503 desc: maximum number of events in the MDS journal (-1 is unlimited)
504 fmt_desc: The maximum events in the journal before we initiate trimming.
505 Set to ``-1`` to disable limits.
506 default: -1
507 services:
508 - mds
509 with_legacy: true
510 - name: mds_log_events_per_segment
511 type: int
512 level: advanced
513 desc: maximum number of events in an MDS journal segment
514 default: 1024
515 services:
516 - mds
517 with_legacy: true
518 # segment size for mds log, default to default file_layout_t
519 - name: mds_log_segment_size
520 type: size
521 level: advanced
522 desc: size in bytes of each MDS log segment
523 default: 0
524 services:
525 - mds
526 with_legacy: true
527 - name: mds_log_max_segments
528 type: uint
529 level: advanced
530 desc: maximum number of segments which may be untrimmed
531 fmt_desc: The maximum number of segments (objects) in the journal before
532 we initiate trimming. Set to ``-1`` to disable limits.
533 default: 128
534 services:
535 - mds
536 with_legacy: true
537 - name: mds_log_warn_factor
538 type: float
539 level: advanced
540 desc: trigger MDS_HEALTH_TRIM warning when the mds log is longer than mds_log_max_segments
541 * mds_log_warn_factor
542 default: 2
543 services:
544 - mds
545 min: 1
546 flags:
547 - runtime
548 - name: mds_bal_export_pin
549 type: bool
550 level: advanced
551 desc: allow setting directory export pins to particular ranks
552 default: true
553 services:
554 - mds
555 with_legacy: true
556 - name: mds_export_ephemeral_random
557 type: bool
558 level: advanced
559 desc: allow ephemeral random pinning of the loaded subtrees
560 long_desc: probabilistically pin the loaded directory inode and the subtree beneath
561 it to an MDS based on the consistent hash of the inode number. The higher this
562 value the more likely the loaded subtrees get pinned
563 default: true
564 services:
565 - mds
566 flags:
567 - runtime
568 - name: mds_export_ephemeral_random_max
569 type: float
570 level: advanced
571 desc: the maximum percent permitted for random ephemeral pin policy
572 default: 0.01
573 services:
574 - mds
575 see_also:
576 - mds_export_ephemeral_random
577 min: 0
578 max: 1
579 flags:
580 - runtime
581 - name: mds_export_ephemeral_distributed
582 type: bool
583 level: advanced
584 desc: allow ephemeral distributed pinning of the loaded subtrees
585 long_desc: 'pin the immediate child directories of the loaded directory inode based
586 on the consistent hash of the child''s inode number. '
587 default: true
588 services:
589 - mds
590 flags:
591 - runtime
592 - name: mds_export_ephemeral_distributed_factor
593 type: float
594 level: advanced
595 desc: multiple of max_mds for splitting and distributing directory
596 default: 2
597 services:
598 - mds
599 min: 1
600 max: 100
601 flags:
602 - runtime
603 - name: mds_bal_sample_interval
604 type: float
605 level: advanced
606 desc: interval in seconds between balancer ticks
607 fmt_desc: Determines how frequently to sample directory temperature
608 (for fragmentation decisions).
609 default: 3
610 services:
611 - mds
612 with_legacy: true
613 - name: mds_bal_replicate_threshold
614 type: float
615 level: advanced
616 desc: hot popularity threshold to replicate a subtree
617 fmt_desc: The maximum temperature before Ceph attempts to replicate
618 metadata to other nodes.
619 default: 8000
620 services:
621 - mds
622 with_legacy: true
623 - name: mds_bal_unreplicate_threshold
624 type: float
625 level: advanced
626 desc: cold popularity threshold to merge subtrees
627 fmt_desc: The minimum temperature before Ceph stops replicating
628 metadata to other nodes.
629 default: 0
630 services:
631 - mds
632 with_legacy: true
633 - name: mds_bal_split_size
634 type: int
635 level: advanced
636 desc: minimum size of directory fragment before splitting
637 fmt_desc: The maximum directory size before the MDS will split a directory
638 fragment into smaller bits.
639 default: 10000
640 services:
641 - mds
642 with_legacy: true
643 - name: mds_bal_split_rd
644 type: float
645 level: advanced
646 desc: hot read popularity threshold for splitting a directory fragment
647 fmt_desc: The maximum directory read temperature before Ceph splits
648 a directory fragment.
649 default: 25000
650 services:
651 - mds
652 with_legacy: true
653 - name: mds_bal_split_wr
654 type: float
655 level: advanced
656 desc: hot write popularity threshold for splitting a directory fragment
657 fmt_desc: The maximum directory write temperature before Ceph splits
658 a directory fragment.
659 default: 10000
660 services:
661 - mds
662 with_legacy: true
663 - name: mds_bal_split_bits
664 type: int
665 level: advanced
666 desc: power of two child fragments for a fragment on split
667 fmt_desc: The number of bits by which to split a directory fragment.
668 default: 3
669 services:
670 - mds
671 min: 1
672 max: 24
673 with_legacy: true
674 - name: mds_bal_merge_size
675 type: int
676 level: advanced
677 desc: size of fragments where merging should occur
678 fmt_desc: The minimum directory size before Ceph tries to merge
679 adjacent directory fragments.
680 default: 50
681 services:
682 - mds
683 with_legacy: true
684 - name: mds_bal_interval
685 type: int
686 level: advanced
687 desc: interval between MDS balancer cycles
688 fmt_desc: The frequency (in seconds) of workload exchanges between MDSs.
689 default: 10
690 services:
691 - mds
692 - name: mds_bal_fragment_interval
693 type: int
694 level: advanced
695 desc: delay in seconds before interrupting client IO to perform splits
696 fmt_desc: The delay (in seconds) between a fragment being eligible for split
697 or merge and executing the fragmentation change.
698 default: 5
699 services:
700 - mds
701 # order of magnitude higher than split size
702 - name: mds_bal_fragment_size_max
703 type: int
704 level: advanced
705 desc: maximum size of a directory fragment before new creat/links fail
706 fmt_desc: The maximum size of a fragment before any new entries
707 are rejected with ENOSPC.
708 default: 100000
709 services:
710 - mds
711 with_legacy: true
712 # multiple of size_max that triggers immediate split
713 - name: mds_bal_fragment_fast_factor
714 type: float
715 level: advanced
716 desc: ratio of mds_bal_split_size at which fast fragment splitting occurs
717 fmt_desc: The ratio by which frags may exceed the split size before
718 a split is executed immediately (skipping the fragment interval)
719 default: 1.5
720 services:
721 - mds
722 with_legacy: true
723 - name: mds_bal_fragment_dirs
724 type: bool
725 level: advanced
726 desc: enable directory fragmentation
727 long_desc: Directory fragmentation is a standard feature of CephFS that allows sharding
728 directories across multiple objects for performance and stability. Additionally,
729 this allows fragments to be distributed across multiple active MDSs to increase
730 throughput. Disabling (new) fragmentation should only be done in exceptional circumstances
731 and may lead to performance issues.
732 default: true
733 services:
734 - mds
735 - name: mds_bal_idle_threshold
736 type: float
737 level: advanced
738 desc: idle metadata popularity threshold before rebalancing
739 fmt_desc: The minimum temperature before Ceph migrates a subtree
740 back to its parent.
741 default: 0
742 services:
743 - mds
744 with_legacy: true
745 - name: mds_bal_max
746 type: int
747 level: dev
748 default: -1
749 services:
750 - mds
751 fmt_desc: The number of iterations to run balancer before Ceph stops.
752 (used for testing purposes only)
753 with_legacy: true
754 - name: mds_bal_max_until
755 type: int
756 level: dev
757 default: -1
758 services:
759 - mds
760 fmt_desc: The number of seconds to run balancer before Ceph stops.
761 (used for testing purposes only)
762 with_legacy: true
763 - name: mds_bal_mode
764 type: int
765 level: dev
766 default: 0
767 services:
768 - mds
769 fmt_desc: |
770 The method for calculating MDS load.
771
772 - ``0`` = Hybrid.
773 - ``1`` = Request rate and latency.
774 - ``2`` = CPU load.
775 with_legacy: true
776 # must be this much above average before we export anything
777 - name: mds_bal_min_rebalance
778 type: float
779 level: dev
780 desc: amount overloaded over internal target before balancer begins offloading
781 fmt_desc: The minimum subtree temperature before Ceph migrates.
782 default: 0.1
783 services:
784 - mds
785 with_legacy: true
786 # if we need less than this, we don't do anything
787 - name: mds_bal_min_start
788 type: float
789 level: dev
790 default: 0.2
791 services:
792 - mds
793 fmt_desc: The minimum subtree temperature before Ceph searches a subtree.
794 with_legacy: true
795 # take within this range of what we need
796 - name: mds_bal_need_min
797 type: float
798 level: dev
799 default: 0.8
800 services:
801 - mds
802 fmt_desc: The minimum fraction of target subtree size to accept.
803 with_legacy: true
804 - name: mds_bal_need_max
805 type: float
806 level: dev
807 default: 1.2
808 services:
809 - mds
810 fmt_desc: The maximum fraction of target subtree size to accept.
811 with_legacy: true
812 # any sub bigger than this taken in full
813 - name: mds_bal_midchunk
814 type: float
815 level: dev
816 default: 0.3
817 services:
818 - mds
819 fmt_desc: Ceph will migrate any subtree that is larger than this fraction
820 of the target subtree size.
821 with_legacy: true
822 # never take anything smaller than this
823 - name: mds_bal_minchunk
824 type: float
825 level: dev
826 default: 0.001
827 services:
828 - mds
829 fmt_desc: Ceph will ignore any subtree that is smaller than this fraction
830 of the target subtree size.
831 with_legacy: true
832 # target decay half-life in MDSMap (2x larger is approx. 2x slower)
833 - name: mds_bal_target_decay
834 type: float
835 level: advanced
836 desc: rate of decay for export targets communicated to clients
837 default: 10
838 services:
839 - mds
840 with_legacy: true
841 - name: mds_oft_prefetch_dirfrags
842 type: bool
843 level: advanced
844 desc: prefetch dirfrags recorded in open file table on startup
845 default: false
846 services:
847 - mds
848 flags:
849 - startup
850 # time to wait before starting replay again
851 - name: mds_replay_interval
852 type: float
853 level: advanced
854 desc: time in seconds between replay of updates to journal by standby replay MDS
855 fmt_desc: The journal poll interval when in standby-replay mode.
856 ("hot standby")
857 default: 1
858 services:
859 - mds
860 with_legacy: true
861 - name: mds_shutdown_check
862 type: int
863 level: dev
864 default: 0
865 services:
866 - mds
867 fmt_desc: The interval for polling the cache during MDS shutdown.
868 with_legacy: true
869 - name: mds_thrash_exports
870 type: int
871 level: dev
872 default: 0
873 services:
874 - mds
875 fmt_desc: Ceph will randomly export subtrees between nodes (testing only).
876 with_legacy: true
877 - name: mds_thrash_fragments
878 type: int
879 level: dev
880 default: 0
881 services:
882 - mds
883 fmt_desc: Ceph will randomly fragment or merge directories.
884 with_legacy: true
885 - name: mds_dump_cache_on_map
886 type: bool
887 level: dev
888 default: false
889 services:
890 - mds
891 fmt_desc: Ceph will dump the MDS cache contents to a file on each MDSMap.
892 with_legacy: true
893 - name: mds_dump_cache_after_rejoin
894 type: bool
895 level: dev
896 default: false
897 services:
898 - mds
899 fmt_desc: Ceph will dump MDS cache contents to a file after
900 rejoining the cache (during recovery).
901 with_legacy: true
902 - name: mds_verify_scatter
903 type: bool
904 level: dev
905 default: false
906 services:
907 - mds
908 fmt_desc: Ceph will assert that various scatter/gather invariants
909 are ``true`` (developers only).
910 with_legacy: true
911 - name: mds_debug_scatterstat
912 type: bool
913 level: dev
914 default: false
915 services:
916 - mds
917 fmt_desc: Ceph will assert that various recursive stat invariants
918 are ``true`` (for developers only).
919 with_legacy: true
920 - name: mds_debug_frag
921 type: bool
922 level: dev
923 default: false
924 services:
925 - mds
926 fmt_desc: Ceph will verify directory fragmentation invariants
927 when convenient (developers only).
928 with_legacy: true
929 - name: mds_debug_auth_pins
930 type: bool
931 level: dev
932 default: false
933 services:
934 - mds
935 fmt_desc: The debug auth pin invariants (for developers only).
936 with_legacy: true
937 - name: mds_debug_subtrees
938 type: bool
939 level: dev
940 default: false
941 services:
942 - mds
943 fmt_desc: The debug subtree invariants (for developers only).
944 with_legacy: true
945 - name: mds_kill_mdstable_at
946 type: int
947 level: dev
948 default: 0
949 services:
950 - mds
951 fmt_desc: Ceph will inject MDS failure in MDSTable code
952 (for developers only).
953 with_legacy: true
954 - name: mds_max_export_size
955 type: size
956 level: dev
957 default: 20_M
958 services:
959 - mds
960 - name: mds_kill_export_at
961 type: int
962 level: dev
963 default: 0
964 services:
965 - mds
966 fmt_desc: Ceph will inject MDS failure in the subtree export code
967 (for developers only).
968 with_legacy: true
969 - name: mds_kill_import_at
970 type: int
971 level: dev
972 default: 0
973 services:
974 - mds
975 fmt_desc: Ceph will inject MDS failure in the subtree import code
976 (for developers only).
977 with_legacy: true
978 - name: mds_kill_link_at
979 type: int
980 level: dev
981 default: 0
982 services:
983 - mds
984 fmt_desc: Ceph will inject MDS failure in hard link code
985 (for developers only).
986 with_legacy: true
987 - name: mds_kill_rename_at
988 type: int
989 level: dev
990 default: 0
991 services:
992 - mds
993 fmt_desc: Ceph will inject MDS failure in the rename code
994 (for developers only).
995 with_legacy: true
996 - name: mds_kill_openc_at
997 type: int
998 level: dev
999 default: 0
1000 services:
1001 - mds
1002 with_legacy: true
1003 # XXX
1004 - name: mds_kill_journal_at
1005 type: int
1006 level: dev
1007 default: 0
1008 services:
1009 - mds
1010 - name: mds_kill_journal_expire_at
1011 type: int
1012 level: dev
1013 default: 0
1014 services:
1015 - mds
1016 with_legacy: true
1017 - name: mds_kill_journal_replay_at
1018 type: int
1019 level: dev
1020 default: 0
1021 services:
1022 - mds
1023 with_legacy: true
1024 - name: mds_journal_format
1025 type: uint
1026 level: dev
1027 default: 1
1028 services:
1029 - mds
1030 with_legacy: true
1031 - name: mds_kill_create_at
1032 type: int
1033 level: dev
1034 default: 0
1035 services:
1036 - mds
1037 with_legacy: true
1038 - name: mds_inject_health_dummy
1039 type: bool
1040 level: dev
1041 default: false
1042 services:
1043 - mds
1044 # percentage of MDS modify replies to skip sending the client a trace on [0-1]
1045 - name: mds_inject_traceless_reply_probability
1046 type: float
1047 level: dev
1048 default: 0
1049 services:
1050 - mds
1051 with_legacy: true
1052 - name: mds_wipe_sessions
1053 type: bool
1054 level: dev
1055 default: false
1056 services:
1057 - mds
1058 fmt_desc: Ceph will delete all client sessions on startup
1059 (for testing only).
1060 with_legacy: true
1061 - name: mds_wipe_ino_prealloc
1062 type: bool
1063 level: dev
1064 default: false
1065 services:
1066 - mds
1067 fmt_desc: Ceph will delete ino preallocation metadata on startup
1068 (for testing only).
1069 with_legacy: true
1070 - name: mds_skip_ino
1071 type: int
1072 level: dev
1073 default: 0
1074 services:
1075 - mds
1076 fmt_desc: The number of inode numbers to skip on startup
1077 (for testing only).
1078 with_legacy: true
1079 - name: mds_enable_op_tracker
1080 type: bool
1081 level: advanced
1082 desc: track remote operation progression and statistics
1083 default: true
1084 services:
1085 - mds
1086 with_legacy: true
1087 # Max number of completed ops to track
1088 - name: mds_op_history_size
1089 type: uint
1090 level: advanced
1091 desc: maximum size for list of historical operations
1092 default: 20
1093 services:
1094 - mds
1095 with_legacy: true
1096 # Oldest completed op to track
1097 - name: mds_op_history_duration
1098 type: uint
1099 level: advanced
1100 desc: expiration time in seconds of historical operations
1101 default: 600
1102 services:
1103 - mds
1104 with_legacy: true
1105 # how many seconds old makes an op complaint-worthy
1106 - name: mds_op_complaint_time
1107 type: float
1108 level: advanced
1109 desc: time in seconds to consider an operation blocked after no updates
1110 default: 30
1111 services:
1112 - mds
1113 with_legacy: true
1114 # how many op log messages to show in one go
1115 - name: mds_op_log_threshold
1116 type: int
1117 level: dev
1118 default: 5
1119 services:
1120 - mds
1121 with_legacy: true
1122 - name: mds_snap_min_uid
1123 type: uint
1124 level: advanced
1125 desc: minimum uid of client to perform snapshots
1126 default: 0
1127 services:
1128 - mds
1129 with_legacy: true
1130 - name: mds_snap_max_uid
1131 type: uint
1132 level: advanced
1133 desc: maximum uid of client to perform snapshots
1134 default: 4294967294
1135 services:
1136 - mds
1137 with_legacy: true
1138 - name: mds_snap_rstat
1139 type: bool
1140 level: advanced
1141 desc: enabled nested rstat for snapshots
1142 default: false
1143 services:
1144 - mds
1145 with_legacy: true
1146 - name: mds_verify_backtrace
1147 type: uint
1148 level: dev
1149 default: 1
1150 services:
1151 - mds
1152 with_legacy: true
1153 # detect clients which aren't trimming completed requests
1154 - name: mds_max_completed_flushes
1155 type: uint
1156 level: dev
1157 default: 100000
1158 services:
1159 - mds
1160 with_legacy: true
1161 - name: mds_max_completed_requests
1162 type: uint
1163 level: dev
1164 default: 100000
1165 services:
1166 - mds
1167 with_legacy: true
1168 - name: mds_action_on_write_error
1169 type: uint
1170 level: advanced
1171 desc: action to take when MDS cannot write to RADOS (0:ignore, 1:read-only, 2:suicide)
1172 default: 1
1173 services:
1174 - mds
1175 with_legacy: true
1176 - name: mds_mon_shutdown_timeout
1177 type: float
1178 level: advanced
1179 desc: time to wait for mon to receive damaged MDS rank notification
1180 default: 5
1181 services:
1182 - mds
1183 with_legacy: true
1184 # Maximum number of concurrent stray files to purge
1185 - name: mds_max_purge_files
1186 type: uint
1187 level: advanced
1188 desc: maximum number of deleted files to purge in parallel
1189 default: 64
1190 services:
1191 - mds
1192 with_legacy: true
1193 # Maximum number of concurrent RADOS ops to issue in purging
1194 - name: mds_max_purge_ops
1195 type: uint
1196 level: advanced
1197 desc: maximum number of purge operations performed in parallel
1198 default: 8_K
1199 services:
1200 - mds
1201 with_legacy: true
1202 # Maximum number of concurrent RADOS ops to issue in purging, scaled by PG count
1203 - name: mds_max_purge_ops_per_pg
1204 type: float
1205 level: advanced
1206 desc: number of parallel purge operations performed per PG
1207 default: 0.5
1208 services:
1209 - mds
1210 with_legacy: true
1211 - name: mds_purge_queue_busy_flush_period
1212 type: float
1213 level: dev
1214 default: 1
1215 services:
1216 - mds
1217 with_legacy: true
1218 - name: mds_root_ino_uid
1219 type: int
1220 level: advanced
1221 desc: default uid for new root directory
1222 default: 0
1223 services:
1224 - mds
1225 with_legacy: true
1226 - name: mds_root_ino_gid
1227 type: int
1228 level: advanced
1229 desc: default gid for new root directory
1230 default: 0
1231 services:
1232 - mds
1233 with_legacy: true
1234 - name: mds_max_scrub_ops_in_progress
1235 type: int
1236 level: advanced
1237 desc: maximum number of scrub operations performed in parallel
1238 default: 5
1239 services:
1240 - mds
1241 with_legacy: true
1242 - name: mds_forward_all_requests_to_auth
1243 type: bool
1244 level: advanced
1245 desc: always process op on auth mds
1246 default: false
1247 services:
1248 - mds
1249 flags:
1250 - runtime
1251 # Maximum number of damaged frags/dentries before whole MDS rank goes damaged
1252 - name: mds_damage_table_max_entries
1253 type: int
1254 level: advanced
1255 desc: maximum number of damage table entries
1256 default: 10000
1257 services:
1258 - mds
1259 with_legacy: true
1260 # Maximum increment for client writable range, counted by number of objects
1261 - name: mds_client_writeable_range_max_inc_objs
1262 type: uint
1263 level: advanced
1264 desc: maximum number of objects in writeable range of a file for a client
1265 default: 1_K
1266 services:
1267 - mds
1268 with_legacy: true
1269 - name: mds_min_caps_per_client
1270 type: uint
1271 level: advanced
1272 desc: minimum number of capabilities a client may hold
1273 default: 100
1274 services:
1275 - mds
1276 - name: mds_min_caps_working_set
1277 type: uint
1278 level: advanced
1279 desc: number of capabilities a client may hold without cache pressure warnings generated
1280 default: 10000
1281 services:
1282 - mds
1283 flags:
1284 - runtime
1285 - name: mds_max_caps_per_client
1286 type: uint
1287 level: advanced
1288 desc: maximum number of capabilities a client may hold
1289 default: 1_M
1290 services:
1291 - mds
1292 - name: mds_hack_allow_loading_invalid_metadata
1293 type: bool
1294 level: advanced
1295 desc: INTENTIONALLY CAUSE DATA LOSS by bypasing checks for invalid metadata on disk.
1296 Allows testing repair tools.
1297 default: false
1298 services:
1299 - mds
1300 - name: mds_defer_session_stale
1301 type: bool
1302 level: dev
1303 default: true
1304 services:
1305 - mds
1306 - name: mds_inject_migrator_session_race
1307 type: bool
1308 level: dev
1309 default: false
1310 services:
1311 - mds
1312 - name: mds_request_load_average_decay_rate
1313 type: float
1314 level: advanced
1315 desc: rate of decay in seconds for calculating request load average
1316 default: 1_min
1317 services:
1318 - mds
1319 - name: mds_cap_revoke_eviction_timeout
1320 type: float
1321 level: advanced
1322 desc: number of seconds after which clients which have not responded to cap revoke
1323 messages by the MDS are evicted.
1324 default: 0
1325 services:
1326 - mds
1327 - name: mds_max_retries_on_remount_failure
1328 type: uint
1329 level: advanced
1330 desc: number of consecutive failed remount attempts for invalidating kernel dcache
1331 after which client would abort.
1332 default: 5
1333 services:
1334 - mds
1335 - name: mds_dump_cache_threshold_formatter
1336 type: size
1337 level: dev
1338 desc: threshold for cache usage to disallow "dump cache" operation to formatter
1339 long_desc: Disallow MDS from dumping caches to formatter via "dump cache" command
1340 if cache usage exceeds this threshold.
1341 default: 1_G
1342 services:
1343 - mds
1344 - name: mds_dump_cache_threshold_file
1345 type: size
1346 level: dev
1347 desc: threshold for cache usage to disallow "dump cache" operation to file
1348 long_desc: Disallow MDS from dumping caches to file via "dump cache" command if
1349 cache usage exceeds this threshold.
1350 default: 0
1351 services:
1352 - mds
1353 - name: mds_task_status_update_interval
1354 type: float
1355 level: dev
1356 desc: task status update interval to manager
1357 long_desc: interval (in seconds) for sending mds task status to ceph manager
1358 default: 2
1359 services:
1360 - mds
1361 - name: mds_max_snaps_per_dir
1362 type: uint
1363 level: advanced
1364 desc: max snapshots per directory
1365 long_desc: maximum number of snapshots that can be created per directory
1366 default: 100
1367 services:
1368 - mds
1369 min: 0
1370 max: 4_K
1371 flags:
1372 - runtime
1373 - name: mds_asio_thread_count
1374 type: uint
1375 level: advanced
1376 desc: Size of thread pool for ASIO completions
1377 default: 2
1378 tags:
1379 - mds
1380 services:
1381 - mds
1382 min: 1
1383 - name: mds_ping_grace
1384 type: secs
1385 level: advanced
1386 desc: timeout after which an MDS is considered laggy by rank 0 MDS.
1387 long_desc: timeout for replying to a ping message sent by rank 0 after which an
1388 active MDS considered laggy (delayed metrics) by rank 0.
1389 default: 15
1390 services:
1391 - mds
1392 flags:
1393 - runtime
1394 - name: mds_ping_interval
1395 type: secs
1396 level: advanced
1397 desc: interval in seconds for sending ping messages to active MDSs.
1398 long_desc: interval in seconds for rank 0 to send ping messages to all active MDSs.
1399 default: 5
1400 services:
1401 - mds
1402 flags:
1403 - runtime
1404 - name: mds_metrics_update_interval
1405 type: secs
1406 level: advanced
1407 desc: interval in seconds for metrics data update.
1408 long_desc: interval in seconds after which active MDSs send client metrics data
1409 to rank 0.
1410 default: 2
1411 services:
1412 - mds
1413 flags:
1414 - runtime
1415 - name: mds_dir_max_entries
1416 type: uint
1417 level: advanced
1418 desc: maximum number of entries per directory before new creat/links fail
1419 long_desc: The maximum number of entries before any new entries
1420 are rejected with ENOSPC.
1421 default: 0
1422 services:
1423 - mds
1424 flags:
1425 - runtime
1426 - name: mds_sleep_rank_change
1427 type: float
1428 level: dev
1429 default: 0.0
1430 flags:
1431 - runtime
1432 - name: mds_connect_bootstrapping
1433 type: bool
1434 level: dev
1435 default: false
1436 flags:
1437 - runtime
1438 - name: mds_symlink_recovery
1439 type: bool
1440 level: advanced
1441 desc: Stores symlink target on the first data object of symlink file.
1442 Allows recover of symlink using recovery tools.
1443 default: true
1444 services:
1445 - mds
1446 flags:
1447 - runtime