このコンテンツは選択した言語では利用できません。
Chapter 9. Journal Configuration Reference
Ceph OSDs use a journal for the following reasons:
- Speed
- The journal enables the Ceph OSD Daemon to commit small write operations quickly. Ceph writes small, random I/O to the journal sequentially, which tends to speed up bursty workloads by allowing the backing file system more time to coalesce write operations. The Ceph OSD Daemon’s journal, however, can lead to spiky performance with short spurts of high-speed writes followed by periods without any write progress as the file system catches up to the journal.
- Consistency
-
Ceph OSD Daemons require a file system interface that guarantees atomic compound operations. Ceph OSD Daemons write a description of the operation to the journal and apply the operation to the file system. This enables atomic updates to an object (for example, placement group metadata). Every few seconds—between
filestore max sync interval
andfilestore min sync interval
settings—the Ceph OSD stops write operations and synchronizes the journal with the file system, allowing Ceph OSDs to trim operations from the journal and reuse the space. On failure, Ceph OSDs replay the journal starting after the last synchronization operation.
9.1. Settings
Ceph OSD Daemons support the following journal settings:
- journal_dio
- Description
-
Enables direct I/O to the journal. Requires the
journal block align
option set totrue
. - Type
- Boolean
- Required
-
Yes when using
aio
. - Default
-
true
- journal_aio
- Description
-
Enables using
libaio
for asynchronous writes to the journal. Requires thejournal dio
option set totrue
. - Type
- Boolean
- Required
- No.
- Default
-
true
.
- journal_block_align
- Description
-
Block aligns write operations. Required for
dio
andaio
. - Type
- Boolean
- Required
-
Yes when using
dio
andaio
. - Default
-
true
- journal_max_write_bytes
- Description
- The maximum number of bytes the journal will write at any one time.
- Type
- Integer
- Required
- No
- Default
-
10 << 20
- journal_max_write_entries
- Description
- The maximum number of entries the journal will write at any one time.
- Type
- Integer
- Required
- No
- Default
-
100
- journal_queue_max_ops
- Description
- The maximum number of operations allowed in the queue at any one time.
- Type
- Integer
- Required
- No
- Default
-
500
- journal_queue_max_bytes
- Description
- The maximum number of bytes allowed in the queue at any one time.
- Type
- Integer
- Required
- No
- Default
-
10 << 20
- journal_align_min_size
- Description
- Align data payloads greater than the specified minimum.
- Type
- Integer
- Required
- No
- Default
-
64 << 10
- journal_zero_on_create
- Description
-
Causes the file store to overwrite the entire journal with
0’s during `mkfs
. - Type
- Boolean
- Required
- No
- Default
-
false