From d4269334dd7e99ebd84783a2dc9abf8a55804675 Mon Sep 17 00:00:00 2001 From: Jeffrey Zhang Date: Sat, 18 Jun 2016 11:44:36 +0800 Subject: Use the disk size as the osd weight when osd_initial_weight is auto In most of case, the disks used by ceph have different size. Use the default value 1 may block the ceph when one disk is full. Use the disk size as osd weight will more reasonally. TrivialFix Change-Id: Ib875c7289188cbb9380355baf0c8048f1eb09332 --- docker/ceph/ceph-osd/extend_start.sh | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'docker/ceph') diff --git a/docker/ceph/ceph-osd/extend_start.sh b/docker/ceph/ceph-osd/extend_start.sh index 733e45ff9..ee745d0af 100644 --- a/docker/ceph/ceph-osd/extend_start.sh +++ b/docker/ceph/ceph-osd/extend_start.sh @@ -50,6 +50,10 @@ if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then CEPH_ROOT_NAME=cache fi + if [[ "${OSD_INITIAL_WEIGHT}" == "auto" ]]; then + OSD_INITIAL_WEIGHT=$(parted --script ${OSD_PARTITION} unit TB print | awk 'match($0, /^Disk.* (.*)TB/, a){printf("%.2f", a[1])}') + fi + # These commands only need to be run once per host but are safe to run # repeatedly. This can be improved later or if any problems arise. ceph osd crush add-bucket "${HOSTNAME}${CEPH_ROOT_NAME:+-${CEPH_ROOT_NAME}}" host -- cgit v1.2.3