Integrate openstack Swift storage with ceph - amazon-s3

I am new with Software defined storage. I was working on possible ways of integration of different object storage implementations like AWS S3, Openstack Swift with Ceph.
I am wondering if I can use ceph API calls to store objects in Openstack swift?
The document here specifies that I can use Swift APIs to store objects in ceph (OSDs), but is it possible the other way around?
Thanks for any help in advance.

Exaclty. Ceph Rados Gateway is a full replacement of Swift Object storage with some missing functionality as described here.
http://docs.ceph.com/docs/master/radosgw/swift/
To make it clear, in order to store objects in Ceph Cluster you should just setup Rados Gateway and that's it. You will have two options to operate either using Swift API or S3 API.
Rados Gateway also supports S3 API to store objects. You can even configure RGW to access containers like S3 bucket subdomains. Ex: #bucketname#.s3.example.com

Related

same domain name for lambda function api endpoints(backend) and for frontend

How to use same domain name for front end and for lambda function endpoints
for Serverless framework ?
I am using reactjs for frontend design and for frontend hosting I am using s3 and Aws Dynamodb for lambda functions.
We do the same in our systems, AWS solved it long time back.
It is the cloud service called CloudFront, which lets you connect multiple origins including external origins that are outside of AWS cloud.
Created a simple architecture diagram to help you view the same.
Hope it helps.

API/CLI to get all the services(ec2, s3, rds..etc) my account is using?

I tried to look around but couldn't find enough details on how to programatically get list of all services that my aws account is currently using.
Something like: EC2, S3, DynamoDB..etc
Is there a Java API or AWS CLI solution that I can use?
AFAIK there is no AWS service that exposes that information programatically. However if you're after this information for cost purposes there is the AWS Budgets service that allows you to setup budgets for your AWS resources - it has a public API which is accessible from Java and the CLI.

Spring AWS S3: Access to s3 object metadata

Is it possible to get object metadata with spring-aws-s3 library? I need access to "ETag" header but as it seems like SimpleStorageResource does not expose way to access objectMetadata and ResourceLoader interface does not expose connection.
What are my options? Just use S3 SDK directly?

Can Rackspace Cloud Files be accessed using S3 (AWS) APIs?

I got to know that Rackspace Cloud Files is based on OpenStack Object Storage service (Swift).
As OpenStack allows configuring/manipulating object storage using S3 APIs through swift3
http://docs.openstack.org/trunk/openstack-object-storage/admin/content/configuring-openstack-object-storage-with-s3_api.html
I am thinking whether Rackspace Cloud Files provides S3 API support as well. I have a client written for Amazon Web Services using S3 RESTful APIs so was thinking to reuse it for Rackspace Cloud Files as well.
The S3 plugin for Swift is not deployed as part of Rackspace Cloud Files (most production deploys of openstack don't deploy it by default). However, if you want better flexibility in the app, you can use a cross cloud toolkit such as libcloud (python), fog (ruby), jclouds (java), pkgcloud (node/js). This means you can use a simpler abstraction and support multiple providers within your application.

Enabling Amazon S3 bucket versioning

I'm trying to enable bucket versioning using the .net amazon sdk. I was wondering if anyone could shed some light on it.
There's a specific method that can be called to enabled this in the SDK.