Hi have a 3 node cluster.
One node had a physical failure. We removed it from the cluster but it seems some entries remained behind in the crushmap:
Is it safe for me to manually edit the crushmap and remove all entries pointing to the host NZ-AUk-Host1?
# begin crush map
tunable choose_local_tries 0
tunable choose_local_fallback_tries 0
tunable choose_total_tries 50
tunable chooseleaf_descend_once 1
tunable chooseleaf_vary_r 1
tunable chooseleaf_stable 1
tunable straw_calc_version 1
tunable allowed_bucket_algs 54
# devices
device 0 osd.0 class ssd
device 1 osd.1 class ssd
device 3 osd.3 class ssd
device 4 osd.4 class ssd
device 5 osd.5 class ssd
device 6 osd.6 class ssd
device 7 osd.7 class ssd
device 8 osd.8 class ssd
device 12 osd.12 class ssd
# types
type 0 osd
type 1 host
type 2 chassis
type 3 rack
type 4 row
type 5 pdu
type 6 pod
type 7 room
type 8 datacenter
type 9 zone
type 10 region
type 11 root
# buckets
host NZ-AUK-Host2 {
id -3 # do not change unnecessarily
id -4 class ssd # do not change unnecessarily
# weight 1.746
alg straw2
hash 0 # rjenkins1
item osd.0 weight 0.437
item osd.7 weight 0.437
item osd.8 weight 0.437
item osd.12 weight 0.437
}
host NZ-AUK-Host3 {
id -5 # do not change unnecessarily
id -6 class ssd # do not change unnecessarily
# weight 2.183
alg straw2
hash 0 # rjenkins1
item osd.1 weight 0.437
item osd.3 weight 0.437
item osd.4 weight 0.437
item osd.5 weight 0.437
item osd.6 weight 0.437
}
host NZ-AUK-Host1 {
id -7 # do not change unnecessarily
id -8 class ssd # do not change unnecessarily
# weight 0.000
alg straw2
hash 0 # rjenkins1
}
root default {
id -1 # do not change unnecessarily
id -2 class ssd # do not change unnecessarily
# weight 3.929
alg straw2
hash 0 # rjenkins1
item NZ-AUK-Host2 weight 1.746
item NZ-AUK-Host3 weight 2.183
item NZ-AUK-Host1 weight 0.000
}
# rules
rule replicated_rule {
id 0
type replicated
min_size 1
max_size 10
step take default
step chooseleaf firstn 0 type host
step emit
}
# end crush map
One node had a physical failure. We removed it from the cluster but it seems some entries remained behind in the crushmap:
Is it safe for me to manually edit the crushmap and remove all entries pointing to the host NZ-AUk-Host1?
# begin crush map
tunable choose_local_tries 0
tunable choose_local_fallback_tries 0
tunable choose_total_tries 50
tunable chooseleaf_descend_once 1
tunable chooseleaf_vary_r 1
tunable chooseleaf_stable 1
tunable straw_calc_version 1
tunable allowed_bucket_algs 54
# devices
device 0 osd.0 class ssd
device 1 osd.1 class ssd
device 3 osd.3 class ssd
device 4 osd.4 class ssd
device 5 osd.5 class ssd
device 6 osd.6 class ssd
device 7 osd.7 class ssd
device 8 osd.8 class ssd
device 12 osd.12 class ssd
# types
type 0 osd
type 1 host
type 2 chassis
type 3 rack
type 4 row
type 5 pdu
type 6 pod
type 7 room
type 8 datacenter
type 9 zone
type 10 region
type 11 root
# buckets
host NZ-AUK-Host2 {
id -3 # do not change unnecessarily
id -4 class ssd # do not change unnecessarily
# weight 1.746
alg straw2
hash 0 # rjenkins1
item osd.0 weight 0.437
item osd.7 weight 0.437
item osd.8 weight 0.437
item osd.12 weight 0.437
}
host NZ-AUK-Host3 {
id -5 # do not change unnecessarily
id -6 class ssd # do not change unnecessarily
# weight 2.183
alg straw2
hash 0 # rjenkins1
item osd.1 weight 0.437
item osd.3 weight 0.437
item osd.4 weight 0.437
item osd.5 weight 0.437
item osd.6 weight 0.437
}
host NZ-AUK-Host1 {
id -7 # do not change unnecessarily
id -8 class ssd # do not change unnecessarily
# weight 0.000
alg straw2
hash 0 # rjenkins1
}
root default {
id -1 # do not change unnecessarily
id -2 class ssd # do not change unnecessarily
# weight 3.929
alg straw2
hash 0 # rjenkins1
item NZ-AUK-Host2 weight 1.746
item NZ-AUK-Host3 weight 2.183
item NZ-AUK-Host1 weight 0.000
}
# rules
rule replicated_rule {
id 0
type replicated
min_size 1
max_size 10
step take default
step chooseleaf firstn 0 type host
step emit
}
# end crush map