cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chiradeep Vittal <Chiradeep.Vit...@citrix.com>
Subject Re: Secondary Storage S3 Provider
Date Fri, 24 Aug 2012 22:10:43 GMT
             

On 8/23/12 9:56 AM, "Greg Burd" <greg@basho.com> wrote:

>Hello all. 
>
>Apologies if any of the questions I ask are overly obvious, I'm just
>diving into the Java code and trying to find my way around.  My goal is
>to build layer which allows objects destined for secondary storage to
>reside in an S3-compatible service - specifically, Riak Cloud Storage
>(which we call "Riak CS").  Later on I'd like to plumb in a way to allow
>Riak CS to provide the S3 service itself to users of CloudStack
>deployments.
>
>So it seems that to do this I'll need to implement a
>`cloud.bridge.io.s3.S3ServiceBucketAdapter` (or something with a similar
>name) which implements the `S3BucketAdapter` API, correct?  As far as I
>can tell, that class will essentially just call out using the S3 API to a
>specified S3 server (in my case, a running Riak CS cluster somewhere).

If you already have the S3 API coded up, there is the option of just using
CloudStack credentials. There is ongoing work to expose an "auth service"
where you can retrieve the secret key
http://wiki.cloudstack.org/display/RelOps/Regions+Functional+Spec#RegionsFu
nctionalSpec-AuthenticationService


> I assume that somewhere in the code there is the Amazon API for
>accessing S3, correct?

Right now, there isn't, although, there is work going on currently in this
area.
http://wiki.cloudstack.org/pages/viewpage.action?pageId=9601252


>
>Then I'm guessing I'll need to also implement or change something related
>to auth in `cloud.bridge.auth.s3`, correct?  We have an authentication
>system built into Riak CS now, somehow these two will need to merge into
>one unified auth system.

I assume that this signature-based auth using the api keys?

>
>Finally I'll need to integrate into the build tools/scripting so that
>deployment is automated.  Something like `ant deploy-riak-cs` I'm
>guessing.
>
>So, I have a few questions:

I hope you have some answers. I expect the folks working on the features I
mentioned above will pipe up about the state of the project.

>1. Am I on the right track?

>2. Has anyone already started work on building an S3 secondary storage
>backend integration?
>3. What's the best way to integrate auth?
>4. What parts of this should be designed to be reusable to provide S3
>service itself at a later date?

I think that having a functional, scalable S3 implementation is good
enough, as long as the auth integrates with CloudStack compute. For
production, you'd want to have an API that provides usage information so
that users can be billed for the usage of the service along with usage of
the compute service.

>5. What needs to be done to provide the expected level of integration
>into the build/test tools?

>
>Anything else?  Thanks for any and all help.
>
>best, 
>
>@gregburd, Basho Technologies | http://basho.com | @basho
>
>


Mime
View raw message