<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">RGW does not use Swift. It’s an optional component of Ceph that can provide a Swift compliant API (and also S3). But it does not make use of openstack-swift. It’s a completely separate implementation written in c++ [1].</div><div class=""><br class=""></div><div class="">[1] <a href="https://github.com/ceph/ceph/blob/master/src/rgw/rgw_rest_swift.cc" class="">https://github.com/ceph/ceph/blob/master/src/rgw/rgw_rest_swift.cc</a></div><br class=""><div><blockquote type="cite" class=""><div class="">On Oct 13, 2016, at 5:36 AM, Shinobu Kinjo <<a href="mailto:shinobu.kj@gmail.com" class="">shinobu.kj@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><br class=""><div class="gmail_extra"><br class=""><div class="gmail_quote">On Wed, Oct 12, 2016 at 9:59 PM, Giulio Fidente <span dir="ltr" class=""><<a href="mailto:gfidente@redhat.com" target="_blank" class="">gfidente@redhat.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On 10/12/2016 02:29 PM, Thiago da Silva wrote:<br class="">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br class="">
<br class="">
On 10/12/2016 07:10 AM, Giulio Fidente wrote:<br class="">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
hi,<br class="">
<br class="">
we introduced support for the deployment of Ceph in the liberty<br class="">
release so that it could optionally be used as backend for one or more<br class="">
of Cinder, Glance, Nova and more recently Gnocchi.<br class="">
<br class="">
We used to deploy Ceph MONs on the controller nodes and Ceph OSDs on<br class="">
dedicated ceph-storage nodes so a deployment of OpenStack with Ceph<br class="">
would need at least 1 more additional node to host a Ceph OSD.<br class="">
<br class="">
In our HA scenario the storage backends are configured as follows:<br class="">
<br class="">
Glance -> Swift<br class="">
Nova (ephemeral) -> Local<br class="">
Cinder (persistent) -> LVM (on controllers)<br class="">
Gnocchi -> Swift<br class="">
<br class="">
The downside of the above configuration is that Cinder volumes can not<br class="">
be replicated across the controller nodes and become unavailable if a<br class="">
controller fails, while production environments generally expect<br class="">
persistent storage to be highly available. Cinder volumes instead<br class="">
could even get lost completely in case of a permanent failure of a<br class="">
controller.<br class="">
<br class="">
With the Newton release and the composable roles we can now deploy<br class="">
Ceph OSDs on the compute nodes, removing the requirement we had for an<br class="">
additional node to host a Ceph OSD.<br class="">
<br class="">
I would like to ask for some feedback on the possibility of deploying<br class="">
Ceph by default in the HA scenario and use it as backend for Cinder.<br class="">
<br class="">
Also using Swift as backend for Glance and Gnocchi is enough to cover<br class="">
the availability issue for the data, but it also means we're storing<br class="">
that data on the controller nodes which might or might not be wanted;<br class="">
I don't see a strong reason for defaulting them to Ceph, but it might<br class="">
make more sense when Ceph is available; feedback about this would be<br class="">
appreciated as well.<br class="">
</blockquote>
I think it would be important to take into account the recently created<br class="">
guiding principles [0]:<br class="">
<br class="">
"While the software that OpenStack produces has well defined and<br class="">
documented APIs, the primary output of OpenStack is software, not API<br class="">
definitions. We expect people who say they run “OpenStack” to run the<br class="">
software produced by and in the community, rather than alternative<br class="">
implementations of the API."<br class="">
<br class="">
In the case of Cinder, I think the situation is a bit muddy as LVM is<br class="">
not openstack software, and my limited understanding is that LVM is used<br class="">
as a reference implementation, but in the case of Swift, I think RGW<br class="">
would be considered an 'alternative implementation of the API'.<br class="">
<br class="">
Thiago<br class="">
</blockquote>
<br class=""></div></div>
hi Thiago,<br class="">
<br class="">
sorry if it wasn't clear in my original message but I did not suggest to replace Swift with Ceph RGW.<br class="">
<br class="">
Swift would continue to be deployed by default, not RGW.<br class=""></blockquote><div class=""><br class=""></div><div class="">RGW utilizes Swift. So Swift has to be there anyway -;<br class=""></div><div class=""> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br class="">
The feedback I'm asking for is about storing (or not) the Cinder volumes in Ceph for the HA scenario by default, and also store the Glance images and Gnocchi metrics in Ceph or rather keep that data in Swift.<span class="im HOEnZb"><br class="">
-- <br class="">
Giulio Fidente<br class="">
GPG KEY: 08D733BA<br class="">
<br class=""></span><div class="HOEnZb"><div class="h5">
______________________________<wbr class="">______________________________<wbr class="">______________<br class="">
OpenStack Development Mailing List (not for usage questions)<br class="">
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org/?subject:unsubscribe" rel="noreferrer" target="_blank" class="">OpenStack-dev-request@lists.op<wbr class="">enstack.org?subject:unsubscrib<wbr class="">e</a><br class="">
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank" class="">http://lists.openstack.org/cgi<wbr class="">-bin/mailman/listinfo/openstac<wbr class="">k-dev</a><br class="">
</div></div></blockquote></div><br class=""><br clear="all" class=""><br class="">-- <br class=""><div class="gmail_signature" data-smartmail="gmail_signature">Email:<br class=""><a href="mailto:shinobu@linux.com" target="_blank" class="">shinobu@linux.com</a><br class=""><a href="mailto:shinobu@redhat.com" target="_blank" class="">shinobu@redhat.com</a></div>
</div></div>
__________________________________________________________________________<br class="">OpenStack Development Mailing List (not for usage questions)<br class="">Unsubscribe: <a href="mailto:OpenStack-dev-request@lists.openstack.org" class="">OpenStack-dev-request@lists.openstack.org</a>?subject:unsubscribe<br class=""><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" class="">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br class=""></div></blockquote></div><br class=""></body></html>