We are running lvmcache (24TB raid5 hdd data, 64GB raid1 ssd cache+meta) and we are using external journal with data=journal for the ext4 fs on that raid5 and have the journal on the same ssd raid1 (32GB).

We need performance and data integrity at the same time.

As I understood ext4 metadata/journal and data is written to the journal first (data=journal) and then the data is moved to the data fs on the raid5 while leaving the journal on the raid1. When moving the data to the raid5 it is cached again to the same ssd raid1 by lvmcache and then finally moved to the raid5.

Isn't this some sort of overkill? For me it seems to be enough to use data=ordered, because data will be buffered on raid1 by lvmcache. Am I right?

How would you set up or combine lvmcache and external ext4 journal (using ssd raid1) to achieve performance and integrity?


  • 2
    Welcome to Unix & Linux! :-) We're not a forum but a Question&Answer site: It works best if you ask one question, so you can receive one answer. When you ask multiple questions, you need to find one expert versed in multiple areas which becomes more unlikely the more questions you put into... well, one question! ;-) So please, split up your question into multiple questions and leave a comment @Fabby so I can answer one of your questions.
    – Fabby
    Commented Oct 2, 2018 at 9:14
  • Also with such a complex setup it easier to have some visual explanation.
    – Kiwy
    Commented Oct 2, 2018 at 10:22
  • @Fabby I separated them. That makes the other question pretty short ;-)
    – user220574
    Commented Oct 2, 2018 at 11:04
  • "We need performance and data integrity at the same time". Then why on earth are you running RAID5? If you need the storage capacity and you've got hardware support go with RAID6, although performance won't be any better. If you can spare the storage capacity then use RAID10 (which will be faster, too). Running RAID5 over 24TB is a high risk configuration: when a disk dies you will stress the entire array during the rebuild process, increasing the likelihood that a second disk will break, and then you've lost the entire array. Commented Oct 2, 2018 at 22:05
  • I would agree - RAID5 is just too risky with large disks today. It isn't just the risk of a second complete drive failure (though that also happens in case of power problems), but moreso the risk of bad sectors on any of the remaining drives that will result in (possibly silent) data corruption during the rebuild. RAID6 is much safer.
    – LustreOne
    Commented Oct 3, 2018 at 6:06

1 Answer 1


I'm not very familiar with lvmcache, but it definitely doesn't help performance to be writing the data to flash twice. That will double write overhead for the flash. Using the external journal will allow you to have fast sync write performance with data=journal, and this hides latency from the HDD/RAID already.

If you can configure lvmcache for caching only read data, then that would complement the data journal.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .