From dcc46813c0c3b81ed7c3cf16a1fcb7f96ba27b5f Mon Sep 17 00:00:00 2001 From: "John L. Hammond" Date: Thu, 7 Oct 2021 09:26:19 -0500 Subject: [PATCH] EX-3890 lipe: raise pool spilling threshold Raise the default fast pool spill threshold to 90%. Lustre-change: https://review.whamcloud.com/45147 Lustre-commit: TBD (from b37fd65b3d0110100d964370f598edebe2d322af) Signed-off-by: John L. Hammond Change-Id: I3c8ce85a1eb3aae6c2b49e8b195a8986558335af Reviewed-on: https://review.whamcloud.com/45205 Tested-by: jenkins Reviewed-by: Alex Zhuravlev Reviewed-by: Andreas Dilger Tested-by: Andreas Dilger --- lipe/scripts/stratagem-hp-config.sh | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/lipe/scripts/stratagem-hp-config.sh b/lipe/scripts/stratagem-hp-config.sh index 02d83fb..b787ef9 100755 --- a/lipe/scripts/stratagem-hp-config.sh +++ b/lipe/scripts/stratagem-hp-config.sh @@ -26,6 +26,7 @@ DEF_LPURGE_FREEHI=80 DEF_LPURGE_FREELO=50 DEF_FAST_POOL=ddn_ssd DEF_SLOW_POOL=ddn_hdd +DEF_FAST_POOL_SPILL_THRESHOLD_PCT=90 function usage() { @@ -138,12 +139,6 @@ if $AUTO; then AUTO_LAMIGO_MINAGE=$(awk -F = '/^min-age=/{ print $2 }' /etc/lamigo/$FS-MDT0000.conf) fi -# Set value: if not explicitly set, set auto, if no auto, set default - -LAMIGO_MINAGE=${LAMIGO_MINAGE:-${AUTO_LAMIGO_MINAGE:-${DEF_LAMIGO_MINAGE}}} -FAST_POOL=${FAST_POOL:-${AUTO_FAST_POOL:-${DEF_FAST_POOL}}} -SLOW_POOL=${SLOW_POOL:-${AUTO_SLOW_POOL:-${DEF_SLOW_POOL}}} - # List of %04x formated OST indexes FAST_OSTLIST=$(ssh $MDSHOST lctl pool_list $FS.$FAST_POOL|sed -ne 's/.*-OST\(....\)_UUID/\1/p') if [ -z "$FAST_OSTLIST" ]; then @@ -168,8 +163,13 @@ if $AUTO; then done fi -LPURGE_FREEHI=${LPURGE_FREEHI:-${AUTO_LPURGE_FREEHI:-${DEF_LPURGE_FREEHI}}} -LPURGE_FREELO=${LPURGE_FREELO:-${AUTO_LPURGE_FREELO:-${DEF_LPURGE_FREELO}}} +# Set value: if not explicitly set, set auto, if no auto, set default +: ${FAST_POOL:=${AUTO_FAST_POOL:-${DEF_FAST_POOL}}} +: ${FAST_POOL_SPILL_THRESHOLD_PCT:=${DEF_FAST_POOL_SPILL_THRESHOLD_PCT}} +: ${SLOW_POOL:=${AUTO_SLOW_POOL:-${DEF_SLOW_POOL}}} +: ${LAMIGO_MINAGE:=${AUTO_LAMIGO_MINAGE:-${DEF_LAMIGO_MINAGE}}} +: ${LPURGE_FREEHI:=${AUTO_LPURGE_FREEHI:-${DEF_LPURGE_FREEHI}}} +: ${LPURGE_FREELO:=${AUTO_LPURGE_FREELO:-${DEF_LPURGE_FREELO}}} if ! is_valid_percent "${LPURGE_FREEHI}"; then echo "Invalid FREEHI percentage '${LPURGE_FREEHI}'" @@ -181,6 +181,11 @@ if ! is_valid_percent "${LPURGE_FREELO}"; then usage 34 fi +if ! is_valid_precent "%{FAST_POOL_SPILL_THRESHOLD_PCT}"; then + echo "Invalid FAST_POOL_SPILL_THRESHOLD_PCT percentage '${FAST_POOL_SPILL_THRESHOLD_PCT}'" + usage 34 +fi + if ! ((LPURGE_FREELO < LPURGE_FREEHI)); then echo "FREELO (${LPURGE_FREELO}) must be less than FREEHI (${LPURGE_FREEHI})" usage 34 @@ -202,6 +207,11 @@ OSSLIST=$(es_config_get --option fs_settings.$FS.oss_list) # Die on errors set -e +echo "Configuring OFD access logs and pool spilling" +set_param_p "obdfilter.${FS}-*.access_log_size" "1048576" +set_param_p "lod.${FS}-*.pool.${FAST_POOL}.spill_target" "${SLOW_POOL}" +set_param_p "lod.${FS}-*.pool.${FAST_POOL}.spill_threshold_pct" "${FAST_POOL_SPILL_THRESHOLD_PCT}" + MOUNTSPEC=$(/opt/ddn/es/tools/mount_lustre_client --dry-run --fs $FS |awk '{ print $4 }') # Create client mount if it doesn't exist @@ -233,11 +243,6 @@ primitive $FS-hotpool ocf:ddn:Ticketer params name=$FS-hotpool-allocated meta al order $FS-hotpool-after-cl-$FS-client inf: cl-$FS-client $FS-hotpool EOF -echo "Configuring OFD access logs and pool spilling" -set_param_p "obdfilter.${FS}-*.access_log_size" "1048576" -set_param_p "lod.${FS}-*.pool.${FAST_POOL}.spill_target" "${SLOW_POOL}" -set_param_p "lod.${FS}-*.pool.${FAST_POOL}.spill_threshold_pct" $((100 - LPURGE_FREELO)) - echo "Setting up lpurge (HI:$LPURGE_FREEHI to LO:$LPURGE_FREELO)" # this results in MDTLIST being a list of MDT indexes in format "%04d" -- 1.8.3.1