swift/radosgw or block device for online storage

asked 2015-11-28 04:38:02 -0500

capsali gravatar image


We want to implement online sync/backup for our clients. We have an openstack installation up and running which uses ceph for block devices and radosgw for swift endpoints.

Let's say we will be using one of these servers owncloud, pydio or seafile. All 3 support s3/swift backends. As we see it we have two implementation options.

First would be to attach a block device to the instance running one of these servers and use the filesystem as storage backend for it.

The second one would be to use s3/swift compatible radosgw as a storage backend for one of these servers.

The problem is we cannot decive which path to go on. Anyone has any experience with these kind of thing?

As i know files in s3/swift are static files. So any plugin that would require direct i/o or encrytion would not work or would give overhead. On the other hand the client may choose from a wide variety of clients that support s3/swift api.

The setup would be that we would have owncloud server webui available for all clients. After they log in, they must enter credentials for external storage with their own acces/private key.So the server would just act an online/webui client for s3/swift.

For block storage as a backend we worry about the scalability. Another problem would be that if the instance hosting the block storage fails, clients are locked out of their files untill the instance comes back online. On the plus side there are direct i/o and encryption.

And there is the quetion of performance. I would think that radosgw alternative would be faster because it's not virtualized into a guest OS, but i may be wrong!

Any help would be greatly appreciated!

edit retag flag offensive close merge delete