#!/bin/bash source ./so-variables # Helper functions filter_unused_nics() { if [[ $MNIC ]]; then local grep_string="$MNIC\|bond0"; else local grep_string="bond0"; fi # If we call this function and NICs have already been assigned to the bond interface then add them to the grep search string if [[ $BNICS ]]; then grep_string="$grep_string" for BONDNIC in "${BNICS[@]}"; do grep_string="$grep_string\|$BONDNIC" done fi # Finally, set filtered_nics to any NICs we aren't using (and ignore interfaces that aren't of use) filtered_nics=$(ip link| awk -F: '$0 !~ "lo|vir|veth|br|docker|wl|^[^0-9]"{print $2}' | grep -vwe "$grep_string" | sed 's/ //g') readarray -t filtered_nics <<< "$filtered_nics" nic_list=() for nic in "${filtered_nics[@]}"; do nic_list+=("$nic" "" "OFF") done export nic_list } calculate_useable_cores() { # Calculate reasonable core usage local cores_for_bro=$(( (num_cpu_cores/2) - 1 )) local lb_procs_round lb_procs_round=$(printf "%.0f\n" $cores_for_bro) if [ "$lb_procs_round" -lt 1 ]; then lb_procs=1; else lb_procs=$lb_procs_round; fi export lb_procs } set_defaul_log_size() { local percentage case $INSTALLTYPE in EVAL | HEAVYNODE) percentage=50 ;; *) percentage=80 ;; esac local disk_dir="/" if [ -d /nsm ]; then disk_dir="/nsm" fi local disk_size_1k disk_size_1k=$(df $disk_dir | grep -v "^Filesystem" | awk '{print $2}') local ratio="1048576" local disk_size_gb disk_size_gb=$( echo "$disk_size_1k" "$ratio" | awk '{print($1/$2)}' ) log_size_limit=$( echo "$disk_size_gb" "$percentage" | awk '{printf("%.0f", $1 * ($2/100))}') export log_size_limit }