Thread (13 messages) 13 messages, 3 authors, 2015-08-07

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.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help