分享

Journal Config Reference

 答案95 2016-08-12

Journal配置手册

Journal Config Reference?

# 写Journal,可以让大量的随机写小块数据转变成写连续的Journal。

# 同时后台文件系统有更多时间合并小块数据,再写盘。

# 写Journal有可能带来性能上的毛刺,因为该场景是,短时间大量写请求的到来,紧接着没有任何写请求,只有文件系统在追Journal。

Ceph OSDs use a journal for two reasons: speed and consistency.

  • Speed: The journal enables the Ceph OSD Daemon to commit small writes quickly. Ceph writes small, random i/o to the journal sequentially, which tends to speed up bursty workloads by allowing the backing filesystem more time to coalesce writes. 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 filesystem catches up to the journal.
  • Consistency: Ceph OSD Daemons require a filesystem interface that guarantees atomic compound operations. Ceph OSD Daemons write a description of the operation to the journal and apply the operation to the filesystem. This enables atomic updates to an object (for example, placement group metadata). Every few seconds–between filestore max sync interval and filestore min sync interval–the Ceph OSD Daemon stops writes and synchronizes the journal with the filesystem, allowing Ceph OSD Daemons to trim(调整) operations from the journal and reuse the space. On failure, Ceph OSD Daemons replay the journal starting after the last synchronization operation.

Ceph OSD Daemons support the following journal settings:

journal dio

Description:Enables direct i/o to the journal. Requires journal block align set to true.
Type:Boolean
Required:Yes when using aio.
Default:true

journal aio

Changed in version 0.61: Cuttlefish

Description:Enables using libaio for asynchronous writes to the journal. Requires journal dio set to true.
Type:Boolean
Required:No.
Default:Version 0.61 and later, true. Version 0.60 and earlier, false.

journal block align

Description:Block aligns write operations. Required for dio and aio.
Type:Boolean
Required:Yes when using dio and aio.
Default:true

journal max write bytes  每次写Journal 最大写10M

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

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多