Merge "Use the disk size as the osd weight when osd_initial_weight is auto"

This commit is contained in:
Jenkins 2016-07-05 06:14:47 +00:00 committed by Gerrit Code Review
commit 160d6b270d
3 changed files with 16 additions and 0 deletions

View File

@ -192,6 +192,7 @@ COPY apt_preferences.{{ base_distro }} /etc/apt/preferences
{% set base_apt_packages = [
'ca-certificates',
'curl',
'gawk',
'lvm2',
'open-iscsi',
'python',

View File

@ -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

View File

@ -0,0 +1,11 @@
---
prelude: >
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.
features:
- support using the disk size as the osd weight when osd_initial_weight is
auto
upgrade:
- the os_initial_weight still has the default value 1, it will not break
cluster when upgrading.