<div dir="ltr">HI all,<div><br></div><div>So now I want to add a third "datacenter" basically more storage nodes. Now I want to try and do the following below:</div><div><br></div><div><a href="http://techs.enovance.com/7094/openstack-swift-2-0-introducing-storage-policies">http://techs.enovance.com/7094/openstack-swift-2-0-introducing-storage-policies</a><br></div><div><br></div><div>So pretty much have a Paris and Montreal center as described - I want to add a third datacenter to each as replication. So it the blog it says create new rings - there is where I am getting confused - may someone help and let me know what are the commands to create a whole new ring?? I dont think I am supposed to run this command again (and for object and container)</div><div><br></div><div>swift-ring-builder account.builder create <br></div><div><br></div><div>As I already have my base files. So I guess basically what commands would I need to make object-1.ring.gz and object-2.ring.gz. </div><div><br></div><div>Basic setup that I am trying</div><div><br></div><div>Paris - HQ Ring 1</div><div>Montreal - HQ Ring 2</div><div><br></div><div>Paris has 2 storage nodes, Montreal has 2 and HQ has 2. Right now Paris and Montreal have the same containers. I want to try and have Paris-HQ and Montreal-HQ have their own separate containers. Appreciate the time and help!!</div><div><br></div><div>Thanks</div><div><br></div><div>Amit Anand</div><div><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Dec 17, 2014 at 4:14 AM, Jonathan Lu <span dir="ltr"><<a href="mailto:jojokururu@gmail.com" target="_blank">jojokururu@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>Hi,<br>
It seems that John has helped a lot. I just share 2 blogs that
I think is related with your issue.<br>
<br>
<a href="https://swiftstack.com/blog/2012/04/09/swift-capacity-management/" target="_blank">https://swiftstack.com/blog/2012/04/09/swift-capacity-management/</a><br>
<a href="https://swiftstack.com/blog/2013/12/20/upgrade-openstack-swift-no-downtime/" target="_blank">https://swiftstack.com/blog/2013/12/20/upgrade-openstack-swift-no-downtime/</a><span class="HOEnZb"><font color="#888888"><br>
<br>
-- Jonathan Lu</font></span><div><div class="h5"><br>
<br>
On 2014/12/17 4:06, Amit Anand wrote:<br>
</div></div></div><div><div class="h5">
<blockquote type="cite">
<div dir="ltr">Thanks again John. Out of curiosity, is it possible
to see what is where? Lets say I have uploaded a video and
wanted to see where the three copies like out of the 4 nodes I
have?
<div><br>
</div>
<div>
<div>And you guys dont have a free version of Swiftstack
available per chance do you :-)</div>
<div><br>
</div>
<div>
<div><br>
</div>
<div><br>
</div>
</div>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Tue, Dec 16, 2014 at 12:48 PM, John
Dickinson <span dir="ltr"><<a href="mailto:me@not.mn" target="_blank">me@not.mn</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Assuming
your regions are pretty close to the same size, that's
exactly what you'll get with 3 replicas across 2 regions.
Some data will have 2 replicas in region 1 and one in region
2. Other data will have 1 in region 1 and 2 in region 2.<br>
<span><font color="#888888"><br>
--John<br>
</font></span>
<div>
<div><br>
<br>
<br>
<br>
> On Dec 16, 2014, at 9:39 AM, Amit Anand <<a href="mailto:aanand@viimed.com" target="_blank">aanand@viimed.com</a>>
wrote:<br>
><br>
> Ok cool Ill wait it out see what happens. So now I
have another stupid question - after all is said and
done, how many copies of my data will I have?! What I am
aiming for is something like 2 regions and 3 replicas
ie, 2 copies of the data in region one and one copy in
region 2.<br>
><br>
> On Tue, Dec 16, 2014 at 12:35 PM, John Dickinson
<<a href="mailto:me@not.mn" target="_blank">me@not.mn</a>>
wrote:<br>
> That's normal. See the "...or none can be due to
min_part_hours". Swift is refusing to move more data
until the stuff likely currently in flight has settled.
See <a href="https://swiftstack.com/blog/2012/04/09/swift-capacity-management/" target="_blank">https://swiftstack.com/blog/2012/04/09/swift-capacity-management/</a><br>
><br>
> --John<br>
><br>
><br>
><br>
><br>
><br>
><br>
> > On Dec 16, 2014, at 9:09 AM, Amit Anand <<a href="mailto:aanand@viimed.com" target="_blank">aanand@viimed.com</a>>
wrote:<br>
> ><br>
> > Hi John thank you!<br>
> ><br>
> > So I went ahead and added two more storage
nodes to the existing rings (object, account, container)
and tried to rebalance on the controller I got this:<br>
> ><br>
> > [root@controller swift]# swift-ring-builder
object.builder rebalance<br>
> > Reassigned 1024 (100.00%) partitions. Balance
is now 38.80.<br>
> >
-------------------------------------------------------------------------------<br>
> > NOTE: Balance of 38.80 indicates you should
push this<br>
> > ring, wait at least 1 hours, and
rebalance/repush.<br>
> >
-------------------------------------------------------------------------------<br>
> ><br>
> ><br>
> > For all three. So while waiting, I went ahead
and added the *.gz files and swift.conf to the new nodes
and started the Object Storage Services on the both the
new storage nodes.... Now I am seeing this after I try
to rebalance after waiting about an hour:<br>
> ><br>
> > [root@controller swift]# swift-ring-builder
object.builder rebalance<br>
> > No partitions could be reassigned.<br>
> > Either none need to be or none can be due to
min_part_hours [1].<br>
> ><br>
> > Devices 4,5,6,7 are the new ones I added in
region 2.<br>
> ><br>
> ><br>
> > [root@controller swift]# swift-ring-builder
object.builder<br>
> > object.builder, build version 9<br>
> > 1024 partitions, 3.000000 replicas, 2 regions,
2 zones, 8 devices, 38.80 balance<br>
> > The minimum number of hours before a partition
can be reassigned is 1<br>
> > Devices: id region zone ip address
port replication ip replication port name weight
partitions balance meta<br>
> > 0 1 1 10.7.5.51
6000 10.7.5.51 6000 sda3 100.00
501 30.47<br>
> > 1 1 1 10.7.5.51
6000 10.7.5.51 6000 sda4 100.00
533 38.80<br>
> > 2 1 1 10.7.5.52
6000 10.7.5.52 6000 sda3 100.00
512 33.33<br>
> > 3 1 1 10.7.5.52
6000 10.7.5.52 6000 sda4 100.00
502 30.73<br>
> > 4 2 1 10.7.5.53
6000 10.7.5.53 6000 sda3 100.00
256 -33.33<br>
> > 5 2 1 10.7.5.53
6000 10.7.5.53 6000 sda4 100.00
256 -33.33<br>
> > 6 2 1 10.7.5.54
6000 10.7.5.54 6000 sda3 100.00
256 -33.33<br>
> > 7 2 1 10.7.5.54
6000 10.7.5.54 6000 sda4 100.00
256 -33.33<br>
> ><br>
> ><br>
> ><br>
> > All three have -33.33 (container, object,
account) for their balance. Is this normal or did do
something incorrect? It doesnt seem to be replicating
the data to the new nodes (or at least it looks like it
stopped?) but I am not sure. Would appreciate any
insight. Thanks!<br>
> ><br>
> > Amit<br>
> ><br>
> ><br>
> ><br>
> ><br>
> > On Mon, Dec 15, 2014 at 1:49 PM, John
Dickinson <<a href="mailto:me@not.mn" target="_blank">me@not.mn</a>> wrote:<br>
> > Sounds like you're looking for a global
cluster. You don't need multiple rings for this. Swift
can support this. When you add a new device to a ring,
you add it in a different region, and Swift takes care
of it for you.<br>
> ><br>
> > Here's some more information:<br>
> ><br>
> > <a href="http://docs.openstack.org/developer/swift/admin_guide.html#geographically-distributed-clusters" target="_blank">http://docs.openstack.org/developer/swift/admin_guide.html#geographically-distributed-clusters</a><br>
> > <a href="https://www.youtube.com/watch?v=mcaTwhP_rPE" target="_blank">https://www.youtube.com/watch?v=mcaTwhP_rPE</a><br>
> > <a href="https://www.youtube.com/watch?v=LpmBRqevuVU" target="_blank">https://www.youtube.com/watch?v=LpmBRqevuVU</a><br>
> ><br>
> > <a href="https://swiftstack.com/blog/2013/07/02/swift-1-9-0-release/" target="_blank">https://swiftstack.com/blog/2013/07/02/swift-1-9-0-release/</a><br>
> > <a href="https://swiftstack.com/blog/2012/09/16/globally-distributed-openstack-swift-cluster/" target="_blank">https://swiftstack.com/blog/2012/09/16/globally-distributed-openstack-swift-cluster/</a><br>
> > <a href="https://www.swiftstack.com/docs/admin/cluster_management/regions.html" target="_blank">https://www.swiftstack.com/docs/admin/cluster_management/regions.html</a><br>
> ><br>
> ><br>
> ><br>
> > --John<br>
> ><br>
> ><br>
> ><br>
> ><br>
> ><br>
> > > On Dec 15, 2014, at 10:15 AM, Amit Anand
<<a href="mailto:aanand@viimed.com" target="_blank">aanand@viimed.com</a>>
wrote:<br>
> > ><br>
> > > Hi all,<br>
> > ><br>
> > > I was wondering if anyone knew of any
good blog posts and videos that could show/explain what
I am trying to do. I have Juno setup and it working
great (thanks to everyone on heres help)! Now, I would
like to add two more Object Store nodes, but as a
separate "datacenter" as it were and replicate between
my existing ring and the new one. Now, Im not sure
exactly what to do for the account/container/object
rings and how to get them to replicate (so if one goes
down the other will still continue to serve data). I am
also going to try and add another storage node just as a
backup for existing data. Would anyone have any good
links to send me I would appreciate it!<br>
> > ><br>
> > > Thanks!<br>
> > > Amit Anand<br>
> > >
_______________________________________________<br>
> > > Mailing list: <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>
> > > Post to : <a href="mailto:openstack@lists.openstack.org" target="_blank">openstack@lists.openstack.org</a><br>
> > > Unsubscribe : <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a><br>
> ><br>
> ><br>
><br>
><br>
<br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
Mailing list: <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a>
Post to : <a href="mailto:openstack@lists.openstack.org" target="_blank">openstack@lists.openstack.org</a>
Unsubscribe : <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a>
</pre>
</blockquote>
<br>
</div></div></div>
</blockquote></div><br></div></div>