Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753421AbbESPd4 (ORCPT ); Tue, 19 May 2015 11:33:56 -0400 Received: from mail-ig0-f173.google.com ([209.85.213.173]:37286 "EHLO mail-ig0-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751241AbbESPdz (ORCPT ); Tue, 19 May 2015 11:33:55 -0400 MIME-Version: 1.0 In-Reply-To: <20150519161902.10881f9b@lxorguk.ukuu.org.uk> References: <20150519161902.10881f9b@lxorguk.ukuu.org.uk> Date: Tue, 19 May 2015 11:33:54 -0400 Message-ID: Subject: Re: Userspace Block Device From: Bill Speirs To: One Thousand Gnomes Cc: Kernel Mailing List Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1832 Lines: 39 On Tue, May 19, 2015 at 11:19 AM, One Thousand Gnomes wrote: >> ... rack up a huge bill with Amazon or Google > > And you probably would because the block layer will see a lot of I/O > requests that you would really want to process locally, as well as stuff > caused by working at the block not file level (like readaheads). > > You also can't deal with coherency this way - eg sharing the virtual disk > between two systems because the file system code isn't expecting other > clients to modify the disk under it. > > Rather than nbd you could also look at drbd or some similar kind of > setup where you keep the entire filestore locally and write back changes > to the remote copy. As you can never share the filestore when mounted you > can cache it pretty aggressively. What kinds of things could I process locally? I was thinking I could keep a bitmap of "sectors" that have never been written to, then just return zeroed-out sectors for those. What else I could do? Thoughts? I'm not looking to share the filesystem, just never have to buy a bigger disk again and get pseudo-backup along with it (I realize things in my cache would be lost if my house burned to the ground). drbd isn't really what I'm looking for, because I don't want to have to buy a disk that's large enough to fit everything. Just a small fast SSD (or RAM disk) to cache commonly used files, then spill-over to the cloud for everything else. In theory, I would have a /home that is "infinite", and fairly fast for things that are cached. Thanks for the thoughts/points! Bill- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/