Re: wip-crush

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

 



On Wed, 22 Aug 2012, Atchley, Scott wrote:
> On Aug 22, 2012, at 10:46 AM, Florian Haas wrote:
> 
> > On 08/22/2012 03:10 AM, Sage Weil wrote:
> >> I pushed a branch that changes some of the crush terminology.  Instead of 
> >> having a crush type called "pool" that requires you to say things like 
> >> "pool=default" in the "ceph osd crush set ..." command, it uses "root" 
> >> instead.  That hopefully reinforces that it is a tree/hierarchy.
> >> 
> >> There is also a patch that changes "bucket" to "node" throughout, since 
> >> bucket is a term also used by radosgw.
> >> 
> >> Thoughts?  I think the main pain in making this transition is that old 
> >> clusters have maps that have a type 'pool' and new ones won't, and the 
> >> docs will need to walk people through both...
> > 
> > "pool" in a crushmap being completely unrelated to a RADOS pool is
> > something that I've heard customers/users report as confusing, as well.
> > So changing that is probably a good thing. Naming it "root" is probably
> > a good choice as well, as it happens to match
> > http://ceph.com/wiki/Custom_data_placement_with_CRUSH.
> > 
> > As for changing "bucket" to node... a "node" is normally simply a
> > physical server (at least in HA terminology, which many potential Ceph
> > users will be familiar with), and CRUSH uses "host" for that. So that's
> > another recipe for confusion. How about using something super-generic,
> > like "element" or "item"?
> > 
> > Cheers,
> > Florian
> 
> My guess is that he is trying to use data structure tree nomenclature 
> (root, node, leaf). I agree that node is an overloaded term (as is 
> pool).

Yeah...

> As for an alternative to bucket which indicates the item is a 
> collection, what about subtree or branch?

I think fixing the overloading of 'pool' in the default crush map is the 
biggest pain point.  I can live with crush 'buckets' staying the same (esp 
since that's what the papers and code use pervasively) if we can't come up 
with a better option.

On the pool part, though, the challenge is how to transition.  Existing 
clusters have maps that use 'pool', and new clusters will use 'root' (or 
whatever).  Some options:

 - document both.  this kills much of the benefit of switching, but is 
   probably inevitable since people will be running different versions. 
 - make the upgrade process transparently rename the type.  this lets 
   all the tools use the new names.
 - make the tools silently translate old names to new names.  this is 
   kludgey in that it makes the code make assumptions about the names of 
   the data it is working with, but would cover everyone except those who 
   created their own crush maps from scratch.
 - ?

sage
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux