summaryrefslogtreecommitdiffstats
path: root/src/common/options/mds-client.yaml.in
blob: 28912cdb129c767aae8162db6abd4f5afd9ef3a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
# -*- mode: YAML -*-
---

options:
- name: client_cache_size
  type: size
  level: basic
  desc: soft maximum number of directory entries in client cache
  fmt_desc: Set the number of inodes that the client keeps in the metadata cache.
  default: 16_K
  services:
  - mds_client
  with_legacy: true
- name: client_cache_mid
  type: float
  level: advanced
  desc: mid-point of client cache LRU
  fmt_desc: Set client cache midpoint. The midpoint splits the least recently used
    lists into a hot and warm list.
  default: 0.75
  services:
  - mds_client
  with_legacy: true
- name: client_use_random_mds
  type: bool
  level: dev
  desc: issue new requests to a random active MDS
  fmt_desc: Choose random MDS for each request.
  default: false
  services:
  - mds_client
  with_legacy: true
- name: client_mount_timeout
  type: secs
  level: advanced
  desc: timeout for mounting CephFS (seconds)
  fmt_desc: Set the timeout for CephFS mount in seconds.
  default: 5_min
  services:
  - mds_client
- name: client_tick_interval
  type: secs
  level: dev
  desc: seconds between client upkeep ticks
  fmt_desc: Set the interval in seconds between capability renewal and other upkeep.
  default: 1
  services:
  - mds_client
- name: client_trace
  type: str
  level: dev
  desc: file containing trace of client operations
  services:
  - mds_client
  with_legacy: true
- name: client_readahead_min
  type: size
  level: advanced
  desc: minimum bytes to readahead in a file
  fmt_desc: Set the minimum number bytes that the client reads ahead.
  default: 128_K
  services:
  - mds_client
  with_legacy: true
- name: client_readahead_max_bytes
  type: size
  level: advanced
  desc: maximum bytes to readahead in a file (zero is unlimited)
  fmt_desc: Set the maximum number of bytes that the client reads ahead for
    future read operations. Overridden by the ``client_readahead_max_periods``
    setting.
  default: 0
  services:
  - mds_client
  with_legacy: true
# as multiple of file layout period (object size * num stripes)
- name: client_readahead_max_periods
  type: int
  level: advanced
  desc: maximum stripe periods to readahead in a file
  fmt_desc: Set the number of file layout periods (object size * number of
    stripes) that the client reads ahead. Overrides the
    ``client_readahead_max_bytes`` setting.
  default: 4
  services:
  - mds_client
  with_legacy: true
- name: client_reconnect_stale
  type: bool
  level: advanced
  desc: reconnect when the session becomes stale
  default: false
  services:
  - mds_client
- name: client_snapdir
  type: str
  level: advanced
  desc: pseudo directory for snapshot access to a directory
  fmt_desc: Set the snapshot directory name.
  default: .snap
  services:
  - mds_client
  with_legacy: true
- name: client_mountpoint
  type: str
  level: advanced
  desc: default mount-point
  fmt_desc: Directory to mount on the CephFS file system. An alternative to the
    ``-r`` option of the ``ceph-fuse`` command.
  default: /
  services:
  - mds_client
- name: client_mount_uid
  type: int
  level: advanced
  desc: uid to mount as
  default: -1
  services:
  - mds_client
  fmt_desc: Set the user ID of CephFS mount.
  with_legacy: true
- name: client_mount_gid
  type: int
  level: advanced
  desc: gid to mount as
  fmt_desc: Set the group ID of CephFS mount.
  default: -1
  services:
  - mds_client
  with_legacy: true
- name: client_notify_timeout
  type: int
  level: dev
  default: 10
  services:
  - mds_client
  with_legacy: true
- name: osd_client_watch_timeout
  type: int
  level: dev
  default: 30
  services:
  - mds_client
  with_legacy: true
- name: client_caps_release_delay
  type: secs
  level: dev
  default: 5
  services:
  - mds_client
  fmt_desc: Set the delay between capability releases in seconds. The delay
    sets how many   seconds a client waits to release capabilities that it no
    longer needs in case the capabilities are needed for another user space
    operation.
- name: client_quota_df
  type: bool
  level: advanced
  desc: show quota usage for statfs (df)
  fmt_desc: Report root directory quota for the ``statfs`` operation.
  default: true
  services:
  - mds_client
  with_legacy: true
- name: client_oc
  type: bool
  level: advanced
  desc: enable object caching
  default: true
  services:
  - mds_client
  with_legacy: true
- name: client_oc_size
  type: size
  level: advanced
  desc: maximum size of object cache
  fmt_desc: Set how many bytes of data will the client cache.
  default: 200_M
  services:
  - mds_client
  flags:
  - runtime
  with_legacy: true
# MB * n  (dirty OR tx.. bigish)
- name: client_oc_max_dirty
  type: size
  level: advanced
  desc: maximum size of dirty pages in object cache
  fmt_desc: Set the maximum number of dirty bytes in the object cache.
  default: 100_M
  services:
  - mds_client
  flags:
  - runtime
  with_legacy: true
