From 6f36b5424f7229d78a34dfd21a7c624728de6886 Mon Sep 17 00:00:00 2001 From: Dan van der Ster Date: Fri, 22 Apr 2016 16:37:25 +0200 Subject: [PATCH] compute correct defaultweight for bluestore The default crush weight should be the size of the block device, not the tiny 10M xfs partition. Backport: jewel Signed-off-by: Dan van der Ster --- src/ceph-osd-prestart.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/ceph-osd-prestart.sh b/src/ceph-osd-prestart.sh index cefca854e61..c9a777d9661 100644 --- a/src/ceph-osd-prestart.sh +++ b/src/ceph-osd-prestart.sh @@ -30,7 +30,11 @@ if [ "${update:-1}" = "1" -o "${update:-1}" = "true" ]; then fi location="$($hook --cluster ${cluster:-ceph} --id $id --type osd)" weight="$(ceph-conf --cluster=${cluster:-ceph} --name=osd.$id --lookup osd_crush_initial_weight || :)" - defaultweight=`df -P -k $data/ | tail -1 | awk '{ d= $2/1073741824 ; r = sprintf("%.4f", d); print r }'` + if [ -e $data/block ]; then + defaultweight=`blockdev --getsize64 $data/block | awk '{ d= $1/1099511627776 ; r = sprintf("%.4f", d); print r }'` + else + defaultweight=`df -P -k $data/ | tail -1 | awk '{ d= $2/1073741824 ; r = sprintf("%.4f", d); print r }'` + fi ceph \ --cluster="${cluster:-ceph}" \ --name="osd.$id" \ -- 2.39.5