Re: layering question.
From: Kai Krakow <hidden>
Date: 2015-08-06 23:22:11
Hi! A. James Lewis [off-list ref] schrieb:
The problem is tho... with a very large backing store, I'm not really happy with a single point of failure in the cache... is there another way to mirror the cache device?
Well, AFAIR there are plans to add such capabilities into bcache itself - read: make it possible to add more than one caching device to a cache set. It will use some sort of hybrid mirror / striping to get the best combination of speed and safety - at least that's what the idea is about. I just don't remember where I've read about it, neither do I know the status of it. If you want to eliminate the single point of failure, you may want to try mdadm with its write-mostly option instead of using bcache. It's slower for writes obviously but gracefully falls back if the SSD fails. Obviously, you can also not benefit from having a huge storage because it's classic RAID-1 and thus the smallest member will limit your storage size. Bcache also has countermeasures for a failing caching device but I didn't really look into that yet. You should read the documentation about it in Documentation/bcache.txt (Error Handling). The safest mode to use here is writethrough.
On 06/08/15 00:10, Kai Krakow wrote:quoted
Jens-U. Mozdzen [off-list ref] schrieb:quoted
Zitat von Kai Krakow [off-list ref]:quoted
A. James Lewis [off-list ref] schrieb:quoted
I've heard rumours that layering bcache with other block device drivers might not be recommended... I wonder what the truth really is... perhaps someone can advise.I think this is not just rumours. Multiple people reported problems when layering caching or backing devices on top of MD devices. This may be an implementation problem in MD which is gone in later kernel versions [...]being rather new to bcache, I did only browse the last few months of mailing list history - are you saying that these problems were fixed (or simply vanished) some point after 3.18.8? Because if so, I'd of course try to upgrade our servers to a more recent kernel :)Latest posts imply it is still a problem. It fits with earlier reports: Caching on native device, backing on md device... Bcache breaks within the caching device (although this is not on md). There seem to still be bugs with bcache and md to properly interact. It was suspected that bcache uses a faulty discard implementation. Some reports miss details about this setting. However, my setups are working fine with discards fully enabled on SSD - but without using MD. And it has been robust to accidental or implied reboots since all time I'm using it (even with btrfs as the filesystem on bcache). So I'd probably remove MD from your plans on using bcache. BTW: My system uses vanilla gentoo kernel, 4.1.4 currently.
-- Replies to list only preferred.