# target dirty (keep this smallish)
- name: client_oc_target_dirty
  type: size
  level: advanced
  desc: target size of dirty pages object cache
  fmt_desc: Set the target size of dirty data. We recommend to keep this number low.
  default: 8_M
  services:
  - mds_client
  flags:
  - runtime
  with_legacy: true
- name: client_oc_max_dirty_age
  type: float
  level: advanced
  desc: maximum age of dirty pages in object cache (seconds)
  fmt_desc: Set the maximum age in seconds of dirty data in the object cache
    before writeback.
  default: 5
  services:
  - mds_client
  flags:
  - runtime
  with_legacy: true
- name: client_oc_max_objects
  type: int
  level: advanced
  desc: maximum number of objects in cache
  fmt_desc: Set the maximum number of objects in the object cache.
  default: 1000
  services:
  - mds_client
  flags:
  - runtime
  with_legacy: true
# check if MDS reply contains wanted caps
- name: client_debug_getattr_caps
  type: bool
  level: dev
  default: false
  services:
  - mds_client
  with_legacy: true
# always read synchronously (go to osds)
- name: client_debug_force_sync_read
  type: bool
  level: dev
  default: false
  services:
  - mds_client
  fmt_desc: If set to ``true``, clients read data directly from OSDs instead
    of using a local page cache.
  with_legacy: true
- name: client_debug_inject_tick_delay
  type: secs
  level: dev
  default: 0
  services:
  - mds_client
- name: client_debug_inject_features
  type: str
  level: dev
  services:
  - mds_client
  flags:
  - startup
  with_legacy: true
- name: client_max_inline_size
  type: size
  level: dev
  default: 4_K
  services:
  - mds_client
  fmt_desc: Set the maximum size of inlined data stored in a file inode rather
    than in a separate data object in RADOS. This setting only applies if the
    ``inline_data`` flag is set on the MDS map.
  with_legacy: true
# synthetic client bug for testing
- name: client_inject_release_failure
  type: bool
  level: dev
  default: false
  services:
  - mds_client
  with_legacy: true
# synthetic client bug for testing
- name: client_inject_fixed_oldest_tid
  type: bool
  level: dev
  default: false
  services:
  - mds_client
  with_legacy: true
- name: client_metadata
  type: str
  level: advanced
  desc: metadata key=value comma-delimited pairs appended to session metadata
  fmt_desc: Comma-delimited strings for client metadata sent to each MDS, in addition
    to the automatically generated version, host name, and other metadata.
  services:
  - mds_client
  with_legacy: true
- name: client_acl_type
  type: str
  level: advanced
  desc: ACL type to enforce (none or "posix_acl")
  fmt_desc: Set the ACL type. Currently, only possible value is ``"posix_acl"`` to
    enable POSIX ACL, or an empty string. This option only takes effect when the
    ``fuse_default_permissions`` is set to ``false``.
  services:
  - mds_client
  with_legacy: true
- name: client_permissions
  type: bool
  level: advanced
  desc: client-enforced permission checking
  fmt_desc: Check client permissions on all I/O operations.
  default: true
  services:
  - mds_client
  with_legacy: true
- name: client_dirsize_rbytes
  type: bool
  level: advanced
  desc: set the directory size as the number of file bytes recursively used
  long_desc: This option enables a CephFS feature that stores the recursive directory
    size (the bytes used by files in the directory and its descendents) in the st_size
    field of the stat structure.
  default: true
  services:
  - mds_client
  flags:
  - startup
  with_legacy: true
- name: client_force_lazyio
  type: bool
  level: advanced
  default: false
  services:
  - mds_client
- name: fuse_use_invalidate_cb
  type: bool
  level: advanced
  desc: use fuse 2.8+ invalidate callback to keep page cache consistent
  default: true
  services:
  - mds_client
- name: fuse_disable_pagecache
  type: bool
  level: advanced
  desc: disable page caching in the kernel for this FUSE mount
  fmt_desc: If set to ``true``, kernel page cache is disabled for ``ceph-fuse``
    mounts. When multiple clients read/write to a file at the same
    time, readers may get stale data from page cache. Due to
    limitations of FUSE, ``ceph-fuse`` can't disable page cache dynamically.
  default: false
  services:
  - mds_client
- name: fuse_allow_other
  type: bool
  level: advanced
  desc: pass allow_other to FUSE on mount
  default: true
  services:
  - mds_client
- name: fuse_default_permissions
  type: bool
  level: advanced
  desc: pass default_permisions to FUSE on mount
  fmt_desc: When set to ``false``, ``ceph-fuse`` utility checks does its own
    permissions checking, instead of relying on the permissions enforcement in
    FUSE. Set to ``false`` together with the ``client acl type=posix_acl``
    option to enable POSIX ACL.
  default: false
  services:
  - mds_client
  flags:
  - startup
- name: fuse_splice_read
  type: bool
  level: advanced
  desc: enable splice read to reduce the memory copies
  default: true
  services:
  - mds_client
- name: fuse_splice_write
  type: bool
  level: advanced
  desc: enable splice write to reduce the memory copies
  default: true
  services:
  - mds_client
