Hi, Tommi:

I use this two command to get the crush map, how should I modify it?
    ceph osd getcrushmap -o curmap
    crushtool -d curmap -o curmap.txt

# begin crush map
# devices
device 0 osd.0
device 1 osd.1
device 2 osd.2
device 3 osd.3
device 4 osd.4
device 5 osd.5
device 6 osd.6
device 7 osd.7
device 8 osd.8
device 9 osd.9
device 10 osd.10
device 11 osd.11
device 12 osd.12
device 13 osd.13
device 14 osd.14
device 15 osd.15
device 16 osd.16
device 17 osd.17
device 18 osd.18
device 19 osd.19
device 20 osd.20
device 21 osd.21
device 22 osd.22
device 23 osd.23

# types
type 0 osd
type 1 host
type 2 rack
type 3 row
type 4 room
type 5 datacenter
type 6 pool

# buckets
host wistor-001 {
        id -2           # do not change unnecessarily
        # weight 12.000
        alg straw
        hash 0  # rjenkins1
        item osd.0 weight 1.000
        item osd.1 weight 1.000
        item osd.10 weight 1.000
        item osd.11 weight 1.000
        item osd.2 weight 1.000
        item osd.3 weight 1.000
        item osd.4 weight 1.000
        item osd.5 weight 1.000
        item osd.6 weight 1.000
        item osd.7 weight 1.000
        item osd.8 weight 1.000
        item osd.9 weight 1.000
}
host wistor-002 {
        id -4           # do not change unnecessarily
        # weight 12.000
        alg straw
        hash 0  # rjenkins1
        item osd.12 weight 1.000
        item osd.13 weight 1.000
        item osd.14 weight 1.000
        item osd.15 weight 1.000
        item osd.16 weight 1.000
        item osd.17 weight 1.000
        item osd.18 weight 1.000
        item osd.19 weight 1.000
        item osd.20 weight 1.000
        item osd.21 weight 1.000
        item osd.22 weight 1.000
        item osd.23 weight 1.000
}
rack unknownrack {
        id -3           # do not change unnecessarily
        # weight 24.000
        alg straw
        hash 0  # rjenkins1
        item wistor-001 weight 12.000
        item wistor-002 weight 12.000
}
pool default {
        id -1           # do not change unnecessarily
        # weight 24.000
        alg straw
        hash 0  # rjenkins1
        item unknownrack weight 24.000
}

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

# end crush map


-----Original Message-----
From: Tommi Virtanen [mailto:[email protected]] 
Sent: Wednesday, August 01, 2012 11:58 PM
To: Eric YH Chen/WYHQ/Wiwynn
Cc: [email protected]; [email protected]; Chris YT 
Huang/WYHQ/Wiwynn; Victor CY Chang/WYHQ/Wiwynn
Subject: Re: The cluster do not aware some osd are disappear

On Tue, Jul 31, 2012 at 6:07 PM,  <[email protected]> wrote:
> Hi, Josh:
>
> I do not assign the crushmap by myself, I use the default setting.
> And after I reboot the server, I cannot reproduce this situation.
> The heartbeat check works fine when one of the server not available.

If you don't do anything to your crushmap, all yours osds are in a flat tree, 
with no understanding of your failure domains. You really should configure it. 
(We really should document it better!)

The newer upstart scripts (/etc/init/ceph-osd.conf instead of
/etc/init.d/ceph) at least set the hostname by default, but that still ignores 
racks, rooms etc.
N�����r��y����b�X��ǧv�^�)޺{.n�+���z�]z���{ay�ʇڙ�,j��f���h���z��w���
���j:+v���w�j�m��������zZ+�����ݢj"��!�i

Reply via email to