Re: Userspace Block Device

From: One Thousand Gnomes
Date: Tue May 19 2015 - 11:20:10 EST


> - Write an ndb-server that is essentially a gateway between nbd and
> S3/Google. For each nbd request, I translate it into the appropriate
> S3/Google request and respond appropriately.
> - I'd run the above server on the machine on some port.
> - I'd run a client on the same server using 127.0.0.1 and the above
> port, providing the nbd block device.
> - Go drink a beer as I 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.

Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/