默認情況下, Ceph 覺得你會把 OSD 日志存儲於下列路徑:
/var/lib/ceph/osd/$cluster-$id/journal
未做性能優化時, Ceph 會把日志存儲在與 OSD 數據相同的硬盤上。追求高性能的 OSD 可用單獨的硬盤存儲日志數據,如固態硬盤能提供高性能日志。
osd journal size 默認值是5120,所以你得在 ceph.conf 里設置。日志尺寸應該是 filestore max sync interval 與期望吞吐量的乘積再乘以 2 。
osd journal size = {2 * (expected throughput * filestore max sync interval)}
期望吞吐量應考慮期望的硬盤吞吐量(即持續數據傳輸速率)、和網絡吞吐量,例如一個 7200 轉硬盤的速度大致是 100MB/s 。硬盤和網絡吞吐量中較小的( min() )一個是相對合理的吞吐量,有的用戶則以 10GB 日志尺寸起步,例如:
osd journal size = 10000
相關選項:
- osd journal
描述: OSD 日志路徑,可以是一個文件或塊設備( SSD 的一個分區)的路徑。如果是文件,要先創建相應目錄。我們建議用 osd data 以外的獨立驅動器。
類型: String
默認值: /var/lib/ceph/osd/$cluster-$id/journal
- osd journal size
描述: 日志尺寸( MB )。如果是 0 且日志文件是塊設備,它會使用整個塊設備。從 v0.54 起,如果日志文件是塊設備,這個選項會被忽略,且使用整個塊設備。
類型: 32-bit Integer
默認值: 5120
推薦值: 最少 1G ,應該是期望的驅動器速度和 filestore max sync interval 的乘積。