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
|
# -*- 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_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
|