radosgw scalability questions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



You can and should run multiple RadosGW and Apache instances per zone.  The
whole point of Ceph is eliminating as many points of failure as possible.
You'll want to setup a load balancer just like you would for any website.
 You'll want your load balancer to recognize and forward both
http://us-west-1.domain/ and http://*.us-west-1.domain/.  Most load
balancers shouldn't have a problem with that.

I am having a bit of trouble with the load balancer in my secondary zones.
 The primary is working fine, but radosgw-agent's locking doesn't work
correctly in the secondary zones.  I haven't taken the time to figure out
the problem; I probably need to add some kind of stickyness to the pool.
 In the mean time, I've configured the secondary zone's load balancer to
have one machine in the pool, and one backup machine if the first one stops
responding.

You can setup multiple zones in a single cluster, but you don't have to.
 Some instances that might make sense are if you have 3 physical locations,
and you want each location to be a primary zone and a secondary zone for
one of the other locations.

radosgw-agent should have multiple instances too.  I'm currently running
radosgw-agent on all of the radosgw nodes in the secondary zone.  I just
adjust the --num-threads on each node so the total is the number of
connections I want.

I'm not using CephX.  It was causing me some problems early with the Chef
recipes, and I just disabled it.  In general though, I favor independent
encryption keys rather than one shared key.  It's a bit more work to
manage, but it makes key revocation much easier.


For atomic operations, RadosGW handles it fine.  In my tests, I never had
any corruptions.  The most recently completed write wins.
It looks something like:
Start uploading largefile to bucket/testfile; bucket/testfile doesn't exist
Start uploading smallfile to bucket/testfile; bucket/testfile doesn't exist
smallfile upload completes; bucket/testfile is smallfile
largefile upload completes; bucket/testfile is largefile


On Mon, Jul 7, 2014 at 2:34 PM, Fred Yang <frederic.yang at gmail.com> wrote:

> I'm setting up federated gateway following
> https://ceph.com/docs/master/radosgw/federated-config/, it seems one
> cluster can have multiple instances serving multiple zone each(be it master
> or slave), but it's not clear whether I can have multiple radosgw/httpd
> instances in the same cluster to serve request for same master zone, can
> anybody help answering this:
>
> 1. Should I setup multiple instances like us-east-1, us-east2.. for each
> physical host ? Should I be creating a separate keyring for each phyiscal
> host? Or just create single keyring and on every physical host refer it to
> us-east-1?
>
> 2. Can I use load-balance in front of these radosgw instances? If yes,
> should the "host="  entry set the the load balancer name or local host name?
>
> 3. While librados is atomic but REST API does not have write lock, so in
> the case when multiple user try to perform the write to same object through
> different radosgw instances for same master zone, what will happen? Will
> the write request to object being written be denied or potentially data
> corruption can occur?
>
> Thanks,
> Fred
>
> _______________________________________________
> ceph-users mailing list
> ceph-users at lists.ceph.com
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ceph.com/pipermail/ceph-users-ceph.com/attachments/20140708/122b118d/attachment.htm>


[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux