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