<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none"><!-- p { margin-top: 0px; margin-bottom: 0px; }--></style>
</head>
<body dir="ltr" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p><span style="font-size: 12pt;">​Is it possible to write the functionality you desire in your own middleware for Swift that lives outside of the Swift code?  I would favor that approach for the following reasons</span><span style="font-size: 12pt;">:</span><br>
</p>
<p><br>
</p>
<p>* You would have more control over code/changes so your middleware could stabilize and mature faster (don't have to wait for reviews from community for minor tweaks).<br>
</p>
<p>* Since you are writing it, you get exactly what you want.<br>
</p>
<p>* Swift would not gain more dependancies that would have to be installed.<br>
</p>
<p><br>
</p>
<p>There have been a few projects in the past that have been successful middleware without being included (swauth, swift3, swift-informant).<br>
</p>
<p><br>
</p>
<p>And in the end, if your middleware becomes wildly successful and everybody uses it, there would be no reason it could not be merged into the Swift code at a later time.​<br>
</p>
<p><br>
</p>
<div id="Signature">
<div name="divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:; margin:0">
<div>
<div>
<div>
<div style="font-family:Tahoma; font-size:13px"><font size="2"><span style="font-size:10pt">Thanks,</span></font></div>
<div style="font-family:Tahoma; font-size:13px"><font size="2"><span style="font-size:10pt">Richard Hawkins<br>
Software Developer - Cloud Files (OpenStack Swift)<br>
</span></font><font face="Courier New"></font></div>
<div><font>
<div><span style="font-size:13.3333330154419px; font-family:Tahoma">Rackspace</span></div>
<div><font face="Tahoma"><span style="font-size:13.3333330154419px">    <br>
</span></font></div>
<div><font face="Tahoma"><span style="font-size:13.3333330154419px"><br>
</span></font></div>
<div style="font-family:Tahoma; font-size:13px"><br>
</div>
</font></div>
</div>
</div>
</div>
</div>
</div>
<div style="color: rgb(33, 33, 33);">
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> Denis Egorenko <degorenko@mirantis.com><br>
<b>Sent:</b> Tuesday, December 1, 2015 3:47 AM<br>
<b>To:</b> OpenStack Development Mailing List (not for usage questions)<br>
<b>Subject:</b> [openstack-dev] [swift] [oslo.messaging] [fuel] [ha] Is Swift going to support oslo.messaging?</font>
<div> </div>
</div>
<div>
<div dir="ltr">
<div id="magicdomid4" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span class="" style="margin:0px; padding:1px 0px; background-color:rgb(255,255,255)">Hello folks,</span></div>
<div id="magicdomid5" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span style="background-color:rgb(255,255,255)"><br style="margin:0px; padding:0px">
</span></div>
<div id="magicdomid6" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span class="" style="margin:0px; padding:1px 0px; background-color:rgb(255,255,255)">The issue I want to raise is related to Swift and Oslo.messaging. </span>Currently Swift doesn't support oslo.messaging middleware. There is no possible to setup RabbitMQ
 HA setup in swift configuration, so we faced the problem [1] in Fuel. <span class="" style="margin:0px; padding:1px 0px">If we want to use Ceilometer notifications for Swift, we should use </span>ceilometermiddleware. It provides possibility configure properly
 transport settings <span class="" style="margin:0px; padding:1px 0px">for notifications [2]. The main problem that Fuel uses HA RabbitMQ setup (mirrored queues) with direct connection from clients. The client uses oslo.messaging to establish the connection
 with one of rabbitmq servers. oslo.messaging uses heartbeats to switch to another RabbitMQ server if/when there are any network issues. However, Swift doesn't use oslo.messaging at all. It's possible to specify only one RabbitMQ server in swift configuration
 hence there can be problems if specified server is down or has network flapping issues. Alternative solution is to use VIP for RabbitMQ</span><span class="" style="margin:0px; padding:1px 0px"> [3]</span><span class="" style="margin:0px; padding:1px 0px">.
 This setup is not perfect also as timeout and connection restore time is much worse.</span></div>
<div id="magicdomid14" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span style="background-color:rgb(255,255,255)"><br style="margin:0px; padding:0px">
</span></div>
<div id="magicdomid480" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span class="" style="margin:0px; padding:1px 0px; background-color:rgb(255,255,255)">So, the question is:</span></div>
<div id="magicdomid486" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span class="" style="margin:0px; padding:1px 0px; background-color:rgb(255,255,255)">    </span></div>
<div id="magicdomid490" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span class="" style="margin:0px; padding:1px 0px; background-color:rgb(255,255,255)">Is Swift going to support oslo.messaging and particularly rabbit_hosts?</span></div>
<div id="magicdomid16" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span style="background-color:rgb(255,255,255)"><br style="margin:0px; padding:0px">
</span></div>
<div id="magicdomid17" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span style="background-color:rgb(255,255,255)"><span class="" style="margin:0px; padding:1px 0px">[1] </span><span class="" style="margin:0px; padding:1px 0px"><a href="https://bugs.launchpad.net/fuel/+bug/1510064" style="margin:0px; padding:0px; white-space:pre-wrap">https://bugs.launchpad.net/fuel/+bug/1510064</a></span></span></div>
<div id="magicdomid471" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span style="background-color:rgb(255,255,255)"><span class="" style="margin:0px; padding:1px 0px">[2] </span><span class="" style="margin:0px; padding:1px 0px"><a href="https://review.openstack.org/#/c/152273" style="margin:0px; padding:0px; white-space:pre-wrap">https://review.openstack.org/#/c/152273</a></span></span></div>
<div id="magicdomid477" class="" style="margin:0px; padding:0px; color:rgb(0,0,0); font-family:monospace; font-size:12px; line-height:16px">
<span style="background-color:rgb(255,255,255)"><span class="" style="margin:0px; padding:1px 0px">[3] </span><span class="" style="margin:0px; padding:1px 0px"><a href="https://review.openstack.org/#/c/248147" style="margin:0px; padding:0px; white-space:pre-wrap">https://review.openstack.org/#/c/248147</a></span></span></div>
<div><br>
</div>
-- <br>
<div>
<div dir="ltr">
<div>
<div dir="ltr">
<div style="color:rgb(136,136,136)"><span style="font-family:arial; font-size:small">Best Regards,</span><br>
</div>
<span style="color:rgb(136,136,136)">Egorenko Denis</span>,</div>
<div><span style="color:rgb(136,136,136)">Deployment Engineer</span><br style="color:rgb(136,136,136)">
<span style="color:rgb(136,136,136)">Mirantis</span><br>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>