- name: fuse_splice_move
  type: bool
  level: advanced
  desc: enable splice move to reduce the memory copies
  default: true
  services:
  - mds_client
- name: fuse_big_writes
  type: bool
  level: advanced
  desc: big_writes is deprecated in libfuse 3.0.0
  default: true
  services:
  - mds_client
- name: fuse_max_write
  type: size
  level: advanced
  desc: set the maximum number of bytes in a single write operation
  long_desc: Set the maximum number of bytes in a single write operation that may
    pass atomically through FUSE. The FUSE default is 128kB and may be indicated by
    setting this option to 0.
  fmt_desc: Set the maximum number of bytes in a single write operation. A value of
    0 indicates no change; the FUSE default of 128 kbytes remains in force.
  default: 0
  services:
  - mds_client
- name: fuse_atomic_o_trunc
  type: bool
  level: advanced
  desc: pass atomic_o_trunc flag to FUSE on mount
  default: true
  services:
  - mds_client
- name: fuse_debug
  type: bool
  level: advanced
  desc: enable debugging for the libfuse
  default: false
  services:
  - mds_client
  flags:
  - no_mon_update
  - startup
- name: fuse_multithreaded
  type: bool
  level: advanced
  desc: allow parallel processing through FUSE library
  default: true
  services:
  - mds_client
- name: fuse_require_active_mds
  type: bool
  level: advanced
  desc: require active MDSs in the file system when mounting
  default: true
  services:
  - mds_client
- name: fuse_syncfs_on_mksnap
  type: bool
  level: advanced
  desc: synchronize all local metadata/file changes after snapshot
  default: true
  services:
  - mds_client
- name: fuse_set_user_groups
  type: bool
  level: advanced
  desc: check for ceph-fuse to consider supplementary groups for permissions
  default: true
  services:
  - mds_client
# the client should try to use dentry invalidation instead of remounting, on kernels it believes that will work for
- name: client_try_dentry_invalidate
  type: bool
  level: dev
  default: false
  services:
  - mds_client
  with_legacy: true
- name: client_max_retries_on_remount_failure
  type: uint
  level: advanced
  desc: number of consecutive failed remount attempts for invalidating kernel dcache
    after which client would abort.
  default: 5
  services:
  - mds_client
- name: client_die_on_failed_remount
  type: bool
  level: dev
  default: false
  services:
  - mds_client
- name: client_die_on_failed_dentry_invalidate
  type: bool
  level: advanced
  desc: kill the client when no dentry invalidation options are available
  long_desc: The CephFS client requires a mechanism to invalidate dentries in the
    caller (e.g. the kernel for ceph-fuse) when capabilities must be recalled. If
    the client cannot do this then the MDS cache cannot shrink which can cause the
    MDS to fail.
  default: true
  services:
  - mds_client
- name: client_check_pool_perm
  type: bool
  level: advanced
  desc: confirm access to inode's data pool/namespace described in file layout
  default: true
  services:
  - mds_client
  with_legacy: true
- name: client_use_faked_inos
  type: bool
  level: dev
  default: false
  services:
  - mds_client
  flags:
  - startup
  - no_mon_update
  with_legacy: true
- name: client_fs
  type: str
  level: advanced
  desc: CephFS file system name to mount
  long_desc: Use this with ceph-fuse, or with any process that uses libcephfs.  Programs
    using libcephfs may also pass the filesystem name into mount(), which will override
    this setting. If no filesystem name is given in mount() or this setting, the default
    filesystem will be mounted (usually the first created).
  services:
  - mds_client
  flags:
  - startup
- name: client_mds_namespace
  type: str
  level: dev
  services:
  - mds_client
  flags:
  - startup
- name: fake_statfs_for_testing
  type: int
  level: dev
  desc: Set a value for kb and compute kb_used from total of num_bytes
  default: 0
  services:
  - mds_client
  with_legacy: true
# XXX: mon
- name: debug_allow_any_pool_priority
  type: bool
  level: dev
  desc: Allow any pool priority to be set to test conversion to new range
  default: false
  services:
  - mds_client
  with_legacy: true
- name: client_asio_thread_count
  type: uint
  level: advanced
  desc: Size of thread pool for ASIO completions
  default: 2
  tags:
  - client
  services:
  - mds_client
  min: 1
- name: client_shutdown_timeout
  type: secs
  level: advanced
  desc: timeout for shutting down CephFS
  long_desc: Timeout for shutting down CephFS via unmount or shutdown.
  default: 30
  tags:
  - client
  services:
  - mds_client
  min: 0
  flags:
  - runtime
- name: client_collect_and_send_global_metrics
  type: bool
  level: advanced
  desc: to enable and force collecting and sending the global metrics to MDS
  long_desc: To be careful for this, when connecting to some old ceph clusters
    it may crash the MDS daemons while upgrading.
  default: false
  tags:
  - client
  services:
  - mds_client
  flags:
  - runtime
- name: client_quota
  type: bool
  level: advanced
  desc: Enable quota enforcement
  long_desc: Enable quota_bytes and quota_files enforcement for the client.
  default: true
  services:
  - mds_client
  flags:
  - runtime