meta data for this page
Különbségek
A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
| Előző változat mindkét oldalonElőző változatKövetkező változat | Előző változat | ||
| shell:oravm:ovm_cpu_pin_map [2021/02/17 11:01] – admin | shell:oravm:ovm_cpu_pin_map [2021/05/07 10:04] (aktuális) – admin | ||
|---|---|---|---|
| Sor 4: | Sor 4: | ||
| #!/bin/bash | #!/bin/bash | ||
| ##################################################### | ##################################################### | ||
| - | # OVM CPU PIN MAP v1.4 | + | # OVM CPU PIN MAP v1.6 |
| # Keszitette: Agoston Peter | # Keszitette: Agoston Peter | ||
| ##################################################### | ##################################################### | ||
| Sor 13: | Sor 13: | ||
| OVS_SSH_KEY="/ | OVS_SSH_KEY="/ | ||
| SSHC=" | SSHC=" | ||
| + | WORKDIR=$(dirname $(readlink -f $0)) | ||
| + | FULL_BACKUP_FILE=" | ||
| + | LOGFILE=" | ||
| if [[ -z " | if [[ -z " | ||
| read -s -p "Add meg az oracle VM Manager admin jelszavat: " OVM_ADMIN_PASSWD | read -s -p "Add meg az oracle VM Manager admin jelszavat: " OVM_ADMIN_PASSWD | ||
| fi | fi | ||
| + | cd $WORKDIR | ||
| + | # A terminálba SSH-n bejelentkezett user | ||
| + | if egrep -q " | ||
| + | ACT_TTY=$(ps -ef | awk "/ | ||
| + | else | ||
| + | ACT_TTY=$(tty|grep -oP ' | ||
| + | fi | ||
| + | SSH_USER=$(w | awk '/ | ||
| red=$' | red=$' | ||
| Sor 56: | Sor 67: | ||
| } | } | ||
| - | echo Kulcs ellenorzese a CLI-hez... | + | function show_parameters { |
| + | echo " | ||
| + | echo -e " | ||
| + | echo -e " | ||
| + | echo -e " | ||
| + | echo -e " | ||
| + | echo -e "Pl: $0 -c rgzd@aegon.hu${end}" | ||
| + | } | ||
| + | |||
| + | [[ ! $@ =~ -(c|-check) ]] && | ||
| if [[ $(ssh -o StrictHostKeyChecking=no -o BatchMode=yes -o ConnectTimeout=5 admin@localhost -p 10000 list manager |grep -c Success) -eq 0 ]]; then | if [[ $(ssh -o StrictHostKeyChecking=no -o BatchMode=yes -o ConnectTimeout=5 admin@localhost -p 10000 list manager |grep -c Success) -eq 0 ]]; then | ||
| echo "Nincs SSH kulcs a CLI-hez, legeneralom:" | echo "Nincs SSH kulcs a CLI-hez, legeneralom:" | ||
| Sor 75: | Sor 95: | ||
| fi | fi | ||
| fi | fi | ||
| + | # | ||
| << ' | << ' | ||
| echo Kulcs ellenorzese az OVS-ekhez... | echo Kulcs ellenorzese az OVS-ekhez... | ||
| Sor 102: | Sor 122: | ||
| exit 1 | exit 1 | ||
| fi | fi | ||
| - | SCRIPT_VER=$(grep -oP ' | + | SCRIPT_VER=$(grep -oP ' |
| function pin_map { | function pin_map { | ||
| Sor 199: | Sor 219: | ||
| read INPUT_VCPU_LIST | read INPUT_VCPU_LIST | ||
| if [[ $INPUT_VCPU_LIST == "" | if [[ $INPUT_VCPU_LIST == "" | ||
| - | $OVMC -u admin -p $OVM_ADMIN_PASSWD -h localhost -v " | + | $OVMC -u admin -p $OVM_ADMIN_PASSWD -h localhost -v " |
| else | else | ||
| - | $OVMC -u admin -p $OVM_ADMIN_PASSWD -h localhost -v " | + | $OVMC -u admin -p $OVM_ADMIN_PASSWD -h localhost -v " |
| fi | fi | ||
| + | echo | tee -a $LOGFILE | ||
| + | echo " | ||
| } | } | ||
| Sor 218: | Sor 240: | ||
| function backup { | function backup { | ||
| - | printf " | + | printf " |
| read OVSEK | read OVSEK | ||
| + | if [[ -n " | ||
| for OVS in $OVSEK; do | for OVS in $OVSEK; do | ||
| [[ $OVS == "" | [[ $OVS == "" | ||
| Sor 255: | Sor 278: | ||
| done <<< | done <<< | ||
| done | done | ||
| + | echo -e " | ||
| + | else | ||
| + | backup_all | ||
| + | fi | ||
| } | } | ||
| + | function backup_all { | ||
| + | > | ||
| + | while read OVS; do | ||
| + | while read VM; do | ||
| + | VM_NAME=$(echo $VM | grep -oP ' | ||
| + | PINS=$($OVMC -u admin -p $OVM_ADMIN_PASSWD -h localhost -v $VM_NAME -c getvcpu | awk -F':' | ||
| + | if [[ $PINS =~ - ]]; then | ||
| + | PIN_TOL=$(echo $PINS | awk -F' | ||
| + | PIN_IG=$(echo $PINS | awk -F' | ||
| + | PINS="" | ||
| + | for I in $(seq $PIN_TOL $PIN_IG); do | ||
| + | PINS=" | ||
| + | done | ||
| + | fi | ||
| + | | ||
| + | echo " | ||
| + | done <<< | ||
| + | done <<< | ||
| + | echo -e " | ||
| + | } | ||
| + | function check_pins { | ||
| + | [[ ! -f " | ||
| + | while read OVS; do | ||
| + | while read VM; do | ||
| + | VM_NAME=$(echo $VM | grep -oP ' | ||
| + | PINS=$($OVMC -u admin -p $OVM_ADMIN_PASSWD -h localhost -v $VM_NAME -c getvcpu | awk -F':' | ||
| + | if [[ $PINS =~ - ]]; then | ||
| + | PIN_TOL=$(echo $PINS | awk -F' | ||
| + | PIN_IG=$(echo $PINS | awk -F' | ||
| + | PINS="" | ||
| + | for I in $(seq $PIN_TOL $PIN_IG); do | ||
| + | PINS=" | ||
| + | done | ||
| + | fi | ||
| + | PINS=$(echo $PINS | sed ' | ||
| + | [[ $(grep -c "; | ||
| + | done <<< | ||
| + | done <<< | ||
| + | if [[ -n " | ||
| + | echo "Az alábbi VM-ek CPU pin-je eltér a legutolsó mentésben lévőtől: ${HIBAS_VMS#, | ||
| + | else | ||
| + | echo "OK - $(hostname) CPU PIN check" | ||
| + | fi | ||
| + | } | ||
| + | |||
| function restore { | function restore { | ||
| echo -e "A script konyvtaraban ($CURR_DIR/ | echo -e "A script konyvtaraban ($CURR_DIR/ | ||
| grep " | grep " | ||
| + | [[ -e " | ||
| echo -e ${end} | echo -e ${end} | ||
| echo " | echo " | ||
| Sor 279: | Sor 352: | ||
| read -e -p "Mehet a VM-ek pinelesenek beallitasa a mentesbol? [I/N] " VALASZ | read -e -p "Mehet a VM-ek pinelesenek beallitasa a mentesbol? [I/N] " VALASZ | ||
| [[ " | [[ " | ||
| - | | + | echo "${end}$(date ' |
| - | echo -e "VM nev; | + | echo -e "VM nev; |
| - | echo -e ${end} | + | echo | tee -a $LOGFILE |
| grep -v ' | grep -v ' | ||
| OVS=$(echo $SOR |awk -F';' | OVS=$(echo $SOR |awk -F';' | ||
| Sor 294: | Sor 367: | ||
| fi | fi | ||
| [[ $? -eq 0 ]] && echo -e " | [[ $? -eq 0 ]] && echo -e " | ||
| - | printf | + | done 2>&1 | sed -u "s/^/${end}$(date ' |
| - | | + | sed -i " |
| - | done | + | echo >> $LOGFILE |
| } | } | ||
| + | |||
| + | # | ||
| + | while [[ " | ||
| + | -b|--backup-all ) | ||
| + | backup_all | ||
| + | exit | ||
| + | ;; | ||
| + | -c|--check ) | ||
| + | shift; ALERT_EMAIL=" | ||
| + | check_pins; | ||
| + | exit | ||
| + | ;; | ||
| + | -h|--help ) | ||
| + | show_parameters; | ||
| + | exit | ||
| + | ;; | ||
| + | esac; shift; done | ||
| + | if [[ " | ||
| + | |||
| #################################################### | #################################################### | ||
| FUNKCIO=" | FUNKCIO=" | ||
| Sor 306: | Sor 398: | ||
| TERMINAL_COLS=$(/ | TERMINAL_COLS=$(/ | ||
| vastag_fejlec " | vastag_fejlec " | ||
| + | |||
| echo | echo | ||
| echo -e " | echo -e " | ||
| Sor 318: | Sor 411: | ||
| CORES_PER_SOCKETS[${SERVER}]=$($SSHC show server name=" | CORES_PER_SOCKETS[${SERVER}]=$($SSHC show server name=" | ||
| echo -e " | echo -e " | ||
| - | done <<< | + | done <<< |
| echo | echo | ||
| Sor 356: | Sor 448: | ||
| done ############## | done ############## | ||
| cd $CURR_DIR | cd $CURR_DIR | ||
| + | echo " | ||
| </ | </ | ||