From: Wido den Hollander <wido@widodh.nl>
To: Yehuda Sadeh <yehuda@inktank.com>
Cc: ceph-devel@vger.kernel.org
Subject: Re: RGW, future directions
Date: Thu, 24 May 2012 07:15:47 +0200 [thread overview]
Message-ID: <4FBDC403.9090106@widodh.nl> (raw)
In-Reply-To: <CAC-hyiHQ1oy6cyB-sQHd5b6XQhCgQxHrLDcvzWO0OOwGWfFsRQ@mail.gmail.com>
On 22-05-12 20:07, Yehuda Sadeh wrote:
> RGW is maturing. Beside looking at performance, which highly ties into
> RADOS performance, we'd like to hear whether there are certain pain
> points or future directions that you (you as in the ceph community)
> would like to see us taking.
>
> There are a few directions that we were thinking about:
>
> 1. Extend Object Storage API
>
> Swift and S3 has some features that we don't currently support. We can
> certainly extend our functionality, however, is there any demand for
> more features? E.g., self destructing objects, web site, user logs,
> etc.
>
> 2. Better OpenStack interoperability
>
> Keystone support? Other?
>
> 3. New features
>
> Some examples:
>
> - multitenancy: api for domains and user management
> - snapshots
> - computation front end: upload object, then do some data
> transformation/calculation.
> - simple key-value api
>
> 4. CDMI
>
> Sage brought up the CDMI support question to ceph-devel, and I don't
> remember him getting any response. Is there any intereset in CDMI?
>
>
> 5. Native apache/nginx module or embedded web server
>
> We still need to prove that the web server is a bottleneck, or poses
> scaling issues. Writing a correct native nginx module will require
> turning rgw process model into event driven, which is not going to be
> easy.
>
I'd not go for a native nginx or Apache module, that would bring extra C
code into the story which would mean extra dependencies.
My vote would still go to a embedded webserver written in something like
Python. You could then use Apache/nginx/Varnish as a reverse proxy in
front and do all kinds of cool stuff.
You could even doing caching in nginx or Varnish and let the RGW notify
those proxy's when an object has changed so they can purge their cache.
This would dramatically improve the performance of the gateway.
It would also simplify the code, why try to do caching on your own when
some great HTTP caches are out there?
> 6. Improve garbage collection
>
> Currently rgw generates intent logs for garabage removal that require
> running an external tool later, which is an administrative pain. We
> can implement other solutions (OSD side garbage collection,
> integrating cleanup process into the gateway, etc.) but we need to
> understand the priority.
>
> 7. libradosgw
>
> We have had this in mind for some time now. Creating a programming api
> for rgw, not too different from librados and librbd. It'll hopefully
> make code much cleaner. It will allow users to write different front
> ends for the rgw backend, and it will make it easier for users to
> write applications that interact with the backend, e.g., do processing
> on objects that users uploaded, FUSE for rgw without S3 as an
> intermediate, etc.
>
Yes, I would really like this. Combine this with the Python
stand-alone/embedded webserver I proposed and you get a really nice RGW
I think.
> 8. Administration tools improvement
>
> We can always do better there.
>
When we have libradosgw it wouldn't be that hard to make a nice web
front-end where you can manage the whole thing.
> 9. Other ideas?
>
>
> Any comments are welcome!
>
> Thanks,
> Yehuda
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2012-05-24 5:15 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-22 18:07 RGW, future directions Yehuda Sadeh
2012-05-22 18:25 ` Sławomir Skowron
2012-05-22 19:09 ` Yehuda Sadeh
2012-05-22 19:56 ` Sławomir Skowron
2012-05-23 8:59 ` Henry C Chang
2012-05-23 11:22 ` Xiaopong Tran
2012-05-23 11:22 ` Xiaopong Tran
2012-05-23 21:45 ` Yehuda Sadeh
2012-05-24 5:49 ` Henry C Chang
2012-05-23 10:17 ` Kiran Patil
2012-05-23 10:27 ` Kiran Patil
2012-05-23 21:57 ` Yehuda Sadeh
2012-05-23 16:12 ` Guilhem LETTRON
2012-05-24 5:15 ` Wido den Hollander [this message]
2012-05-24 8:23 ` Sławomir Skowron
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4FBDC403.9090106@widodh.nl \
--to=wido@widodh.nl \
--cc=ceph-devel@vger.kernel.org \
--cc=yehuda@inktank.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.