All of lore.kernel.org
 help / color / mirror / Atom feed
* CRUSH
@ 2011-05-23 16:20 Fyodor Ustinov
  2011-05-23 22:09 ` CRUSH Sage Weil
  0 siblings, 1 reply; 3+ messages in thread
From: Fyodor Ustinov @ 2011-05-23 16:20 UTC (permalink / raw)
  To: ceph-devel

Hi!

Two questions.

1-st. As I understand it - any usable changes of CRUSH map on active 
cluster can't destruct data? In the worst case (for example, I managed 
to put two osd in one rack, and now I have two copies of the data in a 
single rack) I get information about the degradation and this will be 
fixed automatically?

2-nd. How to correct edit crush map in case "rack"?

Let's say I have such a map:

device 0 device0
device 1 device1
device 2 device2
device 3 device3
device 4 device4

# types
type 0 device
type 1 host
type 2 rack
type 3 root

# buckets
host host0 {
         id -1
         alg straw
         hash 0  # rjenkins1
         item device0 weight 1.000
}
...
host host4 {
         id -5
         alg straw
         hash 0  # rjenkins1
         item device4 weight 1.000
}
rack rack0 {
         id -6
         alg straw
         hash 0  # rjenkins1
         item host0 weight 1.000
}
...
rack rack4 {
         id -10          # do not change unnecessarily
         alg straw
         hash 0  # rjenkins1
         item host4 weight 1.000
}
root root {
         id -11          # do not change unnecessarily
         alg straw
         hash 0  # rjenkins1
         item rack0 weight 1.000
         item rack1 weight 1.000
         item rack2 weight 1.000
         item rack3 weight 1.000
         item rack4 weight 1.000
}

# rules
rule data {
         ruleset 1
         type replicated
         min_size 2
         max_size 2
         step take root
         step chooseleaf firstn 0 type host
         step emit
}

And now i want add one "rack" and add one "osd" to this rack. How should 
I deal with "id"?

WBR,
     Fyodor.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: CRUSH
  2011-05-23 16:20 CRUSH Fyodor Ustinov
@ 2011-05-23 22:09 ` Sage Weil
  2011-05-23 22:11   ` CRUSH Fyodor Ustinov
  0 siblings, 1 reply; 3+ messages in thread
From: Sage Weil @ 2011-05-23 22:09 UTC (permalink / raw)
  To: Fyodor Ustinov; +Cc: ceph-devel

On Mon, 23 May 2011, Fyodor Ustinov wrote:
> Hi!
> 
> Two questions.
> 
> 1-st. As I understand it - any usable changes of CRUSH map on active cluster
> can't destruct data? In the worst case (for example, I managed to put two osd
> in one rack, and now I have two copies of the data in a single rack) I get
> information about the degradation and this will be fixed automatically?

Right.

> 2-nd. How to correct edit crush map in case "rack"?
> 
> Let's say I have such a map:
> 
> device 0 device0
> device 1 device1
> device 2 device2
> device 3 device3
> device 4 device4
> 
> # types
> type 0 device
> type 1 host
> type 2 rack
> type 3 root
> 
> # buckets
> host host0 {
>         id -1
>         alg straw
>         hash 0  # rjenkins1
>         item device0 weight 1.000
> }
> ...
> host host4 {
>         id -5
>         alg straw
>         hash 0  # rjenkins1
>         item device4 weight 1.000
> }
> rack rack0 {
>         id -6
>         alg straw
>         hash 0  # rjenkins1
>         item host0 weight 1.000
> }
> ...
> rack rack4 {
>         id -10          # do not change unnecessarily
>         alg straw
>         hash 0  # rjenkins1
>         item host4 weight 1.000
> }
> root root {
>         id -11          # do not change unnecessarily
>         alg straw
>         hash 0  # rjenkins1
>         item rack0 weight 1.000
>         item rack1 weight 1.000
>         item rack2 weight 1.000
>         item rack3 weight 1.000
>         item rack4 weight 1.000
> }
> 
> # rules
> rule data {
>         ruleset 1
>         type replicated
>         min_size 2
>         max_size 2
>         step take root
>         step chooseleaf firstn 0 type host
>         step emit
> }
> 
> And now i want add one "rack" and add one "osd" to this rack. How should I
> deal with "id"?

If you leave the bucket id out, it will be automatically assigned the next 
unused value when you compile the map.  You do need to device the device 
explicitly, though.

sage

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: CRUSH
  2011-05-23 22:09 ` CRUSH Sage Weil
@ 2011-05-23 22:11   ` Fyodor Ustinov
  0 siblings, 0 replies; 3+ messages in thread
From: Fyodor Ustinov @ 2011-05-23 22:11 UTC (permalink / raw)
  To: Sage Weil; +Cc: ceph-devel

Hi!

Thnx!

WBR,
     Fyodor.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-05-23 22:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-23 16:20 CRUSH Fyodor Ustinov
2011-05-23 22:09 ` CRUSH Sage Weil
2011-05-23 22:11   ` CRUSH Fyodor Ustinov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.